diff options
author | torset | 2009-01-29 15:32:39 +0000 |
---|---|---|
committer | torset | 2009-01-29 15:32:39 +0000 |
commit | 8d8ec5b2681da7579851dc0e44f2d2b909195e1e (patch) | |
tree | b4bf9dae35549d5699dca75298379909ee9dc560 /src/operations/interface | |
parent | e1bbfe0b1363205c11bda68e88cb5246659e066a (diff) | |
download | scilab2c-8d8ec5b2681da7579851dc0e44f2d2b909195e1e.tar.gz scilab2c-8d8ec5b2681da7579851dc0e44f2d2b909195e1e.tar.bz2 scilab2c-8d8ec5b2681da7579851dc0e44f2d2b909195e1e.zip |
Update
Diffstat (limited to 'src/operations/interface')
-rw-r--r-- | src/operations/interface/int_OpDotSlash.h | 45 | ||||
-rw-r--r-- | src/operations/interface/int_OpSlash.h | 24 |
2 files changed, 43 insertions, 26 deletions
diff --git a/src/operations/interface/int_OpDotSlash.h b/src/operations/interface/int_OpDotSlash.h index 87c79a81..a0f097de 100644 --- a/src/operations/interface/int_OpDotSlash.h +++ b/src/operations/interface/int_OpDotSlash.h @@ -38,62 +38,71 @@ #define s0s2OpDotSlashs2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=in1/in2[i];} + sinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=in1*out[i];} #define d0d2OpDotSlashd2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=in1/in2[i];} + dinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=in1*out[i];} #define c0c2OpDotSlashc2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(in1,in2[i]);} + cinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1,out[i]);} #define z0z2OpDotSlashz2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(in1,in2[i]);} + zinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1,out[i]);} #define s0c2OpDotSlashc2(in1,in2,size,out) c0c2OpDotSlashc2(FloatComplex(in1,0),in2,size,out) -/* On transforme d0 en z0 */ -#define d0z2OpDotSlashz2(in1,in2,size,out) z0z2OpDotSlashz2(DoubleComplex(in1,0),in2,size,out) +#define d0z2OpDotSlashz2(in1,in2,size,out) z0z2OpDotSlashz2(DoubleComplex(in1,0),in2,size,out) +/* FIXME: malloc */ #define c0s2OpDotSlashc2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(in1,FloatComplex(in2[i],0));} + float* temp = malloc((uint)(size[0]*size[1])*sizeof(float));\ + sinverma(in2,temp,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1,FloatComplex(temp[i],0));} +/* FIXME: malloc */ #define z0d2OpDotSlashz2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(in1,DoubleComplex(in2[i],0));} + double* temp = malloc((uint)(size[0]*size[1])*sizeof(double));\ + dinverma(in2,temp,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1,DoubleComplex(temp[i],0));} /* Matrix / Scalar */ #define s2s0OpDotSlashs2(in1,size,in2,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]/in2;} + for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]/in2;} #define d2d0OpDotSlashd2(in1,size,in2,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]/in2;} + for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]/in2;} #define c2c0OpDotSlashc2(in1,size,in2,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(in1[i],in2);} + for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(in1[i],in2);} #define z2z0OpDotSlashz2(in1,size,in2,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(in1[i],in2);} + for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(in1[i],in2);} #define s2c0OpDotSlashc2(in1,size,in2,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(FloatComplex(in1[i],0),in2);} + for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(FloatComplex(in1[i],0),in2);} #define d2z0OpDotSlashz2(in1,size,in2,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(DoubleComplex(in1[i],0),in2);} + for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(DoubleComplex(in1[i],0),in2);} #define c2s0OpDotSlashc2(in1,size,in2,out) c2c0OpDotSlashc2(in1,size,FloatComplex(in2,0),out) @@ -114,16 +123,16 @@ #define z2z2OpDotSlashz2(in1,size1,in2,size2,out) zrdiva(in1,in2,size2[0]*size2[1],out) -#define c2s2OpDotSlashc2(in1,size1,in2,size2,out) {int i=0;\ +#define c2s2OpDotSlashc2(in1,size1,in2,size2,out) {int i=0;\ for (i=0;i<size1[0]*size2[1];i++) out[i]=crdivs(in1[i],FloatComplex(in2[i],0));} -#define s2c2OpDotSlashc2(in1,size1,in2,size2,out) {int i=0;\ +#define s2c2OpDotSlashc2(in1,size1,in2,size2,out) {int i=0;\ for (i=0;i<size1[0]*size2[1];i++) out[i]=crdivs(FloatComplex(in1[i],0),in2[i]);} -#define z2d2OpDotSlashz2(in1,size1,in2,size2,out) {int i=0;\ +#define z2d2OpDotSlashz2(in1,size1,in2,size2,out) {int i=0;\ for (i=0;i<size1[0]*size2[1];i++) out[i]=zrdivs(in1[i],DoubleComplex(in2[i],0));} -#define d2z2OpDotSlashz2(in1,size1,in2,size2,out) {int i=0;\ +#define d2z2OpDotSlashz2(in1,size1,in2,size2,out) {int i=0;\ for (i=0;i<size1[0]*size2[1];i++) out[i]=zrdivs(DoubleComplex(in1[i],0),in2[i]);} diff --git a/src/operations/interface/int_OpSlash.h b/src/operations/interface/int_OpSlash.h index 40c135e5..440b05a0 100644 --- a/src/operations/interface/int_OpSlash.h +++ b/src/operations/interface/int_OpSlash.h @@ -38,19 +38,23 @@ #define s0s2OpSlashs2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=in1/in2[i];} + sinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=in1*out[i];} #define d0d2OpSlashd2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=in1/in2[i];} + dinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=in1*out[i];} #define c0c2OpSlashc2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(in1,in2[i]);} + cinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1,out[i]);} #define z0z2OpSlashz2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(in1,in2[i]);} + zinverma(in2,out,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1,out[i]);} @@ -60,13 +64,17 @@ #define d0z2OpSlashz2(in1,in2,size,out) z0z2OpSlashz2(DoubleComplex(in1,0),in2,size,out) - +/* FIXME: malloc */ #define c0s2OpSlashc2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=crdivs(in1,FloatComplex(in2[i],0));} - + float* temp = malloc((uint)(size[0]*size[1])*sizeof(float));\ + sinverma(in2,temp,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1,FloatComplex(temp[i],0));} +/* FIXME: malloc */ #define z0d2OpSlashz2(in1,in2,size,out) {int i=0;\ - for (i=0;i<size[0]*size[1];i++) out[i]=zrdivs(in1,DoubleComplex(in2[i],0));} + double* temp = malloc((uint)(size[0]*size[1])*sizeof(double));\ + dinverma(in2,temp,size[0]);\ + for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1,DoubleComplex(temp[i],0));} /* Matrix / Scalar */ |