From 9e5793a7b05b23e6044a6d7a9ddd5db39ba375f0 Mon Sep 17 00:00:00 2001 From: yash1112 Date: Fri, 7 Jul 2017 21:20:49 +0530 Subject: sci2c arduino updated --- 2.3-1/src/c/matrixOperations/powm/zpowma.c | 64 ++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 2.3-1/src/c/matrixOperations/powm/zpowma.c (limited to '2.3-1/src/c/matrixOperations/powm/zpowma.c') diff --git a/2.3-1/src/c/matrixOperations/powm/zpowma.c b/2.3-1/src/c/matrixOperations/powm/zpowma.c new file mode 100644 index 00000000..0de56475 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/powm/zpowma.c @@ -0,0 +1,64 @@ +/* + * 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 +#include "matrixPow.h" +#include "spec.h" +#include "pow.h" +#include "matrixTranspose.h" +#include "conj.h" +#include "matrixInversion.h" +#include "matrixMultiplication.h" + +void zpowma(doubleComplex* in, int rows, doubleComplex power, doubleComplex* out){ + int i=0, j=0; + int hermitian=0; + doubleComplex *eigenvalues,*eigenvectors,*tmp; + + /* Data initialization */ + eigenvalues = (doubleComplex*)malloc((unsigned int)(rows*rows)*sizeof(doubleComplex)); + eigenvectors = (doubleComplex*)malloc((unsigned int)(rows*rows)*sizeof(doubleComplex)); + tmp = (doubleComplex*)malloc((unsigned int)(rows*rows)*sizeof(doubleComplex)); + + /* hermitian test*/ + for(i=0;i