summaryrefslogtreecommitdiff
path: root/src/operations/interface
diff options
context:
space:
mode:
authortorset2009-01-29 15:32:39 +0000
committertorset2009-01-29 15:32:39 +0000
commit8d8ec5b2681da7579851dc0e44f2d2b909195e1e (patch)
treeb4bf9dae35549d5699dca75298379909ee9dc560 /src/operations/interface
parente1bbfe0b1363205c11bda68e88cb5246659e066a (diff)
downloadscilab2c-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.h45
-rw-r--r--src/operations/interface/int_OpSlash.h24
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 */