summaryrefslogtreecommitdiff
path: root/2.3-1/src/c/signalProcessing/levin/levinUtils.h
diff options
context:
space:
mode:
authorSiddhesh Wani2015-05-25 14:46:31 +0530
committerSiddhesh Wani2015-05-25 14:46:31 +0530
commit6a320264c2de3d6dd8cc1d1327b3c30df4c8cb26 (patch)
tree1b7bd89fdcfd01715713d8a15db471dc75a96bbf /2.3-1/src/c/signalProcessing/levin/levinUtils.h
downloadScilab2C-6a320264c2de3d6dd8cc1d1327b3c30df4c8cb26.tar.gz
Scilab2C-6a320264c2de3d6dd8cc1d1327b3c30df4c8cb26.tar.bz2
Scilab2C-6a320264c2de3d6dd8cc1d1327b3c30df4c8cb26.zip
Original Version
Diffstat (limited to '2.3-1/src/c/signalProcessing/levin/levinUtils.h')
-rw-r--r--2.3-1/src/c/signalProcessing/levin/levinUtils.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/2.3-1/src/c/signalProcessing/levin/levinUtils.h b/2.3-1/src/c/signalProcessing/levin/levinUtils.h
new file mode 100644
index 00000000..62df88f2
--- /dev/null
+++ b/2.3-1/src/c/signalProcessing/levin/levinUtils.h
@@ -0,0 +1,71 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008 - INRIA - Arnaud TORSET
+ *
+ * This file must be used under the terms of the CeCILL.
+ * This source file is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at
+ * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ *
+ */
+
+
+
+
+
+/* creation of arrays used in levin */
+
+void dr1(double *in,int lines,int columns, int n, double * out);
+void dr2(double *in,int lines,int columns, int n, double * out);
+void dr3(double *in,int lines,int columns, int n, double * out);
+void dr4(double *in,int lines,int columns, int n, double * out);
+void sr1(float *in,int lines,int columns, int n, float * out);
+void sr2(float *in,int lines,int columns, int n, float * out);
+void sr3(float *in,int lines,int columns, int n, float * out);
+void sr4(float *in,int lines,int columns, int n, float * out);
+
+
+
+/*multiplications used in levin program, differents from the classic multiplication*/
+/*
+ in1,in2 : matrices to multiply
+ n :
+ columns : number of columns of in2
+ ind_boucle : indice of the loop
+ out : result matrix
+ lines : number of lines of the result
+ deb_out : 0 if the result start to the indice 0, 1 otherwise
+ choix : 'u' or 'd', depends of in2. We take either the k first elements of in2 ('u') or the k last ('d'),
+ k is a nomber which depends of the indice of loop, the columns ...
+ */
+void dlevinmul(double* in1, double* in2, int n, int columns, int ind_boucle, double* out, int lines, int deb_out,char choix);
+void dlevinmul2(double* in1, double *in2,int ind_boucle,int n,int columns,double* out);
+void slevinmul(float* in1, float* in2, int n, int columns, int ind_boucle, float* out, int lines, int deb_out,char choix);
+void slevinmul2(float* in1, float *in2,int ind_boucle,int n,int columns,float* out);
+
+
+/*take the values of sig wanted*/
+void dlevinsig(double *sig,int n, int columns, int lines, double *sig1);
+void slevinsig(float *sig,int n, int columns, int lines, float *sig1);
+
+/*a subtraction used in levin program, is different from the classic subtraction cause of the indices*/
+/*
+ in1,in2 : matrices to subtract
+ n :
+ columns : number of columns of in2
+ deb_in : place of the first element of in1
+ ind_boucle : indice of the loop
+ out : result matrix
+ */
+void dlevinsub(double* in1, double* in2, int n, int columns, int deb_in, int ind_boucle, double* out);
+void slevinsub(float* in1, float* in2, int n, int columns, int deb_in, int ind_boucle, float* out);
+
+
+/*used for the multiplication by z which is equal to step forward*/
+void ddecalage(double* in, int deb_in,int n,int columns,double * out);
+void sdecalage(float* in, int deb_in,int n,int columns,float * out);
+
+
+
+