diff options
author | siddhu8990 | 2017-06-21 15:51:35 +0530 |
---|---|---|
committer | siddhu8990 | 2017-06-21 15:51:35 +0530 |
commit | 2c3b9e1055c8c9dfe874df3b7743c4a765042316 (patch) | |
tree | b3df485fe31ad42fde9bb20d553c162c94f27b08 /src/c/linearAlgebra/spec/sspeca.c | |
parent | 7dd99346700740df9480b1f47221e24afc32371d (diff) | |
parent | d8c9e974d3ce553198b487dadc51c7612e92de85 (diff) | |
download | scilab2c-2c3b9e1055c8c9dfe874df3b7743c4a765042316.tar.gz scilab2c-2c3b9e1055c8c9dfe874df3b7743c4a765042316.tar.bz2 scilab2c-2c3b9e1055c8c9dfe874df3b7743c4a765042316.zip |
Merged new linear algebra functions
Diffstat (limited to 'src/c/linearAlgebra/spec/sspeca.c')
-rw-r--r-- | src/c/linearAlgebra/spec/sspeca.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/c/linearAlgebra/spec/sspeca.c b/src/c/linearAlgebra/spec/sspeca.c new file mode 100644 index 00000000..50751a29 --- /dev/null +++ b/src/c/linearAlgebra/spec/sspeca.c @@ -0,0 +1,34 @@ +/* + * 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 + * + */ + +#include <stdlib.h> +#include "spec.h" + + + +void sspeca(float* in, int rows, float* out){ + /* As we use Lapack to find the eigenvalues, we must cast the float input into double + and the doubleComplex output of dspeca into floatComplex*/ + + int i; + double* dblin; + double* dblout; + + dblin=(double*)malloc((unsigned int)(rows*rows)*sizeof(double)); + dblout=(double*)malloc((unsigned int)rows*sizeof(double)); + + for (i=0;i<rows*rows;i++) dblin[i]=(double)in[i]; + + dspeca(dblin,rows,dblout); + + for (i=0;i<rows;i++) out[i]=(float)dblout[i]; +} |