diff options
author | Ankit Raj | 2017-06-21 10:26:59 +0530 |
---|---|---|
committer | Ankit Raj | 2017-06-21 10:26:59 +0530 |
commit | a555820564d9f2e95ca8c97871339d3a5a2081c3 (patch) | |
tree | adb074b66a8e6750209880e6932305ce0a94c8bf /2.3-1/src/c/signalProcessing/levin/levinUtils.h | |
download | Scilab2C-a555820564d9f2e95ca8c97871339d3a5a2081c3.tar.gz Scilab2C-a555820564d9f2e95ca8c97871339d3a5a2081c3.tar.bz2 Scilab2C-a555820564d9f2e95ca8c97871339d3a5a2081c3.zip |
Updated Scilab2C
Diffstat (limited to '2.3-1/src/c/signalProcessing/levin/levinUtils.h')
-rw-r--r-- | 2.3-1/src/c/signalProcessing/levin/levinUtils.h | 71 |
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); + + + + |