ccnvcor2 - compute the convolution or correlation of complex matrices
SUBROUTINE CCNVCOR2( CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, * SCRATCHY, MX, NX, X, LDX, MY, NY, MPRE, NPRE, Y, LDY, MZ, NZ, Z, * LDZ, WORK, LWORK) CHARACTER * 1 CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, SCRATCHY COMPLEX X(LDX,*), Y(LDY,*), Z(LDZ,*), WORK(*) INTEGER MX, NX, LDX, MY, NY, MPRE, NPRE, LDY, MZ, NZ, LDZ, LWORK
SUBROUTINE CCNVCOR2_64( CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, * SCRATCHY, MX, NX, X, LDX, MY, NY, MPRE, NPRE, Y, LDY, MZ, NZ, Z, * LDZ, WORK, LWORK) CHARACTER * 1 CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, SCRATCHY COMPLEX X(LDX,*), Y(LDY,*), Z(LDZ,*), WORK(*) INTEGER*8 MX, NX, LDX, MY, NY, MPRE, NPRE, LDY, MZ, NZ, LDZ, LWORK
SUBROUTINE CNVCOR2( CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, * SCRATCHY, [MX], [NX], X, [LDX], [MY], [NY], MPRE, NPRE, Y, [LDY], * [MZ], [NZ], Z, [LDZ], WORK, [LWORK]) CHARACTER(LEN=1) :: CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, SCRATCHY COMPLEX, DIMENSION(:) :: WORK COMPLEX, DIMENSION(:,:) :: X, Y, Z INTEGER :: MX, NX, LDX, MY, NY, MPRE, NPRE, LDY, MZ, NZ, LDZ, LWORK
SUBROUTINE CNVCOR2_64( CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, * SCRATCHY, [MX], [NX], X, [LDX], [MY], [NY], MPRE, NPRE, Y, [LDY], * [MZ], [NZ], Z, [LDZ], WORK, [LWORK]) CHARACTER(LEN=1) :: CNVCOR, METHOD, TRANSX, SCRATCHX, TRANSY, SCRATCHY COMPLEX, DIMENSION(:) :: WORK COMPLEX, DIMENSION(:,:) :: X, Y, Z INTEGER(8) :: MX, NX, LDX, MY, NY, MPRE, NPRE, LDY, MZ, NZ, LDZ, LWORK
#include <sunperf.h>
void ccnvcor2(char cnvcor, char method, char transx, char scratchx, char transy, char scratchy, int mx, int nx, complex *x, int ldx, int my, int ny, int mpre, int npre, complex *y, int ldy, int mz, int nz, complex *z, int ldz, complex *work, int lwork);
void ccnvcor2_64(char cnvcor, char method, char transx, char scratchx, char transy, char scratchy, long mx, long nx, complex *x, long ldx, long my, long ny, long mpre, long npre, complex *y, long ldy, long mz, long nz, complex *z, long ldz, complex *work, long lwork);
ccnvcor2 computes the convolution or correlation of complex matrices.
transpose(X)
is the filter matrix.
transpose(Y)
is the input matrix.
dimension(LDZ,*)
Result matrix.
dimension(LWORK)
On entry for the first call to CCNVCOR2, WORK(1)
must contain CMPLX(0.0,0.0). After the first call, WORK(1)
must be set to CMPLX(0.0,0.0)
iff WORK has been altered since the last call to this subroutine or if the sizes of the arrays have changed.