diff options
Diffstat (limited to '2.3-1')
240 files changed, 5140 insertions, 4013 deletions
diff --git a/2.3-1/demos/FULLRF.dem.sce b/2.3-1/demos/FULLRF.dem.sce new file mode 100644 index 00000000..3aeeba20 --- /dev/null +++ b/2.3-1/demos/FULLRF.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testfullrf/testfullrf.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testfullrf"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/FilterResponse.dem.sce b/2.3-1/demos/FilterResponse.dem.sce new file mode 100644 index 00000000..7104836d --- /dev/null +++ b/2.3-1/demos/FilterResponse.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +//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 +// Author: Ankit Raj +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// + + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/test_filterResponse/scilabcode/main.sci",TMPDIR,SCI2CHOME+"/tests/unit_tests/test_filterResponse/scilabcode"); diff --git a/2.3-1/demos/GIVENS.dem.sce b/2.3-1/demos/GIVENS.dem.sce new file mode 100644 index 00000000..0ab2d2a7 --- /dev/null +++ b/2.3-1/demos/GIVENS.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testgivens/testgivens.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testgivens"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/HESS.dem.sce b/2.3-1/demos/HESS.dem.sce new file mode 100644 index 00000000..4c70d67b --- /dev/null +++ b/2.3-1/demos/HESS.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testhess/testhess.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testhess"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/HOUSEHOLDER.dem.sce b/2.3-1/demos/HOUSEHOLDER.dem.sce new file mode 100644 index 00000000..74474071 --- /dev/null +++ b/2.3-1/demos/HOUSEHOLDER.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testhouseholder/testhouseholder.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testhouseholder"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/Jacobi.dem.sce b/2.3-1/demos/Jacobi.dem.sce new file mode 100644 index 00000000..0b1618c4 --- /dev/null +++ b/2.3-1/demos/Jacobi.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Ankit Raj +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/test_jacobi/scilabcode/main.sci",TMPDIR,SCI2CHOME+"/tests/unit_tests/test_jacobi/scilabcode"); + diff --git a/2.3-1/demos/NORM.dem.sce b/2.3-1/demos/NORM.dem.sce new file mode 100644 index 00000000..1de3feba --- /dev/null +++ b/2.3-1/demos/NORM.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testnorm/testnorm.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testnorm"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/QR.dem.sce b/2.3-1/demos/QR.dem.sce new file mode 100644 index 00000000..7d2fc1a3 --- /dev/null +++ b/2.3-1/demos/QR.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testqr/testQR.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testqr"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/ROWCOMP.dem.sce b/2.3-1/demos/ROWCOMP.dem.sce new file mode 100644 index 00000000..6557eb4c --- /dev/null +++ b/2.3-1/demos/ROWCOMP.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testrowcomp/testrcomp.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testrowcomp"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/SPEC.dem.sce b/2.3-1/demos/SPEC.dem.sce new file mode 100644 index 00000000..423c1520 --- /dev/null +++ b/2.3-1/demos/SPEC.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testspec/testspec.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testspec"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/SQROOT.dem.sce b/2.3-1/demos/SQROOT.dem.sce new file mode 100644 index 00000000..676d5e52 --- /dev/null +++ b/2.3-1/demos/SQROOT.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testsqroot/testsqroot.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testsqroot"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/SVA.dem.sce b/2.3-1/demos/SVA.dem.sce new file mode 100644 index 00000000..3ced74f5 --- /dev/null +++ b/2.3-1/demos/SVA.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testsva/testsva.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/testsva"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/SVD.dem.sce b/2.3-1/demos/SVD.dem.sce new file mode 100644 index 00000000..aa35cce9 --- /dev/null +++ b/2.3-1/demos/SVD.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// 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 +// Author: Sandeep Gupta +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/test_svd/testsvd.sci", TMPDIR,SCI2CHOME+"/tests/unit_tests/testLinearAlgebra/test_svd"); + +editor(TMPDIR+"/main.c"); diff --git a/2.3-1/demos/analogFilter.dem.sce b/2.3-1/demos/analogFilter.dem.sce new file mode 100644 index 00000000..674c9543 --- /dev/null +++ b/2.3-1/demos/analogFilter.dem.sce @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +//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 +// Author: Ankit Raj +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// + + + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/test_analogFilters/scilabcode/main.sci",TMPDIR,SCI2CHOME+"/tests/unit_tests/test_analogFilters/scilabcode"); diff --git a/2.3-1/demos/analog_in_out_volt.dem.sce b/2.3-1/demos/analog_in_out_volt.dem.sce new file mode 100644 index 00000000..ca6da611 --- /dev/null +++ b/2.3-1/demos/analog_in_out_volt.dem.sce @@ -0,0 +1,7 @@ +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testArduino/analog_in_check_volt.sci", TMPDIR, SCI2CHOME+"/tests/unit_tests/testArduino", "All", "make" ,"Arduino", "uno"); + +editor([TMPDIR+"/setup_arduino.cpp";TMPDIR+"/loop_arduino.cpp"]); diff --git a/2.3-1/demos/analog_out.dem.sce b/2.3-1/demos/analog_out.dem.sce new file mode 100644 index 00000000..65a1e279 --- /dev/null +++ b/2.3-1/demos/analog_out.dem.sce @@ -0,0 +1,7 @@ +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testArduino/analog_check.sci", TMPDIR, SCI2CHOME+"/tests/unit_tests/testArduino", "All", "make" ,"Arduino", "uno"); + +editor([TMPDIR+"/setup_arduino.cpp";TMPDIR+"/loop_arduino.cpp"]); diff --git a/2.3-1/demos/blink.dem.sce b/2.3-1/demos/blink.dem.sce new file mode 100644 index 00000000..b01d3dae --- /dev/null +++ b/2.3-1/demos/blink.dem.sce @@ -0,0 +1,7 @@ +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testArduino/blink_13.sci", TMPDIR, SCI2CHOME+"/tests/unit_tests/testArduino", "All", "make" ,"Arduino", "uno"); + +editor([TMPDIR+"/setup_arduino.cpp";TMPDIR+"/loop_arduino.cpp"]); diff --git a/2.3-1/demos/dc_motor.dem.sce b/2.3-1/demos/dc_motor.dem.sce new file mode 100644 index 00000000..36c0badd --- /dev/null +++ b/2.3-1/demos/dc_motor.dem.sce @@ -0,0 +1,7 @@ +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testArduino/board_test_release2.sci", TMPDIR, SCI2CHOME+"/tests/unit_tests/testArduino", "All", "make" ,"Arduino", "uno"); + +editor([TMPDIR+"/setup_arduino.cpp";TMPDIR+"/loop_arduino.cpp"]); diff --git a/2.3-1/demos/digital_in.dem.sce b/2.3-1/demos/digital_in.dem.sce new file mode 100644 index 00000000..2eb4c3a0 --- /dev/null +++ b/2.3-1/demos/digital_in.dem.sce @@ -0,0 +1,7 @@ +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testArduino/digital_in_check.sci", TMPDIR, SCI2CHOME+"/tests/unit_tests/testArduino", "All", "make" ,"Arduino", "uno"); + +editor([TMPDIR+"/setup_arduino.cpp";TMPDIR+"/loop_arduino.cpp"]); diff --git a/2.3-1/demos/master_write.dem.sce b/2.3-1/demos/master_write.dem.sce new file mode 100644 index 00000000..cdf522db --- /dev/null +++ b/2.3-1/demos/master_write.dem.sce @@ -0,0 +1,7 @@ +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/testArduino/i2c_master.sci", TMPDIR, SCI2CHOME+"/tests/unit_tests/testArduino", "All", "make" ,"Arduino", "uno"); + +editor([TMPDIR+"/setup_arduino.cpp";TMPDIR+"/loop_arduino.cpp"]); diff --git a/2.3-1/demos/scilab2c.dem.gateway.sce b/2.3-1/demos/scilab2c.dem.gateway.sce index 71372e25..b572166c 100644 --- a/2.3-1/demos/scilab2c.dem.gateway.sce +++ b/2.3-1/demos/scilab2c.dem.gateway.sce @@ -15,7 +15,30 @@ demopath = get_absolute_file_path("scilab2c.dem.gateway.sce"); subdemolist = ["Trigonometric Identity" , "TrigonometricIdentity.dem.sce"; "Linear Regression" , "LinearRegression.dem.sce"; "Symbols", "Symbols.dem.sce"; - "High Pass Filter", "Filter.dem.sce"; + "High Pass Filter", "Filter.dem.sce"; + "Jacobi functions","Jacobi.dem.sce"; + "Analog Filters","analogFilter.dem.sce"; + "Discrete Cosine Transform" , "test_dct.dem.sce"; + "Inverse Cosine Transform" , "test_idct.dem.sce"; + "String Functions","string.dem.sce"; + "Filter Responses","FilterResponse.dem.sce"; + "Singular Value Decomposition", "SVD.dem.sce"; + "Singular Value Approximation", "SVA.dem.sce"; + "SQROOT", "SQROOT.dem.sce"; + "SPEC", "SPEC.dem.sce"; + "ROWCOMP","ROWCOMP.dem.sce"; + "QR Decomposition", "QR.dem.sce"; + "NORM type 2", "NORM.dem.sce"; + "HOUSEHOLDER","HOUSEHOLDER.dem.sce"; + "HESS", "HESS.dem.sce"; + "GIVENS Transformation", "GIVENS.dem.sce"; + "Full rank factorization","FULLRF.dem.sce"; + "Arduino blink", "blink.dem.sce"; + "Arduino digital input", "digital_in.dem.sce"; + "Arduino analog voltage i/o", "analog_in_out_volt.dem.sce"; + "Arduino analog output", "analog_out.dem.sce"; + "Arduino DC motor", "dc_motor.dem.sce"; + "Arduino Master write", "master_write.dem.sce"; ]; -subdemolist(:,2) = demopath + subdemolist(:,2);
\ No newline at end of file +subdemolist(:,2) = demopath + subdemolist(:,2); diff --git a/2.3-1/demos/string.dem.sce b/2.3-1/demos/string.dem.sce new file mode 100644 index 00000000..db90905e --- /dev/null +++ b/2.3-1/demos/string.dem.sce @@ -0,0 +1,16 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +//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 +// Author: Ankit Raj +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME+"/tests/unit_tests/test_string/scilabcode/main.sci",TMPDIR,SCI2CHOME+"/tests/unit_tests/test_string/scilabcode"); diff --git a/2.3-1/demos/test_dct.dem.sce b/2.3-1/demos/test_dct.dem.sce new file mode 100644 index 00000000..b1b62475 --- /dev/null +++ b/2.3-1/demos/test_dct.dem.sce @@ -0,0 +1,18 @@ +// +// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +// Copyright (C) 2010-2010 - DIGITEO - Bruno JOFRET +// +// 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 +// Author : Ukasha Noor +// + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME + "/tests/unit_tests/test01_DCT/scilabcode/main.sci", TMPDIR,SCI2CHOME + "/tests/unit_tests/test01_DCT/scilabcode"); + diff --git a/2.3-1/demos/test_idct.dem.sce b/2.3-1/demos/test_idct.dem.sce new file mode 100644 index 00000000..b1d33392 --- /dev/null +++ b/2.3-1/demos/test_idct.dem.sce @@ -0,0 +1,18 @@ +// +// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +// Copyright (C) 2010-2010 - DIGITEO - Bruno JOFRET +// +// 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 +// Author : Ukasha Noor +// + +lines(0); + +global SCI2CHOME + +scilab2c(SCI2CHOME + "/tests/unit_tests/test02_IDCT/scilabcode/testidct.sci", TMPDIR,SCI2CHOME + "/tests/unit_tests/test02_IDCT/scilabcode"); + diff --git a/2.3-1/etc/scilab2c.start b/2.3-1/etc/scilab2c.start index 2f364c68..91a5861e 100644 --- a/2.3-1/etc/scilab2c.start +++ b/2.3-1/etc/scilab2c.start @@ -44,10 +44,10 @@ end // ============================================================================= if or(getscilabmode() == ["NW";"STD"]) then - mprintf("\tLoad demos\n"); + mprintf("\tLoad demos\n"); pathdemos = pathconvert(root_tlbx + "/demos/scilab2c.dem.gateway.sce",%f,%t); -// add_demo(gettext("Scilab2C"),pathdemos); + add_demo(gettext("Scilab2C"),pathdemos); clear pathdemos ; end diff --git a/2.3-1/includes/lapack.h b/2.3-1/includes/lapack.h index 5f12bc25..d3f6cb32 100644 --- a/2.3-1/includes/lapack.h +++ b/2.3-1/includes/lapack.h @@ -195,6 +195,13 @@ extern doubleComplex zgesvd_( char* , char* , int* , int* ,doubleComplex *,\ int* , double* ,doubleComplex* , int* ,doubleComplex* , int* ,\ doubleComplex* , int* , double* , int* ); +/*USed in QR decompsition*/ +extern double dgeqrf_(int *,int *,double *,int *,double *,double *,int *,int *); +extern double dgeqpf_(int *,int *,double *,int *,int *,double *,double *,int *); +extern double dorgqr_(int *,int *,int *,double *,int *,double *,double *,int *,int *); +extern void dlaset_(char *,int *,int *,double *,double *,double *,int *); + + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/2.3-1/includes/sci2clib.h b/2.3-1/includes/sci2clib.h index 6be9eabf..0a15a4f5 100644 --- a/2.3-1/includes/sci2clib.h +++ b/2.3-1/includes/sci2clib.h @@ -470,6 +470,11 @@ extern "C" { #include "int_norm.h" #include "norm.h" +/*interface Toeplitz */ +#include "toeplitz.h" +#include "int_toeplitz.h" + + /* SIGNAL PROCESSING */ @@ -681,8 +686,27 @@ extern "C" { #include "hess.h" /* Linear Algebra - Hess function */ #include "int_hess.h" -#include "sva.h" -#include "int_sva.h" /*Linear Algebra - SVA function */ +#include "sva.h" /* Linear Algebra - SVA function */ +#include "int_sva.h" + +#include "sqroot.h" /* Linear Algebra - Sqroot function */ +#include "int_sqroot.h" + +#include "givens.h" /* Linear Algebra - Givens Function */ +#include "int_givens.h" + +#include "householder.h" /* Linear Algebra - Householder function */ +#include "int_householder.h" + +#include "fullrf.h" /* Linear Algebra - Full rank factoziation */ +#include "int_fullrf.h" + +#include "rowcomp.h" /* Linear Algebra - row compression, range */ +#include "int_rowcomp.h" + + +#include "qr.h" /* Linear Algebra - QR decomposition */ +#include "int_qr.h" /*Functions related to opencv*/ /*#include "cvcore.hpp" diff --git a/2.3-1/macros/ASTManagement/%funcall_string.sci b/2.3-1/macros/ASTManagement/%funcall_string.sci index 0ee97016..fc4b929b 100644 --- a/2.3-1/macros/ASTManagement/%funcall_string.sci +++ b/2.3-1/macros/ASTManagement/%funcall_string.sci @@ -5,6 +5,8 @@ function txt=%funcall_string(F) // rhs : a list // name : string, the name of the function // lhsnb: number, the number of function lhs +// Modified By: Ukasha Noor + if F.name <> 'disp' txt=['Funcall : '+F.name diff --git a/2.3-1/macros/ASTManagement/AST2Ccode.sci b/2.3-1/macros/ASTManagement/AST2Ccode.sci index 563f3133..20aa999e 100644 --- a/2.3-1/macros/ASTManagement/AST2Ccode.sci +++ b/2.3-1/macros/ASTManagement/AST2Ccode.sci @@ -11,6 +11,7 @@ function AST2Ccode(FileInfoDatFile) // // Status: // 11-May-2007 -- Raffaele Nutricato: Author. +// 15-June-2017 -- Ukasha Noor: Revised By // // Copyright 2007 Raffaele Nutricato. // Contact: raffaele.nutricato@tiscali.it @@ -42,6 +43,8 @@ load(FileInfo.SharedInfoDatFile,'SharedInfo'); nxtscifunname = SharedInfo.NextSCIFunName; nxtscifunnumber = SharedInfo.NextSCIFunNumber; ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; +SharedInfo.Function_list = []; +SharedInfo.Function_list_index = 1; // --------------------------------- // --- Parameter Initialization. --- @@ -64,6 +67,8 @@ STACKDEDUG = 0; // 1 -> Every Pop and Push operation on the stack, the stack con global disp_isthere disp_isthere = 0; + +FName = null // ------------------------------------- // --- End parameter Initialization. --- // ------------------------------------- @@ -144,9 +149,13 @@ while ~meof(fidAST) case 'EndOperation' then [disp_isthere,FileInfo,SharedInfo] = AST_HandleEndGenFun(disp_isthere,FileInfo,SharedInfo,'Operation'); case 'EndFuncall' then + if rc_count > 0 & cc_count == 0 + [EqualInArgName,EqualInArgScope,EqualNInArg,FName] = AST_HandleFuncArray(FileInfo,SharedInfo); + elseif cc_count > 0 + [EqualInArgName,EqualInArgScope,EqualNInArg,FName] = AST_HandleFuncArray2D(FileInfo,SharedInfo); + else [disp_isthere,FileInfo,SharedInfo] = AST_HandleEndGenFun(disp_isthere,FileInfo,SharedInfo,'Funcall'); - disp(disp_isthere); - + end // -------------- // --- Equal. --- // -------------- @@ -156,10 +165,10 @@ while ~meof(fidAST) //NUT: ho miste ins e variabili, per esempio [c(1,1), a] = twooutfun(); //NUT: in questo caso solo una delle due equal va scartata. if rc_count > 0 & cc_count == 0 - [FileInfo,SharedInfo] = AST_HandleFunRC(FileInfo,SharedInfo); + [FileInfo,SharedInfo] = AST_HandleFunRC(FName,FileInfo,SharedInfo); rc_count = 0; elseif cc_count > 0 - [FileInfo,SharedInfo] = AST_HandleFunCC(cc_count,FileInfo,SharedInfo); + [FileInfo,SharedInfo] = AST_HandleFunCC(FName,cc_count,FileInfo,SharedInfo); rc_count = 0; cc_count = 0; else @@ -169,12 +178,12 @@ while ~meof(fidAST) end end disp_isthere = 0; + FName = null case 'Equal' then SharedInfo.Equal.Enabled = 1; // 1 means enabled -> we are inside an equal AST block. AST_PushASTStack(treeline); case 'Lhs :' then - disp(disp_isthere); if rc_count > 0 & cc_count == 0 SharedInfo.Equal.Lhs = 1; [EqualInArgName,EqualInArgScope,EqualNInArg] = AST_HandleRC(FileInfo,SharedInfo); @@ -292,6 +301,22 @@ while ~meof(fidAST) AST_PushASTStack(treeline); end end +// ------------------------------------ +// -----List of functions Used-------- +// ------------------------------------- + +SharedInfo.Function_list_index = SharedInfo.Function_list_index - 2; +SharedInfo.Function_list = SharedInfo.Function_list(1:SharedInfo.Function_list_index); +//To remove function repeatedly used---------- +x = size(unique(SharedInfo.Function_list)); +SharedInfo.Function_list_index = x(1); +SharedInfo.Function_list = unique(SharedInfo.Function_list); + +SharedInfo.Function_list = SharedInfo.Function_list(1:SharedInfo.Function_list_index); + + + + // -------------------------------------- // --- End main loop to read the AST. --- // -------------------------------------- diff --git a/2.3-1/macros/ASTManagement/AST_HandleCC.sci b/2.3-1/macros/ASTManagement/AST_HandleCC.sci index cc411549..897a06f1 100644 --- a/2.3-1/macros/ASTManagement/AST_HandleCC.sci +++ b/2.3-1/macros/ASTManagement/AST_HandleCC.sci @@ -8,7 +8,9 @@ // Author: Ukasha Noor // Organization: FOSSEE, IIT Bombay // Email: toolbox@scilab.in - +// This function is used for 2D array declaration +// This function extracts the input arguments in the array and check there Name and Scope. +// Then repush everything back to stack function [RhsNames,RhsScope,NRhs] = AST_HandleCC(FileInfo,SharedInfo) SCI2CNInArgCheck(argn(2),2,2) @@ -56,14 +58,6 @@ for cntpush = cntpop:-1:1 end -//for counterinputargs = 1:NRhs - //#RNU_RES_B - //disp(counterinputargs); - //PrintStringInfo('Input Argument Number '+string(counterinputargs)+': '+RhsNames(counterinputargs).Name,... - // ReportFileName,'file','y'); - //PrintStringInfo(' Scope: '+RhsNames(counterinputargs).Scope,... - // ReportFileName,'file','y'); - //#RNU_RES_E -//end + endfunction diff --git a/2.3-1/macros/ASTManagement/AST_HandleEndGenFun.sci b/2.3-1/macros/ASTManagement/AST_HandleEndGenFun.sci index 96830aa9..79ec976c 100644 --- a/2.3-1/macros/ASTManagement/AST_HandleEndGenFun.sci +++ b/2.3-1/macros/ASTManagement/AST_HandleEndGenFun.sci @@ -1,4 +1,3 @@ - function [disp_isthere,FileInfo,SharedInfo] = AST_HandleEndGenFun(disp_isthere,FileInfo,SharedInfo,ASTFunType) // function [FileInfo,SharedInfo] = AST_HandleEndGenFun(FileInfo,SharedInfo,ASTFunType) // ----------------------------------------------------------------- @@ -28,11 +27,13 @@ function [disp_isthere,FileInfo,SharedInfo] = AST_HandleEndGenFun(disp_isthere,F // // Status: // 11-Apr-2007 -- Raffaele Nutricato: Author. +// 15-June-2017 -- Ukasha Noor : Revised By // // Copyright 2007 Raffaele Nutricato. // Contact: raffaele.nutricato@tiscali.it // ----------------------------------------------------------------- + // ------------------------------ // --- Check input arguments. --- // ------------------------------ @@ -74,6 +75,10 @@ disp_isthere = 0; //NUT: verifica se ASTFunType e' veramente importante // #RNU_RES_E [ASTFunName,InArg,NInArg,OutArg,NOutArg] = AST_GetFuncallPrm(FileInfo,SharedInfo,ASTFunType); +if (ASTFunType=='Funcall') +SharedInfo.Function_list(SharedInfo.Function_list_index) = ASTFunName; +SharedInfo.Function_list_index = SharedInfo.Function_list_index + 1; +end NOutArg_mod = NOutArg if ASTFunName == 'OpLogAnd' AST_PushASTStack('&&'); @@ -127,8 +132,10 @@ NOutArg_mod = NOutArg PrintStringInfo(' ',ReportFileName,'both','y'); error(9999, 'SCI2CERROR: Unexpected number of output arguments for global function.'); end - elseif(ASTFunName == 'raspi' | ASTFunName == 'raspi_close') - SharedInfo.SkipNextFun = 1; + //To skip the functions for Raspberry Pi connections + elseif(ASTFunName == 'raspi' | ASTFunName == 'raspi_close' | ASTFunName == 'i2cdetect') + disp_isthere=1; // Skips the corresponding Lhs argument declaration + return // Skips the function call end // #RNU_RES_B @@ -142,8 +149,8 @@ NOutArg_mod = NOutArg if ASTFunName == '%sn' ASTFunName='modsn'; - end - + end + if (ASTFunName == 'OpEqual') FunTypeAnnot = ''; FunSizeAnnot = ''; diff --git a/2.3-1/macros/ASTManagement/AST_HandleFunCC.sci b/2.3-1/macros/ASTManagement/AST_HandleFunCC.sci index 1942c749..8669ad1f 100644 --- a/2.3-1/macros/ASTManagement/AST_HandleFunCC.sci +++ b/2.3-1/macros/ASTManagement/AST_HandleFunCC.sci @@ -8,11 +8,14 @@ // Author: Ukasha Noor // Organization: FOSSEE, IIT Bombay // Email: toolbox@scilab.in +// This function put the input elements of array in InArg and +// output in OutArg from the stack. +// Then finds the number of columns and rows in matrix and the type of matrix. +// The call the function to generate the C code for declaration. +function [FileInfo,SharedInfo] = AST_HandleFunCC(FName,NCol,FileInfo,SharedInfo) -function [FileInfo,SharedInfo] = AST_HandleFunCC(NCol,FileInfo,SharedInfo) - -SCI2CNInArgCheck(argn(2),3,3) +SCI2CNInArgCheck(argn(2),4,4) // ------------------------------ // --- Check input arguments. --- @@ -140,30 +143,56 @@ for i = 1:NInArg end -if com_type == 0 - PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); - OutArg(1).Type = InArg(1).Type; - OutArg(1).Size(1) = string(NCol); - OutArg(1).Size(2) = string(NRow); - OutArg(1).Dimension = 2; - OutArg(1).Value = InArg(1).Value; - OutArg(1).FindLike = InArg(1).FindLike; -elseif com_type == 1 - PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); - OutArg(1).Type = 'z'; - OutArg(1).Size(1) = string(NCol); - OutArg(1).Size(2) = string(NRow); - OutArg(1).Dimension = 2; - OutArg(1).Value = InArg(1).Value; - OutArg(1).FindLike = InArg(1).FindLike; +if FName <> null + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + if FName == 'float' + OutArg(1).Type = 's'; + elseif FName == 'uint8' + OutArg(1).Type = 'u8'; + elseif FName == 'int16' + OutArg(1).Type = 'i16'; + elseif FName == 'uint16' + OutArg(1).Type = 'u16'; + elseif FName == 'int8' + OutArg(1).Type = 'i8'; + elseif FName == 'uint32' + OutArg(1).Type = 'u32'; + elseif FName == 'int32' + OutArg(1).Type = 'i32'; + else + OutArg(1).Type = 'd'; + end + OutArg(1).Size(1) = string(NCol); + OutArg(1).Size(2) = string(NRow); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; else - PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); - OutArg(1).Type = 'c'; - OutArg(1).Size(1) = string(NCol); - OutArg(1).Size(2) = string(NRow); - OutArg(1).Dimension = 2; - OutArg(1).Value = InArg(1).Value; - OutArg(1).FindLike = InArg(1).FindLike; + if com_type == 0 + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + OutArg(1).Type = InArg(1).Type; + OutArg(1).Size(1) = string(NCol); + OutArg(1).Size(2) = string(NRow); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; + elseif com_type == 1 + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + OutArg(1).Type = 'z'; + OutArg(1).Size(1) = string(NCol); + OutArg(1).Size(2) = string(NRow); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; + else + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + OutArg(1).Type = 'c'; + OutArg(1).Size(1) = string(NCol); + OutArg(1).Size(2) = string(NRow); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; + end end //--- Check for output Argument in symbol table ---// diff --git a/2.3-1/macros/ASTManagement/AST_HandleFunRC.sci b/2.3-1/macros/ASTManagement/AST_HandleFunRC.sci index d3169249..a5885d57 100644 --- a/2.3-1/macros/ASTManagement/AST_HandleFunRC.sci +++ b/2.3-1/macros/ASTManagement/AST_HandleFunRC.sci @@ -8,10 +8,13 @@ // Author: Ukasha Noor // Organization: FOSSEE, IIT Bombay // Email: toolbox@scilab.in +// This function is used for 1D array declaration. +// Checks the input and output argumnets and put them in respective variables. +// Then calls the function to generate the C code for 1D array declaration. -function [FileInfo,SharedInfo] = AST_HandleFunRC(FileInfo,SharedInfo) +function [FileInfo,SharedInfo] = AST_HandleFunRC(FName,FileInfo,SharedInfo) -SCI2CNInArgCheck(argn(2),2,2) +SCI2CNInArgCheck(argn(2),3,3) // ------------------------------ // --- Check input arguments. --- @@ -142,30 +145,56 @@ for i = 1:NInArg end -if com_type == 0 - PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); - OutArg(1).Type = InArg(1).Type; - OutArg(1).Size(1) = '1' - OutArg(1).Size(2) = string(size_count); - OutArg(1).Dimension = 2; - OutArg(1).Value = InArg(1).Value; - OutArg(1).FindLike = InArg(1).FindLike; -elseif com_type == 1 - PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); - OutArg(1).Type = 'z'; - OutArg(1).Size(1) = '1' - OutArg(1).Size(2) = string(size_count); - OutArg(1).Dimension = 2; - OutArg(1).Value = InArg(1).Value; - OutArg(1).FindLike = InArg(1).FindLike; +if FName <> null + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + if FName == 'float' + OutArg(1).Type = 's'; + elseif FName == 'uint8' + OutArg(1).Type = 'u8'; + elseif FName == 'int16' + OutArg(1).Type = 'i16'; + elseif FName == 'uint16' + OutArg(1).Type = 'u16'; + elseif FName == 'int8' + OutArg(1).Type = 'i8'; + elseif FName == 'uint32' + OutArg(1).Type = 'u32'; + elseif FName == 'int32' + OutArg(1).Type = 'i32'; + else + OutArg(1).Type = 'd'; + end + OutArg(1).Size(1) = '1' + OutArg(1).Size(2) = string(size_count); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; else - PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); - OutArg(1).Type = 'c'; - OutArg(1).Size(1) = '1' - OutArg(1).Size(2) = string(size_count); - OutArg(1).Dimension = 2; - OutArg(1).Value = InArg(1).Value; - OutArg(1).FindLike = InArg(1).FindLike; + if com_type == 0 + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + OutArg(1).Type = InArg(1).Type; + OutArg(1).Size(1) = '1' + OutArg(1).Size(2) = string(size_count); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; + elseif com_type == 1 + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + OutArg(1).Type = 'z'; + OutArg(1).Size(1) = '1' + OutArg(1).Size(2) = string(size_count); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; + else + PrintStringInfo(' Generating Out Arg names.',ReportFileName,'file','y'); + OutArg(1).Type = 'c'; + OutArg(1).Size(1) = '1' + OutArg(1).Size(2) = string(size_count); + OutArg(1).Dimension = 2; + OutArg(1).Value = InArg(1).Value; + OutArg(1).FindLike = InArg(1).FindLike; + end end //--- Check for output Argument in symbol table ---// diff --git a/2.3-1/macros/ASTManagement/AST_HandleFuncArray.sci b/2.3-1/macros/ASTManagement/AST_HandleFuncArray.sci new file mode 100644 index 00000000..364e305e --- /dev/null +++ b/2.3-1/macros/ASTManagement/AST_HandleFuncArray.sci @@ -0,0 +1,63 @@ +function [RhsNames,RhsScope,NRhs,FName] = AST_HandleFuncArray(FileInfo,SharedInfo) +// Copyright (C) 2017 - IIT Bombay - FOSSEE + +// 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 +// Author: Ukasha Noor +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// This function is used for 1D array declaration. + +SCI2CNInArgCheck(argn(2),2,2) + +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ + + +global SCI2CSTACK +global StackPosition; +global STACKDEDUG +// --------------------------- +// --- End Initialization. --- +// --------------------------- + + +// ------------------------------ +// --- Read input parameters. --- +// ------------------------------ +cntpop = 1; +NRhs = 0; +RhsField(cntpop) = AST_PopASTStack(); +RhsNames = []; +while (RhsField(cntpop) ~= 'Rhs :') + NRhs = NRhs + 1; + if RhsField(cntpop) <> 'Operands:' + [RhsNames(NRhs),RhsScope(NRhs)] = AST_ExtractNameAndScope(RhsField(cntpop)); + end + cntpop = cntpop + 1; + RhsField(cntpop) = AST_PopASTStack(); +end +first = AST_PopASTStack(); +second = AST_PopASTStack(); + +FName = stripblanks(part(second,12:length(second))); + +RhsNames = SCI2Cflipud(RhsNames); +RhsScope = SCI2Cflipud(RhsScope); + +// --- Repush everything into the stack. --- +for cntpush = cntpop:-1:1 + if RhsField(cntpush) <> 'Operands:' & RhsField(cntpush) <> 'Rhs :' + AST_PushASTStack(RhsField(cntpush)); + end +end + + + +endfunction diff --git a/2.3-1/macros/ASTManagement/AST_HandleFuncArray2D.sci b/2.3-1/macros/ASTManagement/AST_HandleFuncArray2D.sci new file mode 100644 index 00000000..859c9942 --- /dev/null +++ b/2.3-1/macros/ASTManagement/AST_HandleFuncArray2D.sci @@ -0,0 +1,69 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE + +// 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 +// Author: Ukasha Noor +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// This function is used for 2D array declaration +// This function extracts the input arguments in the array and check there Name and Scope. +// Then repush everything back to stack +function [RhsNames,RhsScope,NRhs,FName] = AST_HandleFuncArray2D(FileInfo,SharedInfo) + +SCI2CNInArgCheck(argn(2),2,2) + +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ + + +global SCI2CSTACK +global StackPosition; +global STACKDEDUG +// --------------------------- +// --- End Initialization. --- +// --------------------------- + + +// ------------------------------ +// --- Read input parameters. --- +// ------------------------------ +cntpop = 1; +NRhs = 0; +RhsField(cntpop) = AST_PopASTStack(); +RhsNames = []; +while (RhsField(cntpop) ~= 'Rhs :') + if RhsField(cntpop) <> 'Operands:' & RhsField(cntpop) <> 'Begin:' + NRhs = NRhs + 1; + + [RhsNames(NRhs),RhsScope(NRhs)] = AST_ExtractNameAndScope(RhsField(cntpop)); + end + cntpop = cntpop + 1; + RhsField(cntpop) = AST_PopASTStack(); +end + +first = AST_PopASTStack(); +second = AST_PopASTStack(); + +FName = stripblanks(part(second,12:length(second))); + +RhsNames = SCI2Cflipud(RhsNames); +RhsScope = SCI2Cflipud(RhsScope); + +// --- Repush everything into the stack. --- +for cntpush = cntpop:-1:1 + if RhsField(cntpush) <> 'Operands:' & RhsField(cntpush) <> 'Begin:' & RhsField(cntpush) <> 'Rhs :' + PrintStringInfo(' ' + RhsField(cntpush),ReportFileName,'file','y'); + AST_PushASTStack(RhsField(cntpush)); + end +end + + + + +endfunction diff --git a/2.3-1/macros/ASTManagement/AST_HandleRC.sci b/2.3-1/macros/ASTManagement/AST_HandleRC.sci index 2a6cbc3f..70568612 100644 --- a/2.3-1/macros/ASTManagement/AST_HandleRC.sci +++ b/2.3-1/macros/ASTManagement/AST_HandleRC.sci @@ -1,36 +1,15 @@ function [RhsNames,RhsScope,NRhs] = AST_HandleRC(FileInfo,SharedInfo) -// function [FileInfo,SharedInfo] = AST_HandleEndGenFun(FileInfo,SharedInfo,ASTFunType) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Handles the EndFuncall, EndOperation and EndEqual tags of the AST. -// ASTFunType can be 'Funcall', 'Operation', 'Equal' -// Structure of Funcall: -// overloading function for "funcall" type tlist string function -// this is a node of the AST -// fields: -// rhs : a list -// name : string, the name of the function -// lhsnb: number, the number of function lhs -// txt=['Funcall : '+F.name -// ' #lhs : '+string(F.lhsnb) -// ' Rhs : ' -// ' '+objectlist2string(F.rhs) -// 'EndFuncall' -// ] -// #RNU_RES_E -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 11-Apr-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +// Copyright (C) 2017 - IIT Bombay - FOSSEE + +// 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 +// Author: Ukasha Noor +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// This function is used for 1D array declaration. SCI2CNInArgCheck(argn(2),2,2) @@ -75,14 +54,5 @@ for cntpush = cntpop:-1:1 end -//for counterinputargs = 1:NRhs - //#RNU_RES_B - //disp(counterinputargs); - // PrintStringInfo('Input Argument Number '+string(counterinputargs)+': '+RhsNames(counterinputargs).Name,... - // ReportFileName,'file','y'); - //PrintStringInfo(' Scope: '+RhsNames(counterinputargs).Scope,... - // ReportFileName,'file','y'); - //#RNU_RES_E -//end endfunction diff --git a/2.3-1/macros/ASTManagement/AST_ParseIfExprStruct.sci b/2.3-1/macros/ASTManagement/AST_ParseIfExprStruct.sci index 2bfb08dd..88ba2e9c 100644 --- a/2.3-1/macros/ASTManagement/AST_ParseIfExprStruct.sci +++ b/2.3-1/macros/ASTManagement/AST_ParseIfExprStruct.sci @@ -31,6 +31,8 @@ function [IfCondArg,NIfCondArg,Op,NOp] = AST_ParseIfExprStruct(FileInfo,SharedIn // // Status: // 11-Apr-2007 -- Raffaele Nutricato: Author. +// 25-June-2017 -- Ukasha Noor: Revised By +// This function is counting the number of logical operators and there operands. // // Copyright 2007 Raffaele Nutricato. // Contact: raffaele.nutricato@tiscali.it diff --git a/2.3-1/macros/ASTManagement/AST_ParseOperStruct.sci b/2.3-1/macros/ASTManagement/AST_ParseOperStruct.sci index 903f0958..ce0bcc72 100644 --- a/2.3-1/macros/ASTManagement/AST_ParseOperStruct.sci +++ b/2.3-1/macros/ASTManagement/AST_ParseOperStruct.sci @@ -26,6 +26,7 @@ function [FunctionName,InArg,NInArg,NOutArg] = AST_ParseOperStruct(FileInfo,Shar // // Status: // 11-Apr-2007 -- Raffaele Nutricato: Author. +// 25-June-2017 -- Ukasha Noor: Revised By // // Copyright 2007 Raffaele Nutricato. // Contact: raffaele.nutricato@tiscali.it diff --git a/2.3-1/macros/ASTManagement/_funcall_string.sci b/2.3-1/macros/ASTManagement/_funcall_string.sci index 0ee97016..7c0b0abf 100644 --- a/2.3-1/macros/ASTManagement/_funcall_string.sci +++ b/2.3-1/macros/ASTManagement/_funcall_string.sci @@ -5,6 +5,7 @@ function txt=%funcall_string(F) // rhs : a list // name : string, the name of the function // lhsnb: number, the number of function lhs +// Modified By: Ukasha Noor if F.name <> 'disp' txt=['Funcall : '+F.name diff --git a/2.3-1/macros/ASTManagement/lib b/2.3-1/macros/ASTManagement/lib Binary files differdeleted file mode 100644 index ee07d361..00000000 --- a/2.3-1/macros/ASTManagement/lib +++ /dev/null diff --git a/2.3-1/macros/ASTManagement/names b/2.3-1/macros/ASTManagement/names index 6deb883d..9ba83f73 100644 --- a/2.3-1/macros/ASTManagement/names +++ b/2.3-1/macros/ASTManagement/names @@ -31,6 +31,8 @@ AST_HandleFor AST_HandleForStatem AST_HandleFunCC AST_HandleFunRC +AST_HandleFuncArray +AST_HandleFuncArray2D AST_HandleHeader AST_HandleIfElse AST_HandleRC diff --git a/2.3-1/macros/CCodeGeneration/C_GenDeclarations_Dup.sci b/2.3-1/macros/CCodeGeneration/C_GenDeclarations_Dup.sci index 475e2e0c..bdaf9c0e 100644 --- a/2.3-1/macros/CCodeGeneration/C_GenDeclarations_Dup.sci +++ b/2.3-1/macros/CCodeGeneration/C_GenDeclarations_Dup.sci @@ -11,6 +11,10 @@ function Cdeclaration = C_GenDeclarations_Dup(InArg,NInArg,com_type,ArgStruct,CD // // Status: // 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// 25-June-2017 -- Ukasha Noor: Modified it. +// This function is called for array declaration in C. +// // 10-Jun-2008 -- Raffaele Nutricato: adapted to work with realloc function. // // Copyright 2007 Raffaele Nutricato. @@ -84,6 +88,9 @@ if (ArgStruct.Dimension > 0) computedSize = computedSize + ' * ' + ArgStruct.Size(sizeIterator); computedSizeField = computedSizeField + ', ' + ArgStruct.Size(sizeIterator); end +// Modified Changes: row tells number of rows and col is number of columns in array. +// col_type tells whether it is floatComplex or doubleComplex or real. +// and accordingly it declares the array. Cdeclaration(1) = Cdeclaration(1)+C_Type(ArgStruct.Type)+' '+ArgStruct.Name+'['+computedSize+']={'; row = eval(ArgStruct.Size(1)) col = eval(ArgStruct.Size(2)) diff --git a/2.3-1/macros/CCodeGeneration/C_GenerateMakefile.sci b/2.3-1/macros/CCodeGeneration/C_GenerateMakefile.sci index 3b977bd6..dbdae9d3 100644 --- a/2.3-1/macros/CCodeGeneration/C_GenerateMakefile.sci +++ b/2.3-1/macros/CCodeGeneration/C_GenerateMakefile.sci @@ -70,7 +70,7 @@ else PrintStringInfo('CXX = arm-linux-gnueabihf-g++ ',FileInfo.MakefileFilename,'file','y','y'); PrintStringInfo('CFLAGS = -Wall -pedantic -g -I $(HSRCDIR) -I $(ISRCDIR) -L $(LIBDIR)',FileInfo.MakefileFilename,'file','y','y'); PrintStringInfo('CXXFLAGS = -Wall -pedantic -g -I $(HSRCDIR) -I $(ISRCDIR) -L $(LIBDIR)',FileInfo.MakefileFilename,'file','y','y'); - PrintStringInfo('LDFLAGS = -llapack -lrefblas -lgfortran -lwiringPi -lwiringPiDev -lrt -lpthread',FileInfo.MakefileFilename,'file','y','y'); + PrintStringInfo('LDFLAGS = -llapack -lrefblas -lgfortran -lwiringPi -lwiringPiDev -lrt -lpthread -lRPIwfi',FileInfo.MakefileFilename,'file','y','y'); else PrintStringInfo('CC = gcc',FileInfo.MakefileFilename,'file','y','y'); PrintStringInfo('CXX = g++',FileInfo.MakefileFilename,'file','y','y'); diff --git a/2.3-1/macros/CCodeGeneration/C_GenerateMkfle_arduino.sci b/2.3-1/macros/CCodeGeneration/C_GenerateMkfle_arduino.sci index b43eb442..8b890f97 100644 --- a/2.3-1/macros/CCodeGeneration/C_GenerateMkfle_arduino.sci +++ b/2.3-1/macros/CCodeGeneration/C_GenerateMkfle_arduino.sci @@ -1,3 +1,17 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE + +// 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 +// Author: Yash Pratap Singh Tomar +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + + + function C_GenerateMkfle_arduino(FileInfo,SharedInfo) PrintStringInfo('ARDUINO_DIR = /usr/share/arduino',FileInfo.MakefileFilename,'file','y','y'); diff --git a/2.3-1/macros/CCodeGeneration/C_IfExpression.sci b/2.3-1/macros/CCodeGeneration/C_IfExpression.sci index 359b7882..630134e1 100644 --- a/2.3-1/macros/CCodeGeneration/C_IfExpression.sci +++ b/2.3-1/macros/CCodeGeneration/C_IfExpression.sci @@ -11,6 +11,7 @@ function SharedInfo = C_IfExpression(IfCondArg,NIfCondArg,Op,NOp,ASTIfExpType,Fi // // Status: // 27-Oct-2007 -- Raffaele Nutricato: Author. +// 28-June-2017 -- Ukasha Noor: Modified By // // Copyright 2007 Raffaele Nutricato. // Contact: raffaele.nutricato@tiscali.it diff --git a/2.3-1/macros/CCodeGeneration/C_WhileExpression.sci b/2.3-1/macros/CCodeGeneration/C_WhileExpression.sci index 368ccffa..36fcc4f2 100644 --- a/2.3-1/macros/CCodeGeneration/C_WhileExpression.sci +++ b/2.3-1/macros/CCodeGeneration/C_WhileExpression.sci @@ -11,6 +11,7 @@ function SharedInfo = C_WhileExpression(IfCondArg,NIfCondArg,Op,NOp,FileInfo,Sha // // Status: // 15-Nov-2007 -- Raffaele Nutricato: Author. +// 27-June-2017 -- Ukasha Noor: Modified by // // Copyright 2007 Raffaele Nutricato. // Contact: raffaele.nutricato@tiscali.it diff --git a/2.3-1/macros/CCodeGeneration/GetClsFileName.sci b/2.3-1/macros/CCodeGeneration/GetClsFileName.sci index d92a431c..42204108 100644 --- a/2.3-1/macros/CCodeGeneration/GetClsFileName.sci +++ b/2.3-1/macros/CCodeGeneration/GetClsFileName.sci @@ -78,7 +78,6 @@ elseif (SCI2Cfileexist(FileInfo.SCI2CLibSCIAnnFun,tmpannfilename)) SCI2CClassName = FL_GetFunctionClass(AnnFileName,SCI2CClassSpecifier,ReportFileName); SCI2CClassFileName = fullfile(FileInfo.SCI2CLibSCIAnnCls,SCI2CClassName+'.acls'); end - if (FlagFoundAnnFile == 0) [FlagFoundAnnFile,fullpathscifilename] = SCI2CFindFile(FileInfo.UserSciFilesPaths,FunName+'.sci'); if (FlagFoundAnnFile == 0) diff --git a/2.3-1/macros/CCodeGeneration/lib b/2.3-1/macros/CCodeGeneration/lib Binary files differdeleted file mode 100644 index f2696fef..00000000 --- a/2.3-1/macros/CCodeGeneration/lib +++ /dev/null diff --git a/2.3-1/macros/ErrorMessages/lib b/2.3-1/macros/ErrorMessages/lib Binary files differdeleted file mode 100644 index 1500b1fa..00000000 --- a/2.3-1/macros/ErrorMessages/lib +++ /dev/null diff --git a/2.3-1/macros/FunctionAnnotation/FA_GetOutArgInfo.sci b/2.3-1/macros/FunctionAnnotation/FA_GetOutArgInfo.sci index 99eaaa5f..4d1113ea 100644 --- a/2.3-1/macros/FunctionAnnotation/FA_GetOutArgInfo.sci +++ b/2.3-1/macros/FunctionAnnotation/FA_GetOutArgInfo.sci @@ -29,6 +29,7 @@ SCI2CNInArgCheck(argn(2),10,10); // --- Initialization. ---
// -----------------------
+
UpdatedOutArg = OutArg;
for cntin = 1:NInArg
IN(cntin).TP = InArg(cntin).Type;
@@ -101,7 +102,19 @@ for counterout = 1:NOutArg // This is a dynamic memory extension of a local variable and for the moment
// we issue an error according to SCI2C specifications
// #RNU_RES_E
- //disp(FunSizeAnnot)
+ //disp(FunSizeAnnot(2),FunSizeAnnot(1))
+ //Ukasha
+// if ASTFunName == svd
+// x=1;
+// for i=1:InArg(1).Size(1)
+// for j=1:InArg(1).Size(2)
+// A(i)(j)=InArg(1).Value(x);
+// end
+// end
+// [U,S,V]=svd(A,"e");
+
+
+
for iterOutputPosition=1:size(FunSizeAnnot, 'c')
tmpeval = eval(FunSizeAnnot(counterout, iterOutputPosition));
if (IsNanSize(tmpeval))
diff --git a/2.3-1/macros/FunctionAnnotation/lib b/2.3-1/macros/FunctionAnnotation/lib Binary files differdeleted file mode 100644 index 5eb9bc2f..00000000 --- a/2.3-1/macros/FunctionAnnotation/lib +++ /dev/null diff --git a/2.3-1/macros/FunctionList/lib b/2.3-1/macros/FunctionList/lib Binary files differdeleted file mode 100644 index e101853b..00000000 --- a/2.3-1/macros/FunctionList/lib +++ /dev/null diff --git a/2.3-1/macros/GeneralFunctions/lib b/2.3-1/macros/GeneralFunctions/lib Binary files differdeleted file mode 100644 index 846ca1b2..00000000 --- a/2.3-1/macros/GeneralFunctions/lib +++ /dev/null diff --git a/2.3-1/macros/Hardware/AVR/lib b/2.3-1/macros/Hardware/AVR/lib Binary files differdeleted file mode 100644 index 53e56599..00000000 --- a/2.3-1/macros/Hardware/AVR/lib +++ /dev/null diff --git a/2.3-1/macros/Hardware/RasberryPi/lib b/2.3-1/macros/Hardware/RasberryPi/lib Binary files differdeleted file mode 100644 index dc759fe8..00000000 --- a/2.3-1/macros/Hardware/RasberryPi/lib +++ /dev/null diff --git a/2.3-1/macros/ImageProcessing/core/lib b/2.3-1/macros/ImageProcessing/core/lib Binary files differdeleted file mode 100644 index 7f003c8e..00000000 --- a/2.3-1/macros/ImageProcessing/core/lib +++ /dev/null diff --git a/2.3-1/macros/ImageProcessing/highgui/lib b/2.3-1/macros/ImageProcessing/highgui/lib Binary files differdeleted file mode 100644 index 787c25fa..00000000 --- a/2.3-1/macros/ImageProcessing/highgui/lib +++ /dev/null diff --git a/2.3-1/macros/ImageProcessing/imgproc/lib b/2.3-1/macros/ImageProcessing/imgproc/lib Binary files differdeleted file mode 100644 index 93c83909..00000000 --- a/2.3-1/macros/ImageProcessing/imgproc/lib +++ /dev/null diff --git a/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci b/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci index eff61fe6..69c4ab37 100644 --- a/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci +++ b/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci @@ -31,6 +31,6 @@ ArduinoFunctions = [ "cmd_servo_attach" "cmd_servo_detach" "cmd_servo_move" - "i2c_dev"]; + "cmd_i2c_dev"]; endfunction diff --git a/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci b/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci index d310648e..78bda033 100644 --- a/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci +++ b/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci @@ -25,7 +25,7 @@ ArduinoSetupFunctions = [ "cmd_dcmotor_setup" "cmd_servo_attach" "cmd_servo_detach" - "i2c_dev"]; + "cmd_i2c_dev"]; endfunction diff --git a/2.3-1/macros/Scilab-Arduino/lib b/2.3-1/macros/Scilab-Arduino/lib Binary files differdeleted file mode 100644 index 5b7beab0..00000000 --- a/2.3-1/macros/Scilab-Arduino/lib +++ /dev/null diff --git a/2.3-1/macros/SymbolTable/ST_GetInArgInfo.sci b/2.3-1/macros/SymbolTable/ST_GetInArgInfo.sci index 4c85408c..69885dda 100644 --- a/2.3-1/macros/SymbolTable/ST_GetInArgInfo.sci +++ b/2.3-1/macros/SymbolTable/ST_GetInArgInfo.sci @@ -210,7 +210,7 @@ for cntinarg = 1:NInArg PrintStringInfo(' Type: '+UpdatedInArg(cntinarg).Type,FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
PrintStringInfo(' Size(1): '+string(UpdatedInArg(cntinarg).Size(1)),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
PrintStringInfo(' Size(2): '+string(UpdatedInArg(cntinarg).Size(2)),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
- PrintStringInfo(' Value: '+string(UpdatedInArg(cntinarg).Value),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
+ //PrintStringInfo(' Value: '+string(UpdatedInArg(cntinarg).Value),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
PrintStringInfo(' FindLike: '+string(UpdatedInArg(cntinarg).FindLike),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
PrintStringInfo(' Dimension: '+string(UpdatedInArg(cntinarg).Dimension),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
PrintStringInfo(' Scope: '+UpdatedInArg(cntinarg).Scope,FileInfo.Funct(nxtscifunnumber).ReportFileName,'file');
diff --git a/2.3-1/macros/SymbolTable/ST_InsOutArg_Dup.sci b/2.3-1/macros/SymbolTable/ST_InsOutArg_Dup.sci index bca66235..67554bd9 100644 --- a/2.3-1/macros/SymbolTable/ST_InsOutArg_Dup.sci +++ b/2.3-1/macros/SymbolTable/ST_InsOutArg_Dup.sci @@ -175,7 +175,7 @@ for counteroutput = 1:NOutArg ST_Set(OutArg(counteroutput).Name,... OutArg(counteroutput).Type,... TmpOutArgSize,... - OutArg(counteroutput).Value,... + InArg,... OutArg(counteroutput).FindLike,... OutArg(counteroutput).Dimension,... SymbTableFileName); diff --git a/2.3-1/macros/SymbolTable/lib b/2.3-1/macros/SymbolTable/lib Binary files differdeleted file mode 100644 index c42cf1a5..00000000 --- a/2.3-1/macros/SymbolTable/lib +++ /dev/null diff --git a/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci b/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci index 77d51f17..ea84c6ae 100644 --- a/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci +++ b/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci @@ -302,6 +302,7 @@ PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y');
PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y');
PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y');
+PrintStringInfo('z0'+ArgSeparator+'c0',ClassFileName,'file','y');
PrintStringInfo('d2'+ArgSeparator+'s2',ClassFileName,'file','y');
PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y');
@@ -317,7 +318,6 @@ PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file', INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
-
// ---------------------
// --- Class Int8. ---
// ---------------------
@@ -4752,6 +4752,57 @@ PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file', INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+//------------------------------------
+//---- Class TOEPLITZ ----------------
+//------------------------------------
+ClassName = 'toeplitz';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y');
+PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y');
+PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y');
+PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y');
+PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y');
+PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y');
+PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y');
+PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y');
+PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y');
+PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y');
+PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y');
+PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y');
+PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y');
+PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y');
+PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y');
+PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y');
+PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y');
+PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'toeplitz';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
// -------------------
// --- Class Spec. ---
// -------------------
@@ -6044,6 +6095,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_digitalWriteByte';
@@ -6096,6 +6148,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_pwmClock';
@@ -6120,6 +6173,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u320'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_pwmRange';
@@ -6176,6 +6230,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80'+ArgSeparator+'i80',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_I2CSetup';
@@ -6208,6 +6263,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160'+ArgSeparator+'i80',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_I2CRead';
@@ -6264,6 +6320,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_getAlt';
@@ -6300,6 +6357,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_gertboardAnalogRead';
@@ -6324,6 +6382,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80'+ArgSeparator+'g2',ClassFileName,'file','y');
+PrintStringInfo('d0'+ArgSeparator+'g2',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_serialGetchar';
@@ -6345,6 +6404,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u80'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_pinModeAlt';
@@ -6409,6 +6469,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u160'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_pwmWrite';
@@ -6441,6 +6502,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160u160'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_gertboardAnalogWrite';
@@ -6465,6 +6527,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80g2'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0g2'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_pinMode';
@@ -6509,6 +6572,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u320'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_softToneWrite';
@@ -6533,6 +6597,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80i160'+ArgSeparator+'i80',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'i80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_waitForInterrupt';
@@ -6557,6 +6622,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160u160'+ArgSeparator+'i80',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'i80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_I2CWrite';
@@ -6589,6 +6655,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('g2u320'+ArgSeparator+'i80',ClassFileName,'file','y');
+PrintStringInfo('g2d0'+ArgSeparator+'i80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_serialOpen';
@@ -6613,6 +6680,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160u80'+ArgSeparator+'u80',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_pcf8574Setup';
@@ -6650,6 +6718,7 @@ PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u80u80'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_lcdPosition';
@@ -6675,6 +6744,7 @@ PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160u160u160'+ArgSeparator+'i80',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0'+ArgSeparator+'i80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_I2CWriteReg8';
@@ -6700,6 +6770,7 @@ PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u80u80'+ArgSeparator+'u80',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_shiftIn';
@@ -6724,6 +6795,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u160u160'+ArgSeparator+'u80',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_softPwmCreate';
@@ -6748,6 +6820,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160u160u160'+ArgSeparator+'u80',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_mcp23s08Setup';
@@ -6776,6 +6849,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u80u80u80'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_shiftOut';
@@ -6800,6 +6874,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u160u80u80u80u80'+ArgSeparator+'i80',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0d0d0'+ArgSeparator+'i80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_sr595Setup';
@@ -6824,6 +6899,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u80u80u80u80u80u80u80u80u80'+ArgSeparator+'',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0d0d0d0d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_lcdCharDef';
@@ -6848,6 +6924,7 @@ PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); // --- Function List Class. ---
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('u80u80u80u80u80u80u80u80u80u80u80u80u80'+ArgSeparator+'u80',ClassFileName,'file','y');
+PrintStringInfo('d0d0d0d0d0d0d0d0d0d0d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'RPI_lcdInit';
@@ -8028,6 +8105,315 @@ PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file', INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+//------------------------------------
+//---- Class SQROOT ---------------------
+//------------------------------------
+ClassName = 'SQROOT';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'sqroot';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+
+//------------------------------------
+//---- Class GIVENS ---------------------
+//------------------------------------
+ClassName = 'GIVENS';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y');
+
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= ''2''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y');
+
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y');
+PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y');
+PrintStringInfo('d0d0'+ArgSeparator+'d2d2',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'givens';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+
+//------------------------------------
+//---- Class HOUSEHOLDER---------------------
+//------------------------------------
+ClassName = 'HOUSEHOLDER';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y');
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y');
+PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'householder';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+//------------------------------------
+//---- Class FULLRF---------------------
+//------------------------------------
+ClassName = 'FULLRF';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 3',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y');
+
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 3',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2'+ArgSeparator+'d2d2d0',ClassFileName,'file','y');
+PrintStringInfo('d2d0'+ArgSeparator+'d2d2d0',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'fullrf';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+//------------------------------------
+//---- Class ROWCOMP ---------------------
+//------------------------------------
+ClassName = 'ROWCOMP';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 3',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y');
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2'+ArgSeparator+'d2d0',ClassFileName,'file','y');
+PrintStringInfo('d2g2'+ArgSeparator+'d2d0',ClassFileName,'file','y');
+PrintStringInfo('d2g2d0'+ArgSeparator+'d2d0',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'rowcomp';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+//------------------------------------
+//---- Class QR---------------------
+//------------------------------------
+ClassName = 'QR';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 3',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 3',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');;
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 4',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');;
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 4',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');;
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y');
+PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y');
+PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y');
+PrintStringInfo('d2g2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y');
+PrintStringInfo('d2d0'+ArgSeparator+'d2d2d0d2',ClassFileName,'file','y');
+PrintStringInfo('d2'+ArgSeparator+'d2d2d0d2',ClassFileName,'file','y');
+
+
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'qr';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+
//------------------------------------
//---- Class svd ---------------------
//------------------------------------
@@ -8061,8 +8447,8 @@ PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
-PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
-PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
@@ -8091,11 +8477,41 @@ PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
-PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
-PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 4',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 4',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y');
PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y');
PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).TP= ''d''',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y');
+PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y');
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y');
@@ -8104,6 +8520,8 @@ PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y');
PrintStringInfo('z2g2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y');
PrintStringInfo('z2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y');
+PrintStringInfo('d2'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y');
+PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y');
// --- Annotation Function And Function List Function. ---
FunctionName = 'svd';
@@ -8147,7 +8565,6 @@ INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,E INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
-
//------------------------------------
//---- Class SVA ---------------------
//------------------------------------
@@ -8173,7 +8590,7 @@ PrintStringInfo('NIN= 2',ClassFileName,'file','y'); PrintStringInfo('NOUT= 3',ClassFileName,'file','y');
PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
-PrintStringInfo('OUT(1).SZ(2)= FA_SZ_U_SVA(IN(1),IN(2).VAL)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y');
PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y');
@@ -8191,6 +8608,7 @@ PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file', INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
//------------------------------------
//---- Class balanc ------------------
//------------------------------------
@@ -9987,7 +10405,7 @@ ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); PrintStringInfo('NIN= 3',ClassFileName,'file','y');
PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
-PrintStringInfo('OUT(1).TP= IN(3).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y');
diff --git a/2.3-1/macros/ToolInitialization/lib b/2.3-1/macros/ToolInitialization/lib Binary files differdeleted file mode 100644 index 267c9c9f..00000000 --- a/2.3-1/macros/ToolInitialization/lib +++ /dev/null diff --git a/2.3-1/macros/cb_sci2c_gui.sci b/2.3-1/macros/cb_sci2c_gui.sci index 2267c6cc..bf77c25f 100644 --- a/2.3-1/macros/cb_sci2c_gui.sci +++ b/2.3-1/macros/cb_sci2c_gui.sci @@ -200,12 +200,17 @@ elseif get(gcbo, "tag")=="convertbtn" then // -*- DEBUG ONLY -*- - //mprintf("UserScilabMainFile = {%s}\n", UserScilabMainFile); - //mprintf("UserSciFilesPaths = {%s}\n", UserSciFilesPaths); - //mprintf("UserSciCodeMainDir = {%s}\n", UserSciCodeMainDir); - //mprintf("RunMode = {%s}\n", RunMode); - //mprintf("CopySciCodeIntoCCode = {%d}\n", bool2s(CopySciCodeIntoCCode)); - //mprintf("NativeBuild = {%s}\n", NativeBuild); + mprintf("UserScilabMainFile = {%s}\n", UserScilabMainFile); + mprintf("UserSciFilesPaths = {%s}\n", UserSciFilesPaths); + mprintf("UserSciCodeMainDir = {%s}\n", UserSciCodeMainDir); + mprintf("RunMode = {%s}\n", RunMode); + mprintf("CopySciCodeIntoCCode = {%d}\n", bool2s(CopySciCodeIntoCCode)); + mprintf("NativeBuild = {%s}\n", NativeBuild); + mprintf("Target = {%s}\n", Target); + mprintf("Board Name = {%s}\n", Board_name); +// disp("Variable Names:") +// disp(UserScilabMainFile, UserSciCodeMainDir, UserSciFilesPaths, RunMode, NativeBuild,Target,Board_name) +// disp("Done") scilab2c(UserScilabMainFile, UserSciCodeMainDir, UserSciFilesPaths, RunMode, NativeBuild,Target,Board_name); // // --- sci2c help --- diff --git a/2.3-1/macros/findDeps/Scilab2CDeps.sci b/2.3-1/macros/findDeps/Scilab2CDeps.sci index 8044e276..b1b75c76 100644 --- a/2.3-1/macros/findDeps/Scilab2CDeps.sci +++ b/2.3-1/macros/findDeps/Scilab2CDeps.sci @@ -7,16 +7,15 @@ // 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 +// Edited by: Yash Pratap Singh Tomar - -function scilab2ccode = initDependecies() +function scilab2ccode = Scilab2CDeps() ///////////////////////////////// ////// AUXILIARY FUNCTIONS ////// ///////////////////////////////// - //abs scilab2ccode.deps.cabss=["ssqrts","sabss","creals","cimags"] scilab2ccode.deps.cabsa=["cabss"] @@ -26,8 +25,14 @@ scilab2ccode.deps.sabss=[] scilab2ccode.deps.sabsa=["sabss"] scilab2ccode.deps.zabss=["dsqrts","dabss","zreals","zimags"] scilab2ccode.deps.zabsa=["zabss"] - - +scilab2ccode.deps.u8absa=["u8abss"] +scilab2ccode.deps.u8abss=[] +scilab2ccode.deps.i8absa=["i8abss"] +scilab2ccode.deps.i8abss=[] +scilab2ccode.deps.u16absa=["u16abss"] +scilab2ccode.deps.u16abss=[] +scilab2ccode.deps.i16absa=["i16abss"] +scilab2ccode.deps.i16abss=[] //conj scilab2ccode.deps.cconjs=["FloatComplex","creals","cimags"] scilab2ccode.deps.cconja=["cconjs"] @@ -39,7 +44,24 @@ scilab2ccode.deps.cfinda=["creals","cimags"] scilab2ccode.deps.dfinda=[] scilab2ccode.deps.sfinda=[] scilab2ccode.deps.zfinda=["zreals","zimags"] - +scilab2ccode.deps.i8finda=[] +scilab2ccode.deps.i16finda=[] +scilab2ccode.deps.u8finda=[] +scilab2ccode.deps.u16finda=[] + +//float +scilab2ccode.deps.dfloats=[] +scilab2ccode.deps.dfloata=[] +scilab2ccode.deps.i8floats=[] +scilab2ccode.deps.i8floata=[] +scilab2ccode.deps.i16floats=[] +scilab2ccode.deps.i16floata=[] +scilab2ccode.deps.sfloats=[] +scilab2ccode.deps.sfloata=[] +scilab2ccode.deps.u8floats=[] +scilab2ccode.deps.u8floata=[] +scilab2ccode.deps.u16floats=[] +scilab2ccode.deps.u16floata=[] //find2d scilab2ccode.deps.cfind2da=["creals","cimags"] @@ -78,9 +100,25 @@ scilab2ccode.deps.zisnana=["zisnans"] scilab2ccode.deps.cpythags=["csqrts","cadds","cmuls"] scilab2ccode.deps.dpythags=["dsqrts"] scilab2ccode.deps.spythags=["ssqrts"] -scilab2ccode.deps.cpythags=["zsqrts","zadds","zmuls"] +scilab2ccode.deps.zpythags=["zsqrts","zadds","zmuls"] //rand +scilab2ccode.deps.cranda=["crands"] +scilab2ccode.deps.crands=["FloatComplex"] +scilab2ccode.deps.dranda=["drands"] +scilab2ccode.deps.drands=[] +scilab2ccode.deps.i8randa=["i8rands"] +scilab2ccode.deps.i8rands=[] +scilab2ccode.deps.i16randa=["i16rands"] +scilab2ccode.deps.i16rands=[] +scilab2ccode.deps.sranda=["srands"] +scilab2ccode.deps.srands=[] +scilab2ccode.deps.u8randa=["u8rands"] +scilab2ccode.deps.u8rands=[] +scilab2ccode.deps.u16randa=["u16rands"] +scilab2ccode.deps.u16rands=[] +scilab2ccode.deps.zranda=["drands","DoubleComplex","zreals",] +scilab2ccode.deps.zrands=["drands","DoubleComplex"] //sign scilab2ccode.deps.csigns=["FloatComplex","cabss","creals","cimags"] @@ -91,11 +129,54 @@ scilab2ccode.deps.dsigns=[] scilab2ccode.deps.dsigna=["ssigns"] scilab2ccode.deps.zsigns=["DoubleComplex","zabss","zreals","zimags"] scilab2ccode.deps.zsigna=["zsigns"] +scilab2ccode.deps.i8signa=["i8signs"] +scilab2ccode.deps.i8signs=[] +scilab2ccode.deps.i16signa=["i16signs"] +scilab2ccode.deps.i16signs=[] +scilab2ccode.deps.u8signa=["u8signs"] +scilab2ccode.deps.u8signs=[] +scilab2ccode.deps.u16signa=["u16signs"] +scilab2ccode.deps.u16signs=[] //size +scilab2ccode.deps.dallsizea=[] //type +///////////////////////////////// +///// CACSD ///////////// +//////////////////////////////// + +//lqe +scilab2ccode.deps.dlqea=["dtransposea","dlqra"] + +//lqr +scilab2ccode.deps.dlqra=["dtransposea","dmulma","dinverma","ddiffa","dschura","drdivma","dadda","deyea","dgschura"] + +//obscont +scilab2ccode.deps.dobsconta=["dmulma","dadda"] + +//syslin +scilab2ccode.deps.dsyslina=[] + +///////////////////////////////// +///////DIFFERENTIAL CALCULUS///// +///////////////////////////////// + +//diff +scilab2ccode.deps.ddiffca=[] +scilab2ccode.deps.i8diffca=[] +scilab2ccode.deps.i16diffca=[] +scilab2ccode.deps.sdiffca=[] +scilab2ccode.deps.u8diffca=[] +scilab2ccode.deps.u16diffca=[] + +//ode +scilab2ccode.deps.dodea=[] +scilab2ccode.deps.dodes=[] + + + ////////////////////////////////// ////// ELEMENTARY FUNCTIONS ////// @@ -111,6 +192,11 @@ scilab2ccode.deps.sacosa=["sacoss"] scilab2ccode.deps.zacoss=["DoubleComplex","dsqrts","dabss","dacoss","datans","dlogs","dlog1ps","zreals","zimags"] scilab2ccode.deps.zacosa=["zacoss"] +//acosd +scilab2ccode.deps.dacosda=["dacosds"] +scilab2ccode.deps.dacosds=[] +scilab2ccode.deps.sacosda=["sacosds"] +scilab2ccode.deps.sacosds=[] //acosh scilab2ccode.deps.cacoshs=["FloatComplex","cacoss","creals","cimags"] @@ -122,6 +208,76 @@ scilab2ccode.deps.sacosha=["sacoshs"] scilab2ccode.deps.zacoshs=["DoubleComplex","zacoss","zreals","zimags"] scilab2ccode.deps.zacosha=["zacoshs"] +//acot +scilab2ccode.deps.cacota=["cacots"] +scilab2ccode.deps.cacots=["FloatComplex","crdivs","catans"] +scilab2ccode.deps.dacota=["dacots"] +scilab2ccode.deps.dacots=[] +scilab2ccode.deps.sacota=["sacots"] +scilab2ccode.deps.sacots=[] +scilab2ccode.deps.zacota=["zacots"] +scilab2ccode.deps.zacots=["DoubleComplex","zrdivs","zatans"] + +//acotd +scilab2ccode.deps.dacotda=["dacotds"] +scilab2ccode.deps.dacotds=[] +scilab2ccode.deps.sacotda=["sacotds"] +scilab2ccode.deps.sacotds=[] + +//acoth +scilab2ccode.deps.cacotha=["cacoths"] +scilab2ccode.deps.cacoths=["FloatComplex","crdivs","catanhs"] +scilab2ccode.deps.dacotha=["dacoths"] +scilab2ccode.deps.dacoths=[] +scilab2ccode.deps.sacotha=["sacoths"] +scilab2ccode.deps.sacoths=[] +scilab2ccode.deps.zacotha=["zacoths"] +scilab2ccode.deps.zacoths=["DoubleComplex","zrdivs","zatanhs"] + +//acsc +scilab2ccode.deps.cacsca=["cacscs"] +scilab2ccode.deps.cacscs=["FloatComplex","crdivs","casins"] +scilab2ccode.deps.dacsca=["dacscs"] +scilab2ccode.deps.dacscs=[] +scilab2ccode.deps.sacsca=["sacscs"] +scilab2ccode.deps.sacscs=[] +scilab2ccode.deps.zacsca=["zacscs"] +scilab2ccode.deps.zacscs=["DoubleComplex","zrdivs","zasins"] + +//acscd +scilab2ccode.deps.dacscda=["dacscds"] +scilab2ccode.deps.dacscds=[] +scilab2ccode.deps.sacscda=["sacscds"] +scilab2ccode.deps.sacscds=[] + +//acsch +scilab2ccode.deps.cacsca=["cacscs"] +scilab2ccode.deps.cacscs=["FloatComplex","crdivs","cmuls"] +scilab2ccode.deps.dacscha=["dacschs"] +scilab2ccode.deps.dacschs=[] +scilab2ccode.deps.sacscha=["sacschs"] +scilab2ccode.deps.sacschs=[] +scilab2ccode.deps.zacsca=["zacscs"] +scilab2ccode.deps.zacscs=["zrdivs","DoubleComplex","zasins"] + +//asec +scilab2ccode.deps.daseca=["dasecs"] +scilab2ccode.deps.dasecs=[] +scilab2ccode.deps.saseca=["sasecs"] +scilab2ccode.deps.sasecs=[] + +//asecd +scilab2ccode.deps.dasecda=["dasecds"] +scilab2ccode.deps.dasecds=[] +scilab2ccode.deps.sasecda=["sasecds"] +scilab2ccode.deps.sasecds=[] + +//asech +scilab2ccode.deps.dasecha=["dasechs"] +scilab2ccode.deps.dasechs=[] +scilab2ccode.deps.sasecha=["sasechs"] +scilab2ccode.deps.sasechs=[] + //asin scilab2ccode.deps.casins=["FloatComplex","ssqrts","sabss","sasins","satans","slogs","slog1ps","dabss","creals","cimags"] scilab2ccode.deps.casina=["casins"] @@ -132,6 +288,13 @@ scilab2ccode.deps.sasina=["sasins"] scilab2ccode.deps.zasins=["DoubleComplex","dsqrts","dabss","dasins","datans","dlog1ps","dlogs","zreals","zimags"] scilab2ccode.deps.zasina=["zasins"] +//asind +scilab2ccode.deps.dasinda=["dasinds"] +scilab2ccode.deps.dasinds=[] +scilab2ccode.deps.sasinda=["sasinds"] +scilab2ccode.deps.sasinds=[] + + //asinh scilab2ccode.deps.casinhs=["FloatComplex","casins","creals","cimags"] scilab2ccode.deps.casinha=["casinhs"] @@ -160,6 +323,11 @@ scilab2ccode.deps.datan2a=["datan2s"] scilab2ccode.deps.satan2s=[] scilab2ccode.deps.satan2a=["satan2s"] +//atand +scilab2ccode.deps.datanda=["datands"] +scilab2ccode.deps.datands=[] +scilab2ccode.deps.satanda=["satands"] +scilab2ccode.deps.satands=[] //atanh scilab2ccode.deps.catanhs=["FloatComplex","creals","cimags","catans"] @@ -171,6 +339,55 @@ scilab2ccode.deps.satanha=["satanhs"] scilab2ccode.deps.zatanhs=["DoubleComplex","zreals","zimags","zatans"] scilab2ccode.deps.zatanha=["zatanhs"] +//bitand +scilab2ccode.deps.u8bitanda=["u8bitands"] +scilab2ccode.deps.u8bitands=[] +scilab2ccode.deps.u16bitanda=["u16bitands"] +scilab2ccode.deps.u16bitands=[] + +//bitcmp +scilab2ccode.deps.u8bitcmps=["u8bitcmps"] +scilab2ccode.deps.u8bitcmps=[] +scilab2ccode.deps.u16bitcmpa=["u16bitcmps"] +scilab2ccode.deps.u16bitcmps=[] + +//bitget +scilab2ccode.deps.u8bitgets=[] +scilab2ccode.deps.u16bitgets=[] + +//bitor +scilab2ccode.deps.u8bitora=["u8bitors"] +scilab2ccode.deps.u8bitors=[] +scilab2ccode.deps.u16bitora=["u16bitors"] +scilab2ccode.deps.u16bitors=[] + +//bitset +scilab2ccode.deps.u8bitsets=[] +scilab2ccode.deps.u16bitsets=[] + +//bitxor +scilab2ccode.deps.u8bitxora=["u8bitxors"] +scilab2ccode.deps.u8bitxors=[] +scilab2ccode.deps.u16bitxora=["u16bitxors"] +scilab2ccode.deps.u16bitxors=[] + +//ceil +scilab2ccode.deps.cceila=["cceils"] +scilab2ccode.deps.cceils=["creals","cimags","FloatComplex"] +scilab2ccode.deps.dceila=["dceils"] +scilab2ccode.deps.dceils=[] +scilab2ccode.deps.i8ceila=["i8ceils"] +scilab2ccode.deps.i8ceils=[] +scilab2ccode.deps.i16ceila=["i16ceils"] +scilab2ccode.deps.i16ceils=[] +scilab2ccode.deps.sceila=["sceils"] +scilab2ccode.deps.sceils=[] +scilab2ccode.deps.u8ceila=["u8ceils"] +scilab2ccode.deps.u8ceils=[] +scilab2ccode.deps.u16ceila=["u16ceils"] +scilab2ccode.deps.u16ceils=[] +scilab2ccode.deps.zceila=["zceils"] +scilab2ccode.deps.zceils=["zreals","zimags","DoubleComplex"] //cos scilab2ccode.deps.ccoss=["creals","cimags","FloatComplex","scoss","scoshs","ssins","ssinhs"] @@ -181,7 +398,14 @@ scilab2ccode.deps.scoss=[] scilab2ccode.deps.scosa=["scoss"] scilab2ccode.deps.zcoss=["zreals","zimags","DoubleComplex","dcoss","dcoshs","dsins","dsinhs"] scilab2ccode.deps.zcosa=["zcoss"] - +scilab2ccode.deps.i8cosa=["i8coss"] +scilab2ccode.deps.i8coss=[] +scilab2ccode.deps.i16cosa=["i16coss"] +scilab2ccode.deps.i16coss=[] +scilab2ccode.deps.u8cosa=["u8coss"] +scilab2ccode.deps.u8coss=[] +scilab2ccode.deps.u16cosa=["u16coss"] +scilab2ccode.deps.u16coss=[] //cosh scilab2ccode.deps.ccoshs=["ccoss","FloatComplex","creals","cimags"] @@ -192,6 +416,14 @@ scilab2ccode.deps.scoshs=["sexps","sabss"] scilab2ccode.deps.scosha=["scoshs"] scilab2ccode.deps.zcoshs=["zcoss","DoubleComplex","zreals","zimags"] scilab2ccode.deps.zcosha=["zcoshs"] +scilab2ccode.deps.i8cosha=["i8coshs"] +scilab2ccode.deps.i8coshs=["i8abss","i8exps"] +scilab2ccode.deps.i16cosha=["i16coshs"] +scilab2ccode.deps.i16coshs=["i16abss","i16exps"] +scilab2ccode.deps.u8cosha=["u8coshs"] +scilab2ccode.deps.u8coshs=["u8abss","u8exps"] +scilab2ccode.deps.u16cosha=["u16coshs"] +scilab2ccode.deps.u16coshs=["u16abss","u16exps"] //exp @@ -203,7 +435,14 @@ scilab2ccode.deps.sexps=[] scilab2ccode.deps.sexpa=["sexps"] scilab2ccode.deps.zexps=["zreals","zimags","DoubleComplex","dexps","dcoss","dsins"] scilab2ccode.deps.zexpa=["zexps"] - +scilab2ccode.deps.i8expa=["i8exps"] +scilab2ccode.deps.i8exps=[] +scilab2ccode.deps.i16expa=["i16exps"] +scilab2ccode.deps.i16exps=[] +scilab2ccode.deps.u8expa=["u8exps"] +scilab2ccode.deps.u8exps=[] +scilab2ccode.deps.u16expa=["u16exps"] +scilab2ccode.deps.u16exps=[] //exp10 scilab2ccode.deps.cexp10s=["cpows","FloatComplex"] @@ -215,6 +454,80 @@ scilab2ccode.deps.sexp10a=["sexp10s"] scilab2ccode.deps.zexp10s=["zpows","DoubleComplex"] scilab2ccode.deps.zexp10a=["zexp10s"] +//fix +scilab2ccode.deps.cfixa=["cfixs"] +scilab2ccode.deps.cfixs=["creals","cimags","FloatComplex"] +scilab2ccode.deps.dfixa=["dfixs"] +scilab2ccode.deps.dfixs=[] +scilab2ccode.deps.i8fixa=["i8fixs"] +scilab2ccode.deps.i8fixs=["i8floors","i8ceils"] +scilab2ccode.deps.i16fixa=["i16fixs"] +scilab2ccode.deps.i16fixs=["i16floors","i16ceils"] +scilab2ccode.deps.sfixa=["sfixs"] +scilab2ccode.deps.sfixs=[] +scilab2ccode.deps.u8fixa=["u8fixs"] +scilab2ccode.deps.u8fixs=["u8floors","u8ceils"] +scilab2ccode.deps.u16fixa=["u16fixs"] +scilab2ccode.deps.u16fixs=["u16floors","u16ceils"] +scilab2ccode.deps.zfixa=["zfixs"] +scilab2ccode.deps.zfixs=["zreals","zimags","DoubleComplex"] + +//floor +scilab2ccode.deps.cfloora=["cfloors"] +scilab2ccode.deps.cfloors=["creals","cimags","FloatComplex"] +scilab2ccode.deps.dfloora=["dfloors"] +scilab2ccode.deps.dfloors=[] +scilab2ccode.deps.i8floora=["i8floors"] +scilab2ccode.deps.i8floors=[] +scilab2ccode.deps.i16floora=["i16floors"] +scilab2ccode.deps.i16floors=[] +scilab2ccode.deps.sfloora=["sfloors"] +scilab2ccode.deps.sfloors=[] +scilab2ccode.deps.u8floora=["u8floors"] +scilab2ccode.deps.u8floors=[] +scilab2ccode.deps.u16floora=["u16floors"] +scilab2ccode.deps.u16floors=[] +scilab2ccode.deps.zfloors=["zfloors"] +scilab2ccode.deps.zfloors=["zreals","zimags","DoubleComplex"] + +//int +scilab2ccode.deps.cinta=["cfixa"] +scilab2ccode.deps.cints=["cfixs"] +scilab2ccode.deps.dinta=["dfixa"] +scilab2ccode.deps.dints=["dfixs"] +scilab2ccode.deps.sinta=["sfixa"] +scilab2ccode.deps.sints=["sfixs"] +scilab2ccode.deps.zinta=["zfixa"] +scilab2ccode.deps.zints=["zfixs"] + +//int8 +scilab2ccode.deps.dint8a=["dint8s"] +scilab2ccode.deps.dint8s=[] +scilab2ccode.deps.i16int8a=["i16int8s"] +scilab2ccode.deps.i16int8s=[] +scilab2ccode.deps.sint8a=["sint8s"] +scilab2ccode.deps.sint8s=[] +scilab2ccode.deps.u8int8a=["u8int8s"] +scilab2ccode.deps.u8int8s=[] +scilab2ccode.deps.u16int8a=["u16int8s"] +scilab2ccode.deps.u16int8s=[] + +//int16 +scilab2ccode.deps.dint16a=["dint16s"] +scilab2ccode.deps.dint16s=[] +scilab2ccode.deps.i8int16a=["i8int16s"] +scilab2ccode.deps.i8int16s=[] +scilab2ccode.deps.sint16a=["sint16s"] +scilab2ccode.deps.sint16s=[] +scilab2ccode.deps.u8int16a=["u8int16s"] +scilab2ccode.deps.u8int16s=[] +scilab2ccode.deps.u16int16a=["u16int16s"] +scilab2ccode.deps.u16int16s=[] + +//linspace +scilab2ccode.deps.dlinspacea=[] +scilab2ccode.deps.dlinspaces=[] + //lnp1m1 scilab2ccode.deps.dlnp1m1s=["dabss"] @@ -253,6 +566,9 @@ scilab2ccode.deps.slog10a=["slog10s"] scilab2ccode.deps.zlog10s=["zlogs","DoubleComplex","zreals","zimags","dlogs"] scilab2ccode.deps.zlog10a=["zlog10s"] +//logspace +scilab2ccode.deps.dlogspacea=[] +scilab2ccode.deps.dlogspaces=[] //pow scilab2ccode.deps.cpows=["cexps","cmuls","clogs"] @@ -263,7 +579,32 @@ scilab2ccode.deps.spows=[] scilab2ccode.deps.spowa=["spows"] scilab2ccode.deps.zpows=["zexps","zmuls","zlogs"] scilab2ccode.deps.zpowa=["zpows"] - +scilab2ccode.deps.i8powa=["i8pows"] +scilab2ccode.deps.i8pows=[] +scilab2ccode.deps.i16powa=["i16pows"] +scilab2ccode.deps.i16pows=[] +scilab2ccode.deps.u8powa=["u8pows"] +scilab2ccode.deps.u8pows=[] +scilab2ccode.deps.u16powa=["u16pows"] +scilab2ccode.deps.u16pows=[] + +//round +scilab2ccode.deps.crounda=["crounds"] +scilab2ccode.deps.crounds=["creals","cimags","FloatComplex"] +scilab2ccode.deps.drounda=["drounds"] +scilab2ccode.deps.drounds=[] +scilab2ccode.deps.i8rounda=["i8rounds"] +scilab2ccode.deps.i8rounds=[] +scilab2ccode.deps.i16rounda=["i16rounds"] +scilab2ccode.deps.i16rounds=[] +scilab2ccode.deps.srounda=["srounds"] +scilab2ccode.deps.srounds=[] +scilab2ccode.deps.u8rounda=["u8rounds"] +scilab2ccode.deps.u8rounds=[] +scilab2ccode.deps.u16rounda=["u16rounds"] +scilab2ccode.deps.u16rounds=[] +scilab2ccode.deps.zrounda=["zrounds"] +scilab2ccode.deps.zrounds=["zreals","zimags","DoubleComplex"] //sin scilab2ccode.deps.csins=["creals","cimags","FloatComplex","ssins","scoshs","scoss","ssinhs"] @@ -274,6 +615,14 @@ scilab2ccode.deps.ssins=[] scilab2ccode.deps.ssina=["ssins"] scilab2ccode.deps.zsins=["zreals","zimags","DoubleComplex","dsins","dcoshs","dcoss","dsinhs"] scilab2ccode.deps.zsina=["zsins"] +scilab2ccode.deps.i8sina=["i8sins"] +scilab2ccode.deps.i8sins=[] +scilab2ccode.deps.i16sina=["i16sins"] +scilab2ccode.deps.i16sins=[] +scilab2ccode.deps.u8sina=["u8sins"] +scilab2ccode.deps.u8sins=[] +scilab2ccode.deps.u16sina=["u16sins"] +scilab2ccode.deps.u16sins=[] //sinh @@ -285,6 +634,14 @@ scilab2ccode.deps.ssinhs=[] scilab2ccode.deps.ssinha=["ssinhs"] scilab2ccode.deps.zsinhs=["zreals","zimags","zsins","DoubleComplex"] scilab2ccode.deps.zsinha=["zsinhs"] +scilab2ccode.deps.i8sinha=["i8sinhs"] +scilab2ccode.deps.i8sinhs=[] +scilab2ccode.deps.i16sinha=["i16sinhs"] +scilab2ccode.deps.i16sinhs=[] +scilab2ccode.deps.u8sinha=["u8sinhs"] +scilab2ccode.deps.u8sinhs=[] +scilab2ccode.deps.u16sinha=["u16sinhs"] +scilab2ccode.deps.u16sinhs=[] //sqrt @@ -307,6 +664,14 @@ scilab2ccode.deps.stans=[] scilab2ccode.deps.stana=["stans"] scilab2ccode.deps.ztans=["dlogs","dsqrts","zreals","zimags","dcoss","dsinhs","dsins","dabss","DoubleComplex"] scilab2ccode.deps.ztana=["ztans"] +scilab2ccode.deps.i8tana=["i8tans"] +scilab2ccode.deps.i8tans=[] +scilab2ccode.deps.i16tana=["i16tans"] +scilab2ccode.deps.i16tans=[] +scilab2ccode.deps.u8tana=["u8tans"] +scilab2ccode.deps.u8tans=[] +scilab2ccode.deps.u16tana=["u16tans"] +scilab2ccode.deps.u16tans=[] //tanh @@ -318,13 +683,285 @@ scilab2ccode.deps.stanhs=[] scilab2ccode.deps.stanha=["stanhs"] scilab2ccode.deps.ztanhs=["zreals","zimags","ztans","DoubleComplex"] scilab2ccode.deps.ztanha=["ztanhs"] +scilab2ccode.deps.i8tanha=["i8tanhs"] +scilab2ccode.deps.i8tanhs=[] +scilab2ccode.deps.i16tanha=["i16tanhs"] +scilab2ccode.deps.i16tanhs=[] +scilab2ccode.deps.u8tanha=["u8tanhs"] +scilab2ccode.deps.u8tanhs=[] +scilab2ccode.deps.u16tanha=["u16tanhs"] +scilab2ccode.deps.u16tanhs=[] + +//uint8 +scilab2ccode.deps.duint8a=["duint8s"] +scilab2ccode.deps.duint8s=[] +scilab2ccode.deps.i8uint8a=["i8uint8s"] +scilab2ccode.deps.i8uint8s=[] +scilab2ccode.deps.i16uint8a=["i16uint8s"] +scilab2ccode.deps.i16uint8s=[] +scilab2ccode.deps.suint8a=["suint8s"] +scilab2ccode.deps.suint8s=[] +scilab2ccode.deps.u16uint8a=["u16uint8s"] +scilab2ccode.deps.u16uint8s=[] + +//uint16 +scilab2ccode.deps.duint16a=["duint16s"] +scilab2ccode.deps.duint16s=[] +scilab2ccode.deps.i8uint16a=["i8uint16s"] +scilab2ccode.deps.i8uint16s=[] +scilab2ccode.deps.i16uint16a=["i16uint16s"] +scilab2ccode.deps.i16uint16s=[] +scilab2ccode.deps.suint16a=["suint16s"] +scilab2ccode.deps.suint16s=[] +scilab2ccode.deps.u8uint16a=["u8uint16s"] +scilab2ccode.deps.u8uint16s=[] + +//////DISCRETE_MATHEMATICS///////// + +//factor +scilab2ccode.deps.dfactors=[] +scilab2ccode.deps.sfactors=[] + +//factorial +scilab2ccode.deps.dfactoriala=["dfactorials"] +scilab2ccode.deps.dfactorials=[] +scilab2ccode.deps.sfactoriala=["dfactorials"] +scilab2ccode.deps.sfactorials=[] + +//primes +scilab2ccode.deps.dprimess=[] +scilab2ccode.deps.sprimess=[] + + +////////RADIX_CONVERSION//////// + +//base2dec +scilab2ccode.deps.dbase2decs=[] +scilab2ccode.deps.gbase2decs=[] + +//bin2dec +scilab2ccode.deps.dbin2deca=["dbin2decs"] +scilab2ccode.deps.dbin2decs=[] +scilab2ccode.deps.i8bin2deca=["i8bin2decs"] +scilab2ccode.deps.i8bin2decs=[] +scilab2ccode.deps.i16bin2deca=["i16bin2decs"] +scilab2ccode.deps.i16bin2decs=[] +scilab2ccode.deps.u8bin2deca=["u8bin2decs"] +scilab2ccode.deps.u8bin2decs=[] +scilab2ccode.deps.u16bin2deca=["u16bin2decs"] +scilab2ccode.deps.u16bin2decs=[] + +//dec2base +scilab2ccode.deps.ddec2basea=["ddec2bases"] +scilab2ccode.deps.ddec2bases=[] +scilab2ccode.deps.sdec2basea=["sdec2bases"] +scilab2ccode.deps.sdec2bases=[] + +//dec2bin +scilab2ccode.deps.ddec2bina=["ddec2bins"] +scilab2ccode.deps.ddec2bins=[] +scilab2ccode.deps.i8dec2bina=["i8dec2bins"] +scilab2ccode.deps.i8dec2bins=[] +scilab2ccode.deps.i16dec2bina=["i16dec2bins"] +scilab2ccode.deps.i16dec2bins=[] +scilab2ccode.deps.u8dec2bina=["u8dec2bins"] +scilab2ccode.deps.u8dec2bins=[] +scilab2ccode.deps.u16dec2bina=["u16dec2bins"] +scilab2ccode.deps.u16dec2bins=[] + +//dec2hex +scilab2ccode.deps.ddec2hexa=["ddec2hexs"] +scilab2ccode.deps.ddec2hexs=[] +scilab2ccode.deps.i8dec2hexa=["i8dec2hexs"] +scilab2ccode.deps.i8dec2hexs=[] +scilab2ccode.deps.i16dec2hexa=["i16dec2hexs"] +scilab2ccode.deps.i16dec2hexs=[] +scilab2ccode.deps.u8dec2hexa=["u8dec2hexs"] +scilab2ccode.deps.u8dec2hexs=[] +scilab2ccode.deps.u16dec2hexa=["u16dec2hexs"] +scilab2ccode.deps.u16dec2hexs=[] + +//dec2oct +scilab2ccode.deps.ddec2octa=["ddec2octs"] +scilab2ccode.deps.ddec2octs=[] +scilab2ccode.deps.i8dec2octa=["i8dec2octs"] +scilab2ccode.deps.i8dec2octs=[] +scilab2ccode.deps.i16dec2octa=["i16dec2octs"] +scilab2ccode.deps.i16dec2octs=[] +scilab2ccode.deps.u8dec2octa=["u8dec2octs"] +scilab2ccode.deps.u8dec2octs=[] +scilab2ccode.deps.u16dec2octs=["u16dec2octs"] +scilab2ccode.deps.u16dec2octs=[] + +//hex2dec +scilab2ccode.deps.dhex2decs=[] +scilab2ccode.deps.ghex2decs=[] + +//oct2dec +scilab2ccode.deps.doct2deca=["doct2decs"] +scilab2ccode.deps.doct2decs=[] +scilab2ccode.deps.i8oct2deca=["i8oct2decs"] +scilab2ccode.deps.i8oct2decs=[] +scilab2ccode.deps.i16oct2deca=["i16oct2decs"] +scilab2ccode.deps.i16oct2decs=[] +scilab2ccode.deps.u8oct2deca=["u8oct2decs"] +scilab2ccode.deps.u8oct2decs=[] +scilab2ccode.deps.u16oct2deca=["u16oct2decs"] +scilab2ccode.deps.u16oct2decs=[] + +//////////Trigonometry///////// + +//cosd +scilab2ccode.deps.dcosda=["dcosds"] +scilab2ccode.deps.dcosds=[] +scilab2ccode.deps.scosda=["scosds"] +scilab2ccode.deps.scosds=[] + +//cotd +scilab2ccode.deps.dcotda=["dcotds"] +scilab2ccode.deps.dcotds=[] +scilab2ccode.deps.scotda=["scotds"] +scilab2ccode.deps.scotds=[] + +//coth +scilab2ccode.deps.ccotha=["ccoths"] +scilab2ccode.deps.ccoths=["ctanhs","FloatComplex","crdivs"] +scilab2ccode.deps.dcotha=[] +scilab2ccode.deps.dcoths=[] +scilab2ccode.deps.scotha=[] +scilab2ccode.deps.scoths=[] +scilab2ccode.deps.zcotha=["zcoths"] +scilab2ccode.deps.zcoths=["zrdivs","DoubleComplex","ztanhs"] + +//csc +scilab2ccode.deps.ccsca=["ccscs"] +scilab2ccode.deps.ccscs=["csins","FloatComplex","crdivs"] +scilab2ccode.deps.dcsca=["dcscs"] +scilab2ccode.deps.dcscs=[] +scilab2ccode.deps.scsca=["scscs"] +scilab2ccode.deps.scscs=[] +scilab2ccode.deps.zcsca=["zcscs"] +scilab2ccode.deps.zcscs=["DoubleComplex","zrdivs","dsins","dcoshs","dcoss","dsinhs","zreals","zimags"] + +//cscd +scilab2ccode.deps.ccscda=["ccscds"] +scilab2ccode.deps.ccscds=["csins","FloatComplex","crdivs"] +scilab2ccode.deps.dcscda=["dcscds"] +scilab2ccode.deps.dcscds=[] +scilab2ccode.deps.scscda=["scscds"] +scilab2ccode.deps.scscds=[] +scilab2ccode.deps.zcscda=["zcscds"] +scilab2ccode.deps.zcscds=["zrdivs","DoubleComplex","zsins"] + +//csch +scilab2ccode.deps.ccscha=["ccschs"] +scilab2ccode.deps.ccschs=["csinhs","FloatComplex","crdivs"] +scilab2ccode.deps.dcscha=["dcschs"] +scilab2ccode.deps.dcschs=[] +scilab2ccode.deps.scscha=["scschs"] +scilab2ccode.deps.scschs=[] +scilab2ccode.deps.zcscha=["zcschs"] +scilab2ccode.deps.zcschs=["zrdivs","DoubleComplex","zsinhs"] + +//sec +scilab2ccode.deps.cseca=["csecs"] +scilab2ccode.deps.csecs=["ccoss","FloatComplex","crdivs"] +scilab2ccode.deps.dseca=[] +scilab2ccode.deps.dsecs=[] +scilab2ccode.deps.sseca=["ssecs"] +scilab2ccode.deps.ssecs=[] +scilab2ccode.deps.zseca=["zsecs"] +scilab2ccode.deps.zsecs=["zrdivs","DoubleComplex","zcoss"] + +//secd +scilab2ccode.deps.dsecda=["dsecds"] +scilab2ccode.deps.dsecds=[] +scilab2ccode.deps.ssecda=["ssecds"] +scilab2ccode.deps.ssecds=[] + +//sech +scilab2ccode.deps.csecha=["csechs"] +scilab2ccode.deps.ccoths=["ccoshs","FloatComplex","crdivs"] +scilab2ccode.deps.dsecha=["dsechs"] +scilab2ccode.deps.dsechs=[] +scilab2ccode.deps.ssecha=["ssechs"] +scilab2ccode.deps.ssechs=[] +scilab2ccode.deps.zsecha=["zsechs"] +scilab2ccode.deps.zsechs=["zrdivs","DoubleComplex","zcoshs"] + +/////////////////////////////// +////// FILES ////// +/////////////////////////////// + + +//mclose +scilab2ccode.deps.mclose=[] + + +//mopen +scilab2ccode.deps.mopen=[] + + +//mput +scilab2ccode.deps.dmputa=[] +scilab2ccode.deps.dmputs=[] +scilab2ccode.deps.i8mputa=[] +scilab2ccode.deps.i8mputs=[] +scilab2ccode.deps.i16mputa=[] +scilab2ccode.deps.i16mputs=[] +scilab2ccode.deps.smputa=[] +scilab2ccode.deps.smputs=[] +scilab2ccode.deps.u8mputa=[] +scilab2ccode.deps.u8mputs=[] +scilab2ccode.deps.u16mputa=[] +scilab2ccode.deps.u16mputs=[] /////////////////////////////// +////// IMPLICITLIST ////// +/////////////////////////////// + +scilab2ccode.deps.cimplicitLists=["simplicitLists"] +scilab2ccode.deps.dimplicitLists=[] +scilab2ccode.deps.simplicitLists=[] +scilab2ccode.deps.zimplicitLists=["dimplicitLists"] + +/////////////////////////////// +/////// LINEARALGEBRA /////// +/////////////////////////////// + +//balanc +scilab2ccode.deps.dbalanca=["deyea"] + +//rcond +scilab2ccode.deps.drconda=[] + +//schur +scilab2ccode.deps.dgschura=[] +scilab2ccode.deps.dschura=[] + +/////////////////////////////// ////// MATRIX OPERATIONS ////// /////////////////////////////// +//cat +scilab2ccode.deps.ccata=[] +scilab2ccode.deps.ccats=[] +scilab2ccode.deps.dcata=[] +scilab2ccode.deps.dcatS=[] +scilab2ccode.deps.scata=[] +scilab2ccode.deps.scats=[] +scilab2ccode.deps.zcata=[] +scilab2ccode.deps.zcats=[] +scilab2ccode.deps.i8cata=[] +scilab2ccode.deps.i8cats=[] +scilab2ccode.deps.i16cata=[] +scilab2ccode.deps.i16catS=[] +scilab2ccode.deps.u8cata=[] +scilab2ccode.deps.u8cats=[] +scilab2ccode.deps.u16cata=[] +scilab2ccode.deps.u16cats=[] //OpRc scilab2ccode.deps.crowcats=[] @@ -355,14 +992,87 @@ scilab2ccode.deps.dchola=[] scilab2ccode.deps.schols=["ssqrts"] scilab2ccode.deps.schola=["ssqrts"] scilab2ccode.deps.zchola=["DoubleComplex","zreals","zimags","zdiffs","zmuls","zrdivs","zsqrts"] - +//cumprod +scilab2ccode.deps.dcolumncumproda=[] +scilab2ccode.deps.dcumproda=[] +scilab2ccode.deps.drowcumproda=[] +scilab2ccode.deps.i8columncumproda=[] +scilab2ccode.deps.i8cumproda=[] +scilab2ccode.deps.i8rowcumproda=[] +scilab2ccode.deps.i16columncumproda=[] +scilab2ccode.deps.i16cumproda=[] +scilab2ccode.deps.i16rowcumproda=[] +scilab2ccode.deps.scolumncumproda=[] +scilab2ccode.deps.scumproda=[] +scilab2ccode.deps.srowcumproda=[] +scilab2ccode.deps.u8columncumproda=[] +scilab2ccode.deps.u8cumproda=[] +scilab2ccode.deps.u8rowcumproda=[] +scilab2ccode.deps.u16columncumproda=[] +scilab2ccode.deps.u16cumproda=[] +scilab2ccode.deps.u16rowcumproda=[] + +//cumcum +scilab2ccode.deps.dcolumncumsuma=[] +scilab2ccode.deps.dcumsuma=[] +scilab2ccode.deps.drowcumsuma=[] +scilab2ccode.deps.i8columncumsuma=[] +scilab2ccode.deps.i8cumsuma=[] +scilab2ccode.deps.i8rowcumsuma=[] +scilab2ccode.deps.i16columncumsuma=[] +scilab2ccode.deps.i16cumsuma=[] +scilab2ccode.deps.i16rowcumsuma=[] +scilab2ccode.deps.scolumncumsuma=[] +scilab2ccode.deps.scumsuma=[] +scilab2ccode.deps.srowcumsuma=[] +scilab2ccode.deps.u8columncumsuma=[] +scilab2ccode.deps.u8cumsuma=[] +scilab2ccode.deps.u8rowcumsuma=[] +scilab2ccode.deps.u16columncumsuma=[] +scilab2ccode.deps.u16cumsuma=[] +scilab2ccode.deps.u16rowcumsuma=[] //determ scilab2ccode.deps.cdeterma=["cdiffs","FloatComplex","cmuls","cadds","DoubleComplex","creals","cimags","zreals","zimags","zmuls","crdivs"] scilab2ccode.deps.ddeterma=[] scilab2ccode.deps.sdeterma=[] scilab2ccode.deps.zdeterma=["zdiffs","zmuls","DoubleComplex","zadds","zreals","zimags","zrdivs"] - +scilab2ccode.deps.i8determa=[] +scilab2ccode.deps.i16determa=[] +scilab2ccode.deps.u8determa=[] +scilab2ccode.deps.u16determa=[] + +//diag +scilab2ccode.deps.ddiaga=[] +scilab2ccode.deps.ddiagexa=[] +scilab2ccode.deps.ddiagexs=[] +scilab2ccode.deps.ddiagina=[] +scilab2ccode.deps.ddiagins=[] +scilab2ccode.deps.ddiags=[] +scilab2ccode.deps.i8diags=[] +scilab2ccode.deps.i8diagexa=[] +scilab2ccode.deps.i8diagexs=[] +scilab2ccode.deps.i8diagina=[] +scilab2ccode.deps.i8diagins=[] +scilab2ccode.deps.i8diags=[] +scilab2ccode.deps.i16diaga=[] +scilab2ccode.deps.i16diags=[] +scilab2ccode.deps.i16diagexa=[] +scilab2ccode.deps.i16diagexs=[] +scilab2ccode.deps.i16diagina=[] +scilab2ccode.deps.i16diagins=[] +scilab2ccode.deps.u8diaga=[] +scilab2ccode.deps.u8diags=[] +scilab2ccode.deps.u8diagexa=[] +scilab2ccode.deps.u8diagexs=[] +scilab2ccode.deps.u8diagina=[] +scilab2ccode.deps.u8diagins=[] +scilab2ccode.deps.u16diaga=[] +scilab2ccode.deps.u16diags=[] +scilab2ccode.deps.u16diagexa=[] +scilab2ccode.deps.u16diagexs=[] +scilab2ccode.deps.u16diagina=[] +scilab2ccode.deps.u16diagins=[] //dist scilab2ccode.deps.cdists=["spows","creals","cimags","ssqrts"] @@ -374,6 +1084,28 @@ scilab2ccode.deps.sdista=["spows","ssqrts"] scilab2ccode.deps.zdists=["dpows","zreals","zimags","dsqrts"] scilab2ccode.deps.zdista=["dpows","zreals","zimags","dsqrts"] +//division +scilab2ccode.deps.crdivcsv=["crdivv"] +scilab2ccode.deps.crdivscv=["crdivv"] +scilab2ccode.deps.crdivv=["crdivma","FloatComplex"] +scilab2ccode.deps.drdivv=["drdivma"] +scilab2ccode.deps.i8rdivma=["dtransposea"] +scilab2ccode.deps.i8ldivma=[] +scilab2ccode.deps.i8rdivv=["i8rdivma"] +scilab2ccode.deps.i16ldivma=[] +scilab2ccode.deps.i16rdivma=["dtransposea"] +scilab2ccode.deps.i16rdivv=["i16rdivma"] +scilab2ccode.deps.srdivv=["srdivma"] +scilab2ccode.deps.u8rdivma=["dtransposea"] +scilab2ccode.deps.u8ldivma=[] +scilab2ccode.deps.u8rdivv=["u8rdivma"] +scilab2ccode.deps.u16ldivma=[] +scilab2ccode.deps.u16rdivma=["dtransposea"] +scilab2ccode.deps.u16rdivv=["u16rdivma"] +scilab2ccode.deps.zrdivdzv=["dzerosa","zrdivv"] +scilab2ccode.deps.zrdivv=["zrdivma","DoubleComplex"] +scilab2ccode.deps.zrdivzdv=["dzerosa","zrdivv"] + //OpSlash scilab2ccode.deps.crdivma=["DoubleComplex","creals","cimags","zrdivma","FloatComplex","zreals","zimags"] @@ -401,7 +1133,10 @@ scilab2ccode.deps.ceyea= ["FloatComplex"] scilab2ccode.deps.deyea= [] scilab2ccode.deps.seyea= [] scilab2ccode.deps.zeyea= ["DoubleComplex"] - +scilab2ccode.deps.i8eyea= [] +scilab2ccode.deps.i16eyea= [] +scilab2ccode.deps.u8eyea= [] +scilab2ccode.deps.u16eyea= [] //fill scilab2ccode.deps.cfilla=["conesa","cmuls"] @@ -409,10 +1144,18 @@ scilab2ccode.deps.dfilla=["donesa"] scilab2ccode.deps.sfilla=["sonesa"] scilab2ccode.deps.zfilla=["zonesa","zmuls"] +//flipdim +scilab2ccode.deps.dflipdima=[] +scilab2ccode.deps.i8flipdima=[] +scilab2ccode.deps.i16flipdima=[] +scilab2ccode.deps.sflipdima=[] +scilab2ccode.deps.u8flipdima=[] +scilab2ccode.deps.u16flipdima=[] + +//hilb +scilab2ccode.deps.dhilba=[] +scilab2ccode.deps.shilba=[] -//hilbert -scilab2ccode.deps.dhilberta=[] -scilab2ccode.deps.shilberta=[] //infinite norm scilab2ccode.deps.cinfnorma=["spythags","creals","cimags"] @@ -426,10 +1169,19 @@ scilab2ccode.deps.cinverma=["DoubleComplex","creals","cimags","zinverma","FloatC scilab2ccode.deps.dinverma=[] scilab2ccode.deps.sinverma=["dinverma"] scilab2ccode.deps.zinverma=[] +scilab2ccode.deps.i8inverma=[] +scilab2ccode.deps.i16inverma=[] +scilab2ccode.deps.u8inverma=[] +scilab2ccode.deps.u16inverma=[] //jmat +scilab2ccode.deps.djmata=[] +scilab2ccode.deps.sjmata=[] +//kron +scilab2ccode.deps.dkrona=[] +scilab2ccode.deps.skrona=[] //logm scilab2ccode.deps.clogma=["DoubleComplex","creals","cimags","zlogma","FloatComplex","zreals","zimags"] @@ -447,21 +1199,58 @@ scilab2ccode.deps.smagns=[] scilab2ccode.deps.smagna=["smagns"] scilab2ccode.deps.zmagns=["zreals","zimags","dsqrts"] scilab2ccode.deps.zmagna=["zmagns"] - +scilab2ccode.deps.i8magna=[] +scilab2ccode.deps.i8magns=["i8abss"] +scilab2ccode.deps.i16magna=["dmagns"] +scilab2ccode.deps.i16magns=["i16abss"] +scilab2ccode.deps.u8magna=["dmagns"] +scilab2ccode.deps.u8magns=["u8abss"] +scilab2ccode.deps.u16magna=["dmagns"] +scilab2ccode.deps.u16magns=["u16abss"] //OpStar scilab2ccode.deps.cmulma=["FloatComplex","cadds","cmuls"] scilab2ccode.deps.dmulma=[] scilab2ccode.deps.smulma=[] scilab2ccode.deps.zmulma=["zreala","zimaga","DoubleComplex","zadds","zmuls"] +scilab2ccode.deps.i8mulma=[] +scilab2ccode.deps.i16mulma=[] +scilab2ccode.deps.u8mulma=[] +scilab2ccode.deps.u16mulma=[] +//norm +scilab2ccode.deps.dnorma=[] +scilab2ccode.deps.dnormv=[] +scilab2ccode.deps.snorma=[] +scilab2ccode.deps.snormv=[] //ones scilab2ccode.deps.conesa=["FloatComplex"] scilab2ccode.deps.donesa=[] scilab2ccode.deps.sonesa=[] scilab2ccode.deps.zonesa=["DoubleComplex"] - +scilab2ccode.deps.i8onesa=[] +scilab2ccode.deps.i16onesa=[] +scilab2ccode.deps.u8onesa=[] +scilab2ccode.deps.u16onesa=[] + +//powm +scilab2ccode.deps.cpowma=["creals","cimags","cspec2a","cpows","cmulma","ctransposea","cconja","cinverma"] +scilab2ccode.deps.dpowma=["dzerosa","zspec2a","zpows","zmulma","ztransposea","zconja","zinverma","zreals","DoubleComplex"] +scilab2ccode.deps.spowma=["szerosa","cspec2a","cpows","FloatComplex","cmulma","ctransposea","cconja","cinverma","creals"] +scilab2ccode.deps.zpowma=["zreals","zimags","zspec2a","zpows","zmulma","ztransposea","zconja","zinverma"] + +//spec +scilab2ccode.deps.cspeca=["DoubleComplex","creals","cimags","zspeca","FloatComplex","zreals","zimags"] +scilab2ccode.deps.dspeca=[] +scilab2ccode.deps.sspeca=["dspeca"] +scilab2ccode.deps.zspeca=["DoubleComplex","zreals","zimags","zconjs","dzerosa"] + +//spec2 +scilab2ccode.deps.cspec2a=["DoubleComplex","creals","cimags","zspec2a","FloatComplex","zreals","zimags"] +scilab2ccode.deps.dspec2a=["dzerosa"] +scilab2ccode.deps.sspec2a=["dspec2a"] +scilab2ccode.deps.zspec2a=["DoubleComplex","zreals","zimags","dzerosa"] //Squared Magnitude scilab2ccode.deps.csquMagns=["creals","cimags"] @@ -479,6 +1268,10 @@ scilab2ccode.deps.ctracea=["creals","cimags","FloatComplex"] scilab2ccode.deps.dtracea=[] scilab2ccode.deps.stracea=[] scilab2ccode.deps.ztracea=["zreals","zimags","DoubleComplex"] +scilab2ccode.deps.i8tracea=[] +scilab2ccode.deps.i16tracea=[] +scilab2ccode.deps.u8tracea=[] +scilab2ccode.deps.u16tracea=[] //transpose @@ -486,16 +1279,44 @@ scilab2ccode.deps.ctransposea=["creals","cimags","FloatComplex"] scilab2ccode.deps.dtransposea=[] scilab2ccode.deps.stransposea=[] scilab2ccode.deps.ztransposea=["zreals","zimags","DoubleComplex"] - - - +scilab2ccode.deps.i8transposea=[] +scilab2ccode.deps.i16transposea=[] +scilab2ccode.deps.u8transposea=[] +scilab2ccode.deps.u16transposea=[] + +//tril +scilab2ccode.deps.dtrila=[] +scilab2ccode.deps.i8trila=[] +scilab2ccode.deps.i16trila=[] +scilab2ccode.deps.strila=[] +scilab2ccode.deps.u8trila=[] +scilab2ccode.deps.u16trila=[] + +//triu +scilab2ccode.deps.dtriua=[] +scilab2ccode.deps.i8triua=[] +scilab2ccode.deps.i16triua=[] +scilab2ccode.deps.striua=[] +scilab2ccode.deps.u8triua=[] +scilab2ccode.deps.u16triua=[] + +//zeros +scilab2ccode.deps.czerosa=["FloatComplex"] +scilab2ccode.deps.dzerosa=[] +scilab2ccode.deps.dzerosh=[] +scilab2ccode.deps.i8zerosa=[] +scilab2ccode.deps.i16zerosa=[] +scilab2ccode.deps.szerosa=[] +scilab2ccode.deps.u8zerosa=[] +scilab2ccode.deps.u16zerosa=[] +scilab2ccode.deps.zzerosa=["DoubleComplex"] //////////////////////// ////// OPERATIONS ////// //////////////////////// -//OpPlus +//addition scilab2ccode.deps.cadds=["creals","cimags","FloatComplex"] scilab2ccode.deps.cadda=["cadds"] scilab2ccode.deps.dadds=[] @@ -504,9 +1325,17 @@ scilab2ccode.deps.sadds=[] scilab2ccode.deps.sadda=["sadds"] scilab2ccode.deps.zadds=["zreals","zimags","DoubleComplex"] scilab2ccode.deps.zadda=["zadds"] +scilab2ccode.deps.i8adda=["i8adds"] +scilab2ccode.deps.i8adds=[] +scilab2ccode.deps.i16adda=["i16adds"] +scilab2ccode.deps.i16adds=[] +scilab2ccode.deps.u8adda=["u8adds"] +scilab2ccode.deps.u8adds=[] +scilab2ccode.deps.u16adda=["u16adds"] +scilab2ccode.deps.u16adds=[] -//OpDotSlash/OpSlash +//division scilab2ccode.deps.crdivs=["FloatComplex"] scilab2ccode.deps.crdiva=["crdivs"] scilab2ccode.deps.drdivs=[] @@ -515,9 +1344,6 @@ scilab2ccode.deps.srdivs=[] scilab2ccode.deps.srdiva=["srdivs"] scilab2ccode.deps.zrdivs=["DoubleComplex"] scilab2ccode.deps.zrdiva=["zrdivs"] - - -//OpBackSlash scilab2ccode.deps.cldivs=["cmuls","cconjs","creals","cimags","FloatComplex","crdivs"] scilab2ccode.deps.cldiva=["cldivs"] scilab2ccode.deps.dldivs=[] @@ -526,9 +1352,24 @@ scilab2ccode.deps.sldivs=[] scilab2ccode.deps.sldiva=["scldivs"] scilab2ccode.deps.zldivs=["zmuls","zconjs","zreals","zimags","DoubleComplex","zrdivs"] scilab2ccode.deps.zldiva=["zldivs"] - - -//OpStar/OpDotStar +scilab2ccode.deps.i8ldiva=["i8ldivs"] +scilab2ccode.deps.i8ldivs=[] +scilab2ccode.deps.i8rdiva=["i8rdivs"] +scilab2ccode.deps.i8rdivs=[] +scilab2ccode.deps.i16ldiva=["i16ldivs"] +scilab2ccode.deps.i16ldivs=[] +scilab2ccode.deps.i16rdiva=["i16rdivs"] +scilab2ccode.deps.i16rdivs=[] +scilab2ccode.deps.u8ldiva=["u8ldivs"] +scilab2ccode.deps.u8ldivs=[] +scilab2ccode.deps.u8rdiva=["u8rdivs"] +scilab2ccode.deps.u8rdivs=[] +scilab2ccode.deps.u16ldiva=["u16ldivs"] +scilab2ccode.deps.u16ldivs=[] +scilab2ccode.deps.u16rdiva=["u16rdivs"] +scilab2ccode.deps.u16rdivs=[] + +//multiplication scilab2ccode.deps.cmuls=["FloatComplex"] scilab2ccode.deps.cmula=["cmuls"] scilab2ccode.deps.dmuls=[] @@ -537,9 +1378,28 @@ scilab2ccode.deps.smuls=[] scilab2ccode.deps.smula=["smuls"] scilab2ccode.deps.zmuls=["DoubleComplex"] scilab2ccode.deps.zmula=["zmuls"] - - -//OpMinus +scilab2ccode.deps.cmulcsv=["cmulv"] +scilab2ccode.deps.cmulscv=["cmulv"] +scilab2ccode.deps.cmulv=["cadds"] +scilab2ccode.deps.dmulv=["dmuls"] +scilab2ccode.deps.i8muls=[] +scilab2ccode.deps.i8mula=["i8muls"] +scilab2ccode.deps.i8mulv=["i8muls"] +scilab2ccode.deps.i16muls=[] +scilab2ccode.deps.i16mula=["i16muls"] +scilab2ccode.deps.i16mulv=["i16muls"] +scilab2ccode.deps.smulv=["smuls"] +scilab2ccode.deps.u8muls=[] +scilab2ccode.deps.u8mula=["u8muls"] +scilab2ccode.deps.u8mulv=["u8muls"] +scilab2ccode.deps.u16muls=[] +scilab2ccode.deps.u16mula=["u16muls"] +scilab2ccode.deps.u16mulv=["u16muls"] +scilab2ccode.deps.zmuldzv=["dzerosa","zmulv"] +scilab2ccode.deps.zmulzdv=["dzerosa","zmulv"] +scilab2ccode.deps.zmulv=["zadds"] + +//subtraction scilab2ccode.deps.cdiffs=["creals","cimags","FloatComplex"] scilab2ccode.deps.cdiffa=["cdiffs"] scilab2ccode.deps.ddiffs=[] @@ -548,6 +1408,14 @@ scilab2ccode.deps.sdiffs=[] scilab2ccode.deps.sdiffa=["sdiffs"] scilab2ccode.deps.zdiffs=["zreals","zimags","DoubleComplex"] scilab2ccode.deps.zdiffa=["zdiffs"] +scilab2ccode.deps.i8diffs=[] +scilab2ccode.deps.i8diffa=["i8diffs"] +scilab2ccode.deps.i16diffa=["i16diffs"] +scilab2ccode.deps.i16diffs=[] +scilab2ccode.deps.u8diffa=["u8diffs"] +scilab2ccode.deps.u8diffs=[] +scilab2ccode.deps.u16diffa=["u16diffs"] +scilab2ccode.deps.u16diffs=[] /////////////////////////////// @@ -581,12 +1449,13 @@ scilab2ccode.deps.cfftma=["DoubleComplex","creals","cimags","zfftma","FloatCompl scilab2ccode.deps.dfft2=["dfftbi"] scilab2ccode.deps.dfftbi=["dfftmx"] scilab2ccode.deps.dfftmx=[] +scilab2ccode.deps.dfftma=["dzerosa","zfftma","zreala"] scilab2ccode.deps.fft842=["r2tx","r4tx","r8tx","DoubleComplex","zreals","zimags"] scilab2ccode.deps.r2tx=["zadds","zdiffs","DoubleComplex","zreals","zimags"] scilab2ccode.deps.r4tx=["zadds","zdiffs","DoubleComplex","zreals","zimags"] scilab2ccode.deps.r8tx=["zadds","zdiffs","DoubleComplex","zreals","zimags"] scilab2ccode.deps.zfftma=["zreala","zimaga","fft842","dfft2","DoubleComplexMatrix"] - +scilab2ccode.deps.sfftma=["szerosa","cfftma","creala"] //hilbert scilab2ccode.deps.dhilberts=[] @@ -594,6 +1463,20 @@ scilab2ccode.deps.dhilberta=["DoubleComplex","zfftma","zmuls","zifftma"] scilab2ccode.deps.shilberts=[] scilab2ccode.deps.shilberta=["FloatComplex","cfftma","cmuls","cifftma"] +//fftshift +scilab2ccode.deps.ccolumnfftshifta=[] +scilab2ccode.deps.cfftshifta=["crowfftshifta","ccolumnfftshifta"] +scilab2ccode.deps.crowfftshifta=[] +scilab2ccode.deps.dcolumnfftshifta=[] +scilab2ccode.deps.dfftshifta=["drowfftshifta","dcolumnfftshifta"] +scilab2ccode.deps.drowfftshifta=[] +scilab2ccode.deps.scolumnfftshifta=[] +scilab2ccode.deps.sfftshifta=["srowfftshifta","scolumnfftshifta"] +scilab2ccode.deps.srowfftshifta=[] +scilab2ccode.deps.zcolumnfftshifta=[] +scilab2ccode.deps.zfftshifta=["zrowfftshifta","zcolumnfftshifta"] +scilab2ccode.deps.zrowfftshifta=[] + //ifft scilab2ccode.deps.cifftma=["DoubleComplex","creals","cimags","zifftma","FloatComplex","zreals","zimags"] @@ -605,6 +1488,19 @@ scilab2ccode.deps.ir2tx=["zadds","zdiffs","DoubleComplex","zreals","zimags"] scilab2ccode.deps.ir4tx=["zadds","zdiffs","DoubleComplex","zreals","zimags"] scilab2ccode.deps.ir8tx=["zadds","zdiffs","DoubleComplex","zreals","zimags"] scilab2ccode.deps.zifftma=["zreala","zimaga","ifft842","difft2","DoubleComplexMatrix"] +scilab2ccode.deps.diffbi_lavraie=[] +scilab2ccode.deps.difftma=["dzerosa","zifftma","zreala"] +scilab2ccode.deps.sifftma=["szerosa","cifftma","creala"] + +//lev +scilab2ccode.deps.cleva=["crdivs","FloatComplex","creals","cimags","cmuls","cconjs","cdiffs","cadds"] +scilab2ccode.deps.cleva2=["crdivs","FloatComplex","creals","cimags","cmuls","cconjs","cdiffs","cadds"] +scilab2ccode.deps.dleva=[] +scilab2ccode.deps.dleva2=[] +scilab2ccode.deps.sleva=[] +scilab2ccode.deps.sleva2=[] +scilab2ccode.deps.zleva=["zrdivs","DoubleComplex","zreals","zimags","zmuls","zdiffs","zconjs","zadds"] +scilab2ccode.deps.zleva2=["zrdivs","DoubleComplex","zreals","zimags","zmuls","zdiffs","zconjs","zadds"] //levin @@ -630,7 +1526,7 @@ scilab2ccode.deps.slevinmul2=[] scilab2ccode.deps.sdecalage=[] scilab2ccode.deps.slevinsub=[] scilab2ccode.deps.slevinsig=[] - +scilab2ccode.deps.levinUtils=[] //lpc2cep scilab2ccode.deps.clpc2cepa=["cfftma","clogma","cifftma"] @@ -643,6 +1539,25 @@ scilab2ccode.deps.zlpc2cepa=["zfftma","zlogma","zifftma"] ////// STATISTIC FUNCTIONS ////// ///////////////////////////////// +//max +scilab2ccode.deps.dcolumnmaxa=[] +scilab2ccode.deps.dmaxa=[] +scilab2ccode.deps.drowmaxa=[] +scilab2ccode.deps.i8columnmaxa=[] +scilab2ccode.deps.i8maxa=[] +scilab2ccode.deps.i8rowmaxa=[] +scilab2ccode.deps.i16columnmaxa=[] +scilab2ccode.deps.i16maxa=[] +scilab2ccode.deps.i16rowmaxa=[] +scilab2ccode.deps.scolumnmaxa=[] +scilab2ccode.deps.smaxa=[] +scilab2ccode.deps.srowmaxa=[] +scilab2ccode.deps.u8columnmaxa=[] +scilab2ccode.deps.u8maxa=[] +scilab2ccode.deps.u8rowmaxa=[] +scilab2ccode.deps.u16columnmaxa=[] +scilab2ccode.deps.u16maxa=[] +scilab2ccode.deps.u16rowmaxa=[] //mean scilab2ccode.deps.cmeana=["FloatComplex","cadds","creals","cimags"] @@ -658,7 +1573,43 @@ scilab2ccode.deps.drowmeana=["drowsuma"] scilab2ccode.deps.srowmeana=["srowsuma"] scilab2ccode.deps.zrowmeana=["zrowsuma","zrdivs","DoubleComplex"] - +//meanf +scilab2ccode.deps.cmeanfa=["FloatComplex","cadds","crdivs"] +scilab2ccode.deps.dmeanfa=[] +scilab2ccode.deps.smeanfa=[] +scilab2ccode.deps.zmeanfa=["DoubleComplex","zadds","zmuls","zrdivs"] +scilab2ccode.deps.ccolumnmeanfa=["cadds","cmuls","FloatComplex","crdivs"] +scilab2ccode.deps.dcolumnmeanfa=[] +scilab2ccode.deps.scolumnmeanfa=[] +scilab2ccode.deps.zcolumnmeanfa=["zmuls","zrdivs","DoubleComplex","zadds"] +scilab2ccode.deps.crowmeanfa=["cmuls","crdivs","FloatComplex","cadds"] +scilab2ccode.deps.drowmeanfa=["drowsuma"] +scilab2ccode.deps.srowmeanfa=[] +scilab2ccode.deps.zrowmeanfa=["zmuls","zrdivs","DoubleComplex","zadds"] +scilab2ccode.deps.cmeanfcs=["szerosa","cmeanfa"] +scilab2ccode.deps.cmeanfsc=["szerosa","cmeanfa"] +scilab2ccode.deps.zmeanfdz=["dzerosa","zmeanfa"] +scilab2ccode.deps.zmeanfzd=["dzerosa","zmeanfa"] + +//min +scilab2ccode.deps.dcolumnmina=[] +scilab2ccode.deps.dmina=[] +scilab2ccode.deps.drowmina=[] +scilab2ccode.deps.i8columnmina=[] +scilab2ccode.deps.i8mina=[] +scilab2ccode.deps.i8rowmina=[] +scilab2ccode.deps.i16columnmina=[] +scilab2ccode.deps.i16mina=[] +scilab2ccode.deps.i16rowmina=[] +scilab2ccode.deps.scolumnmina=[] +scilab2ccode.deps.smina=[] +scilab2ccode.deps.srowmina=[] +scilab2ccode.deps.u8columnmina=[] +scilab2ccode.deps.u8mina=[] +scilab2ccode.deps.u8rowmina=[] +scilab2ccode.deps.u16columnmina=[] +scilab2ccode.deps.u16mina=[] +scilab2ccode.deps.u16rowmina=[] //prod scilab2ccode.deps.cproda=["cmuls"] scilab2ccode.deps.dproda=[] @@ -673,6 +1624,30 @@ scilab2ccode.deps.drowproda=[] scilab2ccode.deps.srowproda=[] scilab2ccode.deps.zrowproda=["zmuls"] +//stdevf +scilab2ccode.deps.ccolumnstdevfa=["FloatComplex","cpows","cdiffs","cmuls","cadds","sabss","creals","cimags","crdivs","csqrts"] +scilab2ccode.deps.cstdevfa=["FloatComplex","cmeanfa","cpows","cmuls","cadds","crdivs","csqrts","cdiffs"] +scilab2ccode.deps.crowstdevfa=["FloatComplex","crowmeanfa","cpows","cdiffs","cmuls","cadds""sabss","creals","cimags","crdivs","csqrts"] +scilab2ccode.deps.cstdevfcs=["FloatComplex","cmeanfcs","cpows","cdiffs","cmuls","cadds","creals","cimags","csqrts"] +scilab2ccode.deps.cstdevfsc=["szerosa","cstdevfa"] +scilab2ccode.deps.dcolumnstdevfa=["dcolumnmeanfa","dpows","dsqrts"] +scilab2ccode.deps.dstdevfa=[] +scilab2ccode.deps.drowstdevfa=[] +scilab2ccode.deps.i8columnmina=[] +scilab2ccode.deps.i8mina=[] +scilab2ccode.deps.i8rowmina=[] +scilab2ccode.deps.i16columnmina=[] +scilab2ccode.deps.i16mina=[] +scilab2ccode.deps.i16rowmina=[] +scilab2ccode.deps.scolumnmina=[] +scilab2ccode.deps.smina=[] +scilab2ccode.deps.srowmina=[] +scilab2ccode.deps.u8columnmina=[] +scilab2ccode.deps.u8mina=[] +scilab2ccode.deps.u8rowmina=[] +scilab2ccode.deps.u16columnmina=[] +scilab2ccode.deps.u16mina=[] +scilab2ccode.deps.u16rowmina=[] //sum scilab2ccode.deps.csuma=["cadds"] @@ -687,7 +1662,18 @@ scilab2ccode.deps.crowsuma=["cadds"] scilab2ccode.deps.drowsuma=[] scilab2ccode.deps.srowsuma=[] scilab2ccode.deps.zrowsuma=["zadds"] - +scilab2ccode.deps.i8suma=["i8adds"] +scilab2ccode.deps.i8columnsuma=["i8adds"] +scilab2ccode.deps.i8rowsuma=["i8adds"] +scilab2ccode.deps.i16suma=["i16adds"] +scilab2ccode.deps.i16columnsuma=["i16adds"] +scilab2ccode.deps.i16rowsuma=["i16adds"] +scilab2ccode.deps.u8suma=["u8adds"] +scilab2ccode.deps.U8columnsuma=["u8adds"] +scilab2ccode.deps.u8rowsuma=["u8adds"] +scilab2ccode.deps.u16suma=["u16adds"] +scilab2ccode.deps.u16columnsuma=["u16adds"] +scilab2ccode.deps.u16rowsuma=["u16adds"] //variance scilab2ccode.deps.cvariancea=["FloatComplex","cmeana","cdiffs","cadds","cpows","creals","cimags","crdivs"] @@ -703,11 +1689,27 @@ scilab2ccode.deps.drowvariancea=["dtransposea","dvariancea"] scilab2ccode.deps.srowvariancea=["stransposea","svariancea"] scilab2ccode.deps.zrowvariancea=["ztransposea","DoubleComplex","zreals","zimags","zvariancea"] +//variancef +scilab2ccode.deps.cvariancefa=["FloatComplex","cmeanfa","cdiffs","cadds","cpows","cmuls","crdivs"] +scilab2ccode.deps.dvariancefa=["dmeanfa","dpows"] +scilab2ccode.deps.svariancefa=["smeanfa","spows"] +scilab2ccode.deps.zvariancefa=["DoubleComplex","zmeanfa","zdiffs","zadds","zpows","zrdivs"] +scilab2ccode.deps.ccolumnvariancefa=["cvariancefa","ctransposea"] +scilab2ccode.deps.dcolumnvariancefa=["dvariancefa","dtransposea"] +scilab2ccode.deps.scolumnvariancefa=["scolumnmeanfa","spows"] +scilab2ccode.deps.zcolumnvariancefa=["zvariancefa","ztransposea"] +scilab2ccode.deps.crowvariancefa=["cvariancefa"] +scilab2ccode.deps.drowvariancefa=["dvariancefa"] +scilab2ccode.deps.srowvariancefa=["svariancefa"] +scilab2ccode.deps.zrowvariancefa=["zvariancefa"] + //////////////////// ////// STRING ////// //////////////////// +//convstr +scilab2ccode.deps.gconvstrs=[] //disp scilab2ccode.deps.cdisps=["creals","cimags"] @@ -718,12 +1720,49 @@ scilab2ccode.deps.sdisps=[] scilab2ccode.deps.sdispa=[] scilab2ccode.deps.zdisps=["zreals","zimags"] scilab2ccode.deps.zdispa=["zreals","zimags"] - +scilab2ccode.deps.ddisph=[] +scilab2ccode.deps.i8disps=[] +scilab2ccode.deps.i8dispa=[] +scilab2ccode.deps.i16disps=[] +scilab2ccode.deps.i16dispa=[] +scilab2ccode.deps.u8disps=[] +scilab2ccode.deps.u8dispa=[] +scilab2ccode.deps.u16disps=[] +scilab2ccode.deps.u16dispa=[] + +//string +scilab2ccode.deps.cstringa=["cstrings"] +scilab2ccode.deps.cstrings=["creals","cimags"] +scilab2ccode.deps.dstringa=["dstrings"] +scilab2ccode.deps.dstrings=[] +scilab2ccode.deps.i8stringa=["i8strings"] +scilab2ccode.deps.i8strings=[] +scilab2ccode.deps.i16stringa=["i16strings"] +scilab2ccode.deps.i16strings=[] +scilab2ccode.deps.sstringa=["sstrings"] +scilab2ccode.deps.sstrings=[] +scilab2ccode.deps.u8stringa=["u8strings"] +scilab2ccode.deps.u8strings=[] +scilab2ccode.deps.u16stringa=["u16strings"] +scilab2ccode.deps.u16strings=[] +scilab2ccode.deps.zstringa=["zstrings"] +scilab2ccode.deps.zstrings=[] + +//strrchr +scilab2ccode.deps.gstrrchra=[] + +//strrev +scilab2ccode.deps.gstrreva=[] + +//strsubst +scilab2ccode.deps.gstrsubsta=[] /////////////////// ////// TYPES ////// /////////////////// +scilab2ccode.deps.floatComplex=["creals","cimags","FloatComplex","cisreals","cisimags"] +scilab2ccode.deps.doubleComplex=["zreals","zimags","DoubleComplex","zisreals","zisimags"] //floatComplex scilab2ccode.deps.creals=[] @@ -746,4 +1785,24 @@ scilab2ccode.deps.DoubleComplexMatrix=["DoubleComplex"] scilab2ccode.deps.zisreals=["zimags"] scilab2ccode.deps.zisimags=["zreals"] +//Arduino Functions +scilab2ccode.deps.u8cmd_analog_ins=["duint16a","duint16s","i8uint16a","i8uint16s","i16uint16a","i16uint16s","suint16a","suint16s","u8uint16a","u8uint16s"] +scilab2ccode.deps.u8cmd_analog_in_volts=["dfloats","dfloata","i8floats","i8floata","i16floats","i16floata","sfloats","sfloata","u8floats","u8floata","u16floats","u16floata"] +scilab2ccode.deps.u8cmd_analog_outs=[] +scilab2ccode.deps.u8cmd_analog_out_volts=[] +scilab2ccode.deps.u8cmd_dcmotor_releases=[] +scilab2ccode.deps.u8cmd_dcmotor_runs=[] +scilab2ccode.deps.u8cmd_dcmotor_setups=[] +scilab2ccode.deps.u8cmd_digital_ins=["duint8a","duint8s","i8uint8a","i8uint8s","i16uint8a","i16uint8s","suint8a","suint8s","u16uint8a","u16uint8s"] +scilab2ccode.deps.u8cmd_digital_outs=[] +scilab2ccode.deps.u8cmd_i2c_devs=["duint8a","duint8s","i8uint8a","i8uint8s","i16uint8a","i16uint8s","suint8a","suint8s","u16uint8a","u16uint8s"] +scilab2ccode.deps.u8cmd_i2c_reads=[] +scilab2ccode.deps.u8cmd_i2c_read_registers=[] +scilab2ccode.deps.u8cmd_i2c_writes=[] +scilab2ccode.deps.u8cmd_i2c_write_registers=[] +scilab2ccode.deps.u8cmd_servo_attach=[] +scilab2ccode.deps.u8cmd_servo_move=[] +scilab2ccode.deps.u8cmd_servo_detach=[] +scilab2ccode.deps.u16sleeps=[] + endfunction diff --git a/2.3-1/macros/findDeps/getAllHeaders.sci b/2.3-1/macros/findDeps/getAllHeaders.sci index 6e9a3b6e..38f84f5a 100644 --- a/2.3-1/macros/findDeps/getAllHeaders.sci +++ b/2.3-1/macros/findDeps/getAllHeaders.sci @@ -60,7 +60,6 @@ function allHeaders = getAllHeaders(SharedInfo) "src/c/matrixOperations/includes/logm.h" "src/c/matrixOperations/includes/ones.h" "src/c/matrixOperations/includes/matrixSquaredMagnitude.h" - "src/c/linearAlgebra/includes/spec.h" "src/c/matrixOperations/includes/matrixTranspose.h" "src/c/matrixOperations/includes/determ.h" "src/c/matrixOperations/includes/matrixMultiplication.h" @@ -73,6 +72,7 @@ function allHeaders = getAllHeaders(SharedInfo) "src/c/matrixOperations/includes/kron.h" "src/c/matrixOperations/includes/flipdim.h" "src/c/matrixOperations/includes/norm.h" + "src/c/matrixOperations/includes/toeplitz.h" "src/c/interpolation/includes/interp1.h" "src/c/elementaryFunctions/includes/nextpow2.h" "src/c/elementaryFunctions/includes/gcd.h" @@ -227,14 +227,19 @@ function allHeaders = getAllHeaders(SharedInfo) "src/c/CACSD/includes/lqr.h" "src/c/CACSD/includes/lqe.h" "src/c/CACSD/includes/obscont.h" - "src/c/linearAlgebra/includes/sva.h" - "src/c/linearAlgebra/includes/svd.h" "src/c/linearAlgebra/includes/schur.h" "src/c/linearAlgebra/includes/balanc.h" "src/c/linearAlgebra/includes/svd.h" - "src/c/linearAlgebra/includes/hess.h" - "src/c/linearAlgebra/includes/sva.h" - "src/c/linearAlgebra/includes/rcond.h"]; + "src/c/linearAlgebra/includes/hess.h" + "src/c/linearAlgebra/includes/sva.h" + "src/c/linearAlgebra/includes/sqroot.h" + "src/c/linearAlgebra/includes/givens.h" + "src/c/linearAlgebra/includes/householder.h" + "src/c/linearAlgebra/includes/fullrf.h" + "src/c/linearAlgebra/includes/rowcomp.h" + "src/c/linearAlgebra/includes/rcond.h" + "src/c/linearAlgebra/includes/qr.h" + "src/c/linearAlgebra/includes/spec.h"]; //Header files required for "Arduino" output diff --git a/2.3-1/macros/findDeps/getAllInterfaces.sci b/2.3-1/macros/findDeps/getAllInterfaces.sci index 91d117e7..c7924a3f 100644 --- a/2.3-1/macros/findDeps/getAllInterfaces.sci +++ b/2.3-1/macros/findDeps/getAllInterfaces.sci @@ -32,7 +32,6 @@ function allInterfaces = getAllInterfaces(SharedInfo) "src/c/type/int_real.h" "src/c/matrixOperations/interfaces/int_vmagn.h" "src/c/matrixOperations/interfaces/int_ones.h" - "src/c/linearAlgebra/interfaces/int_spec.h" "src/c/matrixOperations/interfaces/int_cat.h" "src/c/matrixOperations/interfaces/int_zeros.h" "src/c/matrixOperations/interfaces/int_OpBackSlash.h" @@ -62,6 +61,7 @@ function allInterfaces = getAllInterfaces(SharedInfo) "src/c/matrixOperations/interfaces/int_flipdim.h" "src/c/matrixOperations/interfaces/int_permute.h" "src/c/matrixOperations/interfaces/int_norm.h" + "src/c/matrixOperations/interfaces/int_toeplitz.h" "src/c/interpolation/interfaces/int_interp1.h" "src/c/elementaryFunctions/interfaces/int_nextpow2.h" "src/c/elementaryFunctions/interfaces/int_gcd.h" @@ -222,13 +222,18 @@ function allInterfaces = getAllInterfaces(SharedInfo) "src/c/CACSD/interfaces/int_lqr.h" "src/c/CACSD/interfaces/int_lqe.h" "src/c/CACSD/interfaces/int_obscont.h" - "src/c/linearAlgebra/interfaces/int_sva.h" - "src/c/linearAlgebra/interfaces/int_svd.h" + "src/c/linearAlgebra/interfaces/int_spec.h" "src/c/linearAlgebra/interfaces/int_schur.h" "src/c/linearAlgebra/interfaces/int_balanc.h" "src/c/linearAlgebra/interfaces/int_svd.h" + "src/c/linearAlgebra/interfaces/int_sqroot.h" "src/c/linearAlgebra/interfaces/int_hess.h" - "src/c/linearAlgebra/interfaces/int_sva.h" + "src/c/linearAlgebra/interfaces/int_sva.h" + "src/c/linearAlgebra/interfaces/int_givens.h" + "src/c/linearAlgebra/interfaces/int_householder.h" + "src/c/linearAlgebra/interfaces/int_fullrf.h" + "src/c/linearAlgebra/interfaces/int_rowcomp.h" + "src/c/linearAlgebra/interfaces/int_qr.h"; "src/c/linearAlgebra/interfaces/int_rcond.h"]; diff --git a/2.3-1/macros/findDeps/getAllSources.sci b/2.3-1/macros/findDeps/getAllSources.sci index 8fb58b23..1525cca3 100644 --- a/2.3-1/macros/findDeps/getAllSources.sci +++ b/2.3-1/macros/findDeps/getAllSources.sci @@ -10,7 +10,7 @@ // // -function allSources = getAllSources(SharedInfo) +function allSources = getAllSources(SharedInfo,BuildTool) Target = SharedInfo.Target; //Files common to types of output format @@ -155,18 +155,10 @@ function allSources = getAllSources(SharedInfo) "src/c/matrixOperations/powm/spowma.c" "src/c/matrixOperations/powm/zpowma.c" "src/c/matrixOperations/powm/cpowma.c" - "src/c/linearAlgebra/spec/cspeca.c" - "src/c/linearAlgebra/spec/dspeca.c" - "src/c/linearAlgebra/spec/sspeca.c" - "src/c/linearAlgebra/spec/zspeca.c" "src/c/matrixOperations/transpose/ztransposea.c" "src/c/matrixOperations/transpose/stransposea.c" "src/c/matrixOperations/transpose/ctransposea.c" "src/c/matrixOperations/transpose/dtransposea.c" - "src/c/linearAlgebra/spec2/zspec2a.c" - "src/c/linearAlgebra/spec2/sspec2a.c" - "src/c/linearAlgebra/spec2/dspec2a.c" - "src/c/linearAlgebra/spec2/cspec2a.c" "src/c/matrixOperations/trace/stracea.c" "src/c/matrixOperations/trace/dtracea.c" "src/c/matrixOperations/trace/ctracea.c" @@ -338,6 +330,15 @@ function allSources = getAllSources(SharedInfo) "src/c/matrixOperations/kron/skrona.c" "src/c/matrixOperations/norm/dnormv.c" "src/c/matrixOperations/norm/dnorma.c" + "src/c/matrixOperations/toeplitz/dtoeplitza.c" + "src/c/matrixOperations/toeplitz/u8toeplitza.c" + "src/c/matrixOperations/toeplitz/u16toeplitza.c" + "src/c/matrixOperations/toeplitz/gtoeplitza.c" + "src/c/matrixOperations/toeplitz/ztoeplitza.c" + "src/c/matrixOperations/toeplitz/stoeplitza.c" + "src/c/matrixOperations/toeplitz/ctoeplitza.c" + "src/c/matrixOperations/toeplitz/i8toeplitza.c" + "src/c/matrixOperations/toeplitz/i16toeplitza.c" "src/c/elementaryFunctions/nextpow2/dnextpow2a.c" "src/c/elementaryFunctions/isreal/sisreals.c" "src/c/elementaryFunctions/isreal/disreals.c" @@ -627,7 +628,6 @@ function allSources = getAllSources(SharedInfo) "src/c/elementaryFunctions/round/i16rounds.c" "src/c/elementaryFunctions/lnp1m1/slnp1m1s.c" "src/c/elementaryFunctions/lnp1m1/dlnp1m1s.c" - "src/c/elementaryFunctions/float/dfloats.c" "src/c/elementaryFunctions/float/dfloata.c" "src/c/elementaryFunctions/float/sfloats.c" @@ -640,7 +640,6 @@ function allSources = getAllSources(SharedInfo) "src/c/elementaryFunctions/float/u16floata.c" "src/c/elementaryFunctions/float/i16floats.c" "src/c/elementaryFunctions/float/i16floata.c" - "src/c/elementaryFunctions/uint8/duint8s.c" "src/c/elementaryFunctions/uint8/duint8a.c" "src/c/elementaryFunctions/uint8/suint8s.c" @@ -709,7 +708,6 @@ function allSources = getAllSources(SharedInfo) "src/c/elementaryFunctions/int32/i16int32a.c" "src/c/elementaryFunctions/int32/u32int32s.c" "src/c/elementaryFunctions/int32/u32int32a.c" - "src/c/elementaryFunctions/bitand/u8bitands.c" "src/c/elementaryFunctions/bitand/u8bitanda.c" "src/c/elementaryFunctions/bitand/u16bitands.c" @@ -1318,16 +1316,28 @@ function allSources = getAllSources(SharedInfo) "src/c/CACSD/lqr/dlqra.c" "src/c/CACSD/lqe/dlqea.c" "src/c/CACSD/obscont/dobsconta.c" - "src/c/linearAlgebra/sva/dsvaa.c" - "src/c/linearAlgebra/svd/dsvda.c" + "src/c/linearAlgebra/spec2/zspec2a.c" + "src/c/linearAlgebra/spec2/sspec2a.c" + "src/c/linearAlgebra/spec2/dspec2a.c" + "src/c/linearAlgebra/spec2/cspec2a.c" + "src/c/linearAlgebra/spec/cspeca.c" + "src/c/linearAlgebra/spec/dspeca.c" + "src/c/linearAlgebra/spec/sspeca.c" + "src/c/linearAlgebra/spec/zspeca.c" "src/c/linearAlgebra/schur/dschura.c" "src/c/linearAlgebra/schur/dgschura.c" "src/c/linearAlgebra/balanc/dbalanca.c" "src/c/linearAlgebra/svd/dsvda.c" "src/c/linearAlgebra/svd/zsvda.c" + "src/c/linearAlgebra/sqroot/dsqroota.c" "src/c/linearAlgebra/hess/dhessa.c" + "src/c/linearAlgebra/givens/dgivensa.c" + "src/c/linearAlgebra/householder/dhouseholdera.c" "src/c/linearAlgebra/sva/dsvaa.c" "src/c/linearAlgebra/spec/dspec1a.c" + "src/c/linearAlgebra/fullrf/dfullrfa.c" + "src/c/linearAlgebra/rowcomp/drowcompa.c" + "src/c/linearAlgebra/qr/dqra.c" "src/c/linearAlgebra/rcond/drconda.c"]; //Files to be inserted only if output format selected is 'Arduino'. @@ -1490,10 +1500,18 @@ function allSources = getAllSources(SharedInfo) "src/c/imageProcessing/cvimgproc/imcvCanny.cpp" "src/c/imageProcessing/cvimgproc/imcvCornerHarris.cpp"]; + if Target == "Arduino" & BuildTool == "nmake" + Required_addrs = get_rquird_fnctns(Standalone_files,Arduino_files,SharedInfo); + end + if Target == "StandAlone" allSources = Standalone_files; elseif Target == "Arduino" - allSources = cat(1,Standalone_files, Arduino_files); + if BuildTool == "nmake" + allSources = Required_addrs; + else + allSources = cat(1,Standalone_files, Arduino_files); + end elseif Target == "AVR" allSources = cat(1,Standalone_files, AVR_files); elseif Target == "RPi" diff --git a/2.3-1/macros/findDeps/get_rquird_fnctns.sci b/2.3-1/macros/findDeps/get_rquird_fnctns.sci new file mode 100644 index 00000000..8f3dbf8e --- /dev/null +++ b/2.3-1/macros/findDeps/get_rquird_fnctns.sci @@ -0,0 +1,143 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE + +// 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 +// Author: Yash Pratap Singh Tomar +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +//This function creates and compares the list of functions used in scilab code to existing function list from getallSources +function Required_addrs = get_rquird_fnctns(Standalone_files,Arduino_files,SharedInfo) + Required_stdalon_indx = 1; + Required_ardno_indx = 1; + x = 1; + y = 1; + +//Creating lists for stanalone C file and function +//Some C files don't have their function name directory. So their address is being shifted to last of the list + Standalone_files_1 = Standalone_files; +// Standalone_files_extras(1) = Standalone_files_1(76); +// Standalone_files_extras(2) = Standalone_files_1(77); +// Standalone_files_extras(3) = Standalone_files_1(1009); +// Standalone_files_extras(4) = Standalone_files_1(1010); +// Standalone_files_extras(5) = Standalone_files_1(1011); +// Standalone_files_extras(6) = Standalone_files_1(1012); +// Standalone_files_1(1012) = []; +// Standalone_files_1(1011) = []; +// Standalone_files_1(1010) = []; +// Standalone_files_1(1009) = []; +// Standalone_files_1(77) = []; +// Standalone_files_1(76) = []; + +//calculating the total no. of standalone files + No_of_stdalon_files = size(Standalone_files_1); + No_of_stdalon_files = No_of_stdalon_files(1); + +//This for loop is to extract function name list from address list + for index=1:No_of_stdalon_files + K = strsplit(Standalone_files_1(index),"/"); + soK = size(K); + soK = soK(1); + Standalone_files_folders(index) = K((soK-1)); + Standalone_C_files(index) = K(soK); + Standalone_C_files(index) = strtok(Standalone_C_files(index),"."); + end + +//Here, it adds the functions to the list which were earlier removed to shift to the end + //for index=1:6 + // K = strsplit(Standalone_files_extras(index),"/"); + // Standalone_files_folders(No_of_stdalon_files+index) = K(3); + // Standalone_C_files(No_of_stdalon_files+index) = K(4); + // Standalone_files_1(No_of_stdalon_files+index)= Standalone_files_extras(index); +// Standalone_C_files(No_of_stdalon_files+index) = strtok(Standalone_C_files(No_of_stdalon_files+index),"."); +// end + +//Following similar procedure for Arduino + Arduino_files_1 = Arduino_files; + No_of_ardno_files = size(Arduino_files_1); + No_of_ardno_files = No_of_ardno_files(1); + for index=1:No_of_ardno_files + K = strsplit(Arduino_files_1(index),"/"); + soK = size(K); + soK = soK(1); + Arduino_files_folders(index) = K((soK-1)); + Arduino_C_files(index) = K(soK); + Arduino_C_files(index) = strtok(Arduino_C_files(index),"."); + end + +//comparing +//this compares the list of functions used in scilab file to the created standalone C files and function list + for index = 1:SharedInfo.Function_list_index + for k = 1:No_of_stdalon_files + if SharedInfo.Function_list(index) == Standalone_files_folders(k) + Required_fnctn_stdalon(Required_stdalon_indx) = k; + Required_fnctn_stdlon_f(x) = Standalone_C_files(k); + x = x+1; + Required_stdalon_indx = Required_stdalon_indx + 1; + end + end + end + if x == 1 + Required_fnctn_stdlon_f = []; + end +//this compares the list of functions used in scilab file to the created Arduino files and function list +Required_stdalon_indx = Required_stdalon_indx - 1; + + for index = 1:SharedInfo.Function_list_index + for k = 1:No_of_ardno_files + if SharedInfo.Function_list(index) == Arduino_files_folders(k); + Required_fnctn_ardno(Required_ardno_indx) = k; + Required_fnctn_ardno_f(y) = Arduino_C_files(k); + y = y+1; + Required_ardno_indx = Required_ardno_indx + 1; + end + end + end + + Required_ardno_indx = Required_ardno_indx - 1; +//Calling Scilab2CDeps structure + scilab2ccode = Scilab2CDeps(); +//Looking for the depencies of the C files used on other files + for index = 1:Required_stdalon_indx + call = "scilab2ccode.deps." + Standalone_C_files(Required_fnctn_stdalon(index)); + call_val = eval(call); + Required_fnctn_stdlon_f = cat(1,Required_fnctn_stdlon_f,(call_val)'); + end + + Required_fnctn_stdlon_f = unique(Required_fnctn_stdlon_f); + +//Looking for the depencies of the Arduino files used on other C or Arduino files + for index = 1:Required_ardno_indx + call = "scilab2ccode.deps." + Arduino_C_files(Required_fnctn_ardno(index)); + call_val = eval(call); + Required_fnctn_ardno_f = cat(1,Required_fnctn_ardno_f,(call_val)'); + end + Required_fnctn_ardno_f = unique(Required_fnctn_ardno_f); + +//Adding Standalone and Arudino files lists + all_files_addrs = cat(1,Standalone_files_1,Arduino_files_1); + +//Adding Requied Standalone and Arudino files lists which are to be copied + required_files = cat(1,Required_fnctn_stdlon_f,Required_fnctn_ardno_f); + required_files = unique(required_files); + no_of_required_files = size(required_files); + no_of_required_files = no_of_required_files(1); + no_of_all_files = size(all_files_addrs); + no_of_all_files = no_of_all_files(1); + + all_files = cat(1,Standalone_C_files,Arduino_C_files); + index = 1; +//Creating final list which has address of files to be copied + for i=1:no_of_required_files + for k=1:no_of_all_files + if required_files(i) == all_files(k) + Required_addrs(index) = all_files_addrs(k); + index = index + 1; + end + end + end + +endfunction diff --git a/2.3-1/macros/findDeps/lib b/2.3-1/macros/findDeps/lib Binary files differdeleted file mode 100644 index 4cca2de5..00000000 --- a/2.3-1/macros/findDeps/lib +++ /dev/null diff --git a/2.3-1/macros/findDeps/names b/2.3-1/macros/findDeps/names index 2b8c551b..b1825b69 100644 --- a/2.3-1/macros/findDeps/names +++ b/2.3-1/macros/findDeps/names @@ -5,3 +5,4 @@ getAllInterfaces getAllLibraries getAllSources getArduinoFiles +get_rquird_fnctns diff --git a/2.3-1/macros/lib b/2.3-1/macros/lib Binary files differdeleted file mode 100644 index f759663f..00000000 --- a/2.3-1/macros/lib +++ /dev/null diff --git a/2.3-1/macros/runsci2c.sci b/2.3-1/macros/runsci2c.sci index 957920aa..7475f870 100644 --- a/2.3-1/macros/runsci2c.sci +++ b/2.3-1/macros/runsci2c.sci @@ -53,10 +53,10 @@ disp(RunSci2CMainDir); [FileInfoDatFile,SharedInfoDatFile] = INIT_SCI2C(UserScilabMainFile, ...
UserSciFilesPaths, SCI2COutputPath, RunMode, Target,Board_name);
-
// -- Load FileInfo and SharedInfo
load(SharedInfoDatFile,'SharedInfo');
load(FileInfoDatFile,'FileInfo');
+
RunMode = SharedInfo.RunMode;
// --- Generation of the library structure. ---
@@ -91,7 +91,7 @@ load(SharedInfoDatFile,'SharedInfo'); // ---------------------------
global SCI2CHOME
-allSources = SCI2CHOME + "/" + getAllSources(SharedInfo);
+allSources = SCI2CHOME + "/" + getAllSources(SharedInfo, BuildTool);
allHeaders = SCI2CHOME + "/" +getAllHeaders(SharedInfo);
allInterfaces = SCI2CHOME + "/" + getAllInterfaces(SharedInfo);
if(~isempty(getAllLibraries(SharedInfo)))
@@ -100,7 +100,10 @@ else allLibraries = ''
end
//allLibraries = SCI2CHOME + "/" + getAllLibraries(Target);
-
+if (Target == 'Arduino')
+ mkdir(SCI2COutputPath+"/arduino/");
+ mkdir(SCI2COutputPath+"/arduino/sci2c_arduino");
+end
mkdir(SCI2COutputPath+"/src/");
mkdir(SCI2COutputPath+"/src/c/");
mkdir(SCI2COutputPath+"/includes/");
@@ -112,16 +115,24 @@ PrintStepInfo('Copying sources', FileInfo.GeneralReport,'both'); for i = 1:size(allSources, "*")
// DEBUG only
- disp("Copying "+allSources(i)+" in "+SCI2COutputPath+"/src/c/");
+ //disp("Copying "+allSources(i)+" in "+SCI2COutputPath+"/src/c/");
//Copy ode related functions only if 'ode' function is used.
if(~isempty(strstr(allSources(i),'dode')))
if(size(SharedInfo.Includelist) <> 0)
if((mtlb_strcmp(part(SharedInfo.Includelist(1),1:5),'odefn') == %T))
- copyfile(allSources(i), SCI2COutputPath+"/src/c/");
+ if BuildTool == "nmake"
+ copyfile(allSources(i), SCI2COutputPath+"/arduino/sci2c_arduino/");
+ else
+ copyfile(allSources(i), SCI2COutputPath+"/src/c/");
+ end
end
end
else
- copyfile(allSources(i), SCI2COutputPath+"/src/c/");
+ if BuildTool == "nmake"
+ copyfile(allSources(i), SCI2COutputPath+"/arduino/sci2c_arduino/");
+ else
+ copyfile(allSources(i), SCI2COutputPath+"/src/c/");
+ end
end
end
@@ -130,7 +141,11 @@ PrintStepInfo('Copying headers', FileInfo.GeneralReport,'both'); for i = 1:size(allHeaders, "*")
// DEBUG only
//disp("Copying "+allHeaders(i)+" in "+SCI2COutputPath+"/includes/");
- copyfile(allHeaders(i), SCI2COutputPath+"/includes/");
+ if BuildTool == "nmake"
+ copyfile(allHeaders(i), SCI2COutputPath+"/arduino/sci2c_arduino/");
+ else
+ copyfile(allHeaders(i), SCI2COutputPath+"/includes/");
+ end
end
// -- Interfaces
@@ -138,8 +153,11 @@ PrintStepInfo('Copying interfaces', FileInfo.GeneralReport,'both'); for i = 1:size(allInterfaces, "*")
// DEBUG only
//disp("Copying "+allInterfaces(i)+" in "+SCI2COutputPath+"/interfaces/");
-
- copyfile(allInterfaces(i), SCI2COutputPath+"/interfaces/");
+ if BuildTool == "nmake"
+ copyfile(allInterfaces(i), SCI2COutputPath+"/arduino/sci2c_arduino/");
+ else
+ copyfile(allInterfaces(i), SCI2COutputPath+"/interfaces/");
+ end
end
// -- Libraries
@@ -166,8 +184,6 @@ end if (Target == 'Arduino')
GenerateSetupFunction(FileInfo);
- mkdir(SCI2COutputPath+"/arduino/");
- mkdir(SCI2COutputPath+"/arduino/sci2c_arduino");
//Copy arduino makefile
arduinoFiles = SCI2CHOME + "/" + getArduinoFiles();
PrintStepInfo('Copying arduino files', FileInfo.GeneralReport,'both');
@@ -193,6 +209,12 @@ else C_GenerateMakefile_msvc(FileInfo,SharedInfo);
end
end
+if BuildTool == "nmake" & Target == 'Arduino'
+ movefile(SCI2COutputPath +"/setup_arduino.h", SCI2COutputPath+"/arduino/sci2c_arduino/");
+ movefile(SCI2COutputPath +"/setup_arduino.cpp", SCI2COutputPath+"/arduino/sci2c_arduino/");
+ movefile(SCI2COutputPath +"/loop_arduino.cpp", SCI2COutputPath+"/arduino/sci2c_arduino/");
+ movefile(SCI2COutputPath +"/loop_arduino.h", SCI2COutputPath+"/arduino/sci2c_arduino/");
+end
diff --git a/2.3-1/macros/sci2c_gui.sci b/2.3-1/macros/sci2c_gui.sci index bee6fe43..cad8b247 100644 --- a/2.3-1/macros/sci2c_gui.sci +++ b/2.3-1/macros/sci2c_gui.sci @@ -216,7 +216,7 @@ outformatlabel = uicontrol("parent", sci2cfig,... outformatradiostalone = uicontrol("parent", sci2cfig,... "style", "radiobutton",... "string", gettext("Stand-alone"),... - "position",[2*margin+widgetLabelWidth outformaty 2*radiow widgeth],... + "position",[2*margin+widgetLabelWidth outformaty 2*radiow-10 widgeth],... "horizontalalignment", "left",... "fontname", defaultfont,... "fontunits", "points",... @@ -309,7 +309,7 @@ runradiotranslate = uicontrol("parent", sci2cfig,... runradiogenlib = uicontrol("parent", sci2cfig,... "style", "radiobutton",... "string", gettext("Generate library"),... - "position",[2*margin+widgetLabelWidth+2*radiow runy 120 widgeth],... + "position",[2*margin+widgetLabelWidth+2*radiow+20 runy 150 widgeth],... "horizontalalignment", "left",... "fontname", defaultfont,... "fontunits", "points",... diff --git a/2.3-1/macros/scilab2c.sci b/2.3-1/macros/scilab2c.sci index 197c88b0..70290d09 100644 --- a/2.3-1/macros/scilab2c.sci +++ b/2.3-1/macros/scilab2c.sci @@ -57,7 +57,7 @@ function scilab2c(varargin) RunMode = "All"; BuildTool = getNativeBuildTool(); Target = "StandAlone" - //Board_name = "uno" + Board_name = "uno" // // scilab2c(UserScilabMainFile, CCodeOutputDir, UserSciFilesPaths, RunMode) // diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h index 096fed08..6b7ed271 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h @@ -28,6 +28,7 @@ extern "C" { #define d0d0RPI_digitalWrite(pin,state) u8RPI_digitalWrites(pin,state); #define u80RPI_digitalWriteByte(value) u8RPI_digitalWriteBytes(value); +#define d0RPI_digitalWriteByte(value) u8RPI_digitalWriteBytes(value); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h index cea8bb6e..e258068c 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h @@ -21,9 +21,15 @@ extern "C" { #endif #define RPI_gertboardSPISetupi80() RPI_gertboardSPISetup(); + #define u160RPI_gertboardAnalogSetupi80(pinBase) u16RPI_gertboardAnalogSetups(pinBase); +#define d0RPI_gertboardAnalogSetupi80(pinBase) u16RPI_gertboardAnalogSetups(pinBase); + #define u160RPI_gertboardAnalogReadu160(pin) u160RPI_gertboardAnalogReads(pin); +#define d0RPI_gertboardAnalogReadu160(pin) u160RPI_gertboardAnalogReads(pin); + #define u160u160RPI_gertboardAnalogWrite(pin,value) u160RPI_gertboardAnalogWrites(pin,value); +#define d0d0RPI_gertboardAnalogWrite(pin,value) u160RPI_gertboardAnalogWrites(pin,value); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h index f18fd57c..b93529e3 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h @@ -21,12 +21,25 @@ extern "C" { #endif #define u160RPI_I2CSetupi80(arrd) u16RPI_I2CSetups(arrd); +#define d0RPI_I2CSetupi80(arrd) u16RPI_I2CSetups(arrd); + #define u160RPI_I2CReadi80(fd) u16RPI_I2CReads(fd); +#define d0RPI_I2CReadi80(fd) u16RPI_I2CReads(fd); + #define u160u160RPI_I2CReadReg8i80(fd,reg) u16RPI_I2CReadReg8s(fd,reg); +#define d0d0RPI_I2CReadReg8i80(fd,reg) u16RPI_I2CReadReg8s(fd,reg); + #define u160u160RPI_I2CReadReg16i80(fd,reg) u16RPI_I2CReadReg16s(fd,reg); +#define d0d0RPI_I2CReadReg16i80(fd,reg) u16RPI_I2CReadReg16s(fd,reg); + #define u160u160RPI_I2CWritei80(fd,data) u16RPI_I2CWrites(fd,data); +#define d0d0RPI_I2CWritei80(fd,data) u16RPI_I2CWrites(fd,data); + #define u160u160u160RPI_I2CWriteReg8i80(fd,reg,data) u16RPI_I2CWriteReg8s(fd,reg,data); +#define d0d0d0RPI_I2CWriteReg8i80(fd,reg,data) u16RPI_I2CWriteReg8s(fd,reg,data); + #define u160u160u160RPI_I2CWriteReg16i80(fd,reg,data) u16RPI_I2CWriteReg16s(fd,reg,data); +#define d0d0d0RPI_I2CWriteReg16i80(fd,reg,data) u16RPI_I2CWriteReg16s(fd,reg,data); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h index e4f3ca29..e6dcb7db 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h @@ -21,17 +21,40 @@ extern "C" { #endif #define u80u80u80u80u80u80u80u80u80u80RPI_lcdCharDef(fd,index,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdCharDefs(fd,index,d0,d1,d2,d3,d4,d5,d6,d7); +#define d0d0d0d0d0d0d0d0d0d0RPI_lcdCharDef(fd,index,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdCharDefs(fd,index,d0,d1,d2,d3,d4,d5,d6,d7); + #define u80RPI_lcdClear(fd) u8RPI_lcdClears(fd); +#define d0RPI_lcdClear(fd) u8RPI_lcdClears(fd); + #define u80u80RPI_lcdCursorBlink(fd,state) u8RPI_lcdCursorBlinks(fd,state); +#define d0d0RPI_lcdCursorBlink(fd,state) u8RPI_lcdCursorBlinks(fd,state); + #define u80u80RPI_lcdCursor(fd,state) u8RPI_lcdCursors(fd,state); +#define d0d0RPI_lcdCursor(fd,state) u8RPI_lcdCursors(fd,state); + #define u80u80RPI_lcdDisplay(fd,state) u8RPI_lcdDisplays(fd,state); +#define d0d0RPI_lcdDisplay(fd,state) u8RPI_lcdDisplays(fd,state); + #define u80RPI_lcdHome(fd) u8RPI_lcdHomes(fd); +#define d0RPI_lcdHome(fd) u8RPI_lcdHomes(fd); + #define u80u80u80u80u80u80u80u80u80u80u80u80u80RPI_lcdIniti80(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdInits(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7); +#define d0d0d0d0d0d0d0d0d0d0d0d0d0RPI_lcdIniti80(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdInits(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7); + #define u80u80u80RPI_lcdPosition(fd,row,col) u8RPI_lcdPositions(fd,row,col); +#define d0d0d0RPI_lcdPosition(fd,row,col) u8RPI_lcdPositions(fd,row,col); + #define u80u80RPI_lcdPutchar(fd,char) u8RPI_lcdPutchars(fd,char); +#define d0d0RPI_lcdPutchar(fd,char) u8RPI_lcdPutchars(fd,char); + #define u80u80RPI_lcdSendCommand(fd,cmd) u8RPI_lcdSendCommands(fd,cmd); +#define d0d0RPI_lcdSendCommand(fd,cmd) u8RPI_lcdSendCommands(fd,cmd); + #define u80g2RPI_lcdPuts(fd,msg,size) u8RPI_lcdPutss(fd,msg,size[1]);; +#define d0g2RPI_lcdPuts(fd,msg,size) u8RPI_lcdPutss(fd,msg,size[1]);; + #define u80g2RPI_lcdPrintf(fd,data,size) u8RPI_lcdPrintfs(fd,data,size[1]); +#define d0g2RPI_lcdPrintf(fd,data,size) u8RPI_lcdPrintfs(fd,data,size[1]); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h index 46b63286..77cc433c 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h @@ -38,8 +38,10 @@ extern "C" { #define u80u80u80u80u80RPI_lcd128x64line(x0,y0,x1,y1,colour) u8RPI_lcd128x64lines(x0,y0,x1,y1,colour); #define d0d0d0d0d0RPI_lcd128x64line(x0,y0,x1,y1,colour) u8RPI_lcd128x64lines(x0,y0,x1,y1,colour); + #define u80u80u80u80u80RPI_lcd128x64circle(x,y,r,colour,filled) u8RPI_lcd128x64circles(x,y,r,colour,filled); #define d0d0d0d0d0RPI_lcd128x64circle(x,y,r,colour,filled) u8RPI_lcd128x64circles(x,y,r,colour,filled); + #define u80u80u80u80u80RPI_lcd128x64putchar(x,y,c,bgCol,fgCol) u8RPI_lcd128x64putchars(x,y,c,bgCol,fgCol); #define d0d0d0d0u80RPI_lcd128x64putchar(x,y,c,bgCol,fgCol) u8RPI_lcd128x64putchars(x,y,c,bgCol,fgCol); @@ -48,6 +50,7 @@ extern "C" { #define u80u80u80u80u80u80RPI_lcd128x64rectangle(x1,y1,x2,y2,colour,filled) u8RPI_lcd128x64rectangles(x1,y1,x2,y2,colour,filled); #define d0d0d0d0d0d0RPI_lcd128x64rectangle(x1,y1,x2,y2,colour,filled) u8RPI_lcd128x64rectangles(x1,y1,x2,y2,colour,filled); + #define u80u80u80u80u80u80RPI_lcd128x64ellipse(cx,cy,xRadius,yRadius,colour,filled) u8RPI_lcd128x64ellipses(cx,cy,xRadius,yRadius,colour,filled); #define d0d0d0d0d0d0RPI_lcd128x64ellipse(cx,cy,xRadius,yRadius,colour,filled) u8RPI_lcd128x64ellipses(cx,cy,xRadius,yRadius,colour,filled); diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h index c044cf7f..7857b3ae 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h @@ -21,10 +21,19 @@ extern "C" { #endif #define u160u80RPI_mcp23008Setupu80(pinBase,addr) u16RPI_mcp23008Setups(pinBase,addr); +#define d0d0RPI_mcp23008Setupu80(pinBase,addr) u16RPI_mcp23008Setups(pinBase,addr); + #define u160u80RPI_mcp23016Setupu80(pinBase,addr) u16RPI_mcp23016Setups(pinBase,addr); +#define d0d0RPI_mcp23016Setupu80(pinBase,addr) u16RPI_mcp23016Setups(pinBase,addr); + #define u160u80RPI_mcp23017Setupu80(pinBase,addr) u16RPI_mcp23017Setups(pinBase,addr); +#define d0d0RPI_mcp23017Setupu80(pinBase,addr) u16RPI_mcp23017Setups(pinBase,addr); + #define u160u80u80RPI_mcp23s08Setupu80(pinBase,spiport,devId) u16RPI_mcp23s08Setups(pinBase,spiport,devId); +#define d0d0d0RPI_mcp23s08Setupu80(pinBase,spiport,devId) u16RPI_mcp23s08Setups(pinBase,spiport,devId); + #define u160u80u80RPI_mcp23s17Setupu80(pinBase,spiport,devId) u16RPI_mcp23s17Setups(pinBase,spiport,devId); +#define d0d0d0RPI_mcp23s17Setupu80(pinBase,spiport,devId) u16RPI_mcp23s17Setups(pinBase,spiport,devId); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h index b836d683..de065a24 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h @@ -21,8 +21,12 @@ extern "C" { #endif #define RPI_boardRevu80() RPI_boardRev(); + #define u80u80RPI_padDrive(group,strength) u8RPI_padDrives(group,strength); +#define d0d0RPI_padDrive(group,strength) u8RPI_padDrives(group,strength); + #define u160RPI_sn3218Setupi80(pinBase) u16RPI_sn3218Setups(pinBase); +#define d0RPI_sn3218Setupi80(pinBase) u16RPI_sn3218Setups(pinBase); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h index 49c58c04..fd1a1b08 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h @@ -21,10 +21,18 @@ extern "C" { #endif #define u80u160RPI_pwmWrite(pin,value) u8RPI_pwmWrites(pin,value); +#define d0d0RPI_pwmWrite(pin,value) u8RPI_pwmWrites(pin,value); + #define u320RPI_pwmRange(value) u32RPI_pwmRanges(value); +#define d0RPI_pwmRange(value) u32RPI_pwmRanges(value); + #define g2RPI_pwmMode(mode) gRPI_pwmModea(mode); + #define u160RPI_pwmClock(divisor) u16RPI_pwmClocks(divisor); +#define d0RPI_pwmClock(divisor) u16RPI_pwmClocks(divisor); + #define u80u160RPI_pwmToneWrite(pin,value) u8RPI_pwmToneWrites(pin,value); +#define d0d0RPI_pwmToneWrite(pin,value) u8RPI_pwmToneWrites(pin,value); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h index e3d2009d..3d0cb273 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h @@ -21,7 +21,10 @@ extern "C" { #endif #define u160u80RPI_pcf8574Setupu80(pinBase,addr) u16RPI_pcf8574Setups(pinBase,addr); +#define d0d0RPI_pcf8574Setupu80(pinBase,addr) u16RPI_pcf8574Setups(pinBase,addr); + #define u160u80RPI_pcf8591Setupu80(pinBase,addr) u16RPI_pcf8591Setups(pinBase,addr); +#define d0d0RPI_pcf8591Setupu80(pinBase,addr) u16RPI_pcf8591Setups(pinBase,addr); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h index 08056f94..8e268f6e 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h @@ -21,9 +21,16 @@ extern "C" { #endif #define u80RPI_piGlowSetup(clear) u8RPI_piGlowSetups(clear); +#define d0RPI_piGlowSetup(clear) u8RPI_piGlowSetups(clear); + #define u80u80u80RPI_piGlow1(leg,ring,intensity) u8RPI_piGlow1s(leg,ring,intensity); +#define d0d0d0RPI_piGlow1(leg,ring,intensity) u8RPI_piGlow1s(leg,ring,intensity); + #define u80u80RPI_piGlowLeg(leg,intensity) u8RPI_piGlowLegs(leg,intensity); +#define d0d0RPI_piGlowLeg(leg,intensity) u8RPI_piGlowLegs(leg,intensity); + #define u80u80RPI_piGlowRing(ring,intensity) u8RPI_piGlowRings(ring,intensity); +#define d0d0RPI_piGlowRing(ring,intensity) u8RPI_piGlowRings(ring,intensity); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h index 39c5c011..8de0dc29 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h @@ -21,7 +21,10 @@ extern "C" { #endif #define u80RPI_physToGpioi80(pin) u8RPI_physToGpios(pin); +#define d0RPI_physToGpioi80(pin) u8RPI_physToGpios(pin); + #define u80RPI_wpiToGpioi80(pin) u8RPI_wpiToGpios(pin); +#define d0RPI_wpiToGpioi80(pin) u8RPI_wpiToGpios(pin); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h index e0832f97..b308d838 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h @@ -21,13 +21,28 @@ extern "C" { #endif #define g2u320RPI_serialOpeni80(device,size,baud) gRPI_serialOpena(device,size[1],baud); +#define g2d0RPI_serialOpeni80(device,size,baud) gRPI_serialOpena(device,size[1],baud); + #define u80RPI_serialClose(fd) u8RPI_serialCloses(fd); +#define d0RPI_serialClose(fd) u8RPI_serialCloses(fd); + #define u80RPI_serialDataAvailu80(fd) u8RPI_serialDataAvails(fd); +#define d0RPI_serialDataAvailu80(fd) u8RPI_serialDataAvails(fd); + #define u80RPI_serialFlush(fd) u8RPI_serialFlushs(fd); +#define d0RPI_serialFlush(fd) u8RPI_serialFlushs(fd); + #define u80RPI_serialGetcharg2(fd,out) u8RPI_serialGetchars(fd,out); +#define d0RPI_serialGetcharg2(fd,out) u8RPI_serialGetchars(fd,out); + #define u80g2RPI_serialPrintf(fd,msg,size) u8RPI_serialPrintfs(fd,msg,size[1]); +#define d0g2RPI_serialPrintf(fd,msg,size) u8RPI_serialPrintfs(fd,msg,size[1]); + #define u80u80RPI_serialPutchar(fd,character) u8RPI_serialPutchars(fd,character); +#define d0d0RPI_serialPutchar(fd,character) u8RPI_serialPutchars(fd,character); + #define u80g2RPI_serialPutsg2(fd,character,size) u8RPI_serialPutss(fd,character,size[1]); +#define d0g2RPI_serialPutsg2(fd,character,size) u8RPI_serialPutss(fd,character,size[1]); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h index bd82702d..6bcb1632 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h @@ -23,18 +23,12 @@ extern "C" { #define g2RPI_pinNumberingi80(seq,size) gRPI_pinNumberinga(seq,size[1]); //getAlt #define u80RPI_getAltu80(pin) u8RPI_getAlts(pin); -#define u160RPI_getAltu80(pin) u8RPI_getAlts(pin); -#define u320RPI_getAltu80(pin) u8RPI_getAlts(pin); #define d0RPI_getAltu80(pin) u8RPI_getAlts(pin); //pinModeAlt #define u80u80RPI_pinModeAlt(pin,mode) u8RPI_pinModeAlts(pin,mode); -#define u160u160RPI_pinModeAlt(pin,mode) u8RPI_pinModeAlts(pin,mode); -#define u320u320RPI_pinModeAlt(pin,mode) u8RPI_pinModeAlts(pin,mode); #define d0d0RPI_pinModeAlt(pin,mode) u8RPI_pinModeAlts(pin,mode); //pinMode #define u80g2RPI_pinMode(pin,mode,size) u8RPI_pinModes(pin,mode,size[1]); -#define u160g2RPI_pinMode(pin,mode,size) u8RPI_pinModes(pin,mode,size[1]); -#define u320g2RPI_pinMode(pin,mode,size) u8RPI_pinModes(pin,mode,size[1]); #define d0g2RPI_pinMode(pin,mode,size) u8RPI_pinModes(pin,mode,size[1]); //pullControl #define u80g2RPI_pullControl(pin,mode,size) u8RPI_pullControls(pin,mode,size[1]); diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h index 6b142bd5..7b70ce9a 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h @@ -21,8 +21,13 @@ extern "C" { #endif #define u80u80u80RPI_shiftInu80(dpin,cpin,order) u8RPI_shiftIns(dpin,cpin,order); +#define d0d0d0RPI_shiftInu80(dpin,cpin,order) u8RPI_shiftIns(dpin,cpin,order); + #define u80u80u80u80RPI_shiftOut(dpin,cpin,order,val) u8RPI_shiftOuts(dpin,cpin,order,val); +#define d0d0d0d0RPI_shiftOut(dpin,cpin,order,val) u8RPI_shiftOuts(dpin,cpin,order,val); + #define u160u80u80u80u80RPI_sr595Setupi80(pinBase,nPins,dP,cP,lP) u16RPI_sr595Setups(pinBase,nPins,dP,cP,lP); +#define d0d0d0d0d0RPI_sr595Setupi80(pinBase,nPins,dP,cP,lP) u16RPI_sr595Setups(pinBase,nPins,dP,cP,lP); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h index 80372b26..646c5244 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h @@ -21,11 +21,22 @@ extern "C" { #endif #define u80u160u160RPI_softPwmCreateu80(pin,ival,range) u8RPI_softPwmCreates(pin,ival,range); +#define d0d0d0RPI_softPwmCreateu80(pin,ival,range) u8RPI_softPwmCreates(pin,ival,range); + #define u80RPI_softPwmStop(pin) u8RPI_softPwmStops(pin); +#define d0RPI_softPwmStop(pin) u8RPI_softPwmStops(pin); + #define u80u160RPI_softPwmWrite(pin,value) u8RPI_softPwmWrites(pin,value); +#define d0d0RPI_softPwmWrite(pin,value) u8RPI_softPwmWrites(pin,value); + #define u80RPI_softToneCreateu80(pin) u8RPI_softToneCreates(pin); +#define d0RPI_softToneCreateu80(pin) u8RPI_softToneCreates(pin); + #define u80RPI_softToneStop(pin) u8RPI_softToneStops(pin); +#define d0RPI_softToneStop(pin) u8RPI_softToneStops(pin); + #define u80u320RPI_softToneWrite(pin,value) u8RPI_softToneWrites(pin,value); +#define d0d0RPI_softToneWrite(pin,value) u8RPI_softToneWrites(pin,value); #ifdef __cplusplus } /* extern "C" */ diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h index d2fae234..cbbb47ae 100644 --- a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h +++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h @@ -24,6 +24,8 @@ extern "C" { #define d0RPI_delay(time) u32RPI_delays(time); #define u320RPI_delayMicro(time) u32RPI_delayMicros(time); +#define d0RPI_delayMicro(time) u32RPI_delayMicros(time); + #define RPI_millisu320() RPI_millis(); #define RPI_microsu320() RPI_micros(); diff --git a/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPI_pwmToneWrites.c b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPI_pwmToneWrites.c index fe1b8cd2..3fe0c828 100644 --- a/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPI_pwmToneWrites.c +++ b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPI_pwmToneWrites.c @@ -12,6 +12,6 @@ #include "RPIPeripheralPWM.h" -void u8RPI_pwmToneWrites(uint8 pin, uint16 value){ - pwmToneWrite(pin, value); +void u8RPI_pwmToneWrites(uint8 pin,uint16 freq){ + pwmToneWrite(pin,freq); } diff --git a/2.3-1/src/c/linearAlgebra/fullrf/dfullrfa.c b/2.3-1/src/c/linearAlgebra/fullrf/dfullrfa.c new file mode 100644 index 00000000..a409ae35 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/fullrf/dfullrfa.c @@ -0,0 +1,112 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* FULL Rank factorization function in scilab */ + +/* + //[Q,M,rk]=fullrf(A) + //Full rank factorization : A=Q.M + //with range(Q)=range(A) and ker(M)=ker(A), + //Q full column rank , M full row rank + // rk = rank(A) = #columns(Q) = #rows(M) + //F.D. +*/ + +#include "fullrf.h" +#include <stdio.h> +#include <stdlib.h> +#include "svd.h" +#include <math.h> +#include "norm.h" +#include "matrixTranspose.h" +#include "matrixMultiplication.h" + +double dfullrfa(int ninp,double *inp1,int row,int col,double tol,double *out1,double *out2){ + + int i,j; + /* norm inp1 - norm(inp1,1)*/ + double na1; + na1 = dnorma(inp1,row,col,1); + + if(ninp == 1){ + tol = sqrt(pow(2,-52)); + } + + if(na1 < pow(1,-10)){ + out1 = NULL; + out2 = NULL; + return 0; + } + + double tol1; + tol1 = tol*na1; + + double *U,*S,*V; + U = (double *)malloc(row*row*sizeof(double)); + S = (double *)malloc(row*col*sizeof(double)); + V = (double *)malloc(col*col*sizeof(double)); + + double rk; + rk = dsvda(tol1,inp1,row,col,0,4,U,S,V); + + /* sq = sqrt(s) */ + for(i=0;i<row;i++){ + for(j=0;j<col;j++){ + if(i == j){ + S[i*row+j] = pow(S[i*row+j],0.5); + } + else{ + S[i*row+j] = 0; + } + } + } + + double *Q; + Q = (double *)malloc(row*col*sizeof(double)); + dmulma(U,row,row,S,row,col,Q); + + double *VT; + VT = (double *)malloc(col*col*sizeof(double)); + dtransposea(V,col,col,VT); + + /* multiplication of sq*V' or S*VT */ + double *M; + M = (double *)malloc(row*col*sizeof(double)); + dmulma(S,row,col,VT,col,col,M); + + /* This Program is not yet completed properly, as it outputs the whole matrix, instead of the exact output. + + if anyone finds, how to fix the size in INITFILLscidir.sci +please change there and change below few lines of codes accordingly. + +*/ + for(i=0;i<row;i++){ + for(j=0;j<col;j++){ + //if(j < rk) + out1[i*col+j] = Q[i*col+j]; + //else + // out1[i*col+j] = 0; + } + //printf("\n"); + } + + for(i=0;i<row;i++){ + for(j=0;j<col;j++){ + //if(i < rk) + out2[i*col+j] = M[i*col+j]; + //else + // out2[i*col+j] = 0; + } + } + + return rk; +} diff --git a/2.3-1/src/c/linearAlgebra/givens/dgivensa.c b/2.3-1/src/c/linearAlgebra/givens/dgivensa.c new file mode 100644 index 00000000..9bf0637b --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/givens/dgivensa.c @@ -0,0 +1,76 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* GIVENS scilab function + Syntax : u=givens(xy) + u=givens(x,y) + xy = [x;y], u=givens(xy) + returns a 2*2 matrix u such that u*xy=[r;0]. + c is equal to u*xy + givens(x,y)=givens([x;y]) +*/ + +#include "givens.h" +#include <stdio.h> +#include <math.h> +#include "norm.h" + +/* All variable names are according to scilab code */ + +void dgivensa(int ninp,double *inp1,int row,int col,double *inp2,int row1,int col1,int nout,double *out1,double *out2){ + double *x; + double r; + x = (double *)malloc((double)2*sizeof(double)); + if(ninp == 2){ + if(row != 1 || col != 1 || row1 != 1 || col1 != 1){ + printf("Wrong size for input argument: A column vector expected.\n"); + return; + } + *(x) = *(inp1); + *(x+1) = *(inp2); + } + else{ + //printf("(%d %d)",row,col); + if(row != 2 || col != 1){ + printf("Wrong size for input argument: A column vector expected.\n"); + return; + } + //printf("(%lf %lf)",inp1[0],inp1[1]); + x[0] = inp1[0]; + x[1] = inp1[1]; + } + if(*(x+1) != 0){ + //printf("(%lf %lf)",x[0],x[1]); + /*Norm of type 2 - find the maximum singular value*/ + r = dnorma(x,2,1,2); + //printf("%lf \n",r); + *(out1) = (*(x))/r; + *(out1+1) = -(*(x+1))/r; + *(out1+2) = (*(x+1))/r; + *(out1+3) = (*(x))/r; + if(nout == 2){ + *(out2) = r; + *(out2+1) = 0; + } + + } + else{ + *(out1) = 1; + *(out1+1) = 0; + *(out1+2) = 1; + *(out1+3) = 0; + if(nout == 2){ + *(out2) = *(x); + *(out2+1) = *(x+1); + } + } +} diff --git a/2.3-1/src/c/linearAlgebra/hess/dhessa.c b/2.3-1/src/c/linearAlgebra/hess/dhessa.c index 57f81b35..e1f2e2d1 100644 --- a/2.3-1/src/c/linearAlgebra/hess/dhessa.c +++ b/2.3-1/src/c/linearAlgebra/hess/dhessa.c @@ -20,11 +20,13 @@ #include "matrixTranspose.h" #include "matrixMultiplication.h" +/* Lapack subroutines - which are used*/ extern int dgehrd_(int *, int *,int *,double *,int *,double *,double *,int *,int *); extern int dorghr_(int *, int *,int *,double *,int *,double *,double *,int *,int *); - +/* All the vairbale names are given exactly the same name as scilab source code */ void dhessa(double *in1,int size,int nout,double *out1, double *out2){ +/* Variables names are done through, Lapack library. */ int i,j,k; int N = size; int ILO=1; @@ -41,11 +43,11 @@ void dhessa(double *in1,int size,int nout,double *out1, double *out2){ WORK = (double *)malloc((double)LWORK*sizeof(double)); dgehrd_(&N,&ILO,&IHI,A,&LDA,TAU,WORK,&N,&INFO); - for(i=0;i<N;i++) + for(i=0;i<N;i++) /* copying it in output */ for(j=0;j<N;j++) out2[i+j*N] = A[i+j*N]; - for(j=1;j<=N-2;j++){ + for(j=1;j<=N-2;j++){ /* copying it in output */ for(i=j+2;i<=N;i++){ out2[(i-1)+(j-1)*N] = 0; } diff --git a/2.3-1/src/c/linearAlgebra/householder/dhouseholdera.c b/2.3-1/src/c/linearAlgebra/householder/dhouseholdera.c new file mode 100644 index 00000000..5a98bfae --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/householder/dhouseholdera.c @@ -0,0 +1,90 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* Householder orthogonal reflexion matrix */ + +/* +Syntax :- + //u=householder(v [,w]) + //Description + //given 2 column vectors v w of same size householder(v,w) returns a unitary + //column vector u, such that (eye-2*u*u')*v is proportional to w. + //(eye-2*u*u') is the orthogonal Householder reflexion matrix + // + // w default value is eye(v). In this case vector (eye-2*u*u')*v is the + // vector eye(v)*(+-norm(v)) +*/ +#include <stdio.h> +#include <stdlib.h> +#include "householder.h" +#include "eye.h" +#include "matrixTranspose.h" +#include "matrixMultiplication.h" +#include <math.h> +#include "norm.h" + +void dhouseholdera(int ninp,double *inp1,int row,double *inp2,double *out1){ + + int i,j; + double *x; + x = (double *)malloc(row*sizeof(double)); + + for(i=0;i<row;i++) + x[i] = inp1[i]; + + if(ninp < 2){ + deyea(x,row,1); + } + else{ + for(i=0;i<row;i++){ + x[i] = inp2[i]; + } + } + + /* vt transpose of inp1 */ + + double *vt; + vt = (double *)malloc(row*sizeof(double)); + dtransposea(inp1,row,1,vt); + + /*wt transpose of inp2 */ + double *wt; + wt = (double *)malloc(row*sizeof(double)); + dtransposea(x,row,1,wt); + + /* vvt = inp1*vt */ + double *vvt; + vvt = (double *)malloc(1*1*sizeof(double)); + dmulma(vt,1,row,inp1,row,1,vvt); + + /* wwt = inp2*wt */ + double *wwt; + wwt = (double *)malloc(1*1*sizeof(double)); + dmulma(wt,1,row,x,row,1,wwt); + + /* a=-sqrt((v'*v)/(w'*w)) */ + double a; + //a = (double *)malloc(1*1*sizeof(double)); + a = -sqrt(vvt[0]/wwt[0]); + + for(i=0;i<row;i++){ + out1[i] = x[i]*a+inp1[i]; + } + + /* norm of out1 */ + double r; + r = dnorma(out1,row,1,2); + + for(i=0;i<row;i++){ + out1[i]=out1[i]/r; + } +} diff --git a/2.3-1/src/c/linearAlgebra/includes/fullrf.h b/2.3-1/src/c/linearAlgebra/includes/fullrf.h new file mode 100644 index 00000000..cc0a33d0 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/includes/fullrf.h @@ -0,0 +1,26 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __FULLRF_H__ +#define __FULLRF_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dfullrfa(int ninp,double *in1,int row,int col,double tol,double *out1,double *out2); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__FULLRF_H__*/ diff --git a/2.3-1/src/c/linearAlgebra/includes/givens.h b/2.3-1/src/c/linearAlgebra/includes/givens.h new file mode 100644 index 00000000..4aac91b2 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/includes/givens.h @@ -0,0 +1,25 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __GIVENS_H__ +#define __GIVENS_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +void dgivensa(int ninp,double *inp1,int row,int col,double *inp2,int row1,int col1,int nout,double *out1,double *out2); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__givens_H__*/ diff --git a/2.3-1/src/c/linearAlgebra/includes/householder.h b/2.3-1/src/c/linearAlgebra/includes/householder.h new file mode 100644 index 00000000..64350a15 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/includes/householder.h @@ -0,0 +1,26 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __HOUSEHOLDER_H__ +#define __HOUSEHOLDER_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dhouseholdera(int ninp,double *inp1,int row,double *inp2,double *out1); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__HOUSEHOLDER_H__*/ diff --git a/2.3-1/src/c/linearAlgebra/includes/qr.h b/2.3-1/src/c/linearAlgebra/includes/qr.h new file mode 100644 index 00000000..2ed12e3a --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/includes/qr.h @@ -0,0 +1,26 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __QR_H__ +#define __QR_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dqra(int ninp,int nout,double *inp1,int M,int N,double tol,double *out1,double *out2,double *out3); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__QR_H__*/ diff --git a/2.3-1/src/c/linearAlgebra/includes/rowcomp.h b/2.3-1/src/c/linearAlgebra/includes/rowcomp.h new file mode 100644 index 00000000..faf5a2a7 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/includes/rowcomp.h @@ -0,0 +1,26 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __ROWCOMP_H__ +#define __ROWCOMP_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double drowcompa(int ninp,double *A,int row,int col,char *flag,double tol,double *w); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__ROWCOMP_H__*/ diff --git a/2.3-1/src/c/linearAlgebra/includes/sqroot.h b/2.3-1/src/c/linearAlgebra/includes/sqroot.h new file mode 100644 index 00000000..9c1d9652 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/includes/sqroot.h @@ -0,0 +1,26 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __SQROOT_H__ +#define __SQROOT_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dsqroota(double *inp,int row,int col,double *out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__SQROOT_H__*/ diff --git a/2.3-1/src/c/linearAlgebra/interfaces/int_fullrf.h b/2.3-1/src/c/linearAlgebra/interfaces/int_fullrf.h new file mode 100644 index 00000000..1b8a067b --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/interfaces/int_fullrf.h @@ -0,0 +1,28 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_FULLRF_H__ +#define __INT_FULLRF_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2fullrfd2d2d0(in1,size,out1,out2) dfullrfa(1,in1,size[0],size[1],0,out1,out2); +#define d2d0fullrfd2d2d0(in1,size,in2,out1,out2) dfullrfa(2,in1,size[0],size[1],in2,out1,out2); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_FULLRF_H__*/ + diff --git a/2.3-1/src/c/linearAlgebra/interfaces/int_givens.h b/2.3-1/src/c/linearAlgebra/interfaces/int_givens.h new file mode 100644 index 00000000..ba30dbce --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/interfaces/int_givens.h @@ -0,0 +1,32 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_GIVENS_H__ +#define __INT_GIVENS_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2givensd2(in1,size,out1) dgivensa(1,in1,size[0],size[1],NULL,0,0,1,out1,NULL); +#define d2givensd2d2(in1,size,out1,out2) dgivensa(1,in1,size[0],size[1],NULL,0,0,2,out1,out2); + +#define d0d0givensd2d2(in1,in2,out1,out2) dgivensa(2,&in1,1,1,&in2,1,1,2,out1,out2); +#define d0d0givensd2(in1,out1) dgivensa(2,&in1,1,1,&in2,1,1,1,out1,NULL); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_GIVENS_H__*/ + diff --git a/2.3-1/src/c/linearAlgebra/interfaces/int_householder.h b/2.3-1/src/c/linearAlgebra/interfaces/int_householder.h new file mode 100644 index 00000000..f8637197 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/interfaces/int_householder.h @@ -0,0 +1,28 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_HOUSEHOLDER_H__ +#define __INT_HOUSEHOLDER_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2householderd2(in1,size,out1) dhouseholdera(1,in1,size[0],NULL,out2); +#define d2d2householderd2(in1,size1,in2,size2,out1) dhouseholdera(2,in1,size1[0],in2,out1); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_HOUSEHOLDER_H__*/ + diff --git a/2.3-1/src/c/linearAlgebra/interfaces/int_qr.h b/2.3-1/src/c/linearAlgebra/interfaces/int_qr.h new file mode 100644 index 00000000..d34d8f41 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/interfaces/int_qr.h @@ -0,0 +1,34 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_QR_H__ +#define __INT_QR_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2qrd2d2(in1,size,out1,out2) dqra(1,2,in1,size[0],size[1],0,out1,out2,NULL); +#define d2qrd2d2d2(in1,size,out1,out2,out3) dqra(1,3,in1,size[0],size[1],0,out1,out2,out3); +#define d2g2qrd2d2(in1,size,in2,size1,out1,out2) dqra(2,2,in1,size[0],size[1],0,out1,out2,NULL); +#define d2g2qrd2d2d2(in1,size,in2,size1,out1,out2,out3) dqra(2,3,in1,size[0],size[1],0,out1,out2,out3); +#define d2d0qrd2d2d0d2(in1,size,in2,out1,out2,out3) dqra(2,4,in1,size[0],size[1],in2,out1,out2,out3); +#define d2qrd2d2d0d2(in1,size,out1,out2,out3) dqra(1,4,in1,size[0],size[1],0,out1,out2,out3); + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_HESS_H__*/ + diff --git a/2.3-1/src/c/linearAlgebra/interfaces/int_rowcomp.h b/2.3-1/src/c/linearAlgebra/interfaces/int_rowcomp.h new file mode 100644 index 00000000..b72687d5 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/interfaces/int_rowcomp.h @@ -0,0 +1,29 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_ROWCOMP_H__ +#define __INT_ROWCOMP_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2rowcompd2d0(in1,size,out1) drowcompa(1,in1,size[0],size[1],NULL,0,out1); +#define d2g2rowcompd2d0(in1,size,flag,size1,out1) drowcompa(2,in1,size[0],size[1],flag,0,out1); +#define d2g2d0rowcompd2d0(in1,size,flag,size1,tol,out1) drowcompa(2,in1,size[0],size[1],flag,tol,out1); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_ROWCOMP_H__*/ + diff --git a/2.3-1/src/c/linearAlgebra/interfaces/int_sqroot.h b/2.3-1/src/c/linearAlgebra/interfaces/int_sqroot.h new file mode 100644 index 00000000..57af2c08 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/interfaces/int_sqroot.h @@ -0,0 +1,27 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_SQROOT_H__ +#define __INT_SQROOT_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2sqrootd2(inp,size,out) dsqroota(inp,size[0],size[1],out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_HESS_H__*/ + diff --git a/2.3-1/src/c/linearAlgebra/proj/dproja.c b/2.3-1/src/c/linearAlgebra/proj/dproja.c new file mode 100644 index 00000000..e27cd6f2 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/proj/dproja.c @@ -0,0 +1,73 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* Scilab function proj code in C */ + +#include <stdio.h> +#include <stdlib.h> +#include "proj.h" +#include "eye.h" +#include "matrixTranspose.h" +#include "matrixMultiplication.h" +#include <math.h> +#include "norm.h" + + +double dproja(double *x1,int l,int k,double *x2,int m2,int n2,double *y){ + int i,j; + double *w; + w = (double *)malloc(l*l*sizeof(double)); + double rk; + rk = drowcompa(1,x1,l,k,NULL,0,w); + + double *w1; + w1 = (double *)malloc(rk*l*sizeof(double)); + + for(i=0;i<l*rk;i++){ + w1[i]=w[i]; + } + + double *x1t; + x1t = (double *)malloc((l-n)*l*sizeof(double); + + for(i=n;i<l;i++){ + for(j=0;j<l;j++){ + x1t[i-n+j*l] = w1[i+j*l]; + } + } + + double x1x2; + x1x2 = (double *)malloc((l-n+1)*n2*sizeof(double)); + dmulma(x1t,l-n+1,l,x2,m2,n2,x1x2); + + double *inx1x2; + inx1x2 = (double *)malloc(); + + + + + + + + + + + + + + + + + + + +} diff --git a/2.3-1/src/c/linearAlgebra/projspec/dprojspeca.c b/2.3-1/src/c/linearAlgebra/projspec/dprojspeca.c new file mode 100644 index 00000000..aea9713e --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/projspec/dprojspeca.c @@ -0,0 +1,67 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* PROJSPEC function in scilab */ + +/* + //[S,P,D,index]=projspec(A) + //Spectral characteristics of A at 0 + //S = reduced resolvent at 0 (S=-Drazin_inverse(A)) + //P = spectral projection at 0 + //D = Nilpotent operator at 0 + //index = index of the 0 eigenvalue + //! + +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "norm.h" +#include "eye.h" + +#define eps pow(2,-52) + +double dprojspeca(double *inp1,int row,int col,double *out1,double *out2,double *out3){ + double tol = pow(10,-6); + int i,j,index; + /*norm(A,1)*/ + double nor; + nor = dnorma(inp1,row,col,1); + + /* P=eye(A),D=A,S=0*P;index=1; */ + if(nor < eps*row*row){ + memcpy(out2,inp1,row*col*sizeof(double)); + deyea(out2,row,col); + memcpy(out3,inp1,row*col*sizeof(double)); + for(i=0;i<row;i++){ + for(j=0;j<row;j++){ + out1[i*row+j] = 0; + } + } + index = 1; + } + + /* rcond(A) */ + double *rcon; + rcon = rcond(inp1,row); + if(rcon > tol){ + dinverma(inp1,out1,row); + for(i=0;i<row*col;i++){ + out2[i]=0; + out3[i]=0; + } + index = 0; + return index; + } + index = 1; +} diff --git a/2.3-1/src/c/linearAlgebra/qr/dqra.c b/2.3-1/src/c/linearAlgebra/qr/dqra.c new file mode 100644 index 00000000..bae4bc27 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/qr/dqra.c @@ -0,0 +1,298 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* This C code is used to generate function for QR decomposition */ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "qr.h" +#include "lapack.h" +#include "string.h" +#include "matrixTranspose.h" + +/*For reference check Scilab source code & lapack library websites +Names of variable are almost same for convience. +*/ +/* +int min(int M,int N){ + if(M > N) return N; + return M; +} + +int max(int M,int N){ + if(M > N) return N; + return N; +}*/ + +/* External Function used of lapack library */ +extern double dgeqrf_(int *,int *,double *,int *,double *,double *,int *,int *); +extern double dlacpy_(char *,int *,int *,double *,int *,double *,int *); +extern double dgeqpf_(int *,int *,double *,int *,int *,double *,double *,int *); +extern double dorgqr_(int *,int *,int *,double *,int *,double *,double *,int *,int *); +extern void dlaset_(char *,int *,int *,double *,double *,double *,int *); + +/* function for finding qr */ +double dqra(int ninp,int nout,double *inp1,int M,int N,double tol,double *out1,double *out2,double *out3){ + int i,j; + char choice; + double alpha=0.0,beta=0.0; + int minMN = min(M,N); + + double *A; + A = (double *)malloc(M*N*sizeof(double)); + memcpy(A,inp1,M*N*sizeof(double)); + + if(M <= 0 || N <= 0){ + out1 = NULL; + out2 = NULL; + return 0; + } + /* doldqr */ + if(nout == 4){ /* [Q,R,rk,E]=qr(X [,tol]) */ + if(ninp == 1){ + tol = -1; + } + + int INFO,rk; + + int *JPVT; + JPVT = ( int *)malloc(N*sizeof(int)); + + double *TAU; + TAU = (double *)malloc(minMN*sizeof(double)); + + int LWORK = 3*N; + + double *WORK; + WORK = (double *)malloc(LWORK*sizeof(double)); + + for(i=1;i<=M;i++){ + JPVT[i-1]=0.0; + } + dgeqpf_(&M,&N,A,&M,JPVT,TAU,WORK,&INFO); + + choice = 'U'; + dlacpy_(&choice,&M,&N,A,&M,out2,&M); + + if(M > N){ + for(j=1;j<=N;j++){ + for(i=j+1;i<=M;i++){ + out2[i-1+(j-1)*M] = 0.0; + } + } + } + else{ + for(j=1;j<=M-1;j++){ + for(i=j+1;i<=M;i++){ + out2[i-1+(j-1)*M] = 0.0; + } + } + } + + if(M > N){ + choice = 'F'; + dlacpy_(&choice,&M,&N,A,&M,out1,&M); + for(j=N+1;j<=M;j++){ + for(i=1;i<=M;i++){ + out1[i-1+(j-1)*M] = 0.0; + } + } + } + else{ + choice = 'F'; + dlacpy_(&choice,&M,&M,A,&M,out1,&M); + } + + dorgqr_(&M,&M,&minMN,out1,&M,TAU,WORK,&LWORK,&INFO); + + choice = 'F'; + dlaset_(&choice,&N,&N,&alpha,&beta,out3,&N); + + for(j=1;j<=N;j++){ + i = JPVT[j-1]; + out3[i-1+(j-1)*N] = 1.0; + } + + double tt = abs(out2[0]); + + if(tol == -1){ + tol = (double)max(M,N)*pow(2,-52)*tt; + } + double ch; + //printf("%lf ",tol); + for(j=1;j<=minMN;j++){ + //printf("%e ",out2[(j-1)+(j-1)*M]); + if(out2[(j-1)+(j-1)*M] < 0){ + ch = -out2[(j-1)+(j-1)*M]; + } + else{ + ch = out2[(j-1)+(j-1)*M]; + } + if(ch > tol){ + rk = j; + } + else{ + break; + } + } + //printf("\n"); + return rk; + } + else if(ninp == 1){ + /* (intdgeqpf3) + [Q,R]=qr(A) + [Q,R,E]=qr(A) + */ + int LDA = M; + + double *TAU; + TAU = (double *)malloc(min(M,N)*sizeof(double)); + + int LWORK; + if(nout <= 2) + LWORK = N; + else + LWORK = 3*N; + + double *WORK; + WORK = (double *)malloc((LWORK+1)*sizeof(double)); + + int INFO; + + int *JPVT; + JPVT = (int *)malloc(N*sizeof(int)); + + if(nout <= 2){ + dgeqrf_(&M,&N,A,&M,TAU,WORK,&LWORK,&INFO); + } + else{ + for(i=0;i<N;i++){ + *(JPVT+i)=0.0; + } + dgeqpf_(&M,&N,A,&M,JPVT,TAU,WORK,&INFO); + } + + /* Copying code from A to R */ + choice = 'U'; + dlacpy_(&choice,&M,&N,A,&M,out2,&M); + /*for(i=0;i<M;i++){ + for(j=0;j<N-i;j++){ + out2[i+j*M] = A[i+j*M]; + } + }*/ + + if(M > N){ + for(j=1;j<=N;j++){ + for(i=j+1;i<=M;i++){ + out2[i-1+(j-1)*M] = 0.0; + } + } + } + else{ + for(j=1;j<=M-1;j++){ + for(i=j+1;i<=M;i++){ + out2[i-1+(j-1)*M] = 0.0; + } + } + } + /* lQ - out1 */ + if(M > N){ + choice = 'F'; + dlacpy_(&choice,&M,&N,A,&M,out1,&M); + /*for(i=0;i<M*N;i++){ + out1[i]=A[i]; + }*/ + for(j=N+1;j<=M;j++){ + for(i=1;i<=M;i++){ + out1[i+(j-1)*M] = 0.0; + } + } + } + else{ + choice = 'F'; + dlacpy_(&choice,&M,&M,A,&M,out1,&M); + /*for(i=0;i<M;i++){ + for(j=0;j<M;j++){ + out1 + } + }*/ + } + dorgqr_(&M,&M,&minMN,out1,&M,TAU,WORK,&LWORK,&INFO); + + if(nout > 2){ + choice = 'F'; + dlaset_(&choice,&N,&N,&alpha,&beta,out3,&N); + for(j=1;j<=N;j++){ + i = *(JPVT+j-1); + //printf("%d ",i-1+(j-1)*N); + *(out3+i-1+(j-1)*N) = 1.0; + } + //printf("\n"); + } + } + else{/* + [[Q,R]=qr(A,'e') + [Q,R,E]=qr(A,'e') ] */ + int *JPVT; + JPVT = (int *)malloc(N*sizeof(int)); + + double *TAU; + TAU = (double *)malloc(min(M,N)*sizeof(double)); + int LWORK; + if(nout <= 2){ + LWORK = N; + } + else{ + LWORK = 3*N; + } + + double *WORK; + WORK = (double *)malloc(LWORK*sizeof(double)); + + int INFO; + if(nout <= 2) + dgeqrf_(&M,&N,A,&M,TAU,WORK,&LWORK,&INFO); + else{ + for(i=1;i<=N;i++){ + JPVT[i-1]=0.0; + } + dgeqpf_(&M,&N,A,&M,JPVT,TAU,WORK,&INFO); + } + choice = 'U'; + + dlacpy_(&choice,&minMN,&N,A,&M,out2,&minMN); + + if(N >= 2){ + for(j=1;j<=N-1;j++){ + if(j+1 <= minMN){ + for(i=j+1;i<=minMN;i++){ + out2[i-1+(j-1)*minMN] = 0.0; + } + } + } + } + choice = 'F'; + dlacpy_(&choice,&M,&minMN,A,&M,out1,&M); + dorgqr_(&M,&minMN,&minMN,out1,&M,TAU,WORK,&LWORK,&INFO); + + if(nout > 2){ + choice = 'F'; + dlaset_(&choice,&N,&N,&alpha,&beta,out3,&N); + for(j=1;j<=N;j++){ + i = JPVT[j-1]; + out3[i-1+(j-1)*N] = 1.0; + } + } + } + return 0; +} diff --git a/2.3-1/src/c/linearAlgebra/rowcomp/drowcompa.c b/2.3-1/src/c/linearAlgebra/rowcomp/drowcompa.c new file mode 100644 index 00000000..3161a2d6 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/rowcomp/drowcompa.c @@ -0,0 +1,79 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* This function is used to find row compression, range */ + +#include "rowcomp.h" +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "svd.h" +#include "norm.h" +#include "eye.h" +#include "matrixTranspose.h" +#include "qr.h" + +/* All variable names, are in consideration of scilab documentation. for reference please check the scilab code.*/ + +double drowcompa(int ninp,double *A,int row,int col,char *flag,double tol,double *w){ + double rk; + double *U; + double *S; + double *V; + double *q,*r,*e; + if(row == 0 || col == 0){ + w = NULL; + return 0; + } + + double nA1 = dnorma(A,row,col,1); + if(nA1 < sqrt(pow(2,-52))/10){ + deyea(w,row,col); + return 0; + } + if(ninp == 1){ + flag = "svd"; + tol = sqrt(pow(2,-52))*nA1; + } + else if(ninp == 2){ + tol = sqrt(pow(2,-52))*nA1; + } + else{ + if(tol < 0){ /* if tolerance is negative */ + printf(" Wrong values for input argument #: Non-negative scalar expected"); + } + } + int M = row,N=col; + int minMN = min(M,N); + char check[3]="qr"; + //printf(" %s ",flag); + if(strcmp(check,flag) == 0){ + /* calling qr function*/ + //printf(" * "); + q = (double *)malloc(M*min(M,N)*sizeof(double)); + r = (double *)malloc(minMN*N*sizeof(double)); + e = (double *)malloc(N*N*sizeof(double)); + rk = dqra(2,4,A,M,N,tol,q,r,e); + memcpy(w,q,row*col*sizeof(double)); + dtransposea(q,row,row,w); + return rk; + } + else{ + /* svd function type */ + U = (double *)malloc(row*row*sizeof(double)); + S = (double *)malloc(row*col*sizeof(double)); + V = (double *)malloc(col*col*sizeof(double)); + rk = dsvda(tol,A,row,col,0,4,U,S,V); + dtransposea(U,row,row,w); + return rk; + } +} diff --git a/2.3-1/src/c/linearAlgebra/sqroot/dsqroota.c b/2.3-1/src/c/linearAlgebra/sqroot/dsqroota.c new file mode 100644 index 00000000..1ba97268 --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/sqroot/dsqroota.c @@ -0,0 +1,130 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Sandeep Gupta + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +/* Function - sqroot of scilab, W*W' hermitian factorization */ + +#include <stdio.h> +#include "stdlib.h" +#include "string.h" +#include <math.h> +#include "matrixTranspose.h" +#include "svd.h" +#include "matrixMultiplication.h" + +#define eps 2.22044604925e-16 + +/*It would be good, if you are doing conversoins for only valid inputs before + running the program, check all the conditions before hand. +*/ + +void dsqroota(double *inp,int row,int col, double *out){ + if(row != col){ + printf("Enter valid inputs only - matrix should be symetric\n"); + return; + } + int i,j; + double *U,*S,*V; + double *A,*B; + int rk; + + U = (double *)malloc((double)row*row*sizeof(double)); + S = (double *)malloc((double)Min(row,col)*Min(row,col)*sizeof(double)); + V = (double *)malloc((double)col*col*sizeof(double)); + A = (double *)malloc(rk*rk*sizeof(double)); + B = (double *)malloc(rk*row*sizeof(double)); + + double *Q1; + Q1 = (double *)malloc(row*col*sizeof(double)); + + dtransposea(inp,row,col,Q1); + + double *Q2; + Q2 = (double *)malloc(col*row*sizeof(double)); + + /* Q2 = (inp+inp1')/2; */ + for(i=0;i<row;i++){ + for(j=0;j<row;j++){ + Q2[i+j*row] = ((inp[i+j*row]+Q1[i+j*row])/2); + } + } + + /* norm(Q2-Q1,1) - finding the max value from sum of columns */ + double sum = 0; + double maxi=0; + for(i=0;i<row;i++){ + sum = 0; + for(j=0;j<col;j++) sum+=(Q2[i*row+j]-inp[i*row+j]); + if(maxi < sum){ + maxi = sum; + } + } + + /* if norm(Q1-Q,1) > 100*%eps then */ + if(maxi > 100*eps){ + printf("Warning: Wrong size for input argument and Symmetric expected\n"); + } + maxi = 0; + for(i=0;i<col;i++){ + sum=0; + for(j=0;j<row;j++) sum+=Q1[i*row+j]; + if(maxi < sum){ + maxi = sum; + } + } + + /*if norm(Q,1) < sqrt(%eps) then S=[];return;end*/ + + if(maxi < sqrt(eps)){ + out = NULL; + } + else{ + rk = dsvda(0,inp,row,col,0,4,U,S,V); + + /*Will be used in complex numbers*/ + //C = (double *)malloc(rk*row*sizeof(double)); + + /*for(i=0;i<row;i++){ + for(j=0;j<row;j++){ + printf("%lf ",S[i*row+j]); + } + printf("\n"); + }*/ + /*sqrt of S*/ + //printf("%d ",rk); + for(i=0;i<rk;i++){ + for(j=0;j<rk;j++){ + A[i*rk+j] = sqrt(S[i*row+j]); + //printf("%lf ",A[i*rk+j]); + } + } + for(i=0;i<col*rk;i++){ + B[i] = V[i]; + //printf("%lf ",B[i]); + } + //printf("\n"); + /*for(i=0;i<rk;i++){ + for(j=0;j<rk;j++){ + //A[i*rk+j] = sqrt(S[i*row+j]); + printf("%lf ",A[i*rk+j]); + } + printf("\n"); + }*/ + /*for(i=0;i<col;i++){ + for(j=0;j<rk;j++){ + //B[i*col+j] = VT[i*col+j]; + printf("%lf ",B[i*col+j]); + } + printf("\n"); + }*/ + dmulma(B,col,rk,A,rk,rk,out); + } +} diff --git a/2.3-1/src/c/linearAlgebra/sva/dsvaa.c b/2.3-1/src/c/linearAlgebra/sva/dsvaa.c index b7d07d8c..691694e4 100644 --- a/2.3-1/src/c/linearAlgebra/sva/dsvaa.c +++ b/2.3-1/src/c/linearAlgebra/sva/dsvaa.c @@ -20,6 +20,7 @@ #define eps 2.22044604925e-16 +/* Ref: Scilab source code */ void dsvaa(int ninp,double *in1,int row,int col,double in2,double *out1, \ double *out2,double *out3){ @@ -33,14 +34,14 @@ void dsvaa(int ninp,double *in1,int row,int col,double in2,double *out1, \ /* Calculation of svd of a given matrix */ double *U,*S,*V; - U = (double *)malloc((double)row*min(row,col)*sizeof(double)); - S = (double *)malloc((double)min(row,col)*min(row,col)*sizeof(double)); - V = (double *)malloc((double)col*min(row,col)*sizeof(double)); + U = (double *)malloc((double)row*Min(row,col)*sizeof(double)); + S = (double *)malloc((double)Min(row,col)*Min(row,col)*sizeof(double)); + V = (double *)malloc((double)col*Min(row,col)*sizeof(double)); dsvda(0,in1,M,N,1,3,U,S,V); if (ninp == 1){ /* [u,s,v] = sva(A) when input is only matrix */ - tol = max(row,col)*S[0]*eps; + tol = Max(row,col)*S[0]*eps; rk = 0; for(i=0;i<col;i++){ if(S[i+i*row] > tol){ @@ -52,7 +53,7 @@ void dsvaa(int ninp,double *in1,int row,int col,double in2,double *out1, \ tol = in2; if(tol > 1){ rk = tol; - if(rk > min(row,col)){ + if(rk > Min(row,col)){ printf("ERROR: Wrong value for input argument !"); out1 = NULL; out2 = NULL; @@ -70,21 +71,21 @@ void dsvaa(int ninp,double *in1,int row,int col,double in2,double *out1, \ } } arow = M; - acol = min(M,N); + acol = Min(M,N); /* Copying, the output in required format */ for(i=0;i<arow;i++){ for(j=0;j<rk;j++){ out1[i+j*row]=U[i+j*arow]; } } - arow = min(M,N); - for(i=0;i<rk;i++){ + arow = Min(M,N); + for(i=0;i<rk;i++){ /* Copying, the output in required format */ for(j=0;j<rk;j++){ out2[i+j*(int)rk] = S[i+j*arow]; } } arow = N; - acol = min(M,N); - for(i=0;i<arow;i++){ + acol = Min(M,N); + for(i=0;i<arow;i++){ /* Copying, the output in required format */ for(j=0;j<rk;j++){ out3[i+j*arow] = V[i+j*arow]; } diff --git a/2.3-1/src/c/linearAlgebra/svd/.1.c.swp b/2.3-1/src/c/linearAlgebra/svd/.1.c.swp Binary files differnew file mode 100644 index 00000000..81d9e9cf --- /dev/null +++ b/2.3-1/src/c/linearAlgebra/svd/.1.c.swp diff --git a/2.3-1/src/c/linearAlgebra/svd/zsvda.c b/2.3-1/src/c/linearAlgebra/svd/zsvda.c index 0d360222..c75cc50c 100644 --- a/2.3-1/src/c/linearAlgebra/svd/zsvda.c +++ b/2.3-1/src/c/linearAlgebra/svd/zsvda.c @@ -19,6 +19,7 @@ #include "matrixTranspose.h" #include "conj.h" +/* Lapack functions used . */ extern doubleComplex zgesvd_( char* , char* , int* , int* ,doubleComplex *,\ int* , double* ,doubleComplex* , int* ,doubleComplex* , int* ,\ doubleComplex* , int* , double* , int* ); @@ -113,7 +114,16 @@ void zsvda(doubleComplex *in1,int row,int col,int in2,int nout, doubleComplex *o out3[i+j*N] = zconjs(VT[j+i*N]); out3[j+i*N] = zconjs(VT[i+j*N]); } - } + } + /* output from zgesvd is copied to out2 variables in required format*/ + for(j=0;j<M;j++){ + for(k=0;k<N;k++){ + if(j == k) + out2[j*(Min(M,N))+k] = DoubleComplex(S[j],0); + else + out2[j*(Min(M,N))+k] = DoubleComplex(0,0); + } + } //ztransposea(VT,LDVT,Min(M,N),out3); /*for(i=0;i<N;i++){ for(j=0;j<N;j++){ @@ -124,7 +134,7 @@ void zsvda(doubleComplex *in1,int row,int col,int in2,int nout, doubleComplex *o //free(U); //free(VT); } - else{ + else{ /*svd(x,'e')*/ LDA = M; LDU = M; if(M > N){ @@ -156,18 +166,18 @@ void zsvda(doubleComplex *in1,int row,int col,int in2,int nout, doubleComplex *o for(j=0;j<N;j++){ out3[j+i*N] = zconjs(VT[i+j*Min(M,N)]); } - } + } + /* output from zgesvd is copied to out2 variables in required format*/ + for(j=0;j<Min(M,N);j++){ + for(k=0;k<Min(M,N);k++){ + if(j == k) + out2[j*(Min(M,N))+k] = DoubleComplex(S[j],0); + else + out2[j*(Min(M,N))+k] = DoubleComplex(0,0); + } + } //free(U); //free(VT); } - /* output from zgesvd is copied to out2 variables in required format*/ - for(j=0;j<Min(M,N);j++){ - for(k=0;k<Min(M,N);k++){ - if(j == k) - out2[j*(Min(M,N))+k] = DoubleComplex(S[j],0); - else - out2[j*(Min(M,N))+k] = DoubleComplex(0,0); - } - } } } diff --git a/2.3-1/src/c/matrixOperations/includes/norm.h b/2.3-1/src/c/matrixOperations/includes/norm.h index dc9d351f..4fe3872c 100644 --- a/2.3-1/src/c/matrixOperations/includes/norm.h +++ b/2.3-1/src/c/matrixOperations/includes/norm.h @@ -5,7 +5,7 @@ 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 - Author: Siddhesh Wani + Author: Sandeep Gupta Organization: FOSSEE, IIT Bombay Email: toolbox@scilab.in */ diff --git a/2.3-1/src/c/matrixOperations/includes/spec.h b/2.3-1/src/c/matrixOperations/includes/spec.h deleted file mode 100644 index b7b7d35c..00000000 --- a/2.3-1/src/c/matrixOperations/includes/spec.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * 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 - * - */ - - -#ifndef __SPEC_H__ -#define __SPEC_H__ - -#include "dynlib_matrixoperations.h" -#include "doubleComplex.h" -#include "floatComplex.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* spec gives only the eigenvalues - If you want the eigenvalues and the eigenvectors, use spec2 */ - -/* spec */ -#define sspecs(in) in -#define dspecs(in) in -#define cspecs(in) in -#define zspecs(in) in - -EXTERN_MATOPS void sspeca(float* in, int rows, float* out); -EXTERN_MATOPS void dspeca(double* in, int rows, double* out); -EXTERN_MATOPS void cspeca(floatComplex* in, int rows, floatComplex* out); -EXTERN_MATOPS void zspeca(doubleComplex* in, int rows,doubleComplex* out); - - - -/* spec2 */ -#define sspec2s(in,out) sspecs(1);*out=in; -#define dspec2s(in,out) dspecs(1);*out=in; -#define cspec2s(in,out) cspecs(FloatComplex(1,0));*out=FloatComplex(creals(in),cimags(in)); -#define zspec2s(in,out) zspecs(DoubleComplex(1,0));*out=DoubleComplex(zreals(in),zimags(in)); - -EXTERN_MATOPS void sspec2a(float* in, int rows, float* eigenvalues,float* eigenvectors); -EXTERN_MATOPS void dspec2a(double* in, int rows, double* eigenvalues,double* eigenvectors); -EXTERN_MATOPS void cspec2a(floatComplex* in, int rows, floatComplex* eigenvalues,floatComplex* eigenvectors); -EXTERN_MATOPS void zspec2a(doubleComplex* in, int rows,doubleComplex* eigenvalues,doubleComplex* eigenvectors); - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif /* __SPEC_H__ */ diff --git a/2.3-1/src/c/matrixOperations/includes/toeplitz.h b/2.3-1/src/c/matrixOperations/includes/toeplitz.h new file mode 100644 index 00000000..7384b43c --- /dev/null +++ b/2.3-1/src/c/matrixOperations/includes/toeplitz.h @@ -0,0 +1,37 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __TOEPLITZ_H__ +#define __TOEPLITZ_H__ +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dtoeplitza(double* inp1,int size1,double* inp2,int size2,double* oup); +void u8toeplitza(uint8* inp1,int size1,uint8* inp2,int size2,uint8* oup); +void u16toeplitza(uint16* inp1,int size1,uint16* inp2,int size2,uint16* oup); +void ztoeplitza(doubleComplex* inp1,int size1,doubleComplex* inp2,int size2,doubleComplex* oup); +void gtoeplitza(char* inp1,int size1,char* inp2,int size2,char* oup); +void stoeplitza(float* inp1,int size1,float* inp2,int size2,float* oup); +void ctoeplitza(floatComplex* inp1,int size1,floatComplex* inp2,int size2,floatComplex* oup); +void i8toeplitza(int8* inp1,int size1,int8* inp2,int size2,int8* oup); +void i16toeplitza(int16* inp1,int size1,int16* inp2,int size2,int16* oup); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__TOEPLITZ_H__*/ diff --git a/2.3-1/src/c/matrixOperations/interfaces/int_spec.h b/2.3-1/src/c/matrixOperations/interfaces/int_spec.h deleted file mode 100644 index 77ab55e7..00000000 --- a/2.3-1/src/c/matrixOperations/interfaces/int_spec.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET - * - * 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 - * - */ - -/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ - -#ifndef __INT_SPEC_H__ -#define __INT_SPEC_H__ - -/* Only eigenvalues */ - -#define s0specc0(in) FloatComplex (sspecs(in) , 0) - -#define d0specz0(in) DoubleComplex ( dspecs(in) , 0) - -#define c0specc0(in) cspecs(in) - -#define z0specz0(in) zspecs(in) - -#define s2specc2(in,size,out) {float* ZEROS;\ - ZEROS=malloc((uint)(size[0]*size[0]*sizeof(float)));\ - szerosa(ZEROS,size[0],size[0]);\ - cspeca(FloatComplexMatrix(in,ZEROS,size[0]*size[0]), size[0], out);\ - } - -#define d2specz2(in,size,out) {double* ZEROS;\ - ZEROS=malloc((uint)(size[0]*size[0]*sizeof(double)));\ - dzerosa(ZEROS,size[0],size[0]);\ - zspeca(DoubleComplexMatrix(in,ZEROS,size[0]*size[0]), size[0] , out);\ - } - -#define c2specc2(in,size,out) cspeca(in, size[0], out) - -#define z2specz2(in,size,out) zspeca(in, size[0], out) - -/* Eigenvalues and eigenvectors */ - -#define s0specc0c0(in,out) cspec2s(FloatComplex( in,0) ,out) - -#define d0specz0z0(in,out) zspec2s(DoubleComplex(in,0) ,out) - -#define c0specc0c0(in,out) cspec2s(in,out) - -#define z0specz0z0(in,out) zspec2s(in,out) - -#define s2specc2c2(in,size,out1,out2) {float* ZEROS;\ - ZEROS=malloc((uint)(size[0]*size[0]*sizeof(float)));\ - szerosa(ZEROS,size[0],size[0]);\ - cspec2a(FloatComplexMatrix(in,ZEROS,size[0]*size[0]), size[0] , out1 , out2 );\ - } - -#define d2specz2z2(in,size,out1,out2) {double* ZEROS;\ - ZEROS=malloc((uint)(size[0]*size[0]*sizeof(double)));\ - dzerosa(ZEROS,size[0],size[0]);\ - zspec2a(DoubleComplexMatrix(in,ZEROS,size[0]*size[0]), size[0] , out1 , out2 );\ - } - - -#define c2specc2c2(in,size,out1,out2) cspec2a(in, size[0], out2, out1) - -#define z2specz2z2(in,size,out1,out2) zspec2a(in, size[0], out2, out1) - -#endif /* !__INT_SPEC_H__ */ diff --git a/2.3-1/src/c/matrixOperations/interfaces/int_toeplitz.h b/2.3-1/src/c/matrixOperations/interfaces/int_toeplitz.h new file mode 100644 index 00000000..b602e9a8 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/interfaces/int_toeplitz.h @@ -0,0 +1,50 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_TOEPLITZ_H__ +#define __INT_TOEPLITZ_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2d2toeplitzd2(in1,size1,in2,size2,out) dtoeplitza(in1,size1[1],in2,size2[1],out) +#define d2toeplitzd2(in1,size1,out) dtoeplitza(in1,size1[1],in1,size1[1],out) + +#define u82u82toeplitzu82(in1,size1,in2,size2,out) u8toeplitza(in1,size1[1],in2,size2[1],out) +#define u82toeplitzu82(in1,size1,out) u8toeplitza(in1,size1[1],in1,size1[1],out) + +#define u162u162toeplitzu162(in1,size1,in2,size2,out) u16toeplitza(in1,size1[1],in2,size2[1],out) +#define u162toeplitzu162(in1,size1,out) u16toeplitza(in1,size1[1],in1,size1[1],out) + +#define g2g2toeplitzg2(in1,size1,in2,size2,out) gtoeplitza(in1,size1[1],in2,size2[1],out) +#define g2toeplitzg2(in1,size1,out) gtoeplitza(in1,size1[1],in1,size1[1],out) + +#define z2z2toeplitzz2(in1,size1,in2,size2,out) ztoeplitza(in1,size1[1],in2,size2[1],out) +#define z2toeplitzz2(in1,size1,out) ztoeplitza(in1,size1[1],in1,size1[1],out) + +#define s2s2toeplitzs2(in1,size1,in2,size2,out) stoeplitza(in1,size1[1],in2,size2[1],out) +#define s2toeplitzs2(in1,size1,out) stoeplitza(in1,size1[1],in1,size1[1],out) + +#define c2c2toeplitzc2(in1,size1,in2,size2,out) ctoeplitza(in1,size1[1],in2,size2[1],out) +#define c2toeplitzc2(in1,size1,out) ctoeplitza(in1,size1[1],in1,size1[1],out) + +#define i82i82toeplitzi82(in1,size1,in2,size2,out) i8toeplitza(in1,size1[1],in2,size2[1],out) +#define i82toeplitzi82(in1,size1,out) i8toeplitza(in1,size1[1],in1,size1[1],out) + +#define i162i162toeplitzi162(in1,size1,in2,size2,out) i16toeplitza(in1,size1[1],in2,size2[1],out) +#define i162toeplitzi162(in1,size1,out) i16toeplitza(in1,size1[1],in1,size1[1],out) + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_TOEPLITZ_H__*/ diff --git a/2.3-1/src/c/matrixOperations/norm/dnorma.c b/2.3-1/src/c/matrixOperations/norm/dnorma.c index c912f857..2bb9b8b7 100644 --- a/2.3-1/src/c/matrixOperations/norm/dnorma.c +++ b/2.3-1/src/c/matrixOperations/norm/dnorma.c @@ -6,6 +6,8 @@ are also available at http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt Author: Siddhesh Wani + + Edited by: Sandeep Gupta Organization: FOSSEE, IIT Bombay Email: toolbox@scilab.in */ @@ -14,13 +16,17 @@ /*Acceptable norms are: 1, 2, 'inf', 'fro', */ #include "norm.h" +#include "svd.h" #include <math.h> +#include <stdio.h> +#include<stdlib.h> double dnorma (double *in, int row, int col, int norm) { double res = 0, sum = 0; int col_count, row_count; - + double *S; + S = (double *)malloc(min(row,col)*sizeof(double)); switch (norm) { case 1: /*largest column sum*/ @@ -37,6 +43,8 @@ double dnorma (double *in, int row, int col, int norm) break; case 2: /*Largest singular value of the matrix*/ + dsvda(0,in,row,col,0,1,S,NULL,NULL); + res = S[0]; break; case 3: /*inf: largest row sum*/ @@ -69,4 +77,4 @@ double dnorma (double *in, int row, int col, int norm) return res; -}
\ No newline at end of file +} diff --git a/2.3-1/src/c/matrixOperations/spec/Makefile.am b/2.3-1/src/c/matrixOperations/spec/Makefile.am deleted file mode 100644 index 90dbd0aa..00000000 --- a/2.3-1/src/c/matrixOperations/spec/Makefile.am +++ /dev/null @@ -1,70 +0,0 @@ -## -## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET -## -## 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 -## -## - -libSpec_la_CFLAGS = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - - -instdir = $(top_builddir)/lib - -pkglib_LTLIBRARIES = libSpec.la - -HEAD = ../includes/spec.h - -libSpec_la_SOURCES = $(HEAD) \ - sspeca.c \ - dspeca.c \ - cspeca.c \ - zspeca.c - - -############ -## CHECK -############ - - -check_PROGRAMS = testDoubleSpec testFloatSpec - -check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ - $(top_builddir)/src/c/type/libFloatComplex.la \ - $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ - $(top_builddir)/src/fortran/lapack/libscilapack.la \ - $(top_builddir)/src/fortran/blas/libsciblas.la \ - $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ - $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ - $(top_builddir)/src/c/auxiliaryFunctions/sign/libSign.la \ - $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ - $(top_builddir)/src/c/operations/addition/libAddition.la \ - $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ - $(top_builddir)/src/c/matrixOperations/inversion/libMatrixInversion.la\ - $(top_builddir)/src/c/matrixOperations/zeros/libMatrixZeros.la\ - libSpec.la - -check_INCLUDES = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - -testDoubleSpec_SOURCES = testDoubleSpec.c -testDoubleSpec_LDADD = $(check_LDADD) -testDoubleSpec_CFLAGS = $(check_INCLUDES) - -testFloatSpec_SOURCES = testFloatSpec.c -testFloatSpec_LDADD = $(check_LDADD) -testFloatSpec_CFLAGS = $(check_INCLUDES) - -TESTS = testDoubleSpec testFloatSpec - diff --git a/2.3-1/src/c/matrixOperations/spec/Makefile.in b/2.3-1/src/c/matrixOperations/spec/Makefile.in deleted file mode 100644 index 9c34c9e6..00000000 --- a/2.3-1/src/c/matrixOperations/spec/Makefile.in +++ /dev/null @@ -1,755 +0,0 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -check_PROGRAMS = testDoubleSpec$(EXEEXT) testFloatSpec$(EXEEXT) -TESTS = testDoubleSpec$(EXEEXT) testFloatSpec$(EXEEXT) -subdir = src/c/matrixOperations/spec -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/includes/machine.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__installdirs = "$(DESTDIR)$(pkglibdir)" -LTLIBRARIES = $(pkglib_LTLIBRARIES) -libSpec_la_LIBADD = -am__objects_1 = -am_libSpec_la_OBJECTS = $(am__objects_1) libSpec_la-sspeca.lo \ - libSpec_la-dspeca.lo libSpec_la-cspeca.lo libSpec_la-zspeca.lo -libSpec_la_OBJECTS = $(am_libSpec_la_OBJECTS) -libSpec_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libSpec_la_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_testDoubleSpec_OBJECTS = testDoubleSpec-testDoubleSpec.$(OBJEXT) -testDoubleSpec_OBJECTS = $(am_testDoubleSpec_OBJECTS) -testDoubleSpec_DEPENDENCIES = $(check_LDADD) -testDoubleSpec_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleSpec_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_testFloatSpec_OBJECTS = testFloatSpec-testFloatSpec.$(OBJEXT) -testFloatSpec_OBJECTS = $(am_testFloatSpec_OBJECTS) -testFloatSpec_DEPENDENCIES = $(check_LDADD) -testFloatSpec_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatSpec_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes -depcomp = $(SHELL) $(top_srcdir)/config/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -SOURCES = $(libSpec_la_SOURCES) $(testDoubleSpec_SOURCES) \ - $(testFloatSpec_SOURCES) -DIST_SOURCES = $(libSpec_la_SOURCES) $(testDoubleSpec_SOURCES) \ - $(testFloatSpec_SOURCES) -ETAGS = etags -CTAGS = ctags -am__tty_colors = \ -red=; grn=; lgn=; blu=; std= -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AR = @AR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -F77 = @F77@ -FFLAGS = @FFLAGS@ -FGREP = @FGREP@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBMATH = @LIBMATH@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -ac_ct_F77 = @ac_ct_F77@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -libSpec_la_CFLAGS = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - -instdir = $(top_builddir)/lib -pkglib_LTLIBRARIES = libSpec.la -HEAD = ../includes/spec.h -libSpec_la_SOURCES = $(HEAD) \ - sspeca.c \ - dspeca.c \ - cspeca.c \ - zspeca.c - -check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ - $(top_builddir)/src/c/type/libFloatComplex.la \ - $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ - $(top_builddir)/src/fortran/lapack/libscilapack.la \ - $(top_builddir)/src/fortran/blas/libsciblas.la \ - $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ - $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ - $(top_builddir)/src/c/auxiliaryFunctions/sign/libSign.la \ - $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ - $(top_builddir)/src/c/operations/addition/libAddition.la \ - $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ - $(top_builddir)/src/c/matrixOperations/inversion/libMatrixInversion.la\ - $(top_builddir)/src/c/matrixOperations/zeros/libMatrixZeros.la\ - libSpec.la - -check_INCLUDES = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - -testDoubleSpec_SOURCES = testDoubleSpec.c -testDoubleSpec_LDADD = $(check_LDADD) -testDoubleSpec_CFLAGS = $(check_INCLUDES) -testFloatSpec_SOURCES = testFloatSpec.c -testFloatSpec_LDADD = $(check_LDADD) -testFloatSpec_CFLAGS = $(check_INCLUDES) -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/matrixOperations/spec/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign src/c/matrixOperations/spec/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) - @$(NORMAL_INSTALL) - test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" - @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ - } - -uninstall-pkglibLTLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ - done - -clean-pkglibLTLIBRARIES: - -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) - @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" != "$$p" || dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done -libSpec.la: $(libSpec_la_OBJECTS) $(libSpec_la_DEPENDENCIES) - $(libSpec_la_LINK) -rpath $(pkglibdir) $(libSpec_la_OBJECTS) $(libSpec_la_LIBADD) $(LIBS) - -clean-checkPROGRAMS: - @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list -testDoubleSpec$(EXEEXT): $(testDoubleSpec_OBJECTS) $(testDoubleSpec_DEPENDENCIES) - @rm -f testDoubleSpec$(EXEEXT) - $(testDoubleSpec_LINK) $(testDoubleSpec_OBJECTS) $(testDoubleSpec_LDADD) $(LIBS) -testFloatSpec$(EXEEXT): $(testFloatSpec_OBJECTS) $(testFloatSpec_DEPENDENCIES) - @rm -f testFloatSpec$(EXEEXT) - $(testFloatSpec_LINK) $(testFloatSpec_OBJECTS) $(testFloatSpec_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec_la-cspeca.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec_la-dspeca.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec_la-sspeca.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec_la-zspeca.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleSpec-testDoubleSpec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatSpec-testFloatSpec.Po@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(COMPILE) -c $< - -.c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< - -libSpec_la-sspeca.lo: sspeca.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -MT libSpec_la-sspeca.lo -MD -MP -MF $(DEPDIR)/libSpec_la-sspeca.Tpo -c -o libSpec_la-sspeca.lo `test -f 'sspeca.c' || echo '$(srcdir)/'`sspeca.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec_la-sspeca.Tpo $(DEPDIR)/libSpec_la-sspeca.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='sspeca.c' object='libSpec_la-sspeca.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -c -o libSpec_la-sspeca.lo `test -f 'sspeca.c' || echo '$(srcdir)/'`sspeca.c - -libSpec_la-dspeca.lo: dspeca.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -MT libSpec_la-dspeca.lo -MD -MP -MF $(DEPDIR)/libSpec_la-dspeca.Tpo -c -o libSpec_la-dspeca.lo `test -f 'dspeca.c' || echo '$(srcdir)/'`dspeca.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec_la-dspeca.Tpo $(DEPDIR)/libSpec_la-dspeca.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dspeca.c' object='libSpec_la-dspeca.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -c -o libSpec_la-dspeca.lo `test -f 'dspeca.c' || echo '$(srcdir)/'`dspeca.c - -libSpec_la-cspeca.lo: cspeca.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -MT libSpec_la-cspeca.lo -MD -MP -MF $(DEPDIR)/libSpec_la-cspeca.Tpo -c -o libSpec_la-cspeca.lo `test -f 'cspeca.c' || echo '$(srcdir)/'`cspeca.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec_la-cspeca.Tpo $(DEPDIR)/libSpec_la-cspeca.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cspeca.c' object='libSpec_la-cspeca.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -c -o libSpec_la-cspeca.lo `test -f 'cspeca.c' || echo '$(srcdir)/'`cspeca.c - -libSpec_la-zspeca.lo: zspeca.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -MT libSpec_la-zspeca.lo -MD -MP -MF $(DEPDIR)/libSpec_la-zspeca.Tpo -c -o libSpec_la-zspeca.lo `test -f 'zspeca.c' || echo '$(srcdir)/'`zspeca.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec_la-zspeca.Tpo $(DEPDIR)/libSpec_la-zspeca.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zspeca.c' object='libSpec_la-zspeca.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec_la_CFLAGS) $(CFLAGS) -c -o libSpec_la-zspeca.lo `test -f 'zspeca.c' || echo '$(srcdir)/'`zspeca.c - -testDoubleSpec-testDoubleSpec.o: testDoubleSpec.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec_CFLAGS) $(CFLAGS) -MT testDoubleSpec-testDoubleSpec.o -MD -MP -MF $(DEPDIR)/testDoubleSpec-testDoubleSpec.Tpo -c -o testDoubleSpec-testDoubleSpec.o `test -f 'testDoubleSpec.c' || echo '$(srcdir)/'`testDoubleSpec.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleSpec-testDoubleSpec.Tpo $(DEPDIR)/testDoubleSpec-testDoubleSpec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleSpec.c' object='testDoubleSpec-testDoubleSpec.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec_CFLAGS) $(CFLAGS) -c -o testDoubleSpec-testDoubleSpec.o `test -f 'testDoubleSpec.c' || echo '$(srcdir)/'`testDoubleSpec.c - -testDoubleSpec-testDoubleSpec.obj: testDoubleSpec.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec_CFLAGS) $(CFLAGS) -MT testDoubleSpec-testDoubleSpec.obj -MD -MP -MF $(DEPDIR)/testDoubleSpec-testDoubleSpec.Tpo -c -o testDoubleSpec-testDoubleSpec.obj `if test -f 'testDoubleSpec.c'; then $(CYGPATH_W) 'testDoubleSpec.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleSpec.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleSpec-testDoubleSpec.Tpo $(DEPDIR)/testDoubleSpec-testDoubleSpec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleSpec.c' object='testDoubleSpec-testDoubleSpec.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec_CFLAGS) $(CFLAGS) -c -o testDoubleSpec-testDoubleSpec.obj `if test -f 'testDoubleSpec.c'; then $(CYGPATH_W) 'testDoubleSpec.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleSpec.c'; fi` - -testFloatSpec-testFloatSpec.o: testFloatSpec.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec_CFLAGS) $(CFLAGS) -MT testFloatSpec-testFloatSpec.o -MD -MP -MF $(DEPDIR)/testFloatSpec-testFloatSpec.Tpo -c -o testFloatSpec-testFloatSpec.o `test -f 'testFloatSpec.c' || echo '$(srcdir)/'`testFloatSpec.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatSpec-testFloatSpec.Tpo $(DEPDIR)/testFloatSpec-testFloatSpec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatSpec.c' object='testFloatSpec-testFloatSpec.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec_CFLAGS) $(CFLAGS) -c -o testFloatSpec-testFloatSpec.o `test -f 'testFloatSpec.c' || echo '$(srcdir)/'`testFloatSpec.c - -testFloatSpec-testFloatSpec.obj: testFloatSpec.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec_CFLAGS) $(CFLAGS) -MT testFloatSpec-testFloatSpec.obj -MD -MP -MF $(DEPDIR)/testFloatSpec-testFloatSpec.Tpo -c -o testFloatSpec-testFloatSpec.obj `if test -f 'testFloatSpec.c'; then $(CYGPATH_W) 'testFloatSpec.c'; else $(CYGPATH_W) '$(srcdir)/testFloatSpec.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatSpec-testFloatSpec.Tpo $(DEPDIR)/testFloatSpec-testFloatSpec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatSpec.c' object='testFloatSpec-testFloatSpec.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec_CFLAGS) $(CFLAGS) -c -o testFloatSpec-testFloatSpec.obj `if test -f 'testFloatSpec.c'; then $(CYGPATH_W) 'testFloatSpec.c'; else $(CYGPATH_W) '$(srcdir)/testFloatSpec.c'; fi` - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - set x; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -check-TESTS: $(TESTS) - @failed=0; all=0; xfail=0; xpass=0; skip=0; \ - srcdir=$(srcdir); export srcdir; \ - list=' $(TESTS) '; \ - $(am__tty_colors); \ - if test -n "$$list"; then \ - for tst in $$list; do \ - if test -f ./$$tst; then dir=./; \ - elif test -f $$tst; then dir=; \ - else dir="$(srcdir)/"; fi; \ - if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xpass=`expr $$xpass + 1`; \ - failed=`expr $$failed + 1`; \ - col=$$red; res=XPASS; \ - ;; \ - *) \ - col=$$grn; res=PASS; \ - ;; \ - esac; \ - elif test $$? -ne 77; then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xfail=`expr $$xfail + 1`; \ - col=$$lgn; res=XFAIL; \ - ;; \ - *) \ - failed=`expr $$failed + 1`; \ - col=$$red; res=FAIL; \ - ;; \ - esac; \ - else \ - skip=`expr $$skip + 1`; \ - col=$$blu; res=SKIP; \ - fi; \ - echo "$${col}$$res$${std}: $$tst"; \ - done; \ - if test "$$all" -eq 1; then \ - tests="test"; \ - All=""; \ - else \ - tests="tests"; \ - All="All "; \ - fi; \ - if test "$$failed" -eq 0; then \ - if test "$$xfail" -eq 0; then \ - banner="$$All$$all $$tests passed"; \ - else \ - if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ - banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ - fi; \ - else \ - if test "$$xpass" -eq 0; then \ - banner="$$failed of $$all $$tests failed"; \ - else \ - if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ - banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ - fi; \ - fi; \ - dashes="$$banner"; \ - skipped=""; \ - if test "$$skip" -ne 0; then \ - if test "$$skip" -eq 1; then \ - skipped="($$skip test was not run)"; \ - else \ - skipped="($$skip tests were not run)"; \ - fi; \ - test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$skipped"; \ - fi; \ - report=""; \ - if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ - report="Please report to $(PACKAGE_BUGREPORT)"; \ - test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$report"; \ - fi; \ - dashes=`echo "$$dashes" | sed s/./=/g`; \ - if test "$$failed" -eq 0; then \ - echo "$$grn$$dashes"; \ - else \ - echo "$$red$$dashes"; \ - fi; \ - echo "$$banner"; \ - test -z "$$skipped" || echo "$$skipped"; \ - test -z "$$report" || echo "$$report"; \ - echo "$$dashes$$std"; \ - test "$$failed" -eq 0; \ - else :; fi - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) - $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: check-am -all-am: Makefile $(LTLIBRARIES) -installdirs: - for dir in "$(DESTDIR)$(pkglibdir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ - clean-pkglibLTLIBRARIES mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: install-pkglibLTLIBRARIES - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-pkglibLTLIBRARIES - -.MAKE: check-am install-am install-strip - -.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ - clean-checkPROGRAMS clean-generic clean-libtool \ - clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ - distclean-generic distclean-libtool distclean-tags distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-pkglibLTLIBRARIES install-ps \ - install-ps-am install-strip installcheck installcheck-am \ - installdirs maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-pkglibLTLIBRARIES - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/2.3-1/src/c/matrixOperations/spec/cspeca.c b/2.3-1/src/c/matrixOperations/spec/cspeca.c deleted file mode 100644 index a2b6548b..00000000 --- a/2.3-1/src/c/matrixOperations/spec/cspeca.c +++ /dev/null @@ -1,34 +0,0 @@ -/* - * 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 cspeca(floatComplex* in, int rows, floatComplex* out){ - /* As we use Lapack to find the eigenvalues, we must cast the floatComplex input into doubleComplex - and the doubleComplex output of dspeca into floatComplex*/ - - int i; - doubleComplex* dblin; - doubleComplex* dblout; - - dblin=(doubleComplex*)malloc((unsigned int)(rows*rows)*sizeof(doubleComplex)); - dblout=(doubleComplex*)malloc((unsigned int)rows*sizeof(doubleComplex)); - - for (i=0;i<rows*rows;i++) dblin[i]=DoubleComplex((double)creals(in[i]),(double)cimags(in[i])); - - zspeca(dblin,rows,dblout); - - for (i=0;i<rows;i++) out[i]=FloatComplex((float)zreals(dblout[i]),(float)zimags(dblout[i])); -} diff --git a/2.3-1/src/c/matrixOperations/spec/dspeca.c b/2.3-1/src/c/matrixOperations/spec/dspeca.c deleted file mode 100644 index 1131ecf2..00000000 --- a/2.3-1/src/c/matrixOperations/spec/dspeca.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * 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" -#include "lapack.h" -#include "zeros.h" -#include "max.h" - -void dspeca(double* in, int rows,double* out){ - int i=0, j=0; - int symmetric=0; - int INFO=0; - int iWorkSize = 0; - double* pdblWork; - double* outReal; - double* outImag; - double* pdblLeftvectors; - double* pdblRightvectors; - double* inCopy; - - inCopy = (double*)malloc((unsigned int)(rows*rows) * sizeof(double)); - outReal = (double*)malloc((unsigned int)rows * sizeof(double)); - outImag = (double*)malloc((unsigned int)rows * sizeof(double)); - pdblLeftvectors=NULL; - pdblRightvectors=NULL; - - - iWorkSize = 3*rows; - pdblWork = (double*)malloc((unsigned int)iWorkSize * sizeof(double)); - - for(i=0;i<rows*rows;i++) inCopy[i]=in[i]; - /* look if the matrix is symmetric */ - for (i=0;i<rows;i++) - for (j=0;j<rows;j++) - if (in[i*rows+j]!=in[i+j*rows]) break; - - /* the matrix is symmetric if the 2 loops goes to end i.e - i==rows and j==rows */ - if ((i==rows)&&(j==rows)) symmetric=1; - - - /* apply lapack function according to symmetry */ - if(symmetric){ - C2F(dsyev)( "N", "U", &rows, in, &rows, outReal, pdblWork, &iWorkSize, &INFO ); - } - else { - C2F(dgeev)( "N", "N", &rows, inCopy, &rows, outReal, outImag, - pdblLeftvectors, &rows, pdblRightvectors, &rows, pdblWork, &iWorkSize, &INFO ); - } - - for (i=0;i<rows;i++) out[i]=outReal[i]; - - - free(inCopy); - free(outReal); - free(outImag); - free(pdblWork); - free(pdblLeftvectors); - free(pdblRightvectors); -} - diff --git a/2.3-1/src/c/matrixOperations/spec/sspeca.c b/2.3-1/src/c/matrixOperations/spec/sspeca.c deleted file mode 100644 index 50751a29..00000000 --- a/2.3-1/src/c/matrixOperations/spec/sspeca.c +++ /dev/null @@ -1,34 +0,0 @@ -/* - * 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]; -} diff --git a/2.3-1/src/c/matrixOperations/spec/testDoubleSpec.c b/2.3-1/src/c/matrixOperations/spec/testDoubleSpec.c deleted file mode 100644 index 25c88065..00000000 --- a/2.3-1/src/c/matrixOperations/spec/testDoubleSpec.c +++ /dev/null @@ -1,116 +0,0 @@ -/* - * 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" -#include "stdio.h" -#include "assert.h" -#include "math.h" - -static void dspecaTest(void){ - double in[4]={1,1,1,3}; - double resultR[2]={0.5857864376269050765700,3.4142135623730949234300}; - - - double *out; - - int i; - - out=(double*)malloc((unsigned int)2*sizeof(double)); - - dspeca(in,2,out); - for(i=0;i<2;i++){ - if (out[i]>1e-16) assert( fabs(out[i]-resultR[i]) / fabs(out[i]) <3e-16); - else assert(1); - } - -} - - - - -static void zspecaTest(void){ - double inR[4]={1,1,1,3}; - double inI[4]={0,0,0,0}; - double resultR[2]={0.5857864376269050765700,3.4142135623730949234300}; - double resultI[2]={0,0}; - - double in2R[4]={1,1,-2,3}; - double in2I[4]={0,0,0,0}; - double result2R[2]={1.9999999999999997779554,1.9999999999999997779554}; - double result2I[2]={0.9999999999999997779554,-0.9999999999999997779554}; - - double in3R[16]={0.0603054538369178771973,0.631347181741148233414 ,0.0241030259057879447937,0.1527438252232968807221, - 0.9481177683919668197632,0.2744265575893223285675,0.4794727200642228126526,0.485576837789267301559, - 0.676400367170572280884,0.8321249918080866336823,0.0125875836238265037537,0.5453779897652566432953, - 0.8426716942340135574341,0.9029165101237595081329,0.4409482078626751899719,0.8332359003834426403046 }; - double in3I[16]={0.7233976423740386962891,0.4377150186337530612946,0.3080607382580637931824,0.8749813153408467769623, - 0.5355882328003644943237 ,0.3085998897440731525421,0.3354632416740059852600,0.2342486302368342876434, - 0.2589411698281764984131,0.8521509231068193912506,0.4821739485487341880798,0.6095217890106141567230, - 0.9872822705656290054321,0.9811426815576851367950,0.3303113700821995735169,0.3589145573787391185761}; - double result3R[4]={1.9486046375762748894545,0.2315060459861970343365,- 0.7694743345806510648188,- 0.2300808535483104266817}; - double result3I[4]={2.1242015857341254303492,- 0.4115101262891645017561,- 0.1980716835789462781925,0.3584662621795701720195}; - - doubleComplex *in,*in2,*in3,out[2],out2[4]; - - int i; - - in=DoubleComplexMatrix(inR,inI,4); - in2=DoubleComplexMatrix(in2R,in2I,4); - in3=DoubleComplexMatrix(in3R,in3I,16); - - zspeca(in,2,out); - for(i=0;i<2;i++){ - if (zreals(out[i])>1e-16) assert( fabs(zreals(out[i])-resultR[i]) / fabs(zreals(out[i])) <3e-16); - else assert(1); - if (zimags(out[i])>1e-16) assert( fabs(zimags(out[i])-resultI[i]) / fabs(zimags(out[i])) <1e-16); - else assert(1); - } - - - zspeca(in2,2,out); - for(i=0;i<2;i++){ - if (zreals(out[i])>1e-16) assert( fabs(zreals(out[i])-result2R[i]) / fabs(zreals(out[i])) <3e-16); - else assert(1); - if (zimags(out[i])>1e-16) assert( fabs(zimags(out[i])-result2I[i]) / fabs(zimags(out[i])) <3e-15); - else assert(1); - } - - - zspeca(in3,4,out2); - for(i=0;i<4;i++){ - if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-result3R[i]) / fabs(zreals(out2[i])) <3e-15); - else assert(1); - if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-result3I[i]) / fabs(zimags(out2[i])) <3e-15); - else assert(1); - } - - -} - - -static int testSpec(void){ - printf(">>> Double Spec Tests <<<\n"); - printf(">>> Double <<<\n"); - dspecaTest(); - printf(">>> DoubleComplex <<<\n"); - zspecaTest(); - return 0; -} - - -int main(void){ - assert (testSpec()==0); - - - return 0; -} diff --git a/2.3-1/src/c/matrixOperations/spec/testFloatSpec.c b/2.3-1/src/c/matrixOperations/spec/testFloatSpec.c deleted file mode 100644 index 9bd46adc..00000000 --- a/2.3-1/src/c/matrixOperations/spec/testFloatSpec.c +++ /dev/null @@ -1,110 +0,0 @@ -/* - * 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" -#include "stdio.h" -#include "assert.h" -#include "math.h" - -static void sspecaTest(void){ - float in[4]={1.0f,1.0f,1.0f,3.0f}; - float resultR[2]={0.5857864376269050765700f,3.4142135623730949234300f}; - - float in1[4]={0.0f,4.0f,1.0f,0.0f}; - float result[2]={2.0f,-2.0f}; - - float in2[4]={1.0f,1.0f,-2.0f,3.0f}; - - float *out; - - int i; - - out=(float *)malloc((unsigned int)2*sizeof(float)); - - sspeca(in,2,out); - for (i=0;i<2;i++) printf("%f\n",out[i]); - for(i=0;i<2;i++){ - if (out[i]>1e-16) assert( fabs(out[i]-resultR[i]) / fabs(out[i]) <1e-16); - else assert(1); - } - - - sspeca(in1,2,out); - for (i=0;i<2;i++) printf("%f\n",out[i]); - for(i=0;i<2;i++){ - if (out[i]>1e-16) assert( fabs(out[i]-result[i]) / fabs(out[i]) <1e-16); - else assert(1); - } - - sspeca(in2,2,out); - for (i=0;i<2;i++) printf("%f\n",out[i]); - -} - - -static void cspecaTest(void){ - float inR[4]={1.0f,1.0f,1.0f,3.0f}; - float inI[4]={0.0f,0.0f,0.0f,0.0f}; - float resultR[2]={0.5857864376269050765700f,3.4142135623730949234300f}; - float resultI[2]={0,0}; - - float in2R[4]={1.0f,1.0f,-2.0f,3.0f}; - float in2I[4]={0.0f,0.0f,0.0f,0.0f}; - float result2R[2]={1.9999999999999997779554f,1.9999999999999997779554f}; - float result2I[2]={0.9999999999999997779554f,-0.9999999999999997779554f}; - - floatComplex *in,*in2,out[4]; - - int i; - - in=FloatComplexMatrix(inR,inI,4); - in2=FloatComplexMatrix(in2R,in2I,4); - - cspeca(in,2,out); - for(i=0;i<2;i++){ - if (creals(out[i])>1e-16) assert( fabs(creals(out[i])-resultR[i]) / fabs(creals(out[i])) <1e-15); - else assert(1); - if (cimags(out[i])>1e-16) assert( fabs(cimags(out[i])-resultI[i]) / fabs(cimags(out[i])) <1e-16); - else assert(1); - } - - - cspeca(in2,2,out); - for(i=0;i<2;i++){ - if (creals(out[i])>1e-16) assert( fabs(creals(out[i])-result2R[i]) / fabs(creals(out[i])) <1e-15); - else assert(1); - if (cimags(out[i])>1e-16) assert( fabs(cimags(out[i])-result2I[i]) / fabs(cimags(out[i])) <1e-15); - else assert(1); - } - -} - - - - -static int testSpec(void){ - printf(">>> Float Spec Tests <<<\n"); - printf(">>> Float <<<\n"); - sspecaTest(); - printf(">>> FloatComplex <<<\n"); - cspecaTest(); - return 0; -} - - -int main(void){ - assert (testSpec()==0); - - - return 0; -} diff --git a/2.3-1/src/c/matrixOperations/spec/test_DoubleSpec/testDoubleSpec.vcxproj b/2.3-1/src/c/matrixOperations/spec/test_DoubleSpec/testDoubleSpec.vcxproj deleted file mode 100644 index f696bff4..00000000 --- a/2.3-1/src/c/matrixOperations/spec/test_DoubleSpec/testDoubleSpec.vcxproj +++ /dev/null @@ -1,178 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{651B0E61-1047-4575-BE31-D9CB28062CBA}</ProjectGuid>
- <RootNamespace>testDoubleSpec</RootNamespace>
- <Keyword>Win32Proj</Keyword>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\testDoubleSpec.c">
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\..\type\type.vcxproj">
- <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- <ProjectReference Include="..\..\matrixOperations.vcxproj">
- <Project>{fd335544-52bf-4736-a34e-77f591d158d5}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec/test_DoubleSpec/testDoubleSpec.vcxproj.filters b/2.3-1/src/c/matrixOperations/spec/test_DoubleSpec/testDoubleSpec.vcxproj.filters deleted file mode 100644 index dcdaea5c..00000000 --- a/2.3-1/src/c/matrixOperations/spec/test_DoubleSpec/testDoubleSpec.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup>
- <Filter Include="Source Files">
- <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
- <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
- </Filter>
- <Filter Include="Header Files">
- <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
- <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
- </Filter>
- <Filter Include="Resource Files">
- <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
- <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
- </Filter>
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\testDoubleSpec.c">
- <Filter>Source Files</Filter>
- </ClCompile>
- </ItemGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec/test_FloatSpec/testFloatSpec.vcxproj b/2.3-1/src/c/matrixOperations/spec/test_FloatSpec/testFloatSpec.vcxproj deleted file mode 100644 index 0631bb40..00000000 --- a/2.3-1/src/c/matrixOperations/spec/test_FloatSpec/testFloatSpec.vcxproj +++ /dev/null @@ -1,178 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{B7BEF8A2-3E42-4FA3-94A7-22618594057D}</ProjectGuid>
- <RootNamespace>testFloatSpec</RootNamespace>
- <Keyword>Win32Proj</Keyword>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\testFloatSpec.c">
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\..\type\type.vcxproj">
- <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- <ProjectReference Include="..\..\matrixOperations.vcxproj">
- <Project>{fd335544-52bf-4736-a34e-77f591d158d5}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec/test_FloatSpec/testFloatSpec.vcxproj.filters b/2.3-1/src/c/matrixOperations/spec/test_FloatSpec/testFloatSpec.vcxproj.filters deleted file mode 100644 index 2ba2e59f..00000000 --- a/2.3-1/src/c/matrixOperations/spec/test_FloatSpec/testFloatSpec.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup>
- <Filter Include="Source Files">
- <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
- <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
- </Filter>
- <Filter Include="Header Files">
- <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
- <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
- </Filter>
- <Filter Include="Resource Files">
- <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
- <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
- </Filter>
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\testFloatSpec.c">
- <Filter>Source Files</Filter>
- </ClCompile>
- </ItemGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec/zspeca.c b/2.3-1/src/c/matrixOperations/spec/zspeca.c deleted file mode 100644 index a2b1c25a..00000000 --- a/2.3-1/src/c/matrixOperations/spec/zspeca.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * 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" -#include "lapack.h" -#include "zeros.h" -#include "conj.h" - -void zspeca(doubleComplex* in, int rows,doubleComplex* out){ - int i = 0, j = 0; - int hermitian = 0; - int INFO = 0; - int iWorkSize = 0; - doubleComplex* pdblWork; - doubleComplex* pdblLeftvectors; - doubleComplex* pdblRightvectors; - doubleComplex* pdblRWork; - double* outReal; - double* outImag; - doubleComplex* inCopy; - - inCopy = (doubleComplex*)malloc((unsigned int)(rows*rows) * sizeof(doubleComplex)); - outReal = (double*)malloc((unsigned int)rows * sizeof(double)); - outImag = (double*)malloc((unsigned int)rows * sizeof(double)); - pdblLeftvectors=NULL; - pdblRightvectors=NULL; - - iWorkSize = 2*rows; - pdblWork = (doubleComplex*)malloc((unsigned int)iWorkSize * sizeof(doubleComplex)); - pdblRWork = (doubleComplex*)malloc((unsigned int)(3*rows) * sizeof(doubleComplex)); - - for(i=0;i<rows*rows;i++) inCopy[i]=DoubleComplex(zreals(in[i]),zimags(in[i])); - - /* look if the matrix is symmetric */ - for (i=0;i<rows;i++){ - for (j=0;j<rows;j++) - if ( (zreals(in[i*rows+j])!=zreals(zconjs(in[i+j*rows]))) || - (zimags(in[i*rows+j])!=zimags(zconjs(in[i+j*rows]))) ) - break; - if (j!=rows) break; - } - - - /* the matrix is symmetric if the 2 loops goes to end i.e - i==rows and j==rows */ - if ((i==rows)&&(j==rows)) hermitian=1; - - - /* apply lapack function according to symmetry */ - if(hermitian){ - C2F(zheev)( "N", "U", &rows, inCopy, &rows, outReal, pdblWork, &iWorkSize, outImag, &INFO ); - dzerosa(outImag,1,rows); - for (i=0;i<rows;i++) out[i]=DoubleComplex(outReal[i],outImag[i]); - } - else { - C2F(zgeev)( "N", "N", &rows, inCopy, &rows, out, - pdblLeftvectors, &rows, pdblRightvectors, &rows, pdblWork, &iWorkSize, - pdblRWork, &INFO ); - } - - - - free(inCopy); - free(outReal); - free(outImag); - free(pdblWork); - free(pdblRWork); - free(pdblLeftvectors); - free(pdblRightvectors); -} diff --git a/2.3-1/src/c/matrixOperations/spec2/Makefile.am b/2.3-1/src/c/matrixOperations/spec2/Makefile.am deleted file mode 100644 index 5a357fa5..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/Makefile.am +++ /dev/null @@ -1,70 +0,0 @@ -## -## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET -## -## 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 -## -## - -libSpec2_la_CFLAGS = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - - -instdir = $(top_builddir)/lib - -pkglib_LTLIBRARIES = libSpec2.la - -HEAD = ../includes/spec.h - -libSpec2_la_SOURCES = $(HEAD) \ - sspec2a.c \ - dspec2a.c \ - cspec2a.c \ - zspec2a.c - - -############ -## CHECK -############ - - -check_PROGRAMS = testDoubleSpec2 testFloatSpec2 - -check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ - $(top_builddir)/src/c/type/libFloatComplex.la \ - $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ - $(top_builddir)/src/fortran/lapack/libscilapack.la \ - $(top_builddir)/src/fortran/blas/libsciblas.la \ - $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ - $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ - $(top_builddir)/src/c/auxiliaryFunctions/sign/libSign.la \ - $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ - $(top_builddir)/src/c/operations/addition/libAddition.la \ - $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ - $(top_builddir)/src/c/matrixOperations/inversion/libMatrixInversion.la\ - $(top_builddir)/src/c/matrixOperations/zeros/libMatrixZeros.la\ - libSpec2.la - -check_INCLUDES = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - -testDoubleSpec2_SOURCES = testDoubleSpec2.c -testDoubleSpec2_LDADD = $(check_LDADD) -testDoubleSpec2_CFLAGS = $(check_INCLUDES) - -testFloatSpec2_SOURCES = testFloatSpec2.c -testFloatSpec2_LDADD = $(check_LDADD) -testFloatSpec2_CFLAGS = $(check_INCLUDES) - -TESTS = testDoubleSpec2 testFloatSpec2 - diff --git a/2.3-1/src/c/matrixOperations/spec2/Makefile.in b/2.3-1/src/c/matrixOperations/spec2/Makefile.in deleted file mode 100644 index 6e46c059..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/Makefile.in +++ /dev/null @@ -1,757 +0,0 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -check_PROGRAMS = testDoubleSpec2$(EXEEXT) testFloatSpec2$(EXEEXT) -TESTS = testDoubleSpec2$(EXEEXT) testFloatSpec2$(EXEEXT) -subdir = src/c/matrixOperations/spec2 -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/includes/machine.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__installdirs = "$(DESTDIR)$(pkglibdir)" -LTLIBRARIES = $(pkglib_LTLIBRARIES) -libSpec2_la_LIBADD = -am__objects_1 = -am_libSpec2_la_OBJECTS = $(am__objects_1) libSpec2_la-sspec2a.lo \ - libSpec2_la-dspec2a.lo libSpec2_la-cspec2a.lo \ - libSpec2_la-zspec2a.lo -libSpec2_la_OBJECTS = $(am_libSpec2_la_OBJECTS) -libSpec2_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libSpec2_la_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_testDoubleSpec2_OBJECTS = \ - testDoubleSpec2-testDoubleSpec2.$(OBJEXT) -testDoubleSpec2_OBJECTS = $(am_testDoubleSpec2_OBJECTS) -testDoubleSpec2_DEPENDENCIES = $(check_LDADD) -testDoubleSpec2_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleSpec2_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_testFloatSpec2_OBJECTS = testFloatSpec2-testFloatSpec2.$(OBJEXT) -testFloatSpec2_OBJECTS = $(am_testFloatSpec2_OBJECTS) -testFloatSpec2_DEPENDENCIES = $(check_LDADD) -testFloatSpec2_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatSpec2_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes -depcomp = $(SHELL) $(top_srcdir)/config/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -SOURCES = $(libSpec2_la_SOURCES) $(testDoubleSpec2_SOURCES) \ - $(testFloatSpec2_SOURCES) -DIST_SOURCES = $(libSpec2_la_SOURCES) $(testDoubleSpec2_SOURCES) \ - $(testFloatSpec2_SOURCES) -ETAGS = etags -CTAGS = ctags -am__tty_colors = \ -red=; grn=; lgn=; blu=; std= -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AR = @AR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -F77 = @F77@ -FFLAGS = @FFLAGS@ -FGREP = @FGREP@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBMATH = @LIBMATH@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -ac_ct_F77 = @ac_ct_F77@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -libSpec2_la_CFLAGS = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - -instdir = $(top_builddir)/lib -pkglib_LTLIBRARIES = libSpec2.la -HEAD = ../includes/spec.h -libSpec2_la_SOURCES = $(HEAD) \ - sspec2a.c \ - dspec2a.c \ - cspec2a.c \ - zspec2a.c - -check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ - $(top_builddir)/src/c/type/libFloatComplex.la \ - $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ - $(top_builddir)/src/fortran/lapack/libscilapack.la \ - $(top_builddir)/src/fortran/blas/libsciblas.la \ - $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ - $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ - $(top_builddir)/src/c/auxiliaryFunctions/sign/libSign.la \ - $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ - $(top_builddir)/src/c/operations/addition/libAddition.la \ - $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ - $(top_builddir)/src/c/matrixOperations/inversion/libMatrixInversion.la\ - $(top_builddir)/src/c/matrixOperations/zeros/libMatrixZeros.la\ - libSpec2.la - -check_INCLUDES = -I $(top_builddir)/src/c/type \ - -I $(top_builddir)/src/c/matrixOperations/includes \ - -I $(top_builddir)/src/c/operations/includes \ - -I $(top_builddir)/src/c/elementaryFunctions/includes\ - -I $(top_builddir)/src/c/auxiliaryFunctions/includes - -testDoubleSpec2_SOURCES = testDoubleSpec2.c -testDoubleSpec2_LDADD = $(check_LDADD) -testDoubleSpec2_CFLAGS = $(check_INCLUDES) -testFloatSpec2_SOURCES = testFloatSpec2.c -testFloatSpec2_LDADD = $(check_LDADD) -testFloatSpec2_CFLAGS = $(check_INCLUDES) -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/matrixOperations/spec2/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign src/c/matrixOperations/spec2/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) - @$(NORMAL_INSTALL) - test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" - @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ - } - -uninstall-pkglibLTLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ - done - -clean-pkglibLTLIBRARIES: - -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) - @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" != "$$p" || dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done -libSpec2.la: $(libSpec2_la_OBJECTS) $(libSpec2_la_DEPENDENCIES) - $(libSpec2_la_LINK) -rpath $(pkglibdir) $(libSpec2_la_OBJECTS) $(libSpec2_la_LIBADD) $(LIBS) - -clean-checkPROGRAMS: - @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list -testDoubleSpec2$(EXEEXT): $(testDoubleSpec2_OBJECTS) $(testDoubleSpec2_DEPENDENCIES) - @rm -f testDoubleSpec2$(EXEEXT) - $(testDoubleSpec2_LINK) $(testDoubleSpec2_OBJECTS) $(testDoubleSpec2_LDADD) $(LIBS) -testFloatSpec2$(EXEEXT): $(testFloatSpec2_OBJECTS) $(testFloatSpec2_DEPENDENCIES) - @rm -f testFloatSpec2$(EXEEXT) - $(testFloatSpec2_LINK) $(testFloatSpec2_OBJECTS) $(testFloatSpec2_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec2_la-cspec2a.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec2_la-dspec2a.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec2_la-sspec2a.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSpec2_la-zspec2a.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleSpec2-testDoubleSpec2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatSpec2-testFloatSpec2.Po@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(COMPILE) -c $< - -.c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< - -libSpec2_la-sspec2a.lo: sspec2a.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -MT libSpec2_la-sspec2a.lo -MD -MP -MF $(DEPDIR)/libSpec2_la-sspec2a.Tpo -c -o libSpec2_la-sspec2a.lo `test -f 'sspec2a.c' || echo '$(srcdir)/'`sspec2a.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec2_la-sspec2a.Tpo $(DEPDIR)/libSpec2_la-sspec2a.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='sspec2a.c' object='libSpec2_la-sspec2a.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -c -o libSpec2_la-sspec2a.lo `test -f 'sspec2a.c' || echo '$(srcdir)/'`sspec2a.c - -libSpec2_la-dspec2a.lo: dspec2a.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -MT libSpec2_la-dspec2a.lo -MD -MP -MF $(DEPDIR)/libSpec2_la-dspec2a.Tpo -c -o libSpec2_la-dspec2a.lo `test -f 'dspec2a.c' || echo '$(srcdir)/'`dspec2a.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec2_la-dspec2a.Tpo $(DEPDIR)/libSpec2_la-dspec2a.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dspec2a.c' object='libSpec2_la-dspec2a.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -c -o libSpec2_la-dspec2a.lo `test -f 'dspec2a.c' || echo '$(srcdir)/'`dspec2a.c - -libSpec2_la-cspec2a.lo: cspec2a.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -MT libSpec2_la-cspec2a.lo -MD -MP -MF $(DEPDIR)/libSpec2_la-cspec2a.Tpo -c -o libSpec2_la-cspec2a.lo `test -f 'cspec2a.c' || echo '$(srcdir)/'`cspec2a.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec2_la-cspec2a.Tpo $(DEPDIR)/libSpec2_la-cspec2a.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cspec2a.c' object='libSpec2_la-cspec2a.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -c -o libSpec2_la-cspec2a.lo `test -f 'cspec2a.c' || echo '$(srcdir)/'`cspec2a.c - -libSpec2_la-zspec2a.lo: zspec2a.c -@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -MT libSpec2_la-zspec2a.lo -MD -MP -MF $(DEPDIR)/libSpec2_la-zspec2a.Tpo -c -o libSpec2_la-zspec2a.lo `test -f 'zspec2a.c' || echo '$(srcdir)/'`zspec2a.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSpec2_la-zspec2a.Tpo $(DEPDIR)/libSpec2_la-zspec2a.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zspec2a.c' object='libSpec2_la-zspec2a.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSpec2_la_CFLAGS) $(CFLAGS) -c -o libSpec2_la-zspec2a.lo `test -f 'zspec2a.c' || echo '$(srcdir)/'`zspec2a.c - -testDoubleSpec2-testDoubleSpec2.o: testDoubleSpec2.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec2_CFLAGS) $(CFLAGS) -MT testDoubleSpec2-testDoubleSpec2.o -MD -MP -MF $(DEPDIR)/testDoubleSpec2-testDoubleSpec2.Tpo -c -o testDoubleSpec2-testDoubleSpec2.o `test -f 'testDoubleSpec2.c' || echo '$(srcdir)/'`testDoubleSpec2.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleSpec2-testDoubleSpec2.Tpo $(DEPDIR)/testDoubleSpec2-testDoubleSpec2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleSpec2.c' object='testDoubleSpec2-testDoubleSpec2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec2_CFLAGS) $(CFLAGS) -c -o testDoubleSpec2-testDoubleSpec2.o `test -f 'testDoubleSpec2.c' || echo '$(srcdir)/'`testDoubleSpec2.c - -testDoubleSpec2-testDoubleSpec2.obj: testDoubleSpec2.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec2_CFLAGS) $(CFLAGS) -MT testDoubleSpec2-testDoubleSpec2.obj -MD -MP -MF $(DEPDIR)/testDoubleSpec2-testDoubleSpec2.Tpo -c -o testDoubleSpec2-testDoubleSpec2.obj `if test -f 'testDoubleSpec2.c'; then $(CYGPATH_W) 'testDoubleSpec2.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleSpec2.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleSpec2-testDoubleSpec2.Tpo $(DEPDIR)/testDoubleSpec2-testDoubleSpec2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleSpec2.c' object='testDoubleSpec2-testDoubleSpec2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSpec2_CFLAGS) $(CFLAGS) -c -o testDoubleSpec2-testDoubleSpec2.obj `if test -f 'testDoubleSpec2.c'; then $(CYGPATH_W) 'testDoubleSpec2.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleSpec2.c'; fi` - -testFloatSpec2-testFloatSpec2.o: testFloatSpec2.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec2_CFLAGS) $(CFLAGS) -MT testFloatSpec2-testFloatSpec2.o -MD -MP -MF $(DEPDIR)/testFloatSpec2-testFloatSpec2.Tpo -c -o testFloatSpec2-testFloatSpec2.o `test -f 'testFloatSpec2.c' || echo '$(srcdir)/'`testFloatSpec2.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatSpec2-testFloatSpec2.Tpo $(DEPDIR)/testFloatSpec2-testFloatSpec2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatSpec2.c' object='testFloatSpec2-testFloatSpec2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec2_CFLAGS) $(CFLAGS) -c -o testFloatSpec2-testFloatSpec2.o `test -f 'testFloatSpec2.c' || echo '$(srcdir)/'`testFloatSpec2.c - -testFloatSpec2-testFloatSpec2.obj: testFloatSpec2.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec2_CFLAGS) $(CFLAGS) -MT testFloatSpec2-testFloatSpec2.obj -MD -MP -MF $(DEPDIR)/testFloatSpec2-testFloatSpec2.Tpo -c -o testFloatSpec2-testFloatSpec2.obj `if test -f 'testFloatSpec2.c'; then $(CYGPATH_W) 'testFloatSpec2.c'; else $(CYGPATH_W) '$(srcdir)/testFloatSpec2.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatSpec2-testFloatSpec2.Tpo $(DEPDIR)/testFloatSpec2-testFloatSpec2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatSpec2.c' object='testFloatSpec2-testFloatSpec2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSpec2_CFLAGS) $(CFLAGS) -c -o testFloatSpec2-testFloatSpec2.obj `if test -f 'testFloatSpec2.c'; then $(CYGPATH_W) 'testFloatSpec2.c'; else $(CYGPATH_W) '$(srcdir)/testFloatSpec2.c'; fi` - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - set x; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -check-TESTS: $(TESTS) - @failed=0; all=0; xfail=0; xpass=0; skip=0; \ - srcdir=$(srcdir); export srcdir; \ - list=' $(TESTS) '; \ - $(am__tty_colors); \ - if test -n "$$list"; then \ - for tst in $$list; do \ - if test -f ./$$tst; then dir=./; \ - elif test -f $$tst; then dir=; \ - else dir="$(srcdir)/"; fi; \ - if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xpass=`expr $$xpass + 1`; \ - failed=`expr $$failed + 1`; \ - col=$$red; res=XPASS; \ - ;; \ - *) \ - col=$$grn; res=PASS; \ - ;; \ - esac; \ - elif test $$? -ne 77; then \ - all=`expr $$all + 1`; \ - case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$tst[\ \ ]*) \ - xfail=`expr $$xfail + 1`; \ - col=$$lgn; res=XFAIL; \ - ;; \ - *) \ - failed=`expr $$failed + 1`; \ - col=$$red; res=FAIL; \ - ;; \ - esac; \ - else \ - skip=`expr $$skip + 1`; \ - col=$$blu; res=SKIP; \ - fi; \ - echo "$${col}$$res$${std}: $$tst"; \ - done; \ - if test "$$all" -eq 1; then \ - tests="test"; \ - All=""; \ - else \ - tests="tests"; \ - All="All "; \ - fi; \ - if test "$$failed" -eq 0; then \ - if test "$$xfail" -eq 0; then \ - banner="$$All$$all $$tests passed"; \ - else \ - if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ - banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ - fi; \ - else \ - if test "$$xpass" -eq 0; then \ - banner="$$failed of $$all $$tests failed"; \ - else \ - if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ - banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ - fi; \ - fi; \ - dashes="$$banner"; \ - skipped=""; \ - if test "$$skip" -ne 0; then \ - if test "$$skip" -eq 1; then \ - skipped="($$skip test was not run)"; \ - else \ - skipped="($$skip tests were not run)"; \ - fi; \ - test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$skipped"; \ - fi; \ - report=""; \ - if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ - report="Please report to $(PACKAGE_BUGREPORT)"; \ - test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ - dashes="$$report"; \ - fi; \ - dashes=`echo "$$dashes" | sed s/./=/g`; \ - if test "$$failed" -eq 0; then \ - echo "$$grn$$dashes"; \ - else \ - echo "$$red$$dashes"; \ - fi; \ - echo "$$banner"; \ - test -z "$$skipped" || echo "$$skipped"; \ - test -z "$$report" || echo "$$report"; \ - echo "$$dashes$$std"; \ - test "$$failed" -eq 0; \ - else :; fi - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) - $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: check-am -all-am: Makefile $(LTLIBRARIES) -installdirs: - for dir in "$(DESTDIR)$(pkglibdir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ - clean-pkglibLTLIBRARIES mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: install-pkglibLTLIBRARIES - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-pkglibLTLIBRARIES - -.MAKE: check-am install-am install-strip - -.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ - clean-checkPROGRAMS clean-generic clean-libtool \ - clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ - distclean-generic distclean-libtool distclean-tags distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-pkglibLTLIBRARIES install-ps \ - install-ps-am install-strip installcheck installcheck-am \ - installdirs maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-pkglibLTLIBRARIES - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/2.3-1/src/c/matrixOperations/spec2/cspec2a.c b/2.3-1/src/c/matrixOperations/spec2/cspec2a.c deleted file mode 100644 index d3a4312f..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/cspec2a.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * 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 cspec2a(floatComplex* in, int rows, floatComplex* eigenvalues,floatComplex* eigenvectors){ - /* As we use Lapack to find the eigenvalues, we must cast the floatComplex input into doubleComplex - and the doubleComplex outputs of dspeca into floatComplex*/ - - int i; - doubleComplex* dblin; - doubleComplex* dbleigenvalues,*dbleigenvectors; - - dblin=(doubleComplex*)malloc((unsigned int)(rows*rows)*sizeof(doubleComplex)); - dbleigenvalues=(doubleComplex*)malloc((unsigned int)(rows*rows)*sizeof(doubleComplex)); - dbleigenvectors=(doubleComplex*)malloc((unsigned int)(rows*rows)*sizeof(doubleComplex)); - - for (i=0;i<rows*rows;i++) dblin[i]=DoubleComplex((double)creals(in[i]),(double)cimags(in[i])); - - zspec2a(dblin,rows,dbleigenvalues,dbleigenvectors); - - for (i=0;i<rows*rows;i++) eigenvalues[i]=FloatComplex((float)zreals(dbleigenvalues[i]),(float)zimags(dbleigenvalues[i])); - for (i=0;i<rows*rows;i++) eigenvectors[i]=FloatComplex((float)zreals(dbleigenvectors[i]),(float)zimags(dbleigenvectors[i])); -} diff --git a/2.3-1/src/c/matrixOperations/spec2/dspec2a.c b/2.3-1/src/c/matrixOperations/spec2/dspec2a.c deleted file mode 100644 index 98b2c5ad..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/dspec2a.c +++ /dev/null @@ -1,113 +0,0 @@ -/* - * 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" -#include "lapack.h" -#include "zeros.h" -#include "max.h" - -void dspec2a(double* in, int rows,double* eigenvalues,double* eigenvectors){ - int i=0, j=0, ij=0, ij1=0; - int symmetric=0; - int INFO=0; - int iWorkSize = 0; - double* pdblWork; - double* outReal; - double* outImag; - double* pdblLeftvectors; - double* pdblRightvectors; - double* inCopy; - - /* FIXME : malloc here */ - inCopy = (double*)malloc((unsigned int)(rows*rows) * sizeof(double)); - outReal = (double*)malloc((unsigned int)rows * sizeof(double)); - outImag = NULL; - pdblLeftvectors=NULL; - pdblRightvectors=NULL; - - - iWorkSize = 4*rows; - pdblWork = (double*)malloc((unsigned int)iWorkSize * sizeof(double)); - - for(i=0;i<rows*rows;i++) inCopy[i]=in[i]; - - - - /* look if the matrix is symmetric */ - for (i=0;i<rows;i++){ - for (j=0;j<rows;j++) - if (in[i*rows+j]!=in[i+j*rows]) break; - if (j!=rows) break; - - } - - /* the matrix is symmetric if the 2 loops goes to end i.e - i==rows and j==rows */ - if ((i==rows)&&(j==rows)) symmetric=1; - - /* apply lapack function according to symmetry */ - if(symmetric){ - C2F(dsyev)( "V", "U", &rows, inCopy, &rows, outReal, pdblWork, &iWorkSize, &INFO ); - - /* Computation of eigenvectors */ - for (i=0;i<rows*rows;i++) eigenvectors[i] = inCopy[i]; - } - else { - pdblRightvectors=(double*)malloc((unsigned int)(rows*rows) * sizeof(double)); - outImag = (double*)malloc((unsigned int)rows * sizeof(double)); - C2F(dgeev)( "N", "V", &rows, inCopy, &rows, outReal, outImag, - pdblLeftvectors, &rows, pdblRightvectors, &rows, pdblWork, &iWorkSize, &INFO ); - - /* Computation of eigenvectors */ - j=0; - while (j<rows) - { - if (outImag[j]==0) - { - for(i = 0 ; i < rows ; i++) - { - ij = i + j * rows; - eigenvectors[ij] = pdblRightvectors[ij]; - } - j = j + 1; - } - else - { - for(i = 0 ; i < rows ; i++) - { - ij = i + j * rows; - ij1 = i + (j + 1) * rows; - eigenvectors[ij] = pdblRightvectors[ij]; - eigenvectors[ij1] = pdblRightvectors[ij]; - } - j = j + 2; - } - } - } - - /* Computation of eigenvalues */ - dzerosa(eigenvalues,1,rows*rows); - for (i=0;i<rows;i++) eigenvalues[i+i*rows]=outReal[i]; - - - - - free(inCopy); - free(outReal); - free(outImag); - free(pdblLeftvectors); - free(pdblRightvectors); - free(pdblWork); - -} - diff --git a/2.3-1/src/c/matrixOperations/spec2/sspec2a.c b/2.3-1/src/c/matrixOperations/spec2/sspec2a.c deleted file mode 100644 index d3ab00d5..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/sspec2a.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * 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 sspec2a(float* in, int rows, float* eigenvalues,float* eigenvectors){ - /* As we use Lapack to find the eigenvalues, we must cast the float input into double - and the doubleComplex outputs of dspec2a into floatComplex*/ - - int i; - double* dblin; - double *dbleigenvalues,*dbleigenvectors; - - dblin=(double*)malloc((unsigned int)(rows*rows)*sizeof(double)); - dbleigenvalues = (double*)malloc((unsigned int)(rows*rows)*sizeof(double)); - dbleigenvectors = (double*)malloc((unsigned int)(rows*rows)*sizeof(double)); - - for (i=0;i<rows*rows;i++) dblin[i]=(double)in[i]; - - dspec2a(dblin,rows,dbleigenvalues,dbleigenvectors); - - for (i=0;i<rows*rows;i++) eigenvalues[i]=(float)dbleigenvalues[i]; - for (i=0;i<rows*rows;i++) eigenvectors[i]=(float)dbleigenvectors[i]; -} diff --git a/2.3-1/src/c/matrixOperations/spec2/testDoubleSpec2.c b/2.3-1/src/c/matrixOperations/spec2/testDoubleSpec2.c deleted file mode 100644 index a090f028..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/testDoubleSpec2.c +++ /dev/null @@ -1,261 +0,0 @@ -/* - * 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 "spec.h" -#include "stdio.h" -#include "assert.h" -#include "math.h" - -static void dspec2aTest(void){ - double in[4]={1,1,1,3}; - double resultValuesR[4]={0.5857864376269050765700,0,0,3.4142135623730949234300}; - double resultVectorsR[4]={- 0.9238795325112867384831,0.3826834323650897817792, - 0.3826834323650897817792,0.9238795325112867384831}; - - - double in2[4]={1,1,-2,3}; - double resultValues2R[4]={1.9999999999999997779554,0,0,1.9999999999999997779554}; - double resultVectors2R[4]={0.8164965809277261454824,- 0.4082482904638631282523, - 0.8164965809277261454824,- 0.4082482904638631282523}; - - double in3[9]={0,-1,0,1,0,0,0,0,0}; - double resultValues3R[9]={0}; - double resultVectors3R[9]={0.7071067811865474617150,0,0,0.7071067811865474617150,0,0,0,0,1}; - - - double out1[4],out2[4],out3[9],out4[9]; - - int i; - dspec2a(in3,3,out3,out4); - for(i=0;i<9;i++){ - if (out3[i]>1e-16) assert( fabs(out3[i]-resultValues3R[i]) / fabs(out3[i]) <3e-16); - else assert(1); - } - for(i=0;i<9;i++){ - if (out4[i]>1e-16) assert( fabs(out4[i]-resultVectors3R[i]) / fabs(out4[i]) <3e-16); - else assert(1); - } - - - dspec2a(in,2,out1,out2); - for(i=0;i<4;i++) printf("%f\n",out1[i]); - for(i=0;i<4;i++){ - if (out1[i]>1e-16) assert( fabs(out1[i]-resultValuesR[i]) / fabs(out1[i]) <3e-16); - else assert(1); - } - for(i=0;i<4;i++){ - if (out2[i]>1e-16) assert( fabs(out2[i]-resultVectorsR[i]) / fabs(out2[i]) <3e-16); - else assert(1); - } - - - dspec2a(in2,2,out1,out2); - - for(i=0;i<4;i++){ - if (out1[i]>1e-16) assert( fabs(out1[i]-resultValues2R[i]) / fabs(out1[i]) <1e-16); - else assert(1); - } - for(i=0;i<4;i++){ - if (out2[i]>1e-16) assert( fabs(out2[i]-resultVectors2R[i]) / fabs(out2[i]) <3e-16); - else assert(1); - } - -} - - - - -static void zspec2aTest(void){ - double inR[4]={1,1,1,3}; - double inI[4]={0,0,0,0}; - double resultValuesR[4]={0.5857864376269050765700,0,0,3.4142135623730949234300}; - double resultValuesI[4]={0,0,0,0}; - double resultVectorsR[4]={- 0.9238795325112867384831,0.3826834323650897817792, - 0.3826834323650897817792,0.9238795325112867384831}; - double resultVectorsI[4]={0,0,0,0}; - - double in2R[4]={1,1,-2,3}; - double in2I[4]={0,0,0,0}; - double resultValues2R[4]={1.9999999999999997779554,0,0,1.9999999999999997779554}; - double resultValues2I[4]={0.9999999999999997779554,0,0,-0.9999999999999997779554}; - double resultVectors2R[4]={0.8164965809277261454824,- 0.4082482904638631282523, - 0.8164965809277261454824,- 0.4082482904638631282523}; - double resultVectors2I[4]={0,- 0.4082482904638629062077,0,0.4082482904638629062077}; - - - double in3R[16]={ 0.4685934986919164657593, 0.4262020816095173358917, 0.4217656338587403297424, 0.1034853602759540081024 , - 0.4279759414494037628174, 0.7860729382373392581940, 0.8568082069978117942810, 0.1993437460623681545258 , - 0.7131301630288362503052, 0.5208952468819916248322, 0.9311723159626126289368, 0.4143836158327758312225, - 0.5980196148157119750977, 0.5549105503596365451813, 0.8552952585741877555847, 0.3097750707529485225678}; - double in3I[16]={0.9446128141134977340698, 0.2442680452950298786163, 0.8760446915403008460999, 0.4874215493910014629364, - 0.3844018988311290740967, 0.0922345430590212345123, 0.0705418726429343223572, 0.7338807261548936367035, - 0.7792180571705102920532, 0.7827638057060539722443, 0.2161567779257893562317, 0.3420197847299277782440, - 0.430093832314014434814 , 0.6261752569116652011871, 0.9554250938817858695984, 0.45415506651625037193 }; - double resultValues3R[16]={2.0556597713281337114211 , 0. , 0. , 0. , - 0. , - 0.3025728286579054682193 , 0. , 0. , - 0. , 0. , 0.1432776981289703988054 , 0. , - 0. , 0. , 0. , 0.59924918284561956571821}; - double resultValues3I[16]={2.0772175543447914947137 , 0. , 0. , 0. , - 0. , - 0.5223086999196728807959 , 0. , 0. , - 0. , 0. , 0.3871735516160564882782 , 0. , - 0. , 0. , 0. , - 0.2349232044266161556489 }; - double resultVectors3R[16]={ 0.5762578366606958546470 , 0.4529873647084416976583 , 0.5438116534400605495137 , 0.3599855200589946457868 , - - 0.3285074902800487195442, - 0.0923654569732548225147, 0.6473744750124794666846, - 0.1812302216765642182139 , - 0.7395301236826927748780, - 0.4588526195219964631811, 0.0997916953568371567496, - 0.3603263850824164338249 , - 0.0717862182160008133192, 0.6967198304315765922112, - 0.1153149977500917411355 , - 0.3232658081022470875077 }; - double resultVectors3I[16]={ 0. , - 0.1082260232744242933745, - 0.1403164362264210929254 , 0.0775054168635924967123 , - 0.0347047096401541868560, - 0.4780157518240965019984, 0. , 0.4493438228998393735303, - 0. , - 0.0484367977162360741072 , 0.0664282497469102783949 , - 0.3098340648435350952461 , - 0.1768623397230159322024, 0. , - 0.4621680558325051979551 , 0.3830799998945915163517}; - - - double in4R[49]={0.0292230211198329925537, 0.1069206790998578071594, 9.7463708464056253433228, 7.7042609406635165214539 , 6.3966313377022743225098, 9.5358861843124032020569, 4.1484833415597677230835, - 4.6615396952256560325623, 2.2384551353752613067627, 3.4569733263924717903137, 2.3406236339360475540161, 6.6193414805456995964050,2.6911795139312744140625,9.8302489006891846656799 , - 7.3933512251824140548706, 2.9021358629688620567322 , 3.9959496073424816131592 , 9.792278115637600421906 , 0.0755135808140039443970, 7.0210226578637957572937 , 8.9075061306357383728027 , - 6.5269742021337151527405 , 4.136228552088141441345 , 8.5816909139975905418396 , 2.3960896767675876617432 , 4.8200417729094624519348, 9.848585547879338264465 , 4.4697216479107737541199, - 2.3298137634992599487305, 2.2345139319077134132385, 8.0025654565542936325073, 7.7507343282923102378845, 4.8250066302716732025146, 7.8448831336572766304016 , 1.5346793178468942642212 , - 7.7228771103546023368835 , 8.9520217850804328918457, 9.4673257926478981971741, 6.9818257447332143783569, 9.5591608202084898948669, 0.4840173013508319854736, 5.3235206427052617073059, - 2.9468670953065156936646, 6.9771366892382502555847 , 9.3762038648128509521484 , 1.0755608463659882545471 , 7.7634243946522474288940, 6.3734178384765982627869 , 0.6630615703761577606201 }; - double in4I[49]={8.1694598542526364326477, 3.5473910067230463027954, 5.860544512979686260223, 3.4610254690051078796387, 4.4247510144487023353577, 8.8226650562137365341187, 7.6436930662021040916443 , - 7.764139864593744277954, 2.8076809318736195564270, 6.9086006004363298416138, 7.1747286943718791007996, 3.7201813608407974243164 , 9.3254965776577591896057, 2.2566775511950254440308, - 7.5211019208654761314392 , 3.0747506581246852874756 , 5.9793261485174298286438, 1.9238903466612100601196, 2.3870888305827975273132 , 7.4708331003785133361816, 9.7131536761298775672913, - 4.3703553732484579086304, 6.2248750543221831321716, 3.2913279719650745391846, 3.2963873865082859992981, 2.7686371374875307083130 , 4.8729835031554102897644, 7.7320465445518493652344 , - 9.0775218093767762184143, 5.0122931879013776779175, 5.1595458528026938438416, 5.79267887398600578308 , 1.5463936375454068183899 , 7.6111377868801355361938, 6.9079177780076861381531 , - 2.8732293471693992614746, 9.64253133628517389297 , 5.6607243325561285018921, 5.7821379369124770164490, 2.6634209789335727691650 , 4.7470985027030110359192, 6.0735465306788682937622, - 0.4097307054325938224793, 5.0125684589147567749023 , 5.2959309751167893409729, 6.2594583164900541305542, 2.2193526616320013999939 , 3.467419948428869247437, 3.9511676924303174018860 }; - double resultValues4R[49]={39.018457752476393807228 ,0,0,0,0,0,0, - 0,2.2455352415739073812517,0,0,0,0,0, - 0,0,- 8.4848591657394489828903,0,0,0,0, - 0,0,0,- 9.617033196016185669919,0,0,0, - 0,0,0,0,- 3.7815852014367528077798,0,0, - 0,0,0,0,0,- 4.44858427601393291440,0, - 0,0,0,0,0,0,- 0.3001282122401837670900}; - double resultValues4I[49]={36.525725390582877594170,0,0,0,0,0,0, - 0,- 5.9058762755733944516123,0,0,0,0,0, - 0,0,- 3.5959527108686115681735,0,0,0,0, - 0,0,0,1.8928051444081777088257,0,0,0, - 0,0,0,0,- 3.1889864758923365251064,0,0, - 0,0,0,0,0,3.2418188738592150777151,0, - 0,0,0,0,0,0,1.5279802073147508156836}; - - double resultVectors4R[49]={ 0.3499995148567048852684, 0.3131141942665225941234, 0.4518966551544936205431, 0.3429358568207974133912, 0.3073919828504245721490, 0.4236868694783915145763, 0.3928739146959387973368 , - 0.2654822689469810148566 , - 0.3607918093136298631762, 0.0473515544359270068586 , 0.5097969509656486986060 , -0.3771134435310480315096 , 0.2011534205484152293408, - 0.4415200724898113993078, - 0.5454886553461798515130, - 0.2173248800239625522224, - 0.2171708216301463378883 , - 0.2460117034233289534662 , -0.3694743444265859433351 , 0.3601018742104445391483, 0.1530612374027510713681, - 0.6385835932752577104310, - 0.0013906755423099548263, - 0.3368505708673739662551 , 0.1394203608831885433 , -0.2292783363046769218308 , -0.2740379414191142504187, 0.1926279946047058377889 , - - 0.6106238336849327819067, 0.0128604884735820379493, 0.2248434453925002574071, - 0.0955950290268089419854 , 0.6322383898844411431739 , - 0.1362122761803175874373, - 0.0030545591332723984190, - 0.5431360047322275619308, 0.1304324282476526930541, - 0.3713242513274904177401, - 0.2693820083406764376299 , - 0.1431429883314006001882 , 0.0533021313694299267438, 0.0071247423818797811501 , - - 0.156705245229635081738, 0.0034676864415526253982 , - 0.3351413975178426096768 , 0.2927797449896782921996 , 0.5714932440406852443005 , 0.0738366305178744797288, - 0.4509415569247051669422 }; - double resultVectors4I[49]={ 0.0720991445669864616796 , 0.0844739028302603361942 , 0. , 0.0173431366502564965337, -0.0428710162141596462515, 0.0695226101295536302871, 0.0999385617869267273150, - 0.2510960793336660668018 , - 0.1123901435582568414384, 0.0091069807153507792430, 0. , - 0.2545493692188907641771, 0.1149714203529902251111, 0.0762796210842419941667, - 0. , 0.0611827470444509316505, 0.2295643426501567385678, - 0.2950878328821502361024, 0.198556748820033573955, 0.0646801132828138114483, - 0.2660572521172601678785, - 0. , 0.2688905463703794573860, 0.2230635356255223633593 , - 0.2013432448241845862391, - 0.0386922946770884290668, 0.0358963301038670995480, - 0.3593711366897305303780 , - - 0.1386717901043315326337, 0.0600994116374372472356, - 0.1167558596038882207102 , 0.317965599565130263571, 0. , -0.0642522754144960878131, - 0.0853665514099945371695, - 0. , 0.2715431731544318272320, - 0.1184277560110737481658 , 0.3655618467608299226868, - 0.4598766797780974302512 , 0.0188698345957667955319, - 0.1446429340244405892246, - 0.346095581161616094867 , 0.0750882555805542639682, - 0.2494867985551498246188, - 0.2328934592128872882455, 0. , -0.0047307828167728396829, - 0.0078254955461786041004}; - - - - - doubleComplex *in,*in2,*in3,*in4,out1[4],out2[4],out3[16],out4[16],out5[49],out6[49]; - - int i; - - in=DoubleComplexMatrix(inR,inI,4); - in2=DoubleComplexMatrix(in2R,in2I,4); - in3=DoubleComplexMatrix(in3R,in3I,16); - in4=DoubleComplexMatrix(in4R,in4I,49); - zspec2a(in,2,out1,out2); - - - for(i=0;i<4;i++){ - if (zreals(out1[i])>1e-16) assert( fabs(zreals(out1[i])-resultValuesR[i]) / fabs(zreals(out1[i])) <3e-16); - else assert(1); - if (zimags(out1[i])>1e-16) assert( fabs(zimags(out1[i])-resultValuesI[i]) / fabs(zimags(out1[i])) <1e-16); - else assert(1); - } - - for(i=0;i<4;i++){ - if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-resultVectorsR[i]) / fabs(zreals(out2[i])) <3e-16); - else assert(1); - if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-resultVectorsI[i]) / fabs(zimags(out2[i])) <1e-16); - else assert(1); - } - - - zspec2a(in2,2,out1,out2); - for(i=0;i<4;i++){ - if (zreals(out1[i])>1e-16) assert( fabs(zreals(out1[i])-resultValues2R[i]) / fabs(zreals(out1[i])) <3e-16); - else assert(1); - if (zimags(out1[i])>1e-16) assert( fabs(zimags(out1[i])-resultValues2I[i]) / fabs(zimags(out1[i])) <3e-15); - else assert(1); - } - - for(i=0;i<4;i++){ - if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-resultVectors2R[i]) / fabs(zreals(out2[i])) <3e-16); - else assert(1); - if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-resultVectors2I[i]) / fabs(zimags(out2[i])) <3e-15); - else assert(1); - } - - - - zspec2a(in3,4,out3,out4); - for(i=0;i<16;i++){ - if (zreals(out3[i])>1e-16) assert( fabs(zreals(out3[i])-resultValues3R[i]) / fabs(zreals(out3[i])) <3e-15); - else assert(1); - if (zimags(out3[i])>1e-16) assert( fabs(zimags(out3[i])-resultValues3I[i]) / fabs(zimags(out3[i])) <3e-15); - else assert(1); - } - for(i=0;i<16;i++){ - if (zreals(out4[i])>1e-16) assert( fabs(zreals(out4[i])-resultVectors3R[i]) / fabs(zreals(out4[i])) <3e-15); - else assert(1); - if (zimags(out4[i])>1e-16) assert( fabs(zimags(out4[i])-resultVectors3I[i]) / fabs(zimags(out4[i])) <3e-14); - else assert(1); - } - - /* FIXME : assert : 3e-16 maybe du to little values like 0.001... */ - zspec2a(in4,7,out5,out6); - - for(i=0;i<49;i++){ - if (zreals(out5[i])>1e-16) assert( fabs(zreals(out5[i])-resultValues4R[i]) / fabs(zreals(out5[i])) <3e-15); - else assert(1); - if (zimags(out5[i])>1e-16) assert( fabs(zimags(out5[i])-resultValues4I[i]) / fabs(zimags(out5[i])) <3e-14); - else assert(1); - } - for(i=0;i<49;i++){ - if (zreals(out6[i])>1e-16) assert( fabs(zreals(out6[i])-resultVectors4R[i]) / fabs(zreals(out6[i])) <3e-14); - else assert(1); - if (zimags(out6[i])>1e-16) assert( fabs(zimags(out6[i])-resultVectors4I[i]) / fabs(zimags(out6[i])) <3e-13); - else assert(1); - } - - - -} - - -static int testSpec2(void){ - printf(">>> Double Spec2 Tests <<<\n"); - printf(">>> Double <<<\n"); - dspec2aTest(); - printf(">>> DoubleComplex <<<\n"); - zspec2aTest(); - return 0; -} - - -int main(void){ - assert (testSpec2()==0); - - - return 0; -} diff --git a/2.3-1/src/c/matrixOperations/spec2/testFloatSpec2.c b/2.3-1/src/c/matrixOperations/spec2/testFloatSpec2.c deleted file mode 100644 index fb2bc255..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/testFloatSpec2.c +++ /dev/null @@ -1,134 +0,0 @@ -/* - * 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 "spec.h" -#include "stdio.h" -#include "assert.h" -#include "math.h" - -static void sspec2aTest(void){ - float in[4]={1.0f,1.0f,1.0f,3.0f}; - float resultValuesR[4]={0.5857864376269050765700f,0,0,3.4142135623730949234300f}; - float resultVectorsR[4]={- 0.9238795325112867384831f,0.3826834323650897817792f, - 0.3826834323650897817792f,0.9238795325112867384831f}; - - float in2[4]={1.0f,1.0f,-2.0f,3.0f}; - float resultValues2R[4]={1.9999999999999997779554f,0,0,1.9999999999999997779554f}; - float resultVectors2R[4]={0.8164965809277261454824f,- 0.4082482904638631282523f, - 0.8164965809277261454824f,- 0.4082482904638631282523f}; - float eigenvalues[4],eigenvectors[4]; - - int i; - - sspec2a(in,2,eigenvalues,eigenvectors); - - for(i=0;i<4;i++){ - if (eigenvalues[i]>1e-6) assert( fabs(eigenvalues[i]-resultValuesR[i]) / fabs(eigenvalues[i]) <1e-16); - else assert(1); - } - for(i=0;i<4;i++){ - if (eigenvectors[i]>1e-6) assert( fabs(eigenvectors[i]-resultVectorsR[i]) / fabs(eigenvectors[i]) <1e-16); - else assert(1); - } - - - sspec2a(in2,2,eigenvalues,eigenvectors); - - - - for(i=0;i<4;i++){ - if (eigenvalues[i]>1e-6) assert( fabs(eigenvalues[i]-resultValues2R[i]) / fabs(eigenvalues[i]) <1e-16); - else assert(1); - } - for(i=0;i<4;i++){ - if (eigenvectors[i]>1e-6) assert( fabs(eigenvectors[i]-resultVectors2R[i]) / fabs(eigenvectors[i]) <1e-16); - else assert(1); - } -} - - - - -static void cspec2aTest(void){ - float inR[4]={1.0f,1.0f,1.0f,3.0f}; - float inI[4]={0.0f,0.0f,0.0f,0.0f}; - float resultValuesR[4]={0.5857864376269050765700f,0,0,3.4142135623730949234300f}; - float resultValuesI[4]={0,0,0,0}; - float resultVectorsR[4]={- 0.9238795325112867384831f,0.3826834323650897817792f, - 0.3826834323650897817792f,0.9238795325112867384831f}; - float resultVectorsI[4]={0,0,0,0}; - - float in2R[4]={1.0f,1.0f,-2.0f,3.0f}; - float in2I[4]={0.0f,0.0f,0.0f,0.0f}; - float resultValues2R[4]={1.9999999999999997779554f,0,0,1.9999999999999997779554f}; - float resultValues2I[4]={0.9999999999999997779554f,0,0,-0.9999999999999997779554f}; - float resultVectors2R[4]={0.8164965809277261454824f,- 0.4082482904638631282523f, - 0.8164965809277261454824f,- 0.4082482904638631282523f}; - float resultVectors2I[4]={0,- 0.4082482904638629062077f,0,0.4082482904638629062077f}; - - floatComplex *in,*in2,out1[4],out2[4]; - - int i; - - in=FloatComplexMatrix(inR,inI,4); - in2=FloatComplexMatrix(in2R,in2I,4); - - cspec2a(in,2,out1,out2); - for(i=0;i<4;i++){ - if (creals(out1[i])>1e-16) assert( fabs(creals(out1[i])-resultValuesR[i]) / fabs(creals(out1[i])) <1e-15); - else assert(1); - if (cimags(out1[i])>1e-16) assert( fabs(cimags(out1[i])-resultValuesI[i]) / fabs(cimags(out1[i])) <1e-16); - else assert(1); - } - for(i=0;i<4;i++){ - if (creals(out2[i])>1e-16) assert( fabs(creals(out2[i])-resultVectorsR[i]) / fabs(creals(out2[i])) <1e-15); - else assert(1); - if (cimags(out2[i])>1e-16) assert( fabs(cimags(out2[i])-resultVectorsI[i]) / fabs(cimags(out2[i])) <1e-16); - else assert(1); - } - - - cspec2a(in2,2,out1,out2); - for(i=0;i<4;i++){ - if (creals(out1[i])>1e-16) assert( fabs(creals(out1[i])-resultValues2R[i]) / fabs(creals(out1[i])) <1e-15); - else assert(1); - if (cimags(out1[i])>1e-16) assert( fabs(cimags(out1[i])-resultValues2I[i]) / fabs(cimags(out1[i])) <1e-15); - else assert(1); - } - for(i=0;i<4;i++){ - if (creals(out2[i])>1e-16) assert( fabs(creals(out2[i])-resultVectors2R[i]) / fabs(creals(out2[i])) <1e-15); - else assert(1); - if (cimags(out2[i])>1e-16) assert( fabs(cimags(out2[i])-resultVectors2I[i]) / fabs(cimags(out2[i])) <1e-16); - else assert(1); - } -} - - - - -static int testSpec2(void){ - printf(">>> Float Spec2 Tests <<<\n"); - printf(">>> Float <<<\n"); - sspec2aTest(); - printf(">>> FloatComplex <<<\n"); - cspec2aTest(); - return 0; -} - - -int main(void){ - assert (testSpec2()==0); - - - return 0; -} diff --git a/2.3-1/src/c/matrixOperations/spec2/test_DoubleSpec2/testDoubleSpec2.vcxproj b/2.3-1/src/c/matrixOperations/spec2/test_DoubleSpec2/testDoubleSpec2.vcxproj deleted file mode 100644 index 7c36943b..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/test_DoubleSpec2/testDoubleSpec2.vcxproj +++ /dev/null @@ -1,178 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{FD0A4495-C372-41EF-B8EF-0A0939DA6C1E}</ProjectGuid>
- <RootNamespace>testDoubleSpec2</RootNamespace>
- <Keyword>Win32Proj</Keyword>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\testDoubleSpec2.c">
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\..\type\type.vcxproj">
- <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- <ProjectReference Include="..\..\matrixOperations.vcxproj">
- <Project>{fd335544-52bf-4736-a34e-77f591d158d5}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec2/test_DoubleSpec2/testDoubleSpec2.vcxproj.filters b/2.3-1/src/c/matrixOperations/spec2/test_DoubleSpec2/testDoubleSpec2.vcxproj.filters deleted file mode 100644 index 04f409dc..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/test_DoubleSpec2/testDoubleSpec2.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup>
- <Filter Include="Source Files">
- <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
- <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
- </Filter>
- <Filter Include="Header Files">
- <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
- <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
- </Filter>
- <Filter Include="Resource Files">
- <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
- <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
- </Filter>
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\testDoubleSpec2.c">
- <Filter>Source Files</Filter>
- </ClCompile>
- </ItemGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec2/test_FloatSpec2/testFloatSpec2.vcxproj b/2.3-1/src/c/matrixOperations/spec2/test_FloatSpec2/testFloatSpec2.vcxproj deleted file mode 100644 index f4154eb1..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/test_FloatSpec2/testFloatSpec2.vcxproj +++ /dev/null @@ -1,178 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{E20D0BC2-B28A-412C-9715-5B93B319A4A3}</ProjectGuid>
- <RootNamespace>testFloatSpec2</RootNamespace>
- <Keyword>Win32Proj</Keyword>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>../../../includes;../../../type;../../includes;../../../operations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\testFloatSpec2.c">
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
- <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\..\type\type.vcxproj">
- <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- <ProjectReference Include="..\..\matrixOperations.vcxproj">
- <Project>{fd335544-52bf-4736-a34e-77f591d158d5}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec2/test_FloatSpec2/testFloatSpec2.vcxproj.filters b/2.3-1/src/c/matrixOperations/spec2/test_FloatSpec2/testFloatSpec2.vcxproj.filters deleted file mode 100644 index 0c38d2f2..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/test_FloatSpec2/testFloatSpec2.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup>
- <Filter Include="Source Files">
- <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
- <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
- </Filter>
- <Filter Include="Header Files">
- <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
- <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
- </Filter>
- <Filter Include="Resource Files">
- <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
- <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
- </Filter>
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\testFloatSpec2.c">
- <Filter>Source Files</Filter>
- </ClCompile>
- </ItemGroup>
-</Project>
\ No newline at end of file diff --git a/2.3-1/src/c/matrixOperations/spec2/zspec2a.c b/2.3-1/src/c/matrixOperations/spec2/zspec2a.c deleted file mode 100644 index e33ed897..00000000 --- a/2.3-1/src/c/matrixOperations/spec2/zspec2a.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * 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" -#include "lapack.h" -#include "zeros.h" -#include "stdio.h" -#include "conj.h" - -void zspec2a(doubleComplex* in, int rows,doubleComplex* eigenvalues, doubleComplex* eigenvectors){ - int i = 0, j = 0; - int hermitian = 0; - int INFO = 0; - int iWorkSize = 0; - doubleComplex* pdblWork; - doubleComplex* pdblLeftvectors; - doubleComplex* pdblRightvectors; - doubleComplex* pdblRWork; - double* pdblRWork2; - double* outReal; - double* outImag; - doubleComplex* inCopy; - - inCopy = (doubleComplex*)malloc((unsigned int)(rows*rows) * sizeof(doubleComplex)); - outReal = (double*)malloc((unsigned int)rows * sizeof(double)); - outImag = (double*)malloc((unsigned int)rows * sizeof(double)); - pdblLeftvectors=NULL; - pdblRightvectors=NULL; - - iWorkSize = 2*rows; - pdblWork = (doubleComplex*)malloc((unsigned int)iWorkSize * sizeof(doubleComplex)); - pdblRWork = NULL; - pdblRWork2 = NULL; - - for(i=0;i<rows*rows;i++) { - inCopy[i]=DoubleComplex(zreals(in[i]),zimags(in[i])); - eigenvectors[i]=DoubleComplex(zreals(in[i]),zimags(in[i])); - } - zzerosa(eigenvalues,1,rows*rows); - - - /* look if the matrix is symmetric */ - for (i=0;i<rows;i++){ - for (j=0;j<rows;j++) - if ( (zreals(in[i*rows+j])!=zreals(zconjs(in[i+j*rows]))) || - (zimags(in[i*rows+j])!=zimags(zconjs(in[i+j*rows]))) ) - break; - if (j!=rows) break; - } - - - /* the matrix is symmetric if the 2 loops goes to end i.e - i==rows and j==rows */ - if ((i==rows)&&(j==rows)) hermitian=1; - - - /* apply lapack function according to symmetry */ - if(hermitian){ - pdblRWork2 = (double*)malloc((unsigned int)(3*rows) * sizeof(double)); - C2F(zheev)( "V", "U", &rows, eigenvectors, &rows, outReal, pdblWork, &iWorkSize, pdblRWork2, &INFO ); - dzerosa(outImag,1,rows); - for (i=0;i<rows;i++) eigenvalues[i+i*rows]=DoubleComplex(outReal[i],outImag[i]); - } - else { - pdblRWork = (doubleComplex*)malloc((unsigned int)(3*rows) * sizeof(doubleComplex)); - C2F(zgeev)( "N", "V", &rows, inCopy, &rows, eigenvalues, - pdblLeftvectors, &rows, eigenvectors, &rows, pdblWork, &iWorkSize, - pdblRWork, &INFO ); - for (i=1;i<rows;i++) { - eigenvalues[i+i*rows]=DoubleComplex(zreals(eigenvalues[i]),zimags(eigenvalues[i])); - eigenvalues[i]=DoubleComplex(0,0); - } - } - - - - - free(inCopy); - free(outReal); - free(outImag); - free(pdblWork); - free(pdblRWork); - free(pdblRWork2); - free(pdblLeftvectors); - free(pdblRightvectors); -} diff --git a/2.3-1/src/c/matrixOperations/toeplitz/ctoeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/ctoeplitza.c new file mode 100644 index 00000000..56c3ef84 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/ctoeplitza.c @@ -0,0 +1,36 @@ +#include <stdio.h> +#include "toeplitz.h" +#include "floatComplex.h" +#include "stdlib.h" +#include "string.h" +#include "cat.h" + +/*Function to build a Toeplitz Matrix for inputs of SingleComplex datatype*/ + +void ctoeplitza(floatComplex* inp1,int size1,floatComplex* inp2,int size2,floatComplex* oup) +{ + if ((creals(inp1[0])!=creals(inp2[0]))&&(cimags(inp1[0])!=cimags(inp2[0]))) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = FloatComplex(0,0); // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (creals(oup[i]) == 0 && cimags(oup[i]) == 0) + oup[i] = oup[i-size2-1]; + } +} + + diff --git a/2.3-1/src/c/matrixOperations/toeplitz/dtoeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/dtoeplitza.c new file mode 100644 index 00000000..ef075a9a --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/dtoeplitza.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include "toeplitz.h" + + +/*Function to build a Toeplitz Matrix for inputs of Double datatype*/ + + +void dtoeplitza(double* inp1,int size1,double* inp2,int size2,double* oup) +{ + if (inp1[0]!=inp2[0]) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (oup[i] == 0) + oup[i] = oup[i-size2-1]; + } +} + diff --git a/2.3-1/src/c/matrixOperations/toeplitz/gtoeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/gtoeplitza.c new file mode 100644 index 00000000..c852f92f --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/gtoeplitza.c @@ -0,0 +1,35 @@ +#include <stdio.h> +#include "toeplitz.h" + + +/*Function to build a Toeplitz Matrix for inputs of Character datatype*/ + + +void gtoeplitza(char* inp1,int size1,char* inp2,int size2,char* oup) +{ + if (inp1[0]!=inp2[0]) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (oup[i] == 0) + oup[i] = oup[i-size2-1]; + } + +} + + diff --git a/2.3-1/src/c/matrixOperations/toeplitz/i16toeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/i16toeplitza.c new file mode 100644 index 00000000..945f626e --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/i16toeplitza.c @@ -0,0 +1,32 @@ +#include <stdio.h> +#include "toeplitz.h" +#include "int16.h" + +/*Function to build a Toeplitz Matrix for inputs of Signed Int16 datatype*/ + + +void i16toeplitza(int16* inp1,int size1,int16* inp2,int size2,int16* oup) +{ + if (inp1[0]!=inp2[0]) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (oup[i] == 0) + oup[i] = oup[i-size2-1]; + } +} diff --git a/2.3-1/src/c/matrixOperations/toeplitz/i8toeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/i8toeplitza.c new file mode 100644 index 00000000..5075cc13 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/i8toeplitza.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include "toeplitz.h" +#include "int8.h" + + +/*Function to build a Toeplitz Matrix for inputs of Signed Int8 datatype*/ + + +void i8toeplitza(int8* inp1,int size1,int8* inp2,int size2,int8* oup) +{ + if (inp1[0]!=inp2[0]) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (oup[i] == 0) + oup[i] = oup[i-size2-1]; + } +} diff --git a/2.3-1/src/c/matrixOperations/toeplitz/stoeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/stoeplitza.c new file mode 100644 index 00000000..11d91ce1 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/stoeplitza.c @@ -0,0 +1,32 @@ +#include <stdio.h> +#include "toeplitz.h" + + +/*Function to build a Toeplitz Matrix for inputs of Float datatype*/ + + +void stoeplitza(float* inp1,int size1,float* inp2,int size2,float* oup) +{ + if (inp1[0]!=inp2[0]) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (oup[i] == 0) + oup[i] = oup[i-size2-1]; + } +} diff --git a/2.3-1/src/c/matrixOperations/toeplitz/u16toeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/u16toeplitza.c new file mode 100644 index 00000000..8dab5452 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/u16toeplitza.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include "toeplitz.h" +#include "uint16.h" + + +/*Function to build a Toeplitz Matrix for inputs of Unsigned Int16 datatype*/ + + +void u16toeplitza(uint16* inp1,int size1,uint16* inp2,int size2,uint16* oup) +{ + if (inp1[0]!=inp2[0]) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (oup[i] == 0) + oup[i] = oup[i-size2-1]; + } +} diff --git a/2.3-1/src/c/matrixOperations/toeplitz/u8toeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/u8toeplitza.c new file mode 100644 index 00000000..8301fc16 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/u8toeplitza.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include "toeplitz.h" +#include "uint8.h" + + +/*Function to build a Toeplitz Matrix for inputs of Unsigned Int8 datatype*/ + + +void u8toeplitza(uint8* inp1,int size1,uint8* inp2,int size2,uint8* oup) +{ + if (inp1[0]!=inp2[0]) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (oup[i] == 0) + oup[i] = oup[i-size2-1]; + } +} diff --git a/2.3-1/src/c/matrixOperations/toeplitz/ztoeplitza.c b/2.3-1/src/c/matrixOperations/toeplitz/ztoeplitza.c new file mode 100644 index 00000000..117f8189 --- /dev/null +++ b/2.3-1/src/c/matrixOperations/toeplitz/ztoeplitza.c @@ -0,0 +1,36 @@ +#include <stdio.h> +#include "toeplitz.h" +#include "doubleComplex.h" +#include "stdlib.h" +#include "string.h" +#include "cat.h" + + +/*Function to build a Toeplitz Matrix for inputs of DoubleComplex datatype*/ + + +void ztoeplitza(doubleComplex* inp1,int size1,doubleComplex* inp2,int size2,doubleComplex* oup) +{ + if ((zreals(inp1[0])!=zreals(inp2[0]))&&(zimags(inp1[0])!=zimags(inp2[0]))) + { + printf("Error!The first elements of the Vectors are not equal."); // First element of both input vectors must be equal for Toeplitz. + return; + } + int i, j; + + for(i=0;i<size1*size2;i++) oup[i] = 0; // Initializing the output matrix with zeros. + + for (i = 0; i<size1; i++) + { + for (j = 0; j<size2; j++) + { + oup[j*size1] = inp2[j]; // Elements of the second input vector are copied to the first row of the Toeplitx Matrix. + } + oup[i] = inp1[i]; // Elements of the first input vector are copied to the first column of the Toeplitx Matrix. + } + for (i = size2+1; i<size1*size2; i++) // Loop to build the rest of the Toeplitz matrix. + { + if (zreals(oup[i]) == 0 && zimags(oup[i]) == 0) + oup[i] = oup[i-size2-1]; + } +} diff --git a/2.3-1/src/c/scilab-arduino/cmd_analog_in_volt/u8cmd_analog_in_volts.c b/2.3-1/src/c/scilab-arduino/cmd_analog_in_volt/u8cmd_analog_in_volts.c index 7018df2c..f961719d 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_analog_in_volt/u8cmd_analog_in_volts.c +++ b/2.3-1/src/c/scilab-arduino/cmd_analog_in_volt/u8cmd_analog_in_volts.c @@ -15,8 +15,8 @@ float u8cmd_analog_in_volts(uint8 board_no, uint8 pin) { - float a; - a = ((5*(float)analogRead(pin))/1023); + float a; //declaration of variable + a = ((5*(float)analogRead(pin))/1023); //recieved 10 bit input from analog pin is convert to voltage(0 - 50 return(a); } diff --git a/2.3-1/src/c/scilab-arduino/cmd_analog_out_volt/u8cmd_analog_out_volts.c b/2.3-1/src/c/scilab-arduino/cmd_analog_out_volt/u8cmd_analog_out_volts.c index 2dd82e41..1d76b601 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_analog_out_volt/u8cmd_analog_out_volts.c +++ b/2.3-1/src/c/scilab-arduino/cmd_analog_out_volt/u8cmd_analog_out_volts.c @@ -15,8 +15,8 @@ void u8cmd_analog_out_volts(uint8 board_no, uint8 pin, float value) { - int a; - a = ((value*255)/5); - analogWrite(pin,a); + int a; //declaring variable + a = ((value*255)/5); //converting given voltage to duty cycle value (0 - 255) + analogWrite(pin,a); //passing pin no. and duty cycle value } diff --git a/2.3-1/src/c/scilab-arduino/cmd_dcmotor_release/u8cmd_dcmotor_releases.c b/2.3-1/src/c/scilab-arduino/cmd_dcmotor_release/u8cmd_dcmotor_releases.c index 349bcb17..d56d12d7 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_dcmotor_release/u8cmd_dcmotor_releases.c +++ b/2.3-1/src/c/scilab-arduino/cmd_dcmotor_release/u8cmd_dcmotor_releases.c @@ -15,15 +15,15 @@ void u8cmd_dcmotor_releases(uint8 board_no, uint8 motor_no) { - if (dcm_mode[motor_no] == 3) + if (dcm_mode[motor_no] == 3) //for IC accepting analog value { - analogWrite(dcm_pin_1[motor_no],0); + analogWrite(dcm_pin_1[motor_no],0); //passing LOW to IC pins to stop the motor analogWrite(dcm_pin_2[motor_no],0); } - else + else //for IC accepting digital value { digitalWrite(dcm_pin_1[motor_no],LOW); - digitalWrite(dcm_pin_2[motor_no],LOW); + digitalWrite(dcm_pin_2[motor_no],LOW); //passing LOW to IC pins to stop the motor } } diff --git a/2.3-1/src/c/scilab-arduino/cmd_i2c_dev/u8cmd_i2c_devs.cpp b/2.3-1/src/c/scilab-arduino/cmd_i2c_dev/u8cmd_i2c_devs.cpp index adc1a6e5..eb9ec102 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_i2c_dev/u8cmd_i2c_devs.cpp +++ b/2.3-1/src/c/scilab-arduino/cmd_i2c_dev/u8cmd_i2c_devs.cpp @@ -1,10 +1,23 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +//This function establishes I2C communication between arduino and given device + #include "cmd_i2c_dev.h" #include "Arduino.h" #include "Wire.h" - uint8 u8cmd_i2c_devs(uint8 address) { - Wire.begin(); - return((uint8)address); + Wire.begin(); //To initiate connection + return((uint8)address); //Returns address to create a device object } diff --git a/2.3-1/src/c/scilab-arduino/cmd_i2c_read/u8cmd_i2c_reads.cpp b/2.3-1/src/c/scilab-arduino/cmd_i2c_read/u8cmd_i2c_reads.cpp index 8f02a87e..24d36dea 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_i2c_read/u8cmd_i2c_reads.cpp +++ b/2.3-1/src/c/scilab-arduino/cmd_i2c_read/u8cmd_i2c_reads.cpp @@ -1,3 +1,17 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +//This function reads data from I2C bus. #include "cmd_i2c_read.h" #include "Arduino.h" #include "Wire.h" diff --git a/2.3-1/src/c/scilab-arduino/cmd_i2c_read_register/u8cmd_i2c_read_registers.cpp b/2.3-1/src/c/scilab-arduino/cmd_i2c_read_register/u8cmd_i2c_read_registers.cpp index 0a2ec2ed..fd07eb6b 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_i2c_read_register/u8cmd_i2c_read_registers.cpp +++ b/2.3-1/src/c/scilab-arduino/cmd_i2c_read_register/u8cmd_i2c_read_registers.cpp @@ -1,3 +1,17 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +//this function reads data from the device register with given address #include "cmd_i2c_read_register.h" #include "Arduino.h" #include "Wire.h" diff --git a/2.3-1/src/c/scilab-arduino/cmd_i2c_write/u8cmd_i2c_writes.cpp b/2.3-1/src/c/scilab-arduino/cmd_i2c_write/u8cmd_i2c_writes.cpp index 0239097a..b7772255 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_i2c_write/u8cmd_i2c_writes.cpp +++ b/2.3-1/src/c/scilab-arduino/cmd_i2c_write/u8cmd_i2c_writes.cpp @@ -1,3 +1,16 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +//This function writes data to the connected device #include "cmd_i2c_write.h" #include "Arduino.h" #include "Wire.h" diff --git a/2.3-1/src/c/scilab-arduino/cmd_i2c_write_register/u8cmd_i2c_write_registers.cpp b/2.3-1/src/c/scilab-arduino/cmd_i2c_write_register/u8cmd_i2c_write_registers.cpp index 63cc7c7a..9e3c11c5 100644 --- a/2.3-1/src/c/scilab-arduino/cmd_i2c_write_register/u8cmd_i2c_write_registers.cpp +++ b/2.3-1/src/c/scilab-arduino/cmd_i2c_write_register/u8cmd_i2c_write_registers.cpp @@ -1,3 +1,17 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +//This function writes to the register of the device #include "cmd_i2c_write_register.h" #include "Arduino.h" #include "Wire.h" diff --git a/2.3-1/src/c/scilab-arduino/default_files/sci2c_arduino.ino b/2.3-1/src/c/scilab-arduino/default_files/sci2c_arduino.ino index df28950c..1d4465b7 100644 --- a/2.3-1/src/c/scilab-arduino/default_files/sci2c_arduino.ino +++ b/2.3-1/src/c/scilab-arduino/default_files/sci2c_arduino.ino @@ -11,8 +11,8 @@ */ #include "Arduino.h" -#include <loop_arduino.h> -#include <setup_arduino.h> +#include "loop_arduino.h" +#include "setup_arduino.h" void setup() { diff --git a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_dev.h b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_dev.h index 861a8e7b..382c2b3e 100644 --- a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_dev.h +++ b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_dev.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __CMD_I2C_DEV_H__ #define __CMD_I2C_DEV_H__ diff --git a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read.h b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read.h index 791bdd38..e33ede3c 100644 --- a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read.h +++ b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __CMD_I2C_READ_H__ #define __CMD_I2C_READ_H__ diff --git a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read_register.h b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read_register.h index ea203adf..50fba935 100644 --- a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read_register.h +++ b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_read_register.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __CMD_I2C_READ_REGISTER_H__ #define __CMD_I2C_READ_REGISTER_H__ diff --git a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write.h b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write.h index 6a57222b..128f1af8 100644 --- a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write.h +++ b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __CMD_I2C_WRITE_H__ #define __CMD_I2C_WRITE_H__ diff --git a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write_register.h b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write_register.h index ff1b9ec0..7fac4cbb 100644 --- a/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write_register.h +++ b/2.3-1/src/c/scilab-arduino/includes/cmd_i2c_write_register.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __CMD_I2C_WRITE_REGISTER_H__ #define __CMD_I2C_WRITE_REGISTER_H__ diff --git a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_dev.h b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_dev.h index c4d93d74..85f3e3cb 100644 --- a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_dev.h +++ b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_dev.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __INT_CMD_I2C_DEV_H__ #define __INT_CMD_I2C_DEV_H__ diff --git a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read.h b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read.h index b0633a07..6ffd7ec7 100644 --- a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read.h +++ b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __INT_CMD_I2C_READ_H__ #define __INT_CMD_I2C_READ_H__ diff --git a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read_register.h b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read_register.h index 5f4c5298..e848b69b 100644 --- a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read_register.h +++ b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_read_register.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __INT_CMD_I2C_READ_REGISTER_H__ #define __INT_CMD_I2C_READ_REGISTER_H__ diff --git a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write.h b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write.h index a7705a89..3a015933 100644 --- a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write.h +++ b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __INT_CMD_I2C_WRITE_H__ #define __INT_CMD_I2C_WRITE_H__ diff --git a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write_register.h b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write_register.h index 35c0527e..78a3382b 100644 --- a/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write_register.h +++ b/2.3-1/src/c/scilab-arduino/interfaces/int_cmd_i2c_write_register.h @@ -1,3 +1,15 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Yash Pratap Singh Tomar + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + #ifndef __INT_CMD_I2C_WRITE_REGISTER_H__ #define __INT_CMD_I2C_WRITE_REGISTER_H__ diff --git a/2.3-1/src/c/signalProcessing/%k/dmodka.c b/2.3-1/src/c/signalProcessing/%k/dmodka.c index c0630ec0..8368cb6b 100644 --- a/2.3-1/src/c/signalProcessing/%k/dmodka.c +++ b/2.3-1/src/c/signalProcessing/%k/dmodka.c @@ -1,3 +1,14 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Ankit Raj + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ #include<stdio.h> #include<math.h> #include "modk.h" @@ -10,7 +21,6 @@ double max_calc(double* ptr,int sz) ptr[0]=-1*ptr[0]; } mx=(ptr[0]); - //printf("%lf\n",mx); for(i=1;i<sz;i++) { if(ptr[i]<0) @@ -47,10 +57,7 @@ void dmodka(double* inp,int size,double* oup) c[l]=sqrt(inp[l]); } - int x=0; - //double maxi; - //maxi=max_calc(c,size); - //printf("%lf",maxi); + int x=0; while(max_calc(c,size)>eps) { @@ -88,10 +95,4 @@ void dmodka(double* inp,int size,double* oup) } } -/* -int main() -{ - double m[3]={0.1,0.2,0.3}; - dka(m,3); -} -*/ + diff --git a/2.3-1/src/c/signalProcessing/%sn/dmodsns.c b/2.3-1/src/c/signalProcessing/%sn/dmodsns.c index 06d0a6f0..aae16c19 100644 --- a/2.3-1/src/c/signalProcessing/%sn/dmodsns.c +++ b/2.3-1/src/c/signalProcessing/%sn/dmodsns.c @@ -82,12 +82,4 @@ double dmodsns(double uu, double emmc) } return sn; } -/* -int main() -{ - double u,k; - u=4; - k=0.7; - sn(u,k); -} -*/ + diff --git a/2.3-1/src/c/signalProcessing/ell1mag/dell1maga.c b/2.3-1/src/c/signalProcessing/ell1mag/dell1maga.c index 9af0c8e8..58ef3035 100644 --- a/2.3-1/src/c/signalProcessing/ell1mag/dell1maga.c +++ b/2.3-1/src/c/signalProcessing/ell1mag/dell1maga.c @@ -21,7 +21,7 @@ void dell1maga(double eps,double m1,double* z,int size,double* oup ) int i; for(i=0;i<size;i++) { - s[i]=zmodsns(z[i],m1); + s[i]=dmodsns(z[i],m1); } double un[size]; int j; diff --git a/2.3-1/src/c/signalProcessing/ell1mag/zell1maga.c b/2.3-1/src/c/signalProcessing/ell1mag/zell1maga.c index 6e7a6f93..35b49281 100644 --- a/2.3-1/src/c/signalProcessing/ell1mag/zell1maga.c +++ b/2.3-1/src/c/signalProcessing/ell1mag/zell1maga.c @@ -14,6 +14,9 @@ #include "modsn.h" #include "ell1mag.h" #include "doubleComplex.h" +#include "multiplication.h" +#include "addition.h" +#include "division.h" void zell1maga(double eps,double m1,doubleComplex* z,int size,double* oup ) { @@ -31,9 +34,15 @@ void zell1maga(double eps,double m1,doubleComplex* z,int size,double* oup ) } doubleComplex v; int k; + double ml; + ml=eps*eps; + doubleComplex tp1,tp2,tp3; for(k=0;k<size;k++) { - v=un[k]/(un[k]+(eps*eps*s[k]*s[k])); + tp1=zmuls(s[k],s[k]); + tp2=DoubleComplex(ml,0); + tp3=DoubleComplex(un[k],0); + v=zrdivs(tp3,zadds(tp3,(zmuls(tp2,tp1)))); oup[k]=zreals(v); } } diff --git a/2.3-1/src/c/signalProcessing/ffilt/gffilts.c b/2.3-1/src/c/signalProcessing/ffilt/gffilts.c index 538daf3e..09876d00 100644 --- a/2.3-1/src/c/signalProcessing/ffilt/gffilts.c +++ b/2.3-1/src/c/signalProcessing/ffilt/gffilts.c @@ -80,11 +80,4 @@ void gffilts(char* ft,int size,double N,double fc,double fh,double* oup) oup[id]=1+oup[id]; } } -/* -int main() -{ - string s; - int n; - double fl,fh; -} -*/ + diff --git a/2.3-1/src/c/signalProcessing/fsfirlin/dfsfirlina.c b/2.3-1/src/c/signalProcessing/fsfirlin/dfsfirlina.c index d2079f4d..e44f464e 100644 --- a/2.3-1/src/c/signalProcessing/fsfirlin/dfsfirlina.c +++ b/2.3-1/src/c/signalProcessing/fsfirlin/dfsfirlina.c @@ -11,11 +11,9 @@ */ #include<stdio.h> - #include<math.h> #include "sincd.h" #include "fsfirlin.h" -//#define PI 3.14159265358979 void dfsfirlina(double* hd,int size,double flag,double* hst) { diff --git a/2.3-1/src/c/signalProcessing/sincd/dsincds.c b/2.3-1/src/c/signalProcessing/sincd/dsincds.c index 1475d8de..c9f2f815 100644 --- a/2.3-1/src/c/signalProcessing/sincd/dsincds.c +++ b/2.3-1/src/c/signalProcessing/sincd/dsincds.c @@ -13,7 +13,6 @@ #include<stdio.h> #include<math.h> #include "sincd.h" -//#define PI 3.14159265358979 void dsincds(double n,double flg,double* oup) { double npt=4*n; diff --git a/2.3-1/src/c/signalProcessing/sincd/u8sincds.c b/2.3-1/src/c/signalProcessing/sincd/u8sincds.c index d03f48ae..ff0a2acc 100644 --- a/2.3-1/src/c/signalProcessing/sincd/u8sincds.c +++ b/2.3-1/src/c/signalProcessing/sincd/u8sincds.c @@ -13,12 +13,11 @@ #include<stdio.h> #include<math.h> #include "sincd.h" -#define PI 3.14159265358979 void u8sincds(int n,int flg,double* oup) { double npt=4*n; int sz=4*n; - double pas=PI/npt; + double pas=M_PI/npt; double om[sz+1]; int i; //om[0]=0; @@ -69,7 +68,7 @@ void u8sincds(int n,int flg,double* oup) int a; for(a=0;a<=4*n;a++) { - om[a]=om[a]-(PI/(2*n)); + om[a]=om[a]-(M_PI/(2*n)); } int j,k; for(j=0;j<=4*n;j++) diff --git a/2.3-1/src/c/signalProcessing/zmodsns.c b/2.3-1/src/c/signalProcessing/zmodsns.c new file mode 100644 index 00000000..5f35059f --- /dev/null +++ b/2.3-1/src/c/signalProcessing/zmodsns.c @@ -0,0 +1,161 @@ +/* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Ankit Raj + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + Reference:- Abramowitz, Milton and Stegun, Irene A + Handbook of Mathematical Functions, Dover, 1965 + Chapter 16 (Sections 16.4, 16.13 and 16.15) + Link for FORTRAN code:-http://www.aip.de/groups/soe/local/numres/bookfpdf/f6-11.pdf +*/ + +#include<stdio.h> +#include<math.h> +#include "modsn.h" +#include "doubleComplex.h" +#define CA 0.0003 + +doubleComplex zmodsns(doubleComplex uu,double emmc) +{ + doubleComplex ans; + double uur,uui; + uur=zreals(uu); + uui=zimags(uu); + double sr,cr,dr; + //Performing Elliptic Function operation for the real values + double a1,b1,c1,d1,emc1,u1; + double em1[14],en1[14]; + int i1,ii1,l1,bo1; + emc1=1-emmc; + u1=uur; + if(emc1) + { + bo1=(emc1<0.0); + if(bo1) + { + d1=1.0-emc1; + emc1/=-1.0/d1; + u1*=(d1=sqrt(d1)); + } + a1=1.0; + dr=1.0; + for(i1=1;i1<=13;i1++) + { + l1=i1; + em1[i1]=a1; + en1[i1]=(emc1=sqrt(emc1)); + c1=0.5*(a1+emc1); + if(fabs(a1-emc1)<=CA*a1)break; + emc1*=a1; + a1=c1; + } + u1*=c1; + sr=sin(u1); + cr=cos(u1); + if(sr) + { + a1=cr/sr; + c1*=a1; + for(ii1=l1;ii1>=1;ii1--) + { + b1=em1[ii1]; + a1*=c1; + c1*=dr; + dr=(en1[ii1]+a1)/(b1+a1); + a1=c1/b1; + } + a1=1.0/sqrt(c1*c1+1.0); + sr=(sr>=0.0?a1:-a1); + cr=c1*(sr); + } + if(bo1) + { + a1=dr; + dr=cr; + cr=a1; + sr/=d1; + } + } + else + { + cr=1.0/cosh(u1); + dr=cr; + sr=tanh(u1); + } + //////////////////////////////////////////////////////////////// + double si,ci,di; + //Performing Elleptic Function operation for the imaginary values + double a,b,c,d,emc,u; + double em[14],en[14]; + int i,ii,l,bo; + //double s1,c1,d1; + emc=emmc; + u=uui; + if(emc) + { + bo=(emc<0.0); + if(bo) + { + d=1.0-emc; + emc/=-1.0/d; + u*=(d=sqrt(d)); + } + a=1.0; + di=1.0; + for(i=1;i<=13;i++) + { + l=i; + em[i]=a; + en[i]=(emc=sqrt(emc)); + c=0.5*(a+emc); + if(fabs(a-emc)<=CA*a)break; + emc*=a; + a=c; + } + u*=c; + si=sin(u); + ci=cos(u); + if(si) + { + a=ci/si; + c*=a; + for(ii=l;ii>=1;ii--) + { + b=em[ii]; + a*=c; + c*=di; + di=(en[ii]+a)/(b+a); + a=c/b; + } + a=1.0/sqrt(c*c+1.0); + si=(si>=0.0?a:-a); + ci=c*(si); + } + if(bo) + { + a=di; + di=ci; + ci=a; + si/=d; + } + } + else + { + ci=1.0/cosh(u); + di=ci; + si=tanh(u); + } + ///////////////////////////////////////////////////////// + double delta; + delta=ci*ci + emmc*sr*sr*si*si; + double snir,snii; + snir=(sr*di)/delta; + snii=(cr*dr*si*ci)/delta; + ans=DoubleComplex(snir,snii); + return ans; +} diff --git a/2.3-1/src/c/signalProcessing/zpbutt/dzpbutts.c b/2.3-1/src/c/signalProcessing/zpbutt/dzpbutts.c index 33f22af9..7b9fe9b4 100644 --- a/2.3-1/src/c/signalProcessing/zpbutt/dzpbutts.c +++ b/2.3-1/src/c/signalProcessing/zpbutt/dzpbutts.c @@ -12,6 +12,7 @@ #include<stdio.h> #include<math.h> #include "zpbutt.h" +#include "doubleComplex.h" #define PI 3.14159265 double dzpbutts(double n,double fl,doubleComplex* out) { diff --git a/2.3-1/src/c/string/ascii/gasciia.c b/2.3-1/src/c/string/ascii/gasciia.c index ec11d6e2..5fe95e07 100644 --- a/2.3-1/src/c/string/ascii/gasciia.c +++ b/2.3-1/src/c/string/ascii/gasciia.c @@ -14,12 +14,12 @@ into its ascii equivalent. */ #include "ascii.h" -void gasciia(char *str,int size,int* oup) +void gasciia(char *str,int size,uint8* oup) { int i; for(i=0;i<size;i++) { - *(oup+i)=(int)str[i]; + *(oup+i)=str[i]; } } diff --git a/2.3-1/src/c/string/disp/zdispa.c b/2.3-1/src/c/string/disp/zdispa.c index bc71de4b..94b24e98 100644 --- a/2.3-1/src/c/string/disp/zdispa.c +++ b/2.3-1/src/c/string/disp/zdispa.c @@ -16,7 +16,7 @@ double zdispa (doubleComplex* in, int rows, int columns){ int i = 0,j = 0; for (i = 0; i < rows; ++i) { - for (j=0;j<columns;j++) printf(" %1.20lf + %1.20lfi " ,zreals(in[i+j*rows]) ,zimags(in[i+j*rows])); + for (j=0;j<columns;j++) printf(" %e + %ei " ,zreals(in[i+j*rows]) ,zimags(in[i+j*rows])); printf("\n"); } return 0; diff --git a/2.3-1/src/c/string/disp/zdisps.c b/2.3-1/src/c/string/disp/zdisps.c index c4ec137f..4a040cd7 100644 --- a/2.3-1/src/c/string/disp/zdisps.c +++ b/2.3-1/src/c/string/disp/zdisps.c @@ -14,6 +14,6 @@ double zdisps (doubleComplex in) { - printf(" %1.20f + %1.20fi \n" ,zreals(in) ,zimags(in)); + printf(" %e + %ei \n" ,zreals(in) ,zimags(in)); return 0; } diff --git a/2.3-1/src/c/string/includes/ascii.h b/2.3-1/src/c/string/includes/ascii.h index fcf969da..39aeb835 100644 --- a/2.3-1/src/c/string/includes/ascii.h +++ b/2.3-1/src/c/string/includes/ascii.h @@ -17,7 +17,7 @@ extern "C" { #endif -void gasciia(char* str,int size,int* oup); +void gasciia(char* str,int size,uint8* oup); void dasciia(double* inp,int size,char* oup); #ifdef __cplusplus diff --git a/2.3-1/src/c/string/strcspn/gstrcspna.c b/2.3-1/src/c/string/strcspn/gstrcspna.c index b611fff8..2c83c724 100644 --- a/2.3-1/src/c/string/strcspn/gstrcspna.c +++ b/2.3-1/src/c/string/strcspn/gstrcspna.c @@ -16,11 +16,11 @@ uint8 gstrcspna(char *str1,int size1,char *str2,int size2) { int ind,i,j; - for(i=0;i<=size1;i++) + for(i=0;i<=size2;i++) { - for(j=0;j<=size2;j++) + for(j=0;j<=size1;j++) { - if(str2[j]==str1[i]) + if(str2[i]==str1[j]) { ind=j; break; diff --git a/2.3-1/src/c/type/doubleComplex.h b/2.3-1/src/c/type/doubleComplex.h index 4be0d7d3..15bc2684 100644 --- a/2.3-1/src/c/type/doubleComplex.h +++ b/2.3-1/src/c/type/doubleComplex.h @@ -45,6 +45,21 @@ typedef struct double_complex doubleComplex; /* ** } */ +#elif defined(ARDUINO) +/* +** Hand made Double Complex definition +** { +*/ +struct double_complex +{ + double real; + double imag; +}; + +typedef struct double_complex doubleComplex; +/* +** } +*/ #else /* ** Standard C99 Complex @@ -57,7 +72,6 @@ typedef double complex doubleComplex; ** } */ #endif - #ifdef __cplusplus extern "C" { #endif diff --git a/2.3-1/src/c/type/floatComplex.h b/2.3-1/src/c/type/floatComplex.h index fe35ca48..ba725c95 100644 --- a/2.3-1/src/c/type/floatComplex.h +++ b/2.3-1/src/c/type/floatComplex.h @@ -44,6 +44,21 @@ struct float_complex typedef struct float_complex floatComplex; /* ** } +*/
+#elif defined(ARDUINO)
+/* +** Hand made Float Complex definition +** { +*/ +struct float_complex +{ + float real; + float imag; +}; + +typedef struct float_complex floatComplex; +/* +** } */ #else /* diff --git a/2.3-1/src/c/type/types.h b/2.3-1/src/c/type/types.h index a76bf303..ee5c8992 100644 --- a/2.3-1/src/c/type/types.h +++ b/2.3-1/src/c/type/types.h @@ -4,7 +4,7 @@ /*****************************************************************************/ /* TYPE DEFINITIONS */ /*****************************************************************************/ -typedef unsigned char boolean; +/*typedef unsigned char boolean;*/ typedef unsigned char uint8; typedef unsigned short uint16; diff --git a/2.3-1/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci b/2.3-1/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci index 13624cfb..c6e09a0c 100644 --- a/2.3-1/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci +++ b/2.3-1/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci @@ -1,4 +1,4 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE
+//SCI2C: DEFAULT_PRECISION= FLOAT
function mainfunction()
diff --git a/2.3-1/tests/unit_tests/test01_DCT/scilabcode/main.sci b/2.3-1/tests/unit_tests/test01_DCT/scilabcode/main.sci new file mode 100644 index 00000000..33c44622 --- /dev/null +++ b/2.3-1/tests/unit_tests/test01_DCT/scilabcode/main.sci @@ -0,0 +1,7 @@ +//SCI2C: DEFAULT_PRECISION= FLOAT +//test for discrete cosine tranform using precision as float +function main() + b=([5 2 6 7;1 9 7 6+%i]) + y=dct(b,1) //calling dct + disp(y) +endfunction diff --git a/2.3-1/tests/unit_tests/test02_IDCT/scilabcode/testidct.sci b/2.3-1/tests/unit_tests/test02_IDCT/scilabcode/testidct.sci new file mode 100644 index 00000000..deed0f99 --- /dev/null +++ b/2.3-1/tests/unit_tests/test02_IDCT/scilabcode/testidct.sci @@ -0,0 +1,7 @@ +//SCI2C: DEFAULT_PRECISION= FLOAT +//test for inverse discrete cosine tranfrom +function testidct() + b=[1 2 3;4 5 6+%i] //declaring complex matrix + y=idct(b) //calling idct + disp(y) +endfunction diff --git a/2.3-1/tests/unit_tests/testArduino/analog_check.sci b/2.3-1/tests/unit_tests/testArduino/analog_check.sci new file mode 100644 index 00000000..779f5b7f --- /dev/null +++ b/2.3-1/tests/unit_tests/testArduino/analog_check.sci @@ -0,0 +1,7 @@ +function analog_check() + cmd_analog_out(1,3,50) + cmd_analog_out(1,5,100) + cmd_analog_out(1,6,175) + cmd_analog_out(1,9,255) + +endfunction diff --git a/2.3-1/tests/unit_tests/testArduino/analog_in_check_volt.sci b/2.3-1/tests/unit_tests/testArduino/analog_in_check_volt.sci new file mode 100644 index 00000000..16e79054 --- /dev/null +++ b/2.3-1/tests/unit_tests/testArduino/analog_in_check_volt.sci @@ -0,0 +1,4 @@ +function analog_in_check_volt() + val = cmd_analog_in_volt(1,0) + cmd_analog_out_volt(1,6,val) +endfunction diff --git a/2.3-1/tests/unit_tests/testArduino/blink_13.sci b/2.3-1/tests/unit_tests/testArduino/blink_13.sci new file mode 100644 index 00000000..37dc93fd --- /dev/null +++ b/2.3-1/tests/unit_tests/testArduino/blink_13.sci @@ -0,0 +1,6 @@ +function blink_13() + cmd_digital_out(1,13,1) //--To turn on the LED on pin no. 13 + sleep(1000) //---delay of 1 second + cmd_digital_out(1,13,0) //--To turn on the LED off pin no. 13 + sleep(1000) //---delay of 1 second +endfunction diff --git a/2.3-1/tests/unit_tests/testArduino/board_test_release2.sci b/2.3-1/tests/unit_tests/testArduino/board_test_release2.sci new file mode 100644 index 00000000..fd21cff7 --- /dev/null +++ b/2.3-1/tests/unit_tests/testArduino/board_test_release2.sci @@ -0,0 +1,11 @@ +function board_test_release2() + cmd_dcmotor_setup(1,3,1,9,10) + cmd_dcmotor_run(1,1,255) + sleep(3000) + cmd_dcmotor_release(1,1) + sleep(3000) + cmd_dcmotor_run(1,1,-255) + sleep(3000) + cmd_dcmotor_release(1,1) + sleep(3000) +endfunction diff --git a/2.3-1/tests/unit_tests/testArduino/digital_in_check.sci b/2.3-1/tests/unit_tests/testArduino/digital_in_check.sci new file mode 100644 index 00000000..4dfbeb6e --- /dev/null +++ b/2.3-1/tests/unit_tests/testArduino/digital_in_check.sci @@ -0,0 +1,10 @@ +function digital_in_check() + a=cmd_digital_in(1,7) + if a==1 then + cmd_digital_out(1,13,1) + cmd_digital_out(1,9,0) + else + cmd_digital_out(1,9,1) + cmd_digital_out(1,13,0) + end +endfunction diff --git a/2.3-1/tests/unit_tests/testArduino/i2c_master.sci b/2.3-1/tests/unit_tests/testArduino/i2c_master.sci new file mode 100644 index 00000000..2636185a --- /dev/null +++ b/2.3-1/tests/unit_tests/testArduino/i2c_master.sci @@ -0,0 +1,9 @@ +function i2c_master()
+
+ dev1 = cmd_i2c_dev(1);
+ cmd_i2c_write(dev1,10);
+ sleep(1000);
+ cmd_i2c_write(dev1,9);
+ sleep(1000);
+
+endfunction
diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvd.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvd.sci new file mode 100644 index 00000000..c5da4cd3 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvd.sci @@ -0,0 +1,6 @@ +function testsvd() + disp(" ** SVD Function (Singular Value Decomposition)** ") + A = [1,2,3,11;4,5,6,12;7,8,9,13] // Matrix - A + s = svd(A) // Calling Function Sequence + disp(s) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdeconomy.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdeconomy.sci new file mode 100644 index 00000000..0459c790 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdeconomy.sci @@ -0,0 +1,11 @@ +function testsvdeconomy() + disp(" ** SVD Function (Singular Value Decomposition)** ") + A = [1,2,3,11;4,5,6,12;7,8,9,13] // Matrix - A + [u,s,vt] = svd(A,'e') // Calling Function Sequence + disp("U Matrix") + disp(u) // A = U*sigma*Vt + disp("Sigma Matrix") + disp(s) + disp(" V transpose ") + disp(vt) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdim.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdim.sci new file mode 100644 index 00000000..16633cce --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdim.sci @@ -0,0 +1,6 @@ +// Function double_complex - test data. +function svdim() + b = [ (5.91+5.69*%i),(3.15-4.08*%i),(4.89+4.20*%i),(7.09+2.72*%i);(1.89+3.27*%i),(4.10+6.70*%i),(7.78+4.06*%i),(4.57+2.07*%i);(3.28+3.84*%i),(-0.79+7.21*%i),(3.88+3.30*%i),(3.84+1.19*%i)] + s = svd(b) + disp(s) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdrank.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdrank.sci new file mode 100644 index 00000000..108acde8 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdrank.sci @@ -0,0 +1,13 @@ +function testsvdrank() + disp(" ** SVD Function (Singular Value Decomposition)** ") + A = [1,2,3,11;4,5,6,12;7,8,9,13] // Matrix - A + [u,s,vt,rk] = svd(A) // Calling Function Sequence + disp("U Matrix") + disp(u) // A = U*sigma*Vt + disp("Sigma Matrix") + disp(s) + disp(" V transpose ") + disp(vt) + disp("Rank") + disp(rk) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdreal.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdreal.sci new file mode 100644 index 00000000..0e68e003 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/test_svd/testsvdreal.sci @@ -0,0 +1,11 @@ +function testsvdreal() + disp(" ** SVD Function (Singular Value Decomposition)** ") + A = [1,2,3,11;4,5,6,12;7,8,9,13] // Matrix - A + [u,s,vt] = svd(A) // Calling Function Sequence + disp("U Matrix") + disp(u) // A = U*sigma*Vt + disp("Sigma Matrix") + disp(s) + disp(" V transpose ") + disp(vt) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testfullrf/testfullrf.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testfullrf/testfullrf.sci new file mode 100644 index 00000000..49d3c7a2 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testfullrf/testfullrf.sci @@ -0,0 +1,7 @@ +function testfullrf() + A = [1,2,3;4,5,6;7,8,9] + [Q,M,rk] = fullrf(A) + disp(Q) + disp(M) + disp(rk) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testgivens/testgivens.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testgivens/testgivens.sci new file mode 100644 index 00000000..3ef0d284 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testgivens/testgivens.sci @@ -0,0 +1,7 @@ +function testgivens() + a = [1] + b = [2] + [u,c] = givens(a,b) + disp(u) + disp(c) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testhess/testhess.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testhess/testhess.sci new file mode 100644 index 00000000..f991ae9f --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testhess/testhess.sci @@ -0,0 +1,5 @@ +function testhess() + a = [0,0,0,0;0,6,7,8;9,10,11,12;13,14,15,16]; + h = hess(a) + disp(h) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testhouseholder/testhouseholder.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testhouseholder/testhouseholder.sci new file mode 100644 index 00000000..30b4c20e --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testhouseholder/testhouseholder.sci @@ -0,0 +1,6 @@ +function testhouseholder() + A = [1;2;3;4;5] + B = [6;7;8;9;10] + u = householder(A,B) + disp(u) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testnorm/testnorm.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testnorm/testnorm.sci new file mode 100644 index 00000000..727a895f --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testnorm/testnorm.sci @@ -0,0 +1,6 @@ +//* Function to find, norm(a,2) +function testnorm() + a = [1,2,3;4,5,6;7,8,9] // Matrix + d = norm(a,2); // Calling NORM function. + disp(d) // display output +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testqr/testQR.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testqr/testQR.sci new file mode 100644 index 00000000..292e1cba --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testqr/testQR.sci @@ -0,0 +1,8 @@ +function testQR() + A = [1,2,3;4,5,6] + [u,a,rk,e] = qr(A); + disp(u) + disp(a) + disp(rk) + disp(e) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testrowcomp/testrcomp.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testrowcomp/testrcomp.sci new file mode 100644 index 00000000..f8da9482 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testrowcomp/testrcomp.sci @@ -0,0 +1,6 @@ +function testrcomp() + A = [1,2,3;4,5,6] + [u,rk] = rowcomp(A,"qr") + disp(u) + disp(rk) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testspec/testspec.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testspec/testspec.sci new file mode 100644 index 00000000..6e9346d4 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testspec/testspec.sci @@ -0,0 +1,9 @@ +function testspec() + A = [1,2,3;4,5,6;7,8,9] + B = [10,11,12;13,14,15;16,17,18] + [R,diagevals,c,d] = spec(A,B) + disp(R) + disp(diagevals) + disp(c) + disp(d) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testsqroot/testsqroot.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testsqroot/testsqroot.sci new file mode 100644 index 00000000..63db1f49 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testsqroot/testsqroot.sci @@ -0,0 +1,5 @@ +function testsqroot() + a = [1,2,3;4,5,6;7,8,9]; + e = sqroot(a); + disp(e) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testsva/testsva.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testsva/testsva.sci new file mode 100644 index 00000000..c7107236 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testsva/testsva.sci @@ -0,0 +1,7 @@ +function testsva() + a = [1,2,3,4;5,6,7,8;9,10,11,12] + [u,s,v] = sva(a) + disp(u) + disp(s) + disp(v) +endfunction diff --git a/2.3-1/tests/unit_tests/testLinearAlgebra/testsva/testsvatol.sci b/2.3-1/tests/unit_tests/testLinearAlgebra/testsva/testsvatol.sci new file mode 100644 index 00000000..b199ec36 --- /dev/null +++ b/2.3-1/tests/unit_tests/testLinearAlgebra/testsva/testsvatol.sci @@ -0,0 +1,9 @@ +// function Singular Value Approx. + +function testsvatol() + a = [1,2,3,4;5,6,7,8;9,10,11,12] + [u,s,v] = sva(a,1) + disp(u) + disp(s) + disp(v) +endfunction diff --git a/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/main.sci b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/main.sci new file mode 100644 index 00000000..85fc494c --- /dev/null +++ b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/main.sci @@ -0,0 +1,33 @@ +// This is the demo function to test the analog filters +// They are of 4 types butterworth,chebyshev-1,chebyshev-2 and elliptic +// We are going to test here the butterworth, chebyshev-1 and chebyshev-2 filters +//zpbutt->butterworth filter +//zpch1 ->chebyshev type-1 filter +//zpch2 ->chebyshev type-2 filter +function main() + n=5; //n is the filter order + fl=3; //fl is the cutoff frequency + [pb,gb]=zpbutt(n,fl); + disp("poles of butterworth filter") + disp(pb); + disp("gain of butterworth filter"); + disp(gb); + + e=0.5; //e (epsilon) it is the ripples in pass band + wc=4; // wc cutoff frequency + [pc1,gc1]=zpch1(n,e,wc); + disp("poles of chebyshev-1 filter") + disp(pc1); + disp("gain of chebyshev-1 filter") + disp(gc1); + + a=4; //a is the attenuation in stop band + w=5; //w (omega) is the cutoff frequency + [zc2,pc2,gc2]=zpch2(n,a,w); + disp("zeros of chebyshev-2 filter") + disp(zc2); + disp("poles of chebyshev-2 filter") + disp(pc2); + disp("gain of chebyshev-2 filter") + disp(gc2); +endfunction diff --git a/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpbutttest.sci b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpbutttest.sci new file mode 100644 index 00000000..1ea723d6 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpbutttest.sci @@ -0,0 +1,7 @@ +function zpbutttest() + n=5; + fl=3; + [p,g]=zpbutt(n,fl); + disp(p); + disp(g); +endfunction diff --git a/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpch1test.sci b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpch1test.sci new file mode 100644 index 00000000..4f29e0d4 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpch1test.sci @@ -0,0 +1,9 @@ +function zpch1test() + + N=5; //N is the filter order + e=0.5; //e (epsilon) it is the ripples in pass band + wc=4; // wc cutoff frequency + [p,g]=zpch1(N,e,wc); + disp(p); + disp(g); +endfunction diff --git a/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpch2test.sci b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpch2test.sci new file mode 100644 index 00000000..665fb41c --- /dev/null +++ b/2.3-1/tests/unit_tests/test_analogFilters/scilabcode/zpch2test.sci @@ -0,0 +1,9 @@ +function zpch2test() + n=5; + a=4; + w=5; + [z,p,g]=zpch2(n,a,w); + disp(z); + disp(p); + disp(g); +endfunction diff --git a/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/buttmagtest.sci b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/buttmagtest.sci new file mode 100644 index 00000000..c7426c2d --- /dev/null +++ b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/buttmagtest.sci @@ -0,0 +1,7 @@ +function buttmagtest() + smp=[1:5]; + od=6; + frq=2.2; + oup=buttmag(od,frq,smp); + disp(oup); +endfunction diff --git a/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/cheb1magtest.sci b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/cheb1magtest.sci new file mode 100644 index 00000000..7d096375 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/cheb1magtest.sci @@ -0,0 +1,8 @@ +function cheb1magtest() + od=5; + wfc=3; + eps=0.3; + sap=[1:5]; + out=cheb1mag(od,wfc,eps,sap); + disp(out); +endfunction diff --git a/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/ell1magtest.sci b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/ell1magtest.sci new file mode 100644 index 00000000..b53c435d --- /dev/null +++ b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/ell1magtest.sci @@ -0,0 +1,7 @@ +function ell1magtest() + eps1=0.2; + m11=0.4; + z1=[1,2,3]; + [s1]=ell1mag(eps1,m11,z1); + disp(s1); +endfunction diff --git a/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/main.sci b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/main.sci new file mode 100644 index 00000000..6a8cbc59 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_filterResponse/scilabcode/main.sci @@ -0,0 +1,20 @@ +function main() + + order=5; + sample1=[1:5]; + frq=2.2; + out1=buttmag(order,frq,sample1); + disp(out1); + + wfc=3; + eps=0.3; + sample2=[1:5]; + out2=cheb1mag(order,wfc,eps,sample2); + disp(out2); + + eps1=0.2; + m11=0.4; + z1=[1,2,3]; + [s1]=ell1mag(eps1,m11,z1); + disp(s1); +endfunction diff --git a/2.3-1/tests/unit_tests/test_jacobi/scilabcode/main.sci b/2.3-1/tests/unit_tests/test_jacobi/scilabcode/main.sci new file mode 100644 index 00000000..ee229ebe --- /dev/null +++ b/2.3-1/tests/unit_tests/test_jacobi/scilabcode/main.sci @@ -0,0 +1,18 @@ +// Demo function to test %sn and %k functions +// %sn is the Jacobi's elliptic function +// %k is the Jacobi's complete integral +function main() + u=[1+2*%i 2+3*%i 3+1*%i]; // the corresponding complex vector + k=0.6; // parameter of elliptic integral + [out]=%sn(u,k); + disp(out); + m=[0.1 0.2 0.3]; // parametrt of Jacobi complete integral + s=%k(m); + disp(s); +endfunction + +//Output +//for %sn +// 1.5641568 - 0.2037920i 1.0580372 + 0.0100213i 1.1386855 - 0.4631921i +// for %k +// 1.6124413 1.6596236 1.7138894 diff --git a/2.3-1/tests/unit_tests/test_jacobi/scilabcode/modktest.sci b/2.3-1/tests/unit_tests/test_jacobi/scilabcode/modktest.sci new file mode 100644 index 00000000..613cd33b --- /dev/null +++ b/2.3-1/tests/unit_tests/test_jacobi/scilabcode/modktest.sci @@ -0,0 +1,5 @@ +function modktest() + m=[0.1 0.2 0.3]; + s=%k(m); + disp(s); +endfunction diff --git a/2.3-1/tests/unit_tests/test_jacobi/scilabcode/modsntest.sci b/2.3-1/tests/unit_tests/test_jacobi/scilabcode/modsntest.sci new file mode 100644 index 00000000..dc5d4353 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_jacobi/scilabcode/modsntest.sci @@ -0,0 +1,6 @@ +function modsntest() + u=[1+2*%i 2+3*%i 3+1*%i]; // the corresponding complex vector + k=0.6; // parameter of elliptic integral + [out]=%sn(u,k); + disp(out); +endfunction diff --git a/2.3-1/tests/unit_tests/test_string/scilabcode/asciitest.sci b/2.3-1/tests/unit_tests/test_string/scilabcode/asciitest.sci new file mode 100644 index 00000000..aa0017d7 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_string/scilabcode/asciitest.sci @@ -0,0 +1,11 @@ +//This function test the ascii function in scilab. +//Ascii function takes the input string and then gives the ascii code of the string. +// The output for the scilab will be:- +//[97. 110. 107. 105. 116. 32. 105. 115. 32. 114. 97. 106.] + +function asciitest() + y="ankit is raj"; //This is the input string for testing the function. + x=ascii(y); //calling of the function + disp(x); +endfunction + diff --git a/2.3-1/tests/unit_tests/test_string/scilabcode/asciitest2.sci b/2.3-1/tests/unit_tests/test_string/scilabcode/asciitest2.sci new file mode 100644 index 00000000..ca7dcb7e --- /dev/null +++ b/2.3-1/tests/unit_tests/test_string/scilabcode/asciitest2.sci @@ -0,0 +1,5 @@ +function asciitest2() + d=[97 98 99 100 101]; + si=ascii(d); + disp(si); +endfunction diff --git a/2.3-1/tests/unit_tests/test_string/scilabcode/main.sci b/2.3-1/tests/unit_tests/test_string/scilabcode/main.sci new file mode 100644 index 00000000..4030ee09 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_string/scilabcode/main.sci @@ -0,0 +1,30 @@ +//This is the demo function to test a set of string functions +// ascii->converts the input char vector/array to corresponding ascii code or vice versa +// strchr-> it finds the occurence of a charcter in a given string +// strncpy->copy charcters from string +// strspn-> get span of character set in string + +function main() + strascii1="ankit is raj"; //This is the input string for testing the function. + asciiout1=ascii(strascii1); //calling of the function + disp(asciiout1); + + strascii2=[97 98 99 100 101]; //Input as the ascii code to get converted to string + asciiout2=ascii(strascii2); //calling the function + disp(asciiout2); + + str="This is a sample string"; + ch="s"; + out1=strchr(str,ch); + disp(out1); + + ss="Ankit Raj"; + nn=5; + resu=strncpy(ss,nn); + disp(resu); + + strsample2="Hello this is Ankit"; + a="Ank"; + oup2=strspn(a,strsample2); + disp(oup2) +endfunction diff --git a/2.3-1/tests/unit_tests/test_string/scilabcode/strchrtest.sci b/2.3-1/tests/unit_tests/test_string/scilabcode/strchrtest.sci new file mode 100644 index 00000000..f8d34198 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_string/scilabcode/strchrtest.sci @@ -0,0 +1,6 @@ +function strchrtest() + s="This is a sample string"; + ch="s"; + y=strchr(s,ch); + disp(y); +endfunction diff --git a/2.3-1/tests/unit_tests/test_string/scilabcode/strcspntest.sci b/2.3-1/tests/unit_tests/test_string/scilabcode/strcspntest.sci new file mode 100644 index 00000000..9a03c576 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_string/scilabcode/strcspntest.sci @@ -0,0 +1,6 @@ +function strcspntest() + x="123243545assdsc"; + y="anki5t3"; + z=strcspn(y,x); + disp(z); +endfunction diff --git a/2.3-1/tests/unit_tests/test_string/scilabcode/strncpytest.sci b/2.3-1/tests/unit_tests/test_string/scilabcode/strncpytest.sci new file mode 100644 index 00000000..14eceb83 --- /dev/null +++ b/2.3-1/tests/unit_tests/test_string/scilabcode/strncpytest.sci @@ -0,0 +1,6 @@ +function strncpytest() + ss="Ankit Raj"; + nn=5; + resu=strncpy(ss,nn); + disp(resu); +endfunction diff --git a/2.3-1/thirdparty/lib/raspberrypi/libcblas.a b/2.3-1/thirdparty/lib/raspberrypi/libcblas.a Binary files differindex 719376dd..bbba3e21 100644 --- a/2.3-1/thirdparty/lib/raspberrypi/libcblas.a +++ b/2.3-1/thirdparty/lib/raspberrypi/libcblas.a diff --git a/2.3-1/thirdparty/lib/raspberrypi/liblapack.a b/2.3-1/thirdparty/lib/raspberrypi/liblapack.a Binary files differindex 9af700fc..7ec0eb91 100644 --- a/2.3-1/thirdparty/lib/raspberrypi/liblapack.a +++ b/2.3-1/thirdparty/lib/raspberrypi/liblapack.a diff --git a/2.3-1/thirdparty/lib/raspberrypi/librefblas.a b/2.3-1/thirdparty/lib/raspberrypi/librefblas.a Binary files differindex 0307f908..d1921c42 100644 --- a/2.3-1/thirdparty/lib/raspberrypi/librefblas.a +++ b/2.3-1/thirdparty/lib/raspberrypi/librefblas.a |