diff options
author | torset | 2009-01-22 14:59:05 +0000 |
---|---|---|
committer | torset | 2009-01-22 14:59:05 +0000 |
commit | 094239ed4e5e7ec3e69b32d850eca784fa8eb8d2 (patch) | |
tree | c32509f57efc0bb29e9c945c294dc13c6cbf36f6 | |
parent | 2896ff8643e32923ea30ad4bd683231cb2ba4b6a (diff) | |
download | scilab2c-094239ed4e5e7ec3e69b32d850eca784fa8eb8d2.tar.gz scilab2c-094239ed4e5e7ec3e69b32d850eca784fa8eb8d2.tar.bz2 scilab2c-094239ed4e5e7ec3e69b32d850eca784fa8eb8d2.zip |
update
-rw-r--r-- | src/matrixOperations/cat/ccata.c | 2 | ||||
-rw-r--r-- | src/matrixOperations/cat/dcata.c | 2 | ||||
-rw-r--r-- | src/matrixOperations/cat/scata.c | 5 | ||||
-rw-r--r-- | src/matrixOperations/cat/testFloatMatrixConcatenation.c | 19 | ||||
-rw-r--r-- | src/matrixOperations/cat/zcata.c | 2 | ||||
-rw-r--r-- | src/matrixOperations/interfaces/int_OpCc.h | 49 | ||||
-rw-r--r-- | src/matrixOperations/interfaces/int_OpRc.h | 98 |
7 files changed, 111 insertions, 66 deletions
diff --git a/src/matrixOperations/cat/ccata.c b/src/matrixOperations/cat/ccata.c index d47fb613..cd2b4c92 100644 --- a/src/matrixOperations/cat/ccata.c +++ b/src/matrixOperations/cat/ccata.c @@ -28,7 +28,7 @@ void crowcata(floatComplex *in1, int lines1, int columns1, floatComplex *in2, i { out[i*(lines1 + lines2) + j] = in1[i*lines1 + j]; } - for (j = 0 ; j < lines1 ; ++j) + for (j = 0 ; j < lines2 ; ++j) { out[i*(lines1 + lines2) + lines1 + j] = in2[i*lines2 + j]; } diff --git a/src/matrixOperations/cat/dcata.c b/src/matrixOperations/cat/dcata.c index e594bf0f..0ec7c088 100644 --- a/src/matrixOperations/cat/dcata.c +++ b/src/matrixOperations/cat/dcata.c @@ -29,7 +29,7 @@ void drowcata(double *in1, int lines1, int columns1, double *in2, int lines2, i { out[i*(lines1 + lines2) + j] = in1[i*lines1 + j]; } - for (j = 0 ; j < lines1 ; ++j) + for (j = 0 ; j < lines2 ; ++j) { out[i*(lines1 + lines2) + lines1 + j] = in2[i*lines2 + j]; } diff --git a/src/matrixOperations/cat/scata.c b/src/matrixOperations/cat/scata.c index 252a054d..da0853c6 100644 --- a/src/matrixOperations/cat/scata.c +++ b/src/matrixOperations/cat/scata.c @@ -11,11 +11,12 @@ */ #include "cat.h" +#include "stdio.h" /* ** Emulate Scilab (from help cat) : ** then the concatenation is done according to the rows ** -** A1=[1 2 3 ; 4 5 6]; A2=[7 8 9 ; 10 11 12]; y=cat(1,A1,A2) => y=[1 2 3 ; 4 5 61 ;7 8 9; 10 11 12] +** A1=[1 2 3 ; 4 5 6]; A2=[7 8 9 ; 10 11 12]; y=cat(1,A1,A2) => y=[1 2 3 ; 4 5 6 ;7 8 9; 10 11 12] ** */ @@ -28,7 +29,7 @@ void srowcata(float *in1, int lines1, int columns1, float *in2, int lines2, int { out[i*(lines1 + lines2) + j] = in1[i*lines1 + j]; } - for (j = 0 ; j < lines1 ; ++j) + for (j = 0 ; j < lines2 ; ++j) { out[i*(lines1 + lines2) + lines1 + j] = in2[i*lines2 + j]; } diff --git a/src/matrixOperations/cat/testFloatMatrixConcatenation.c b/src/matrixOperations/cat/testFloatMatrixConcatenation.c index 1d4bcfb5..b34a80f0 100644 --- a/src/matrixOperations/cat/testFloatMatrixConcatenation.c +++ b/src/matrixOperations/cat/testFloatMatrixConcatenation.c @@ -70,7 +70,6 @@ static void scolumncataTest(void) { float in1[12] = {0.0, 1.0, 2.0 , 3.0 , 4.0, 5.0 , 6.0 , 7.0 , 8.0 , 9.0, 10.0 , 11.0}; float in2_1_1[1] = {12.0}; float out_1_13[13] = {0}; - float in2_2_2[4] = {FPI, FPI / 2, FPI / 3, FPI / 4}; float out_2_8[16] = {0}; @@ -99,6 +98,8 @@ static void scolumncataTest(void) { assert(out_2_8[i + 12] == in2_2_2[i]); } + + } static void srowcataTest() { @@ -107,6 +108,10 @@ static void srowcataTest() { float in2[6] = {3.0 , 4.0 , 7.0 , 8.0 , 11.0 , 12.0}; float out_4_3[12] = {0}; float out_6_2[12] = {0}; + + float inNono1[6]={1.0,3.0,5.0,2.0,4.0,6.0}; + float inNono2[2]={1.0,2.0}; + float outNono[8]={0}; /* ** [ 1 5 9 ] ; [ 3 7 11 ] => [ 1 5 9 ] ** [ 2 6 10 ] [ 4 8 12 ] [ 2 6 10 ] @@ -140,6 +145,18 @@ static void srowcataTest() { assert(out_6_2[9] == 8.0); assert(out_6_2[10] == 11.0); assert(out_6_2[11] == 12.0); + + + srowcata(inNono1, 3, 2, inNono2, 1, 2, outNono); + assert(outNono[0] == 1.0); + assert(outNono[1] == 3.0); + assert(outNono[2] == 5.0); + assert(outNono[3] == 1.0); + assert(outNono[4] == 2.0); + assert(outNono[5] == 4.0); + assert(outNono[6] == 6.0); + assert(outNono[7] == 2.0); + } static void crowcatsTest(void) { diff --git a/src/matrixOperations/cat/zcata.c b/src/matrixOperations/cat/zcata.c index a0c5e10a..485553d7 100644 --- a/src/matrixOperations/cat/zcata.c +++ b/src/matrixOperations/cat/zcata.c @@ -28,7 +28,7 @@ void zrowcata(doubleComplex *in1, int lines1, int columns1, doubleComplex *in2, { out[i*(lines1 + lines2) + j] = in1[i*lines1 + j]; } - for (j = 0 ; j < lines1 ; ++j) + for (j = 0 ; j < lines2 ; ++j) { out[i*(lines1 + lines2) + lines1 + j] = in2[i*lines2 + j]; } diff --git a/src/matrixOperations/interfaces/int_OpCc.h b/src/matrixOperations/interfaces/int_OpCc.h index bca639dc..48ff3907 100644 --- a/src/matrixOperations/interfaces/int_OpCc.h +++ b/src/matrixOperations/interfaces/int_OpCc.h @@ -35,13 +35,13 @@ #define z0z0OpCcz2(in1,in2,out) zrowcats(in1,in2,out) -#define s2s2OpCcs2(in1,size1,in2,size2,out) srowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define s2s2OpCcs2(in1,size1,in2,size2,out) srowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) -#define d2d2OpCcd2(in1,size1,in2,size2,out) drowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define d2d2OpCcd2(in1,size1,in2,size2,out) drowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) -#define c2c2OpCcc2(in1,size1,in2,size2,out) crowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define c2c2OpCcc2(in1,size1,in2,size2,out) crowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) -#define z2z2OpCcz2(in1,size1,in2,size2,out) zrowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define z2z2OpCcz2(in1,size1,in2,size2,out) zrowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) /* Differents input elements */ #define s0c0OpCcc2(in1,in2,out) c0c0OpCcc2(FloatComplex(in1,0),in2,out) @@ -52,35 +52,46 @@ #define z0d0OpCcz2(in1,in2,out) z0z0OpCcz2(in1,DoubleComplex(in2,0),out) -#define s2c2OpCcc2(in1,size1,in2,size2,out) sfilla((float*)out,size[0],size[1],0); c2c2OpCcc2(FloatComplexMatrix(in1,(float*)out,size1[0]*size1[1]), size1, in2, size2, out) +#define s2c2OpCcc2(in1,size1,in2,size2,out) sfilla((float*)out,size1[0],size1[1],0); \ + c2c2OpCcc2(FloatComplexMatrix(in1,(float*)out,size1[0]*size1[1]), size1, in2, size2, out) -#define d2z2OpCcz2(in1,size1,in2,size2,out) dfilla((double*)out,size[0],size[1],0); z2z2OpCcz2(DoubleComplexMatrix(in1,(double*)out,size1[0]*size1[1]), size1, in2, size2, out) +#define d2z2OpCcz2(in1,size1,in2,size2,out) dfilla((double*)out,size1[0],size1[1],0); \ + z2z2OpCcz2(DoubleComplexMatrix(in1,(double*)out,size1[0]*size1[1]), size1, in2, size2, out) -#define c2s2OpCcc2(in1,size1,in2,size2,out) sfilla((float*)out,size[0],size[1],0); c2c2OpCcc2(in1, size1, FloatComplexMatrix(in2,(float*)out,size1[0]*size1[1]), size2, out) +#define c2s2OpCcc2(in1,size1,in2,size2,out) sfilla((float*)out,size2[0],size2[1],0); \ + c2c2OpCcc2(in1, size1, FloatComplexMatrix(in2,(float*)out,size2[0]*size2[1]), size2, out) -#define z2d2OpCcz2(in1,size1,in2,size2,out) dfilla((double*)out,size[0],size[1],0); z2z2OpCcz2(in1, size1, DoubleComplexMatrix(in2,(double*)out,size1[0]*size1[1]), size2, out) +#define z2d2OpCcz2(in1,size1,in2,size2,out) dfilla((double*)out,size2[0],size2[1],0); \ + z2z2OpCcz2(in1, size1, DoubleComplexMatrix(in2,(double*)out,size2[0]*size2[1]), size2, out) /* Matrix-Scalar */ /* Same type */ -#define s2s0OpCcs2(in1,size,in2,out) srowcats(in2,0,(float *)out_tmp);srowcata(in1, size[0], size[1],(float *) out_tmp, 1, 1, out); +#define s2s0OpCcs2(in1,size,in2,out) { float temp=in2; \ + srowcata(in1, size[0], size[1],&temp, 1, 1, out); \ + } -#define d2d0OpCcd2(in1,size,in2,out) drowcats(in2,0,(double *)out_tmp);drowcata(in1, size[0], size[1],(double *) out_tmp, 1, 1, out); +#define d2d0OpCcd2(in1,size,in2,out) { double temp=in2; \ + drowcata(in1, size[0], size[1],&temp, 1, 1, out); \ + } -#define c2c0OpCcc2(in1,size,in2,out) crowcats(in2,FloatComplex(0,0),(floatComplex *)out_tmp);crowcata(in1, size[0], size[1], (floatComplex *)out_tmp, 1, 1, out); +#define c2c0OpCcc2(in1,size,in2,out) crowcata(in1, size[0], size[1], &in2, 1, 1, out); -#define z2z0OpCcz2(in1,size,in2,out) zrowcats(in2,DoubleComplex(0,0),(doubleComplex *)out_tmp);zrowcata(in1, size[0], size[1], (doubleComplex *)out_tmp, 1, 1, out); +#define z2z0OpCcz2(in1,size,in2,out) zrowcata(in1, size[0], size[1], &in2, 1, 1, out); /* Different type */ -#define s2c0OpCcc2(in1,size,in2,out) sfilla((float *)out,size[0],size[1],0);c2c0OpCcc2(FloatComplexMatrix(in1,(float*)out,size[0]*size[1]),size,in2,out) +#define s2c0OpCcc2(in1,size,in2,out) sfilla((float *)out,size[0],size[1],0); \ + c2c0OpCcc2(FloatComplexMatrix(in1,(float*)out,size[0]*size[1]),size,in2,out) -#define d2z0OpCcz2(in1,size,in2,out) dfilla((double *)out,size[0],size[1],0);z2z0OpCcz2(DoubleComplexMatrix(in1,(double *)out,size[0]*size[1]),size,in2,out) +#define d2z0OpCcz2(in1,size,in2,out) dfilla((double *)out,size[0],size[1],0); \ + z2z0OpCcz2(DoubleComplexMatrix(in1,(double *)out,size[0]*size[1]),size,in2,out) -#define c2s0OpCcc2(in1,size,in2,out) c2c0OpCcc2(in1, size, FloatComplex(in2,0), out) +#define c2s0OpCcc2(in1,size,in2,out) { floatComplex temp = FloatComplex(in2, 0); c2c0OpCcc2(in1, size, temp, out)} -#define z2d0OpCcz2(in1,size,in2,out) z2z0OpCcz2(in1, size, DoubleComplex(in2,0), out) +#define z2d0OpCcz2(in1,size,in2,out) { doubleComplex temp = DoubleComplex(in2, 0); z2z0OpCcz2(in1, size, temp, out)} + /* Scalar-Matrix */ @@ -98,8 +109,10 @@ #define d0z2OpCcz2(in1,in2,size,out) z0z2OpCcz2(DoubleComplex(in1,0),in2,size,out) -#define c0s2OpCcc2(in1,in2,size,out) sfilla((float*)out,size[0],size[1],0); c0c2OpCcc2(in1,FloatComplexMatrix(in2,(float*)out,size[0]*size[1]),size,out) +#define c0s2OpCcc2(in1,in2,size,out) sfilla((float*)out,size[0],size[1],0); \ + c0c2OpCcc2(in1,FloatComplexMatrix(in2,(float*)out,size[0]*size[1]),size,out) -#define z0d2OpCcz2(in1,in2,size,out) dfilla((double*)out,size[0],size[1],0); z0z2OpCcz2(in1,DoubleComplexMatrix(in2,(double*)out,size[0]*size[1]),size,out) +#define z0d2OpCcz2(in1,in2,size,out) dfilla((double*)out,size[0],size[1],0); \ + z0z2OpCcz2(in1,DoubleComplexMatrix(in2,(double*)out,size[0]*size[1]),size,out) #endif /* !__INT_OPCC_H__ */ diff --git a/src/matrixOperations/interfaces/int_OpRc.h b/src/matrixOperations/interfaces/int_OpRc.h index ae9803d1..dc614694 100644 --- a/src/matrixOperations/interfaces/int_OpRc.h +++ b/src/matrixOperations/interfaces/int_OpRc.h @@ -15,93 +15,107 @@ #ifndef __INT_OPRC_H__ #define __INT_OPRC_H__ +/* + /!\ + / ! \ We used columncat because disp isn't right. In the real case, it must be rowcat for Rc. + /__!_ \ + +*/ -/* Row Cat */ - -/* Scalar-Scalar */ +/* Column Cat */ /* Same input elements */ -#define s0s0OpRcs2(in1,in2,out) srowcats(in1,in2,out) +#define s0s0OpRcs2(in1,in2,out) scolumncats(in1,in2,out) -#define d0d0OpRcd2(in1,in2,out) drowcats(in1,in2,out) +#define d0d0OpRcd2(in1,in2,out) dcolumncats(in1,in2,out) -#define c0c0OpRcc2(in1,in2,out) crowcats(in1,in2,out) +#define c0c0OpRcc2(in1,in2,out) ccolumncats(in1,in2,out) -#define z0z0OpRcz2(in1,in2,out) zrowcats(in1,in2,out) +#define z0z0OpRcz2(in1,in2,out) zcolumncats(in1,in2,out) -#define s2s2OpRcs2(in1,size1,in2,size2,out) srowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define s2s2OpRcs2(in1,size1,in2,size2,out) scolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) -#define d2d2OpRcd2(in1,size1,in2,size2,out) drowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define d2d2OpRcd2(in1,size1,in2,size2,out) dcolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) -#define c2c2OpRcc2(in1,size1,in2,size2,out) crowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define c2c2OpRcc2(in1,size1,in2,size2,out) ccolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) -#define z2z2OpRcz2(in1,size1,in2,size2,out) zrowcata(in1, size1[0], size2[1], in2, size1[0], size2[1], out) +#define z2z2OpRcz2(in1,size1,in2,size2,out) zcolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) /* Differents input elements */ - -#define s0c0OpRcc2(in1,in2,out) crowcats(FloatComplex(in1,0),in2,out) +#define s0c0OpRcc2(in1,in2,out) c0c0OpRcc2(FloatComplex(in1,0),in2,out) -#define d0z0OpRcz2(in1,in2,out) zrowcats(DoubleComplex(in1,0),in2,out) +#define d0z0OpRcz2(in1,in2,out) z0z0OpRcz2(DoubleComplex(in1,0),in2,out) -#define c0s0OpRcc2(in1,in2,out) crowcats(in1,FloatComplex(in2,0),out) +#define c0s0OpRcc2(in1,in2,out) c0c0OpRcc2(in1,FloatComplex(in2,0),out) -#define z0d0OpRcz2(in1,in2,out) zrowcats(in1,DoubleComplex(in2,0),out) +#define z0d0OpRcz2(in1,in2,out) z0z0OpRcz2(in1,DoubleComplex(in2,0),out) -#define s2c2OpRcc2(in1,size1,in2,size2,out) crowcata(FloatComplexMatrix(in1,0,size1[0]*size1[1]), size1[0], size2[1], in2, size1[0], size2[1], out) +#define s2c2OpRcc2(in1,size1,in2,size2,out) sfilla((float*)out,size1[0],size1[1],0); \ + c2c2OpRcc2(FloatComplexMatrix(in1,(float*)out,size1[0]*size1[1]), size1, in2, size2, out) -#define d2z2OpRcz2(in1,size1,in2,size2,out) zrowcata(DoubleComplexMatrix(in1,0,size1[0]*size1[1]), size1[0], size2[1], in2, size1[0], size2[1], out) +#define d2z2OpRcz2(in1,size1,in2,size2,out) dfilla((double*)out,size1[0],size1[1],0); \ + z2z2OpRcz2(DoubleComplexMatrix(in1,(double*)out,size1[0]*size1[1]), size1, in2, size2, out) -#define c2s2OpRcc2(in1,size1,in2,size2,out) crowcata(in1, size1[0], size2[1], FloatComplexMatrix(in2,0,size2[0]*size2[1]), size1[0], size2[1], out) +#define c2s2OpRcc2(in1,size1,in2,size2,out) sfilla((float*)out,size2[0],size2[1],0); \ + c2c2OpRcc2(in1, size1, FloatComplexMatrix(in2,(float*)out,size2[0]*size2[1]), size2, out) -#define z2d2OpRcz2(in1,size1,in2,size2,out) zrowcata(in1, size1[0], size2[1], DoubleComplexMatrix(in2,0,size2[0]*size2[1]), size1[0], size2[1], out) +#define z2d2OpRcz2(in1,size1,in2,size2,out) dfilla((double*)out,size2[0],size2[1],0); \ + z2z2OpRcz2(in1, size1, DoubleComplexMatrix(in2,(double*)out,size2[0]*size2[1]), size2, out) /* Matrix-Scalar */ /* Same type */ -double out_tmp[2]; -#define s2s0OpRcs2(in1,size,in2,out) srowcata(in1, size[0], size[1], in2, 1, 1, out); -#define d2d0OpRcd2(in1,size,in2,out) dcolumncats(in2,0,out_tmp); dcolumncata(in1, size[0], size[1], out_tmp, 1, 1, out); +#define s2s0OpRcs2(in1,size,in2,out) { float temp=in2; \ + scolumncata(in1, size[0], size[1],&temp, 1, 1, out); \ + } -#define c2c0OpRcc2(in1,size,in2,out) crowcata(in1, size[0], size[1], in2, 1, 1, out); +#define d2d0OpRcd2(in1,size,in2,out) { double temp=in2; \ + dcolumncata(in1, size[0], size[1],&temp, 1, 1, out); \ + } + +#define c2c0OpRcc2(in1,size,in2,out) ccolumncata(in1, size[0], size[1], &in2, 1, 1, out); -#define z2z0OpRcz2(in1,size,in2,out) zrowcata(in1, size[0], size[1], in2, 1, 1, out); +#define z2z0OpRcz2(in1,size,in2,out) zcolumncata(in1, size[0], size[1], &in2, 1, 1, out); /* Different type */ -#define s2c0OpRcc2(in1,size,in2,out) crowcata(FloatComplexMatrix(in1,0,size[0]*size[1]), size[0], size[1], in2, 1, 1, out); - -#define d2z0OpRcz2(in1,size,in2,out) zrowcata(DoubleComplexMatrix(in1,0,size[0]*size[1]), size[0], size[1], in2, 1, 1, out); - -#define c2s0OpRcc2(in1,size,in2,out) crowcata(in1, size[0], size[1], FloatComplex(in2,0), 1, 1, out); - -#define z2d0OpRcz2(in1,size,in2,out) zrowcata(in1, size[0], size[1], DoubleComplex(in2,0), 1, 1, out); - +#define s2c0OpRcc2(in1,size,in2,out) sfilla((float *)out,size[0],size[1],0); \ + c2c0OpRcc2(FloatComplexMatrix(in1,(float*)out,size[0]*size[1]),size,in2,out) +#define d2z0OpRcz2(in1,size,in2,out) dfilla((double *)out,size[0],size[1],0); \ + z2z0OpRcz2(DoubleComplexMatrix(in1,(double *)out,size[0]*size[1]),size,in2,out) +#define c2s0OpRcc2(in1,size,in2,out) { floatComplex temp = FloatComplex(in2,0); \ + c2c0OpRcc2(in1, size, temp, out) \ + } +#define z2d0OpRcz2(in1,size,in2,out) { doubleComplex temp = DoubleComplex(in2,0); \ + z2z0OpRcz2(in1, size, temp, out) \ + } /* Scalar-Matrix */ /* Same type */ -#define s0s2OpRcs2(in1,in2,size,out) srowcata(in1, 1, 1, in2, size[0], size[1], out); +#define s0s2OpRcs2(in1,in2,size,out) scolumncata(in1, 1, 1, in2, size[0], size[1], out); -#define d0d2OpRcd2(in1,in2,size,out) drowcata(in1, 1, 1, in2, size[0], size[1], out); +#define d0d2OpRcd2(in1,in2,size,out) dcolumncata(in1, 1, 1, in2, size[0], size[1], out); -#define c0c2OpRcc2(in1,in2,size,out) crowcata(in1, 1, 1, in2, size[0], size[1], out); +#define c0c2OpRcc2(in1,in2,size,out) ccolumncata(in1, 1, 1, in2, size[0], size[1], out); -#define z0z2OpRcz2(in1,in2,size,out) zrowcata(in1, 1, 1, in2, size[0], size[1], out); +#define z0z2OpRcz2(in1,in2,size,out) zcolumncata(in1, 1, 1, in2, size[0], size[1], out); /* Different type */ -#define s0c2OpRcc2(in1,in2,size,out) crowcata(FloatComplex(in1,0), 1, 1, in2, size[0], size[1], out); - -#define d0z2OpRcz2(in1,in2,size,out) zrowcata(DoubleComplex(in1,0), 1, 1, in2, size[0], size[1], out); +#define s0c2OpRcc2(in1,in2,size,out) c0c2OpRcc2(FloatComplex(in1,0),in2,size,out) -#define c0s2OpRcc2(in1,in2,size,out) crowcata(in1, 1, 1, FloatComplexMatrix(in2,0,size[0]*size[1]), size[0], size[1], out); +#define d0z2OpRcz2(in1,in2,size,out) z0z2OpRcz2(DoubleComplex(in1,0),in2,size,out) -#define z0d2OpRcz2(in1,in2,size,out) zrowcata(in1, 1, 1, DoubleComplexMatrix(in2,0,size[0]*size[1]), size[0], size[1], out); +#define c0s2OpRcc2(in1,in2,size,out) sfilla((float*)out,size[0],size[1],0); \ + c0c2OpRcc2(in1,FloatComplexMatrix(in2,(float*)out,size[0]*size[1]),size,out) +#define z0d2OpRcz2(in1,in2,size,out) dfilla((double*)out,size[0],size[1],0); \ + z0z2OpRcz2(in1,DoubleComplexMatrix(in2,(double*)out,size[0]*size[1]),size,out) #endif /* !__INT_OPRC_H__ */ |