diff options
Diffstat (limited to 'src/c/elementaryFunctions')
724 files changed, 19725 insertions, 14 deletions
diff --git a/src/c/elementaryFunctions/Trigonometry/cosd/dcosda.c b/src/c/elementaryFunctions/Trigonometry/cosd/dcosda.c new file mode 100644 index 00000000..65a6f4a2 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cosd/dcosda.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cosd.h" +#include <math.h> + +void dcosda(double* in,int size,double* out) +{ + int i=0; + for (i=0;i<size;i++) + { + out[i] = dcosds(in[i]); + } +} + diff --git a/src/c/elementaryFunctions/Trigonometry/cosd/dcosds.c b/src/c/elementaryFunctions/Trigonometry/cosd/dcosds.c new file mode 100644 index 00000000..8bc6d4ab --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cosd/dcosds.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + +#include <math.h> +#include "cos.h" +#include "cosd.h" + +double dcosds(double in) +{ + if(cos((M_PI/180.0)*in)==0.0) + return 0.0; + else + return (cos((M_PI/180.0)*in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/cosd/scosda.c b/src/c/elementaryFunctions/Trigonometry/cosd/scosda.c new file mode 100644 index 00000000..7e0714db --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cosd/scosda.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cos.h" +#include "cosd.h" + +void scosda(float* in, int size, float* out) +{ + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = scosds(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/cosd/scosds.c b/src/c/elementaryFunctions/Trigonometry/cosd/scosds.c new file mode 100644 index 00000000..45c788ff --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cosd/scosds.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + +#include <math.h> +#include "cosd.h" +#include "cos.h" + +float scosds(float in) +{ + if(cosf((M_PI/180.0)*in)==0.0) + return 0.0; + else + return (cosf((M_PI/180.0)*in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/cotd/dcotda.c b/src/c/elementaryFunctions/Trigonometry/cotd/dcotda.c new file mode 100644 index 00000000..3a4b23c1 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cotd/dcotda.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cotd.h" + +void dcotda(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=dcotds(in[i]); + } +} + diff --git a/src/c/elementaryFunctions/Trigonometry/cotd/dcotds.c b/src/c/elementaryFunctions/Trigonometry/cotd/dcotds.c new file mode 100644 index 00000000..34befb62 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cotd/dcotds.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + +#include <math.h> +#include "cotd.h" + +double dcotds(double in) +{ + return (1/tan((M_PI/180.0)*in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/cotd/scotda.c b/src/c/elementaryFunctions/Trigonometry/cotd/scotda.c new file mode 100644 index 00000000..fbdf0f50 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cotd/scotda.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cotd.h" + +void scotda(float* in, int size, float* out) { + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = scotds(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/cotd/scotds.c b/src/c/elementaryFunctions/Trigonometry/cotd/scotds.c new file mode 100644 index 00000000..e7e02b9d --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cotd/scotds.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + +#include <math.h> +#include "cotd.h" + +float scotds(float in) +{ + return (1/tanf((M_PI/180.0)*in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/coth/ccotha.c b/src/c/elementaryFunctions/Trigonometry/coth/ccotha.c new file mode 100644 index 00000000..44a366e8 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/ccotha.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "coth.h" +#include <math.h> + +void ccotha(floatComplex* in, int size,floatComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = ccoths(in[i]); + } + +} diff --git a/src/c/elementaryFunctions/Trigonometry/coth/ccoths.c b/src/c/elementaryFunctions/Trigonometry/coth/ccoths.c new file mode 100644 index 00000000..b7f90263 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/ccoths.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "coth.h" +#include <math.h> +#include "tanh.h" +#include "floatComplex.h" +#include "division.h" + +floatComplex ccoths(floatComplex z) +{ + + floatComplex out; + out = crdivs(FloatComplex(1,0), ctanhs(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/coth/dcotha.c b/src/c/elementaryFunctions/Trigonometry/coth/dcotha.c new file mode 100644 index 00000000..bb54b200 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/dcotha.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "coth.h" +#include <math.h> + +void dcotha(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=cosh(in[i])/sinh(in[i]); + } +} + diff --git a/src/c/elementaryFunctions/Trigonometry/coth/dcoths.c b/src/c/elementaryFunctions/Trigonometry/coth/dcoths.c new file mode 100644 index 00000000..55c9a5b4 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/dcoths.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "coth.h" +#include "cosh.h" +#include "cos.h" +#include "sinh.h" +#include "sin.h" + +double dcoths(double in) { + return (cosh(in)/sinh(in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/coth/scotha.c b/src/c/elementaryFunctions/Trigonometry/coth/scotha.c new file mode 100644 index 00000000..53351621 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/scotha.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "coth.h" +#include <math.h> + +void scotha(float* in,int size,float* out) +{ + float val; + int i=0; + for(i=0;i<size;i++) + { + out[i]=cosh(in[i])/sinh(in[i]); + } +} + diff --git a/src/c/elementaryFunctions/Trigonometry/coth/scoths.c b/src/c/elementaryFunctions/Trigonometry/coth/scoths.c new file mode 100644 index 00000000..2865f566 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/scoths.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "coth.h" +#include "cosh.h" +#include "cos.h" +#include "sinh.h" +#include "sin.h" + +float scoths(float in) { + return (cosh(in)/sinh(in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/coth/zcotha.c b/src/c/elementaryFunctions/Trigonometry/coth/zcotha.c new file mode 100644 index 00000000..206cc43f --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/zcotha.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "coth.h" +#include <math.h> + +void zcotha(doubleComplex* in, int size,doubleComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = zcoths(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/coth/zcoths.c b/src/c/elementaryFunctions/Trigonometry/coth/zcoths.c new file mode 100644 index 00000000..8b3b19f5 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/coth/zcoths.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "coth.h" +#include "tanh.h" +#include "tan.h" +#include <math.h> +#include "doubleComplex.h" +#include "division.h" + +doubleComplex zcoths(doubleComplex z) +{ + + doubleComplex out; + out = zrdivs(DoubleComplex(1,0),ztanhs(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/ccsca.c b/src/c/elementaryFunctions/Trigonometry/csc/ccsca.c new file mode 100644 index 00000000..7ec9a6b8 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/ccsca.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" +#include <math.h> + +void ccsca(floatComplex* in, int size,floatComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = ccscs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/ccscs.c b/src/c/elementaryFunctions/Trigonometry/csc/ccscs.c new file mode 100644 index 00000000..f16aa1b9 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/ccscs.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" +#include "cos.h" +#include "sinh.h" +#include "cosh.h" +#include "csc.h" +#include "floatComplex.h" +#include "division.h" + +floatComplex ccscs(floatComplex z) +{ + + floatComplex out; + out = crdivs(FloatComplex(1,0),csins(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/dcsca.c b/src/c/elementaryFunctions/Trigonometry/csc/dcsca.c new file mode 100644 index 00000000..b1a3cf3b --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/dcsca.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" + +void dcsca(double* in,int size,double* out) +{ + int i = 0; + for (i = 0;i<size;++i) + { + out[i] = dcscs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/dcscs.c b/src/c/elementaryFunctions/Trigonometry/csc/dcscs.c new file mode 100644 index 00000000..f9e128c2 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/dcscs.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" +#include <math.h> + +double dcscs(double in) +{ + double out; + out=1/sin(in); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/scsca.c b/src/c/elementaryFunctions/Trigonometry/csc/scsca.c new file mode 100644 index 00000000..cea8338f --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/scsca.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" + +void scsca(float* in,int size,float* out) +{ + int i = 0; + for (i = 0;i<size;++i) + { + out[i] = scscs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/scscs.c b/src/c/elementaryFunctions/Trigonometry/csc/scscs.c new file mode 100644 index 00000000..f0ad15e4 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/scscs.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" +#include <math.h> + +float scscs(float in) +{ + float out; + out=1/sin(in); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/zcsca.c b/src/c/elementaryFunctions/Trigonometry/csc/zcsca.c new file mode 100644 index 00000000..59430925 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/zcsca.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" +#include <math.h> + +void zcsca(doubleComplex* in, int size,doubleComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = zcscs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csc/zcscs.c b/src/c/elementaryFunctions/Trigonometry/csc/zcscs.c new file mode 100644 index 00000000..64fce57a --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csc/zcscs.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" +#include "cos.h" +#include "sinh.h" +#include "cosh.h" +#include "csc.h" +#include "doubleComplex.h" +#include "division.h" + +doubleComplex zcscs(doubleComplex z) +{ + double real = zreals(z); + double imag = zimags(z); + return zrdivs(DoubleComplex(1,0),(DoubleComplex(dsins(real) * dcoshs(imag), dcoss(real) * dsinhs(imag)))); +} diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/ccscda.c b/src/c/elementaryFunctions/Trigonometry/cscd/ccscda.c new file mode 100644 index 00000000..ed13f9e7 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/ccscda.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" +#include "cscd.h" +#include <math.h> + +void ccscda(floatComplex* in, int size,floatComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = ccscds(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/ccscds.c b/src/c/elementaryFunctions/Trigonometry/cscd/ccscds.c new file mode 100644 index 00000000..39b2576a --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/ccscds.c @@ -0,0 +1,29 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" +#include "cos.h" +#include "sinh.h" +#include "cosh.h" +#include "csc.h" +#include "cscd.h" +#include "floatComplex.h" +#include "division.h" + +floatComplex ccscds(floatComplex z) +{ + + floatComplex out; + out = crdivs(FloatComplex(1,0),csins(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/dcscda.c b/src/c/elementaryFunctions/Trigonometry/cscd/dcscda.c new file mode 100644 index 00000000..8ca3df94 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/dcscda.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cscd.h" +#include <math.h> + +void dcscda(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=dcscds(in[i]); + } +} + diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/dcscds.c b/src/c/elementaryFunctions/Trigonometry/cscd/dcscds.c new file mode 100644 index 00000000..af4dc30b --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/dcscds.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + +#include "cscd.h" +#include <math.h> + +double dcscds(double in) +{ + double val; + val = (M_PI) / 180.0; + double out; + out=1/sin(in*val); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/scscda.c b/src/c/elementaryFunctions/Trigonometry/cscd/scscda.c new file mode 100644 index 00000000..17936628 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/scscda.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cscd.h" + +void scscda(float* in,int size,float* out) +{ + int i = 0; + for (i = 0;i<size;++i) + { + out[i] = scscds(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/scscds.c b/src/c/elementaryFunctions/Trigonometry/cscd/scscds.c new file mode 100644 index 00000000..ebf36d2d --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/scscds.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + + +#include "cscd.h" +#include <math.h> + +float scscds(float in) +{ + float out,val; + val=(M_PI)/180.0; + out=1/sin(in*val); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/zcscda.c b/src/c/elementaryFunctions/Trigonometry/cscd/zcscda.c new file mode 100644 index 00000000..a8a617c2 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/zcscda.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csc.h" +#include "cscd.h" +#include <math.h> + +void zcscda(doubleComplex* in, int size,doubleComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = zcscds(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/cscd/zcscds.c b/src/c/elementaryFunctions/Trigonometry/cscd/zcscds.c new file mode 100644 index 00000000..47d5dfc1 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/cscd/zcscds.c @@ -0,0 +1,29 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" +#include "cos.h" +#include "sinh.h" +#include "cosh.h" +#include "csc.h" +#include "cscd.h" +#include "doubleComplex.h" +#include "division.h" + +doubleComplex zcscds(doubleComplex z) +{ + + doubleComplex out; + out = zrdivs(DoubleComplex(1,0),zsins(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/ccscha.c b/src/c/elementaryFunctions/Trigonometry/csch/ccscha.c new file mode 100644 index 00000000..a95da200 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/ccscha.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" +#include <math.h> + +void ccscha(floatComplex* in, int size,floatComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = ccschs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/ccschs.c b/src/c/elementaryFunctions/Trigonometry/csch/ccschs.c new file mode 100644 index 00000000..ddcc733f --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/ccschs.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" +#include "sinh.h" +#include "sin.h" +#include <math.h> +#include "floatComplex.h" +#include "division.h" + +floatComplex ccschs(floatComplex z) +{ + + floatComplex out; + out = crdivs(FloatComplex(1,0),csinhs(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/dcscha.c b/src/c/elementaryFunctions/Trigonometry/csch/dcscha.c new file mode 100644 index 00000000..32489051 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/dcscha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" + +void dcscha(double* in, int size, double* out) { + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = dcschs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/dcschs.c b/src/c/elementaryFunctions/Trigonometry/csch/dcschs.c new file mode 100644 index 00000000..7b1f15ae --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/dcschs.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" +#include <math.h> + +double dcschs(double in) +{ + double out; + out=1/sinh(in); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/scscha.c b/src/c/elementaryFunctions/Trigonometry/csch/scscha.c new file mode 100644 index 00000000..18d5ea79 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/scscha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" + +void scscha(float* in, int size, float* out) { + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = scschs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/scschs.c b/src/c/elementaryFunctions/Trigonometry/csch/scschs.c new file mode 100644 index 00000000..ec550850 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/scschs.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" +#include <math.h> + +float scschs(float in) +{ + float out; + out=1/sinh(in); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/zcscha.c b/src/c/elementaryFunctions/Trigonometry/csch/zcscha.c new file mode 100644 index 00000000..fab5cc43 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/zcscha.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" +#include <math.h> + +void zcscha(doubleComplex* in, int size,doubleComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = zcschs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/csch/zcschs.c b/src/c/elementaryFunctions/Trigonometry/csch/zcschs.c new file mode 100644 index 00000000..33a4fccd --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/csch/zcschs.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "csch.h" +#include "sinh.h" +#include "sin.h" +#include <math.h> +#include "doubleComplex.h" +#include "division.h" + +doubleComplex zcschs(doubleComplex z) +{ + + doubleComplex out; + out = zrdivs(DoubleComplex(1,0),zsinhs(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/cseca.c b/src/c/elementaryFunctions/Trigonometry/sec/cseca.c new file mode 100644 index 00000000..fcb9b81a --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/cseca.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sec.h" +#include <math.h> + +void cseca(floatComplex* in, int size,floatComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = csecs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/csecs.c b/src/c/elementaryFunctions/Trigonometry/sec/csecs.c new file mode 100644 index 00000000..c2d9b9ed --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/csecs.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sec.h" +#include "cos.h" +#include <math.h> +#include "floatComplex.h" +#include "division.h" + +floatComplex csecs(floatComplex z) +{ + + floatComplex out; + out = crdivs(FloatComplex(1,0),ccoss(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/dseca.c b/src/c/elementaryFunctions/Trigonometry/sec/dseca.c new file mode 100644 index 00000000..c39f7c6e --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/dseca.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sec.h" +#include <math.h> + +void dseca(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=1/cos(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/dsecs.c b/src/c/elementaryFunctions/Trigonometry/sec/dsecs.c new file mode 100644 index 00000000..5278b371 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/dsecs.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sec.h" + +double dsecs(double in) +{ + return (1/cos(in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/sseca.c b/src/c/elementaryFunctions/Trigonometry/sec/sseca.c new file mode 100644 index 00000000..0ac7cc62 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/sseca.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sec.h" + +void sseca(float* in, int size, float* out) { + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = ssecs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/ssecs.c b/src/c/elementaryFunctions/Trigonometry/sec/ssecs.c new file mode 100644 index 00000000..ad480005 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/ssecs.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sec.h" + +float ssecs(float in) +{ + return (1/cos(in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/zseca.c b/src/c/elementaryFunctions/Trigonometry/sec/zseca.c new file mode 100644 index 00000000..dec365d1 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/zseca.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sec.h" +#include <math.h> + +void zseca(doubleComplex* in, int size,doubleComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = zsecs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sec/zsecs.c b/src/c/elementaryFunctions/Trigonometry/sec/zsecs.c new file mode 100644 index 00000000..9629db71 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sec/zsecs.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sec.h" +#include "cos.h" +#include <math.h> +#include "doubleComplex.h" +#include "division.h" + +doubleComplex zsecs(doubleComplex z) +{ + + doubleComplex out; + out = zrdivs(DoubleComplex(1,0),zcoss(z)); + return out; +}
\ No newline at end of file diff --git a/src/c/elementaryFunctions/Trigonometry/secd/dsecda.c b/src/c/elementaryFunctions/Trigonometry/secd/dsecda.c new file mode 100644 index 00000000..f9f70f0c --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/secd/dsecda.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "secd.h" +#include <math.h> + +void dsecda(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=dsecds(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/secd/dsecds.c b/src/c/elementaryFunctions/Trigonometry/secd/dsecds.c new file mode 100644 index 00000000..aa95f29a --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/secd/dsecds.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + + +#include <math.h> +#include "sec.h" +#include "secd.h" + +double dsecds(double in) +{ + return (1/cos((M_PI/180.0)*in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/secd/ssecda.c b/src/c/elementaryFunctions/Trigonometry/secd/ssecda.c new file mode 100644 index 00000000..c1fc5e53 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/secd/ssecda.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sec.h" +#include "secd.h" + +void ssecda(float* in, int size, float* out) { + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = ssecds(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/secd/ssecds.c b/src/c/elementaryFunctions/Trigonometry/secd/ssecds.c new file mode 100644 index 00000000..eaf3a298 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/secd/ssecds.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#ifdef _WIN32 + #define _USE_MATH_DEFINES +#endif + +#include <math.h> +#include "secd.h" +#include "sec.h" + +float ssecds(float in) { + return (1/cos((M_PI/180.0)*in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/csecha.c b/src/c/elementaryFunctions/Trigonometry/sech/csecha.c new file mode 100644 index 00000000..c8d52d82 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/csecha.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sech.h" +#include <math.h> + +void csecha(floatComplex* in, int size,floatComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = csechs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/csechs.c b/src/c/elementaryFunctions/Trigonometry/sech/csechs.c new file mode 100644 index 00000000..e707e8b1 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/csechs.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sech.h" +#include "sec.h" +#include <math.h> +#include "cos.h" +#include "cosh.h" +#include "floatComplex.h" +#include "division.h" + +floatComplex csechs(floatComplex z) +{ + + floatComplex out; + out = crdivs(FloatComplex(1,0),ccoshs(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/dsecha.c b/src/c/elementaryFunctions/Trigonometry/sech/dsecha.c new file mode 100644 index 00000000..4092c9e8 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/dsecha.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sech.h" +#include <math.h> +void dsecha(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=dsechs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/dsechs.c b/src/c/elementaryFunctions/Trigonometry/sech/dsechs.c new file mode 100644 index 00000000..fdcfd69c --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/dsechs.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sech.h" +#include "cosh.h" +#include "cos.h" + + +double dsechs(double in) +{ + return (1/cosh(in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/ssecha.c b/src/c/elementaryFunctions/Trigonometry/sech/ssecha.c new file mode 100644 index 00000000..d7e71b33 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/ssecha.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sech.h" +#include <math.h> +void ssecha(float* in,int size,float* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=ssechs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/ssechs.c b/src/c/elementaryFunctions/Trigonometry/sech/ssechs.c new file mode 100644 index 00000000..9fcd50b7 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/ssechs.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sech.h" +#include "cosh.h" +#include "cos.h" + + +float ssechs(float in) +{ + return (1/cosh(in)); +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/zsecha.c b/src/c/elementaryFunctions/Trigonometry/sech/zsecha.c new file mode 100644 index 00000000..a3c3189f --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/zsecha.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sech.h" +#include <math.h> + +void zsecha(doubleComplex* in, int size,doubleComplex* out) +{ + int i = 0; + for (i=0;i<size;i++) + { + out[i] = zsechs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/Trigonometry/sech/zsechs.c b/src/c/elementaryFunctions/Trigonometry/sech/zsechs.c new file mode 100644 index 00000000..d23d2ef4 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sech/zsechs.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sech.h" +#include "sec.h" +#include <math.h> +#include "cos.h" +#include "cosh.h" +#include "doubleComplex.h" +#include "division.h" + +doubleComplex zsechs(doubleComplex z) +{ + + doubleComplex out; + out = zrdivs(DoubleComplex(1,0),zcoshs(z)); + return out; +} diff --git a/src/c/elementaryFunctions/Trigonometry/sinc/dsinca.c b/src/c/elementaryFunctions/Trigonometry/sinc/dsinca.c new file mode 100644 index 00000000..0cd24e96 --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sinc/dsinca.c @@ -0,0 +1,46 @@ +/* Copyright (C) 2016 - 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 "sinc.h" +#define PI 3.14159265358979 +void dsinca(double* sample,int size,double* oup) +{ + int j; + for(j=0;j<size;j++) + { + if(sample[j]==0) + { + oup[j]=1; + } + else + { + oup[j]=(sin(sample[j]))/(sample[j]); + } + } +} +/* +int main() +{ + int n; + printf("Enter the length of the array"); + scanf("%d",&n); + double arr[100000]; + int i; + printf("Now enter the element of the array"); + for(i=0;i<n;i++) + { + scanf("%ld",&arr[i]); + } + sinc(arr[],n); +} +*/ diff --git a/src/c/elementaryFunctions/Trigonometry/sinc/int_sinc.h b/src/c/elementaryFunctions/Trigonometry/sinc/int_sinc.h new file mode 100644 index 00000000..0dc969de --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sinc/int_sinc.h @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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 + */ + +#ifndef __INT_SINC_H__ +#define __INT_SINC_H__ + +#define d2sincd2(sample,size,oup) dsinca(sample,size,oup) + +#endif /* !__INT_SINC_H__! */ diff --git a/src/c/elementaryFunctions/Trigonometry/sinc/sinc.h b/src/c/elementaryFunctions/Trigonometry/sinc/sinc.h new file mode 100644 index 00000000..6a5c315b --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sinc/sinc.h @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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 + */ + +#ifndef __SINC_H__ +#define __SINC_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dsinca(double* sample,int size,double* oup); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* __SINC_H__ */ diff --git a/src/c/elementaryFunctions/Trigonometry/sinc/zsinca.c b/src/c/elementaryFunctions/Trigonometry/sinc/zsinca.c new file mode 100644 index 00000000..1f6cf9ba --- /dev/null +++ b/src/c/elementaryFunctions/Trigonometry/sinc/zsinca.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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 "sinc.h" +#include "sin.h" +#include "doubleComplex.h" +#include "division.h" +void zsinca(doubleComplex* sample,int size,doubleComplex* oup) +{ + int j; + double r,i; + for(j=0;j<size;j++) + { + r=zreals(sample[j]); + i=zimags(sample[j]); + if(r==0 && i==0) + { + oup[j]=DoubleComplex(1,0); + } + else + { + oup[j]=zrdivs(zsins(sample[j]),sample[j]); + } + } +} diff --git a/src/c/elementaryFunctions/acosd/cacoss.c b/src/c/elementaryFunctions/acosd/cacoss.c new file mode 100644 index 00000000..97420313 --- /dev/null +++ b/src/c/elementaryFunctions/acosd/cacoss.c @@ -0,0 +1,147 @@ +/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET
+ * Copyright (C) Bruno Pincon
+ *
+ * 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 fonction is a translation of fortran wacos write by Bruno Pincon <Bruno.Pincon@iecn.u-nancy.fr>
+ * REFERENCE
+ * This is a Fortran-77 translation of an algorithm by
+ * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which
+ * appears in their article :
+ * "Implementing the Complex Arcsine and Arccosine
+ * Functions Using Exception Handling", ACM, TOMS,
+ * Vol 23, No. 3, Sept 1997, p. 299-335
+ */
+
+#include "acos.h"
+#include "atan.h"
+#include "log.h"
+#include "log1p.h"
+#include "sqrt.h"
+#include "abs.h"
+#include "lapack.h"
+#include "min.h"
+#include "max.h"
+
+#define localSign(x) (x>0 ? 1.0f : -1.0f)
+
+floatComplex cacoss(floatComplex z) {
+ static float sfltPi = 3.1415926535897932384626433f;
+ static float sfltPi_2 = 1.5707963267948966192313216f;
+ static float sfltLn2 = 0.6931471805599453094172321f;
+ static float sfltAcross = 1.5f;
+ static float sfltBcross = 0.6417f;
+
+ float fltLsup = ssqrts((float) getOverflowThreshold())/8.0f;
+ float fltLinf = 4.0f * ssqrts((float) getUnderflowThreshold());
+ float fltEpsm = ssqrts((float) getRelativeMachinePrecision());
+
+ float fltAbsReal = sabss(creals(z));
+ float fltAbsImg = sabss(cimags(z));
+ float fltSignReal = localSign(creals(z));
+ float fltSignImg = localSign(cimags(z));
+
+ float fltR = 0, fltS = 0, fltA = 0, fltB = 0;
+
+ float fltTemp = 0;
+
+ float _pfltReal = 0;
+ float _pfltImg = 0;
+
+ if( min(fltAbsReal, fltAbsImg) > fltLinf && max(fltAbsReal, fltAbsImg) <= fltLsup)
+ {/* we are in the safe region */
+ fltR = ssqrts( (fltAbsReal + 1 )*(fltAbsReal + 1 ) + fltAbsImg*fltAbsImg);
+ fltS = ssqrts( (fltAbsReal - 1 )*(fltAbsReal - 1 ) + fltAbsImg*fltAbsImg);
+ fltA = 0.5f * ( fltR + fltS );
+ fltB = fltAbsReal / fltA;
+
+
+ /* compute the real part */
+ if(fltB <= sfltBcross)
+ _pfltReal = sacoss(fltB);
+ else if( fltAbsReal <= 1)
+ _pfltReal = satans(ssqrts(0.5f * (fltA + fltAbsReal) * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (1 - fltAbsReal)))) / fltAbsReal);
+ else
+ _pfltReal = satans((fltAbsImg * ssqrts(0.5f * ((fltA + fltAbsReal) / (fltR + (fltAbsReal + 1)) + (fltA + fltAbsReal) / (fltS + (fltAbsReal - 1))))) / fltAbsReal);
+
+ /* compute the imaginary part */
+ if(fltA <= sfltAcross)
+ {
+ float fltImg1 = 0;
+
+ if(fltAbsReal < 1)
+ /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */
+ fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + fltAbsImg*fltAbsImg / (fltS + (1 - fltAbsReal)));
+ else
+ /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */
+ fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (fltAbsReal - 1)));
+ /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */
+ fltTemp = fltImg1 + ssqrts(fltImg1 *( fltA + 1));
+ _pfltImg = slog1ps(fltTemp);
+ }
+ else
+ /* ai = log(A + sqrt(A**2 - 1.d0)) */
+ _pfltImg = slogs(fltA + ssqrts(fltA*fltA - 1));
+ }
+ else
+ {/* evaluation in the special regions ... */
+ if(fltAbsImg <= fltEpsm * sabss(fltAbsReal - 1))
+ {
+ if(fltAbsReal < 1)
+ {
+ _pfltReal = sacoss(fltAbsReal);
+ _pfltImg = fltAbsImg / ssqrts((1 + fltAbsReal) * (1 - fltAbsReal));
+ }
+ else
+ {
+ _pfltReal = 0;
+ if(fltAbsReal <= fltLsup)
+ {
+ fltTemp = (fltAbsReal - 1) + ssqrts((fltAbsReal - 1) * (fltAbsReal + 1));
+ _pfltImg = slog1ps(fltTemp);
+ }
+ else
+ _pfltImg = sfltLn2 + slogs(fltAbsReal);
+ }
+ }
+ else if(fltAbsImg < fltLinf)
+ {
+ _pfltReal = ssqrts(fltAbsImg);
+ _pfltImg = _pfltReal;
+ }
+ else if((fltEpsm * fltAbsImg - 1 >= fltAbsReal))
+ {
+ _pfltReal = sfltPi_2;
+ _pfltImg = sfltLn2 + slogs(fltAbsImg);
+ }
+ else if(fltAbsReal > 1)
+ {
+ _pfltReal = satans(fltAbsImg / fltAbsReal);
+ fltTemp = (fltAbsReal / fltAbsImg)*(fltAbsReal / fltAbsImg);
+ _pfltImg = sfltLn2 + slogs(fltAbsImg) + 0.5f * slog1ps(fltTemp);
+ }
+ else
+ {
+ float fltTemp2 = ssqrts(1 + fltAbsImg*fltAbsImg);
+ _pfltReal = sfltPi_2;
+ fltTemp = 2 * fltAbsImg * (fltAbsImg + fltTemp2);
+ _pfltImg = 0.5f * slog1ps(fltTemp);
+ }
+ }
+ if(fltSignReal < 0)
+ _pfltReal = sfltPi - _pfltReal;
+
+ if(fltAbsImg != 0 || fltSignReal < 0)
+ _pfltImg = - fltSignImg * _pfltImg;
+
+ return FloatComplex(_pfltReal, _pfltImg);
+}
diff --git a/src/c/elementaryFunctions/acosd/dacosda.c b/src/c/elementaryFunctions/acosd/dacosda.c new file mode 100644 index 00000000..2e95e9fc --- /dev/null +++ b/src/c/elementaryFunctions/acosd/dacosda.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acosd.h" + +void dacosda(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dacosds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acosd/dacosds.c b/src/c/elementaryFunctions/acosd/dacosds.c new file mode 100644 index 00000000..8f59dab6 --- /dev/null +++ b/src/c/elementaryFunctions/acosd/dacosds.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acosd.h" + +double dacosds(double x) +{ + return ((acos(x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/acosd/sacosda.c b/src/c/elementaryFunctions/acosd/sacosda.c new file mode 100644 index 00000000..440d9dc3 --- /dev/null +++ b/src/c/elementaryFunctions/acosd/sacosda.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acosd.h" + +void sacosda(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sacosds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acosd/sacosds.c b/src/c/elementaryFunctions/acosd/sacosds.c new file mode 100644 index 00000000..c166ff0e --- /dev/null +++ b/src/c/elementaryFunctions/acosd/sacosds.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acosd.h" + +double sacosds(float x) +{ + return ((acos(x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/acot/cacota.c b/src/c/elementaryFunctions/acot/cacota.c new file mode 100644 index 00000000..64e82b21 --- /dev/null +++ b/src/c/elementaryFunctions/acot/cacota.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acot.h" +#include "floatComplex.h" + +void cacota(floatComplex* x, int size, floatComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = cacots(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acot/cacots.c b/src/c/elementaryFunctions/acot/cacots.c new file mode 100644 index 00000000..f4c6236e --- /dev/null +++ b/src/c/elementaryFunctions/acot/cacots.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acot.h" +#include "division.h" +#include "floatComplex.h" +#include "atan.h" + +floatComplex cacots(floatComplex x) +{ + floatComplex xinv; + xinv = crdivs(FloatComplex(1,0),x); + return catans(xinv); +} diff --git a/src/c/elementaryFunctions/acot/dacota.c b/src/c/elementaryFunctions/acot/dacota.c new file mode 100644 index 00000000..794d0817 --- /dev/null +++ b/src/c/elementaryFunctions/acot/dacota.c @@ -0,0 +1,20 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acot.h" + +void dacota(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = dacots(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acot/dacots.c b/src/c/elementaryFunctions/acot/dacots.c new file mode 100644 index 00000000..42ce7b57 --- /dev/null +++ b/src/c/elementaryFunctions/acot/dacots.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acot.h" + +double dacots(double x) +{ + return ((3.14159265359/2)-atan(x)); +} diff --git a/src/c/elementaryFunctions/acot/sacota.c b/src/c/elementaryFunctions/acot/sacota.c new file mode 100644 index 00000000..b99a7739 --- /dev/null +++ b/src/c/elementaryFunctions/acot/sacota.c @@ -0,0 +1,20 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acot.h" + +void sacota(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = sacots(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acot/sacots.c b/src/c/elementaryFunctions/acot/sacots.c new file mode 100644 index 00000000..db6dca2f --- /dev/null +++ b/src/c/elementaryFunctions/acot/sacots.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acot.h" + +float sacots(float x) +{ + return ((3.14159265359/2)-atanf(x)); +} diff --git a/src/c/elementaryFunctions/acot/zacota.c b/src/c/elementaryFunctions/acot/zacota.c new file mode 100644 index 00000000..d08ebddd --- /dev/null +++ b/src/c/elementaryFunctions/acot/zacota.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acot.h" +#include "doubleComplex.h" + +void zacota(doubleComplex* x, int size, doubleComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = zacots(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acot/zacots.c b/src/c/elementaryFunctions/acot/zacots.c new file mode 100644 index 00000000..3bf99b2c --- /dev/null +++ b/src/c/elementaryFunctions/acot/zacots.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acot.h" +#include "division.h" +#include "doubleComplex.h" +#include "atan.h" + +doubleComplex zacots(doubleComplex x) +{ + doubleComplex xinv; + xinv = zrdivs(DoubleComplex(1,0),x); + return zatans(xinv); +} diff --git a/src/c/elementaryFunctions/acotd/dacotda.c b/src/c/elementaryFunctions/acotd/dacotda.c new file mode 100644 index 00000000..a2b64856 --- /dev/null +++ b/src/c/elementaryFunctions/acotd/dacotda.c @@ -0,0 +1,20 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acotd.h" + +void dacotda(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = dacotds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acotd/dacotds.c b/src/c/elementaryFunctions/acotd/dacotds.c new file mode 100644 index 00000000..f149ac23 --- /dev/null +++ b/src/c/elementaryFunctions/acotd/dacotds.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acotd.h" + +double dacotds(double x) +{ + return ((((3.14159265359/2)-atan(x))*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/acotd/sacotda.c b/src/c/elementaryFunctions/acotd/sacotda.c new file mode 100644 index 00000000..39503044 --- /dev/null +++ b/src/c/elementaryFunctions/acotd/sacotda.c @@ -0,0 +1,20 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acotd.h" + +void sacotda(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = sacotds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acotd/sacotds.c b/src/c/elementaryFunctions/acotd/sacotds.c new file mode 100644 index 00000000..25797532 --- /dev/null +++ b/src/c/elementaryFunctions/acotd/sacotds.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acotd.h" + +float sacotds(float x) +{ + return ((((3.14159265359/2)-atanf(x))*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/acoth/cacotha.c b/src/c/elementaryFunctions/acoth/cacotha.c new file mode 100644 index 00000000..f4e72dc6 --- /dev/null +++ b/src/c/elementaryFunctions/acoth/cacotha.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acoth.h" +#include "floatComplex.h" + +void cacotha(floatComplex* x, int size, floatComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = cacoths(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acoth/cacoths.c b/src/c/elementaryFunctions/acoth/cacoths.c new file mode 100644 index 00000000..658c227a --- /dev/null +++ b/src/c/elementaryFunctions/acoth/cacoths.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acoth.h" +#include "division.h" +#include "floatComplex.h" +#include "atanh.h" + +floatComplex cacoths(floatComplex x) +{ + floatComplex xinv; + xinv = crdivs(FloatComplex(1,0),x); + return catanhs(xinv); +} diff --git a/src/c/elementaryFunctions/acoth/dacotha.c b/src/c/elementaryFunctions/acoth/dacotha.c new file mode 100644 index 00000000..b97b9039 --- /dev/null +++ b/src/c/elementaryFunctions/acoth/dacotha.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acoth.h" + +void dacotha(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dacoths(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acoth/dacoths.c b/src/c/elementaryFunctions/acoth/dacoths.c new file mode 100644 index 00000000..aa20a7bd --- /dev/null +++ b/src/c/elementaryFunctions/acoth/dacoths.c @@ -0,0 +1,20 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acoth.h" +#include "log.h" + + +double dacoths(double x) +{ + return (log((1+x)/(x-1))/2); +} diff --git a/src/c/elementaryFunctions/acoth/sacotha.c b/src/c/elementaryFunctions/acoth/sacotha.c new file mode 100644 index 00000000..383f1882 --- /dev/null +++ b/src/c/elementaryFunctions/acoth/sacotha.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acoth.h" + +void sacotha(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sacoths(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acoth/sacoths.c b/src/c/elementaryFunctions/acoth/sacoths.c new file mode 100644 index 00000000..9a2137a6 --- /dev/null +++ b/src/c/elementaryFunctions/acoth/sacoths.c @@ -0,0 +1,19 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acoth.h" +#include "log.h" + +float sacoths(float x) +{ + return (log((1+x)/(x-1))/2); +} diff --git a/src/c/elementaryFunctions/acoth/zacotha.c b/src/c/elementaryFunctions/acoth/zacotha.c new file mode 100644 index 00000000..3eb335ea --- /dev/null +++ b/src/c/elementaryFunctions/acoth/zacotha.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "acoth.h" +#include "doubleComplex.h" + +void zacotha(doubleComplex* x, int size, doubleComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = zacoths(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acoth/zacoths.c b/src/c/elementaryFunctions/acoth/zacoths.c new file mode 100644 index 00000000..bbb387b0 --- /dev/null +++ b/src/c/elementaryFunctions/acoth/zacoths.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acoth.h" +#include "division.h" +#include "doubleComplex.h" +#include "atanh.h" + +doubleComplex zacoths(doubleComplex x) +{ + doubleComplex xinv; + xinv = zrdivs(DoubleComplex(1,0),x); + return zatanhs(xinv); +} diff --git a/src/c/elementaryFunctions/acsc/cacsca.c b/src/c/elementaryFunctions/acsc/cacsca.c new file mode 100644 index 00000000..0512a20f --- /dev/null +++ b/src/c/elementaryFunctions/acsc/cacsca.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" +#include "floatComplex.h" + +void cacsca(floatComplex* x, int size, floatComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = cacscs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsc/cacscs.c b/src/c/elementaryFunctions/acsc/cacscs.c new file mode 100644 index 00000000..9eea94e5 --- /dev/null +++ b/src/c/elementaryFunctions/acsc/cacscs.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" +#include "floatComplex.h" +#include "asin.h" +#include "division.h" + +floatComplex cacscs(floatComplex x) +{ + floatComplex xinv; + xinv = crdivs(FloatComplex(1,0),x); + return casins(xinv); +} diff --git a/src/c/elementaryFunctions/acsc/dacsca.c b/src/c/elementaryFunctions/acsc/dacsca.c new file mode 100644 index 00000000..3f00d216 --- /dev/null +++ b/src/c/elementaryFunctions/acsc/dacsca.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" + +void dacsca(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dacscs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsc/dacscs.c b/src/c/elementaryFunctions/acsc/dacscs.c new file mode 100644 index 00000000..4b5ac25d --- /dev/null +++ b/src/c/elementaryFunctions/acsc/dacscs.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" + +double dacscs(double x) +{ + return asin(1/x); +} diff --git a/src/c/elementaryFunctions/acsc/sacsca.c b/src/c/elementaryFunctions/acsc/sacsca.c new file mode 100644 index 00000000..79e6bf95 --- /dev/null +++ b/src/c/elementaryFunctions/acsc/sacsca.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" + +void sacsca(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sacscs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsc/sacscs.c b/src/c/elementaryFunctions/acsc/sacscs.c new file mode 100644 index 00000000..e91fa398 --- /dev/null +++ b/src/c/elementaryFunctions/acsc/sacscs.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" + +float sacscs(float x) +{ + return asin(1/x); +} diff --git a/src/c/elementaryFunctions/acsc/zacsca.c b/src/c/elementaryFunctions/acsc/zacsca.c new file mode 100644 index 00000000..164406f6 --- /dev/null +++ b/src/c/elementaryFunctions/acsc/zacsca.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" +#include "doubleComplex.h" + +void zacsca(doubleComplex* x, int size, doubleComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = zacscs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsc/zacscs.c b/src/c/elementaryFunctions/acsc/zacscs.c new file mode 100644 index 00000000..91bb6c8c --- /dev/null +++ b/src/c/elementaryFunctions/acsc/zacscs.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "acsc.h" +#include "doubleComplex.h" +#include "division.h" +#include "asin.h" + +doubleComplex zacscs(doubleComplex x) +{ + doubleComplex xinv; + xinv = zrdivs(DoubleComplex(1,0),x); + return zasins(xinv); +} diff --git a/src/c/elementaryFunctions/acscd/dacscda.c b/src/c/elementaryFunctions/acscd/dacscda.c new file mode 100644 index 00000000..84eeaed2 --- /dev/null +++ b/src/c/elementaryFunctions/acscd/dacscda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acscd.h" + +void dacscda(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dacscds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acscd/dacscds.c b/src/c/elementaryFunctions/acscd/dacscds.c new file mode 100644 index 00000000..27512ada --- /dev/null +++ b/src/c/elementaryFunctions/acscd/dacscds.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acscd.h" + +double dacscds(double x) +{ + return ((asin(1/x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/acscd/sacscda.c b/src/c/elementaryFunctions/acscd/sacscda.c new file mode 100644 index 00000000..a5d130cf --- /dev/null +++ b/src/c/elementaryFunctions/acscd/sacscda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acscd.h" + +void sacscda(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sacscds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acscd/sacscds.c b/src/c/elementaryFunctions/acscd/sacscds.c new file mode 100644 index 00000000..1c820c2a --- /dev/null +++ b/src/c/elementaryFunctions/acscd/sacscds.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acscd.h" + +float sacscds(float x) +{ + return ((asin(1/x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/acsch/cacscha.c b/src/c/elementaryFunctions/acsch/cacscha.c new file mode 100644 index 00000000..0512a20f --- /dev/null +++ b/src/c/elementaryFunctions/acsch/cacscha.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" +#include "floatComplex.h" + +void cacsca(floatComplex* x, int size, floatComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = cacscs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsch/cacschs.c b/src/c/elementaryFunctions/acsch/cacschs.c new file mode 100644 index 00000000..a250b9dc --- /dev/null +++ b/src/c/elementaryFunctions/acsch/cacschs.c @@ -0,0 +1,30 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsch.h" +#include "floatComplex.h" +#include "asin.h" +#include "division.h" + +floatComplex cacschs(floatComplex x) +{ + floatComplex xinv; + floatComplex temp; + xinv = crdivs(FloatComplex(1,0),x); + temp = sqrt(1+cmuls(xinv*xinv)) + +} + + + + + +log(sqrt(1+(1/(x*x)))+(1/x)); diff --git a/src/c/elementaryFunctions/acsch/dacscha.c b/src/c/elementaryFunctions/acsch/dacscha.c new file mode 100644 index 00000000..e7177105 --- /dev/null +++ b/src/c/elementaryFunctions/acsch/dacscha.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsch.h" + +void dacscha(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dacschs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsch/dacschs.c b/src/c/elementaryFunctions/acsch/dacschs.c new file mode 100644 index 00000000..b0a32291 --- /dev/null +++ b/src/c/elementaryFunctions/acsch/dacschs.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsch.h" + +double dacschs(double x) +{ + return log(sqrt(1+(1/(x*x)))+(1/x)); +} diff --git a/src/c/elementaryFunctions/acsch/sacscha.c b/src/c/elementaryFunctions/acsch/sacscha.c new file mode 100644 index 00000000..c2321c6d --- /dev/null +++ b/src/c/elementaryFunctions/acsch/sacscha.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsch.h" + +void sacscha(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sacschs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsch/sacschs.c b/src/c/elementaryFunctions/acsch/sacschs.c new file mode 100644 index 00000000..031773b9 --- /dev/null +++ b/src/c/elementaryFunctions/acsch/sacschs.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsch.h" + +double sacschs(float x) +{ + return log(sqrt(1+(1/(x*x)))+(1/x)); +} diff --git a/src/c/elementaryFunctions/acsch/zacscha.c b/src/c/elementaryFunctions/acsch/zacscha.c new file mode 100644 index 00000000..164406f6 --- /dev/null +++ b/src/c/elementaryFunctions/acsch/zacscha.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" +#include "doubleComplex.h" + +void zacsca(doubleComplex* x, int size, doubleComplex* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = zacscs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/acsch/zacschs.c b/src/c/elementaryFunctions/acsch/zacschs.c new file mode 100644 index 00000000..6e33e25b --- /dev/null +++ b/src/c/elementaryFunctions/acsch/zacschs.c @@ -0,0 +1,22 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "acsc.h" +#include "doubleComplex.h" +#include "division.h" +#include "asin.h" + +doubleComplex zacscs(doubleComplex x) +{ + doubleComplex xinv; + xinv = zrdivs(DoubleComplex(1,0),x); + return zasins(xinv); +} diff --git a/src/c/elementaryFunctions/asec/daseca.c b/src/c/elementaryFunctions/asec/daseca.c new file mode 100644 index 00000000..2cf1dcd8 --- /dev/null +++ b/src/c/elementaryFunctions/asec/daseca.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asec.h" + +void daseca(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dasecs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asec/dasecs.c b/src/c/elementaryFunctions/asec/dasecs.c new file mode 100644 index 00000000..4f2f766e --- /dev/null +++ b/src/c/elementaryFunctions/asec/dasecs.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asec.h" + +double dasecs(double x) +{ + return acos(1/x); +} diff --git a/src/c/elementaryFunctions/asec/saseca.c b/src/c/elementaryFunctions/asec/saseca.c new file mode 100644 index 00000000..3b0afd84 --- /dev/null +++ b/src/c/elementaryFunctions/asec/saseca.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asec.h" + +void saseca(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sasecs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asec/sasecs.c b/src/c/elementaryFunctions/asec/sasecs.c new file mode 100644 index 00000000..5db46a61 --- /dev/null +++ b/src/c/elementaryFunctions/asec/sasecs.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asec.h" + +double sasecs(float x) +{ + return acos(1/x); +} diff --git a/src/c/elementaryFunctions/asecd/dasecda.c b/src/c/elementaryFunctions/asecd/dasecda.c new file mode 100644 index 00000000..e692762c --- /dev/null +++ b/src/c/elementaryFunctions/asecd/dasecda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asecd.h" + +void dasecda(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dasecds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asecd/dasecds.c b/src/c/elementaryFunctions/asecd/dasecds.c new file mode 100644 index 00000000..dead3189 --- /dev/null +++ b/src/c/elementaryFunctions/asecd/dasecds.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asecd.h" + +double dasecds(double x) +{ + return ((acos(1/x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/asecd/sasecda.c b/src/c/elementaryFunctions/asecd/sasecda.c new file mode 100644 index 00000000..5c9a42fd --- /dev/null +++ b/src/c/elementaryFunctions/asecd/sasecda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asecd.h" + +void sasecda(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sasecds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asecd/sasecds.c b/src/c/elementaryFunctions/asecd/sasecds.c new file mode 100644 index 00000000..2e265178 --- /dev/null +++ b/src/c/elementaryFunctions/asecd/sasecds.c @@ -0,0 +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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asecd.h" + +double sasecds(float x) +{ + return ((acos(1/x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/asech/dasecha.c b/src/c/elementaryFunctions/asech/dasecha.c new file mode 100644 index 00000000..7309e3f2 --- /dev/null +++ b/src/c/elementaryFunctions/asech/dasecha.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asech.h" + +void dasecha(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dasechs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asech/dasechs.c b/src/c/elementaryFunctions/asech/dasechs.c new file mode 100644 index 00000000..ad5756ae --- /dev/null +++ b/src/c/elementaryFunctions/asech/dasechs.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asech.h" +#include "log.h" + +double dasechs(double x) +{ + return log(sqrt((1/x)+1)*sqrt((1/x)-1)+(1/x)); +} diff --git a/src/c/elementaryFunctions/asech/sasecha.c b/src/c/elementaryFunctions/asech/sasecha.c new file mode 100644 index 00000000..f28eace6 --- /dev/null +++ b/src/c/elementaryFunctions/asech/sasecha.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asech.h" + +void sasecha(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sasechs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asech/sasechs.c b/src/c/elementaryFunctions/asech/sasechs.c new file mode 100644 index 00000000..b1a1cab2 --- /dev/null +++ b/src/c/elementaryFunctions/asech/sasechs.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#include <math.h> +#include "asech.h" +#include "log.h" + +double sasechs(float x) +{ + return log(sqrt((1/x)+1)*sqrt((1/x)-1)+(1/x)); +} diff --git a/src/c/elementaryFunctions/asind/dasinda.c b/src/c/elementaryFunctions/asind/dasinda.c new file mode 100644 index 00000000..4c7d9af7 --- /dev/null +++ b/src/c/elementaryFunctions/asind/dasinda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "asind.h" + +void dasinda(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = dasinds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asind/dasinds.c b/src/c/elementaryFunctions/asind/dasinds.c new file mode 100644 index 00000000..bc028a15 --- /dev/null +++ b/src/c/elementaryFunctions/asind/dasinds.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "asind.h" + +double dasinds(double x) +{ + return ((asin(x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/asind/sasinda.c b/src/c/elementaryFunctions/asind/sasinda.c new file mode 100644 index 00000000..100d09cb --- /dev/null +++ b/src/c/elementaryFunctions/asind/sasinda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "asind.h" + +void sasinda(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = sasinds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/asind/sasinds.c b/src/c/elementaryFunctions/asind/sasinds.c new file mode 100644 index 00000000..1bbb3624 --- /dev/null +++ b/src/c/elementaryFunctions/asind/sasinds.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "asind.h" + +double sasinds(float x) +{ + return ((asin(x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/atan/datans.c b/src/c/elementaryFunctions/atan/datans.c index a16df82d..11785c04 100644 --- a/src/c/elementaryFunctions/atan/datans.c +++ b/src/c/elementaryFunctions/atan/datans.c @@ -13,6 +13,7 @@ #include <math.h> #include "atan.h" -double datans(double x) { +double datans(double x) +{ return (atan(x)); } diff --git a/src/c/elementaryFunctions/atand/datanda.c b/src/c/elementaryFunctions/atand/datanda.c new file mode 100644 index 00000000..5bf8cd9c --- /dev/null +++ b/src/c/elementaryFunctions/atand/datanda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "atand.h" + +void datanda(double* x, int size, double* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = datands(x[i]); + } +} diff --git a/src/c/elementaryFunctions/atand/datands.c b/src/c/elementaryFunctions/atand/datands.c new file mode 100644 index 00000000..8346ebe9 --- /dev/null +++ b/src/c/elementaryFunctions/atand/datands.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "atand.h" + +double datands(double x) +{ + return ((atan(x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/atand/satanda.c b/src/c/elementaryFunctions/atand/satanda.c new file mode 100644 index 00000000..1669d69b --- /dev/null +++ b/src/c/elementaryFunctions/atand/satanda.c @@ -0,0 +1,21 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include "atand.h" + +void satanda(float* x, int size, float* y) +{ + int i = 0; + for (i = 0; i < size; ++i) + { + y[i] = satands(x[i]); + } +} diff --git a/src/c/elementaryFunctions/atand/satands.c b/src/c/elementaryFunctions/atand/satands.c new file mode 100644 index 00000000..49ee6286 --- /dev/null +++ b/src/c/elementaryFunctions/atand/satands.c @@ -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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#include <math.h> +#include "atand.h" + +double satands(float x) +{ + return ((atan(x)*180)/3.14159265359); +} diff --git a/src/c/elementaryFunctions/bitand/u16bitanda.c b/src/c/elementaryFunctions/bitand/u16bitanda.c new file mode 100644 index 00000000..ff92399c --- /dev/null +++ b/src/c/elementaryFunctions/bitand/u16bitanda.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitand.h" + +void u16bitanda(uint16* x,uint16* y,int size,uint16* out) +{ + int i = 0; + for(i=0;i<size;i++) + { + out[i] = u16bitands(x[i],y[i]); + } + + +} + diff --git a/src/c/elementaryFunctions/bitand/u16bitands.c b/src/c/elementaryFunctions/bitand/u16bitands.c new file mode 100644 index 00000000..2fb78d17 --- /dev/null +++ b/src/c/elementaryFunctions/bitand/u16bitands.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "bitand.h" + +uint16 u16bitands(uint16 x,uint16 y) +{ + return (x & y); + +} diff --git a/src/c/elementaryFunctions/bitand/u8bitanda.c b/src/c/elementaryFunctions/bitand/u8bitanda.c new file mode 100644 index 00000000..1622ec57 --- /dev/null +++ b/src/c/elementaryFunctions/bitand/u8bitanda.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "bitand.h" + +void u8bitanda(uint8* x,uint8* y,int size,uint8* out) +{ + int i = 0; + for(i=0;i<size;i++) + { + out[i] = u8bitands(x[i],y[i]); + } + + +} + diff --git a/src/c/elementaryFunctions/bitand/u8bitands.c b/src/c/elementaryFunctions/bitand/u8bitands.c new file mode 100644 index 00000000..30dde0fd --- /dev/null +++ b/src/c/elementaryFunctions/bitand/u8bitands.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitand.h" + +uint8 u8bitands(uint8 x,uint8 y) +{ + return (x & y); + +} diff --git a/src/c/elementaryFunctions/bitcmp/u16bitcmpa.c b/src/c/elementaryFunctions/bitcmp/u16bitcmpa.c new file mode 100644 index 00000000..2d25d8d9 --- /dev/null +++ b/src/c/elementaryFunctions/bitcmp/u16bitcmpa.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "bitcmp.h" +void u16bitcmpa(uint16 *x,uint16 y,int size,uint16* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i] = u16bitcmps(x[i],y); + + } + + +} + + diff --git a/src/c/elementaryFunctions/bitcmp/u16bitcmps.c b/src/c/elementaryFunctions/bitcmp/u16bitcmps.c new file mode 100644 index 00000000..1cc2e296 --- /dev/null +++ b/src/c/elementaryFunctions/bitcmp/u16bitcmps.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "bitcmp.h" +uint16 u16bitcmps(uint16 x,uint16 y) +{ + + return (~x); + +} + + diff --git a/src/c/elementaryFunctions/bitcmp/u8bitcmpa.c b/src/c/elementaryFunctions/bitcmp/u8bitcmpa.c new file mode 100644 index 00000000..c368f7d7 --- /dev/null +++ b/src/c/elementaryFunctions/bitcmp/u8bitcmpa.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "bitcmp.h" +void u8bitcmpa(uint8 *x,uint8 y,int size,uint8* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i] = u8bitcmps(x[i],y); + + } + + +} + + diff --git a/src/c/elementaryFunctions/bitcmp/u8bitcmps.c b/src/c/elementaryFunctions/bitcmp/u8bitcmps.c new file mode 100644 index 00000000..9d1affe0 --- /dev/null +++ b/src/c/elementaryFunctions/bitcmp/u8bitcmps.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "bitcmp.h" +uint8 u8bitcmps(uint8 x,uint8 y) +{ + return (~x); + +} + + diff --git a/src/c/elementaryFunctions/bitget/u16bitgets.c b/src/c/elementaryFunctions/bitget/u16bitgets.c new file mode 100644 index 00000000..659d785b --- /dev/null +++ b/src/c/elementaryFunctions/bitget/u16bitgets.c @@ -0,0 +1,34 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitget.h" +#include<stdio.h> + +uint16 u16bitgets(uint16 value,int position) +{ + + value = value >> (position -1); + value = value & 1; + return value; + + /*unsigned char mask = 1<<(position-1); + uint16 bit = value&mask; + if(bit > 0) + { + return 1; + } + else + { + return 0; + }*/ + +} diff --git a/src/c/elementaryFunctions/bitget/u8bitgets.c b/src/c/elementaryFunctions/bitget/u8bitgets.c new file mode 100644 index 00000000..03cc9097 --- /dev/null +++ b/src/c/elementaryFunctions/bitget/u8bitgets.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "bitget.h" +#include<stdio.h> + +uint8 u8bitgets(uint8 value,int position) +{ + + value = value >> (position -1); + value = value & 1; + return value; + + /*unsigned char mask = 1<<(position-1); + uint8 bit = value&mask; + if(bit > 0) + { + return 1; + } + else + { + return 0; + }*/ + +} diff --git a/src/c/elementaryFunctions/bitor/u16bitora.c b/src/c/elementaryFunctions/bitor/u16bitora.c new file mode 100644 index 00000000..152ab53b --- /dev/null +++ b/src/c/elementaryFunctions/bitor/u16bitora.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "bitor.h" + +void u16bitora(uint16* x,uint16* y,int size,uint16* out) +{ + int i = 0; + for(i=0;i<size;i++) + { + out[i] = u16bitors(x[i],y[i]); + } + + +} + diff --git a/src/c/elementaryFunctions/bitor/u16bitors.c b/src/c/elementaryFunctions/bitor/u16bitors.c new file mode 100644 index 00000000..984191ed --- /dev/null +++ b/src/c/elementaryFunctions/bitor/u16bitors.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitor.h" + +uint16 u16bitors(uint16 x,uint16 y) +{ + return (x | y); + +} diff --git a/src/c/elementaryFunctions/bitor/u8bitora.c b/src/c/elementaryFunctions/bitor/u8bitora.c new file mode 100644 index 00000000..83d08d50 --- /dev/null +++ b/src/c/elementaryFunctions/bitor/u8bitora.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "bitor.h" + +void u8bitora(uint8* x,uint8* y,int size,uint8* out) +{ + int i = 0; + for(i=0;i<size;i++) + { + out[i] = u8bitors(x[i],y[i]); + } + + +} + diff --git a/src/c/elementaryFunctions/bitor/u8bitors.c b/src/c/elementaryFunctions/bitor/u8bitors.c new file mode 100644 index 00000000..9327effe --- /dev/null +++ b/src/c/elementaryFunctions/bitor/u8bitors.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitor.h" + +uint8 u8bitors(uint8 x,uint8 y) +{ + return (x | y); + +} diff --git a/src/c/elementaryFunctions/bitset/u16bitsets.c b/src/c/elementaryFunctions/bitset/u16bitsets.c new file mode 100644 index 00000000..179b7f21 --- /dev/null +++ b/src/c/elementaryFunctions/bitset/u16bitsets.c @@ -0,0 +1,30 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitset.h" +#include<stdio.h> + +uint16 u16bitsets(uint16 value,int position,int bit_value) +{ + if(bit_value==1) + { + unsigned char mask1 = 1 << (position-1) ; /* we could cast to unsigned char, just to be safe */ + return (mask1 | value); + } + else + { + unsigned char mask2 = ~(1 << (position-1)); /*we could cast to unsigned char, just to be safe*/ + return (mask2 & value); + + } + +} diff --git a/src/c/elementaryFunctions/bitset/u8bitsets.c b/src/c/elementaryFunctions/bitset/u8bitsets.c new file mode 100644 index 00000000..1ff0d16f --- /dev/null +++ b/src/c/elementaryFunctions/bitset/u8bitsets.c @@ -0,0 +1,30 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitset.h" +#include<stdio.h> + +uint8 u8bitsets(uint8 value,int position,int bit_value) +{ + if(bit_value==1) + { + unsigned char mask1 = 1 << (position-1) ; /* we could cast to unsigned char, just to be safe */ + return (mask1 | value); + } + else + { + unsigned char mask2 = ~(1 << (position-1)); /* we could cast to unsigned char, just to be safe */ + return (mask2 & value); + + } + +} diff --git a/src/c/elementaryFunctions/bitxor/u16bitxora.c b/src/c/elementaryFunctions/bitxor/u16bitxora.c new file mode 100644 index 00000000..413caa60 --- /dev/null +++ b/src/c/elementaryFunctions/bitxor/u16bitxora.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "bitxor.h" + +void u16bitxora(uint16* x,uint16* y,int size,uint16* out) +{ + int i = 0; + for(i=0;i<size;i++) + { + out[i] = u16bitxors(x[i],y[i]); + } + + +} + diff --git a/src/c/elementaryFunctions/bitxor/u16bitxors.c b/src/c/elementaryFunctions/bitxor/u16bitxors.c new file mode 100644 index 00000000..b60fbb67 --- /dev/null +++ b/src/c/elementaryFunctions/bitxor/u16bitxors.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitxor.h" + +uint16 u16bitxors(uint16 x,uint16 y) +{ + return (x ^ y); + +} diff --git a/src/c/elementaryFunctions/bitxor/u8bitxora.c b/src/c/elementaryFunctions/bitxor/u8bitxora.c new file mode 100644 index 00000000..7463487e --- /dev/null +++ b/src/c/elementaryFunctions/bitxor/u8bitxora.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "bitxor.h" + +void u8bitxora(uint8* x,uint8* y,int size,uint8* out) +{ + int i = 0; + for(i=0;i<size;i++) + { + out[i] = u8bitxors(x[i],y[i]); + } + + +} + diff --git a/src/c/elementaryFunctions/bitxor/u8bitxors.c b/src/c/elementaryFunctions/bitxor/u8bitxors.c new file mode 100644 index 00000000..338f5482 --- /dev/null +++ b/src/c/elementaryFunctions/bitxor/u8bitxors.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "bitxor.h" + +uint8 u8bitxors(uint8 x,uint8 y) +{ + return (x ^ y); + +} diff --git a/src/c/elementaryFunctions/ceil/i16ceila.c b/src/c/elementaryFunctions/ceil/i16ceila.c new file mode 100644 index 00000000..7b639e22 --- /dev/null +++ b/src/c/elementaryFunctions/ceil/i16ceila.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +void i16ceila(int16* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16ceils(x[i]); +} diff --git a/src/c/elementaryFunctions/ceil/i16ceils.c b/src/c/elementaryFunctions/ceil/i16ceils.c new file mode 100644 index 00000000..0b13c7e7 --- /dev/null +++ b/src/c/elementaryFunctions/ceil/i16ceils.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +int16 i16ceils(int16 x) { + return (int16)(ceilf(x)); +} diff --git a/src/c/elementaryFunctions/ceil/i8ceila.c b/src/c/elementaryFunctions/ceil/i8ceila.c new file mode 100644 index 00000000..aab8f78f --- /dev/null +++ b/src/c/elementaryFunctions/ceil/i8ceila.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +void i8ceila(int8* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8ceils(x[i]); +} diff --git a/src/c/elementaryFunctions/ceil/i8ceils.c b/src/c/elementaryFunctions/ceil/i8ceils.c new file mode 100644 index 00000000..901f87c6 --- /dev/null +++ b/src/c/elementaryFunctions/ceil/i8ceils.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +int8 i8ceils(int8 x) { + return (int8)(ceilf(x)); +} diff --git a/src/c/elementaryFunctions/ceil/u16ceila.c b/src/c/elementaryFunctions/ceil/u16ceila.c new file mode 100644 index 00000000..cde894dc --- /dev/null +++ b/src/c/elementaryFunctions/ceil/u16ceila.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +void u16ceila(uint16* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16ceils(x[i]); +} diff --git a/src/c/elementaryFunctions/ceil/u16ceils.c b/src/c/elementaryFunctions/ceil/u16ceils.c new file mode 100644 index 00000000..1110b4b1 --- /dev/null +++ b/src/c/elementaryFunctions/ceil/u16ceils.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +uint16 u16ceils(uint16 x) { + return (uint16)(ceilf(x)); +} diff --git a/src/c/elementaryFunctions/ceil/u8ceila.c b/src/c/elementaryFunctions/ceil/u8ceila.c new file mode 100644 index 00000000..3d05a504 --- /dev/null +++ b/src/c/elementaryFunctions/ceil/u8ceila.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +void u8ceila(uint8* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8ceils(x[i]); +} diff --git a/src/c/elementaryFunctions/ceil/u8ceils.c b/src/c/elementaryFunctions/ceil/u8ceils.c new file mode 100644 index 00000000..c1ba0b0a --- /dev/null +++ b/src/c/elementaryFunctions/ceil/u8ceils.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "ceil.h" + +uint8 u8ceils(uint8 x) { + return (uint8)(ceilf(x)); +} diff --git a/src/c/elementaryFunctions/cos/i16cosa.c b/src/c/elementaryFunctions/cos/i16cosa.c new file mode 100644 index 00000000..426eeabc --- /dev/null +++ b/src/c/elementaryFunctions/cos/i16cosa.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "cos.h" + +void i16cosa(int16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i16coss(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cos/i16coss.c b/src/c/elementaryFunctions/cos/i16coss.c new file mode 100644 index 00000000..787f713b --- /dev/null +++ b/src/c/elementaryFunctions/cos/i16coss.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "cos.h" + +float i16coss(int16 x) { + return (cos((double)x)); +} diff --git a/src/c/elementaryFunctions/cos/i8cosa.c b/src/c/elementaryFunctions/cos/i8cosa.c new file mode 100644 index 00000000..2f0053c8 --- /dev/null +++ b/src/c/elementaryFunctions/cos/i8cosa.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cos.h" + +void i8cosa(int8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i8coss(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cos/i8coss.c b/src/c/elementaryFunctions/cos/i8coss.c new file mode 100644 index 00000000..4b344e1d --- /dev/null +++ b/src/c/elementaryFunctions/cos/i8coss.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "cos.h" + +float i8coss(int8 x) { + return (cos((double)x)); +} diff --git a/src/c/elementaryFunctions/cos/u16cosa.c b/src/c/elementaryFunctions/cos/u16cosa.c new file mode 100644 index 00000000..6e752e2b --- /dev/null +++ b/src/c/elementaryFunctions/cos/u16cosa.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cos.h" + +void u16cosa(uint16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u16coss(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cos/u16coss.c b/src/c/elementaryFunctions/cos/u16coss.c new file mode 100644 index 00000000..fb25ac56 --- /dev/null +++ b/src/c/elementaryFunctions/cos/u16coss.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "cos.h" + +float u16coss(uint16 x) { + return (cos((double)x)); +} diff --git a/src/c/elementaryFunctions/cos/u8cosa.c b/src/c/elementaryFunctions/cos/u8cosa.c new file mode 100644 index 00000000..ad129e12 --- /dev/null +++ b/src/c/elementaryFunctions/cos/u8cosa.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cos.h" + +void u8cosa(uint8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u8coss(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cos/u8coss.c b/src/c/elementaryFunctions/cos/u8coss.c new file mode 100644 index 00000000..26e2eba5 --- /dev/null +++ b/src/c/elementaryFunctions/cos/u8coss.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "cos.h" + +float u8coss(uint8 x) { + return (cos((double)x)); +} diff --git a/src/c/elementaryFunctions/cosh/i16cosha.c b/src/c/elementaryFunctions/cosh/i16cosha.c new file mode 100644 index 00000000..edb56f9c --- /dev/null +++ b/src/c/elementaryFunctions/cosh/i16cosha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cosh.h" + +void i16cosha(int16* x, int size, int16* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i16coshs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cosh/i16coshs.c b/src/c/elementaryFunctions/cosh/i16coshs.c new file mode 100644 index 00000000..10d3eb95 --- /dev/null +++ b/src/c/elementaryFunctions/cosh/i16coshs.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/* +// cosh(z) = 0.5 (exp(|z|) + exp(-|z|)) +// = 0.5 ( y + 1/y ) with y = exp(|z|) +*/ + +#include <math.h> +#include "cosh.h" +#include "exp.h" +#include "abs.h" +#include "types.h" + +float i16coshs(int16 x) { + double y = i16exps(i16abss(x)); + return (0.5 * (y + 1.0/y)); +} diff --git a/src/c/elementaryFunctions/cosh/i8cosha.c b/src/c/elementaryFunctions/cosh/i8cosha.c new file mode 100644 index 00000000..4ec75920 --- /dev/null +++ b/src/c/elementaryFunctions/cosh/i8cosha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cosh.h" + +void i8cosha(int8* x, int size, int8* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i8coshs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cosh/i8coshs.c b/src/c/elementaryFunctions/cosh/i8coshs.c new file mode 100644 index 00000000..bc301221 --- /dev/null +++ b/src/c/elementaryFunctions/cosh/i8coshs.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/* +// cosh(z) = 0.5 (exp(|z|) + exp(-|z|)) +// = 0.5 ( y + 1/y ) with y = exp(|z|) +*/ + +#include <math.h> +#include "cosh.h" +#include "exp.h" +#include "abs.h" +#include "types.h" + +float i8coshs(int8 x) { + double y = i8exps(i8abss(x)); + return (0.5 * (y + 1.0/y)); +} diff --git a/src/c/elementaryFunctions/cosh/u16cosha.c b/src/c/elementaryFunctions/cosh/u16cosha.c new file mode 100644 index 00000000..83d3786c --- /dev/null +++ b/src/c/elementaryFunctions/cosh/u16cosha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cosh.h" + +void u16cosha(uint16* x, int size, uint16* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u16coshs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cosh/u16coshs.c b/src/c/elementaryFunctions/cosh/u16coshs.c new file mode 100644 index 00000000..22f6ded0 --- /dev/null +++ b/src/c/elementaryFunctions/cosh/u16coshs.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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 + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/* +// cosh(z) = 0.5 (exp(|z|) + exp(-|z|)) +// = 0.5 ( y + 1/y ) with y = exp(|z|) +*/ + +#include <math.h> +#include "cosh.h" +#include "exp.h" +#include "abs.h" +#include "types.h" + +float u16coshs(uint16 x) { + double y = u16exps(u16abss(x)); + return (0.5 * (y + 1.0/y)); +} diff --git a/src/c/elementaryFunctions/cosh/u8cosha.c b/src/c/elementaryFunctions/cosh/u8cosha.c new file mode 100644 index 00000000..4b44c28b --- /dev/null +++ b/src/c/elementaryFunctions/cosh/u8cosha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "cosh.h" + +void u8cosha(uint8* x, int size, uint8* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u8coshs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/cosh/u8coshs.c b/src/c/elementaryFunctions/cosh/u8coshs.c new file mode 100644 index 00000000..bed1eb93 --- /dev/null +++ b/src/c/elementaryFunctions/cosh/u8coshs.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/* +// cosh(z) = 0.5 (exp(|z|) + exp(-|z|)) +// = 0.5 ( y + 1/y ) with y = exp(|z|) +*/ + +#include <math.h> +#include "cosh.h" +#include "exp.h" +#include "abs.h" +#include "types.h" + +float u8coshs(uint8 x) { + double y = u8exps(u8abss(x)); + return (0.5 * (y + 1.0/y)); +} diff --git a/src/c/elementaryFunctions/discrete_mathematics/factor/dfactors.c b/src/c/elementaryFunctions/discrete_mathematics/factor/dfactors.c new file mode 100644 index 00000000..9ac76b5a --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/factor/dfactors.c @@ -0,0 +1,39 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +# include <stdio.h> +# include <math.h> + +void dfactors(double in,double* out) +{ + int i=0,k=0; + int n=(int)in; + while (n%2 == 0) + { + out[k++]=2; + n = n/2; + } + + for (i = 3; i <= (int)sqrt((double)n); i = i+2) + { + while (n%i == 0) + { + out[k++]=i; + n = n/i; + } + } + + if (n > 2) + { + out[k++]=n; + } +} + diff --git a/src/c/elementaryFunctions/discrete_mathematics/factor/sfactors.c b/src/c/elementaryFunctions/discrete_mathematics/factor/sfactors.c new file mode 100644 index 00000000..a2eed09f --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/factor/sfactors.c @@ -0,0 +1,39 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +# include <stdio.h> +# include <math.h> + +void sfactors(float in,float* out) +{ + int i=0,k=0; + int n=(int)in; + while (n%2 == 0) + { + out[k++]=2; + n = n/2; + } + + for (i = 3; i <= (int)sqrt((double)n); i = i+2) + { + while (n%i == 0) + { + out[k++]=i; + n = n/i; + } + } + + if (n > 2) + { + out[k++]=n; + } +} + diff --git a/src/c/elementaryFunctions/discrete_mathematics/factorial/dfactoriala.c b/src/c/elementaryFunctions/discrete_mathematics/factorial/dfactoriala.c new file mode 100644 index 00000000..68a118ba --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/factorial/dfactoriala.c @@ -0,0 +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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "factorial.h" +#include <math.h> + +void dfactoriala(double* in,int size,double* out) +{ + int i=0; + for (i=0;i<size;i++) + { + out[i] = dfactorials(in[i]); + } +} + diff --git a/src/c/elementaryFunctions/discrete_mathematics/factorial/dfactorials.c b/src/c/elementaryFunctions/discrete_mathematics/factorial/dfactorials.c new file mode 100644 index 00000000..354eb6a8 --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/factorial/dfactorials.c @@ -0,0 +1,35 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <stdio.h> +#include <math.h> +#include "factorial.h" + +double dfactorials(double in) +{ + int i,n; + long long int fact=1; + n=(int)in; + if (n < 0) + printf("Error! Factorial of a negative number doesn't exist."); + else if (n>170) + printf("Inf"); + else + { + for(i=1; i<=n; i++) + { + fact=fact*i; + //printf("\n %lld",fact); + } + } + + return fact; +} diff --git a/src/c/elementaryFunctions/discrete_mathematics/factorial/sfactoriala.c b/src/c/elementaryFunctions/discrete_mathematics/factorial/sfactoriala.c new file mode 100644 index 00000000..14f46d84 --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/factorial/sfactoriala.c @@ -0,0 +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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "factorial.h" +#include <math.h> + +void sfactoriala(float* in,int size,float* out) +{ + int i=0; + for (i=0;i<size;i++) + { + out[i] = dfactorials(in[i]); + } +} + diff --git a/src/c/elementaryFunctions/discrete_mathematics/factorial/sfactorials.c b/src/c/elementaryFunctions/discrete_mathematics/factorial/sfactorials.c new file mode 100644 index 00000000..e4f1017b --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/factorial/sfactorials.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <stdio.h> +#include <math.h> +#include "factorial.h" + +float sfactorials(float in) +{ + int i,n; + long long int fact=1; + n=(int)in; + if (n < 0) + printf("Error! Factorial of a negative number doesn't exist."); + else if(n>170) + printf("Inf"); + else + { + for(i=1; i<=n; i++) + { + fact *= i; + } + } + + return fact; +} diff --git a/src/c/elementaryFunctions/discrete_mathematics/gcd/dgcda.c b/src/c/elementaryFunctions/discrete_mathematics/gcd/dgcda.c new file mode 100644 index 00000000..a32ed773 --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/gcd/dgcda.c @@ -0,0 +1,32 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include "gcd.h" +#include "types.h" + +void dgcda(double *in,int size,double *out) +{ + double a=in[0]; + double b=in[1]; + while(a!=b && a!=0 && b!=0) + { + if(a>b) + { + a=a-b; + } + else + { + b=b-a; + } + } + out[0]=b; +} diff --git a/src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcda.c b/src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcda.c new file mode 100644 index 00000000..121d26ae --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcda.c @@ -0,0 +1,62 @@ +/* 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> +/* This is the "gcd" function , which takes two input. first + one is the array and the second one is the length of the array. + Now to calculate the gcd of two elements we fin the maximum of + the two elements, and then iterate from maximum value down to 1, + and check whether the particular value divides the two elements. + And in this way we can calculate the gcd of the whole array. +*/ +#include "gcd.h" +uint8 u8gcdua(uint8* in,int size) +{ + + int temp; + if(size==1) + { + temp=*in; + } + else + { + int x=*in; + int y=*(in+1); + int max=(x>y)?x:y; + int i; + for(i=max;i>=1;i--) + { + if(x%i==0 && y%i==0) + { + temp=i; + break; + } + } + int j; + for(j=2;j<size;j++) + { + x=temp; + y=*(in+j); + max=(x>y)?x:y; + for(i=max;i>=1;i--) + { + if(x%i==0 && y%i==0) + { + temp=i; + break; + } + } + } +} + + return temp; +} + diff --git a/src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcds.c b/src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcds.c new file mode 100644 index 00000000..75f831fc --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcds.c @@ -0,0 +1,32 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include "gcd.h" +#include "types.h" + +int8 u8gcds(int8 *in,int size) +{ + int a=in[0]; + int b=in[1]; + while(a!=b && a!=0 && b!=0) + { + if(a>b) + { + a=a-b; + } + else + { + b=b-a; + } + } + return b; +} diff --git a/src/c/elementaryFunctions/discrete_mathematics/lcm/u8lcma.c b/src/c/elementaryFunctions/discrete_mathematics/lcm/u8lcma.c new file mode 100644 index 00000000..b01c8047 --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/lcm/u8lcma.c @@ -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: Ankit Raj + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include<stdio.h> +/* This is the "lcm" function, accepting two inputs which are the array of integers + and second the size of the array. The algorithm works like this: + We take a temproary variable and store the lcm of the first two elements of the + array in it. Now using this temproary variable we recursively fin the lcm of + the whole array. + Now to fin the lcm of two elements we fin the maximum of the two elements and + check whether it is divisible by both the elements, if the condition is true we + get the lcm, else increase the maximum value by itself unless we get the lcm. +*/ +#include "lcm.h" +uint8 u8lcma(uint8* in,int size) +{ + long long int lcm_temp; + if(size==1) + { + lcm_temp=*in; + } + else + { + + int x1=*in; + int x2=*(in+1); + long long int max=(x1>x2)?x1:x2; + long long int i=max; + while(1) + { + if(i%x1==0 && i%x2==0) + { + lcm_temp=i; + break; + } + else + i+=max; + } + int j; + for(j=2;j<size;j++) + { + x1=lcm_temp; + x2=*(in+j); + max=(x1>x2)?x1:x2; + i=max; + while(1) + { + if(i%x1==0 && i%x2==0) + { + lcm_temp=i; + break; + } + else + i+=max; + } + } + + } + return lcm_temp; +} + diff --git a/src/c/elementaryFunctions/discrete_mathematics/primes/dprimess.c b/src/c/elementaryFunctions/discrete_mathematics/primes/dprimess.c new file mode 100644 index 00000000..3aa0af4d --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/primes/dprimess.c @@ -0,0 +1,35 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include<stdio.h> +#include "primes.h" +void dprimess(double in, double* out) +{ + int i=0,j=0,k=0,n=0,counter=0; + n=(int)in; + for(i=2;i<=n;i++) + { + counter=0; + for(j=2;j<i;j++) + { + if(i%j==0) + { + counter=1; + break; + } + } + if(counter==0) + { + out[k++]=i; + + } + } +} diff --git a/src/c/elementaryFunctions/discrete_mathematics/primes/sprimess.c b/src/c/elementaryFunctions/discrete_mathematics/primes/sprimess.c new file mode 100644 index 00000000..bff39d74 --- /dev/null +++ b/src/c/elementaryFunctions/discrete_mathematics/primes/sprimess.c @@ -0,0 +1,35 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include<stdio.h> +#include "primes.h" +void sprimess(float in, float* out) +{ + int i=0,j=0,k=0,n=0,counter=0; + n=(int)in; + for(i=2;i<=n;i++) + { + counter=0; + for(j=2;j<i;j++) + { + if(i%j==0) + { + counter=1; + break; + } + } + if(counter==0) + { + out[k]=i; + k++; + } + } +} diff --git a/src/c/elementaryFunctions/exp/i16expa.c b/src/c/elementaryFunctions/exp/i16expa.c new file mode 100644 index 00000000..cd66c85c --- /dev/null +++ b/src/c/elementaryFunctions/exp/i16expa.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "exp.h" + +void i16expa(int16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i16exps(x[i]); + } +} diff --git a/src/c/elementaryFunctions/exp/i16exps.c b/src/c/elementaryFunctions/exp/i16exps.c new file mode 100644 index 00000000..12e85ee4 --- /dev/null +++ b/src/c/elementaryFunctions/exp/i16exps.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "exp.h" + +float i16exps(int16 x) { + return (expf(x)); +} diff --git a/src/c/elementaryFunctions/exp/i8expa.c b/src/c/elementaryFunctions/exp/i8expa.c new file mode 100644 index 00000000..e45becbd --- /dev/null +++ b/src/c/elementaryFunctions/exp/i8expa.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "exp.h" + +void i8expa(int8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i8exps(x[i]); + } +} diff --git a/src/c/elementaryFunctions/exp/i8exps.c b/src/c/elementaryFunctions/exp/i8exps.c new file mode 100644 index 00000000..8d33d203 --- /dev/null +++ b/src/c/elementaryFunctions/exp/i8exps.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "exp.h" + +float i8exps(int8 x) { + return (expf(x)); +} diff --git a/src/c/elementaryFunctions/exp/u16expa.c b/src/c/elementaryFunctions/exp/u16expa.c new file mode 100644 index 00000000..1655dfe9 --- /dev/null +++ b/src/c/elementaryFunctions/exp/u16expa.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "exp.h" + +void u16expa(uint16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u16exps(x[i]); + } +} diff --git a/src/c/elementaryFunctions/exp/u16exps.c b/src/c/elementaryFunctions/exp/u16exps.c new file mode 100644 index 00000000..d36cf1ef --- /dev/null +++ b/src/c/elementaryFunctions/exp/u16exps.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include <math.h> +#include "exp.h" + +float u16exps(uint16 x) { + return (expf(x)); +} diff --git a/src/c/elementaryFunctions/exp/u8expa.c b/src/c/elementaryFunctions/exp/u8expa.c new file mode 100644 index 00000000..828fb3da --- /dev/null +++ b/src/c/elementaryFunctions/exp/u8expa.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "exp.h" + +void u8expa(uint8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u8exps(x[i]); + } +} diff --git a/src/c/elementaryFunctions/exp/u8exps.c b/src/c/elementaryFunctions/exp/u8exps.c new file mode 100644 index 00000000..cae731a2 --- /dev/null +++ b/src/c/elementaryFunctions/exp/u8exps.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "exp.h" + +float u8exps(uint8 x) { + return (expf(x)); +} diff --git a/src/c/elementaryFunctions/fix/i16fixa.c b/src/c/elementaryFunctions/fix/i16fixa.c new file mode 100644 index 00000000..07cd75b0 --- /dev/null +++ b/src/c/elementaryFunctions/fix/i16fixa.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" +#include "floor.h" +#include "ceil.h" + +void i16fixa(int16* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16fixs(x[i]); +} diff --git a/src/c/elementaryFunctions/fix/i16fixs.c b/src/c/elementaryFunctions/fix/i16fixs.c new file mode 100644 index 00000000..f133d8a3 --- /dev/null +++ b/src/c/elementaryFunctions/fix/i16fixs.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" + +int16 i16fixs(int16 x) { + if (x>=0) return i16floors(x); + else return i16ceils(x); +} diff --git a/src/c/elementaryFunctions/fix/i8fixa.c b/src/c/elementaryFunctions/fix/i8fixa.c new file mode 100644 index 00000000..bb20f2d3 --- /dev/null +++ b/src/c/elementaryFunctions/fix/i8fixa.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" + +void i8fixa(int8* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8fixs(x[i]); +} diff --git a/src/c/elementaryFunctions/fix/i8fixs.c b/src/c/elementaryFunctions/fix/i8fixs.c new file mode 100644 index 00000000..adeb3dd0 --- /dev/null +++ b/src/c/elementaryFunctions/fix/i8fixs.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" +#include "floor.h" +#include "ceil.h" + +int8 i8fixs(int8 x) { + if (x>=0) return i8floors(x); + else return i8ceils(x); +} diff --git a/src/c/elementaryFunctions/fix/u16fixa.c b/src/c/elementaryFunctions/fix/u16fixa.c new file mode 100644 index 00000000..acddf8df --- /dev/null +++ b/src/c/elementaryFunctions/fix/u16fixa.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" + +void u16fixa(uint16* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16fixs(x[i]); +} diff --git a/src/c/elementaryFunctions/fix/u16fixs.c b/src/c/elementaryFunctions/fix/u16fixs.c new file mode 100644 index 00000000..1ff7a8a5 --- /dev/null +++ b/src/c/elementaryFunctions/fix/u16fixs.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" +#include "floor.h" +#include "ceil.h" + +uint16 u16fixs(uint16 x) { + if (x>=0) return u16floors(x); + else return u16ceils(x); +} diff --git a/src/c/elementaryFunctions/fix/u8fixa.c b/src/c/elementaryFunctions/fix/u8fixa.c new file mode 100644 index 00000000..c86545b9 --- /dev/null +++ b/src/c/elementaryFunctions/fix/u8fixa.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" + +void u8fixa(uint8* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8fixs(x[i]); +} diff --git a/src/c/elementaryFunctions/fix/u8fixs.c b/src/c/elementaryFunctions/fix/u8fixs.c new file mode 100644 index 00000000..c7740045 --- /dev/null +++ b/src/c/elementaryFunctions/fix/u8fixs.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "fix.h" +#include "floor.h" +#include "ceil.h" + +uint8 u8fixs(uint8 x) { + if (x>=0) return u8floors(x); + else return u8ceils(x); +} diff --git a/src/c/elementaryFunctions/float/dfloata.c b/src/c/elementaryFunctions/float/dfloata.c new file mode 100644 index 00000000..9705bd1a --- /dev/null +++ b/src/c/elementaryFunctions/float/dfloata.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +void dfloata(double* x, int size, float* out) { + int i = 0; + for (i=0;i<size;i++) + out[i] = dfloats(x[i]); +} diff --git a/src/c/elementaryFunctions/float/dfloats.c b/src/c/elementaryFunctions/float/dfloats.c new file mode 100644 index 00000000..ece554a8 --- /dev/null +++ b/src/c/elementaryFunctions/float/dfloats.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +float dfloats(double x) { + return (float) x; +} diff --git a/src/c/elementaryFunctions/float/i16floata.c b/src/c/elementaryFunctions/float/i16floata.c new file mode 100644 index 00000000..c8113af9 --- /dev/null +++ b/src/c/elementaryFunctions/float/i16floata.c @@ -0,0 +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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +void i16floata(int16* x, int size, float* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16floats(x[i]); +} diff --git a/src/c/elementaryFunctions/float/i16floats.c b/src/c/elementaryFunctions/float/i16floats.c new file mode 100644 index 00000000..9f3ee063 --- /dev/null +++ b/src/c/elementaryFunctions/float/i16floats.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +float i16floats(int16 x) { + return (float) x; +} diff --git a/src/c/elementaryFunctions/float/i8floata.c b/src/c/elementaryFunctions/float/i8floata.c new file mode 100644 index 00000000..52f9a6a6 --- /dev/null +++ b/src/c/elementaryFunctions/float/i8floata.c @@ -0,0 +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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +void i8floata(int8* x, int size, float* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8floats(x[i]); +} diff --git a/src/c/elementaryFunctions/float/i8floats.c b/src/c/elementaryFunctions/float/i8floats.c new file mode 100644 index 00000000..88127b3f --- /dev/null +++ b/src/c/elementaryFunctions/float/i8floats.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +float i8floats(int8 x) { + return (float) x; +} diff --git a/src/c/elementaryFunctions/float/sfloata.c b/src/c/elementaryFunctions/float/sfloata.c new file mode 100644 index 00000000..34337068 --- /dev/null +++ b/src/c/elementaryFunctions/float/sfloata.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +void sfloata(float* x, int size, float* out) { + int i = 0; + for (i=0;i<size;i++) + out[i] = sfloats(x[i]); +} diff --git a/src/c/elementaryFunctions/float/sfloats.c b/src/c/elementaryFunctions/float/sfloats.c new file mode 100644 index 00000000..3351fb03 --- /dev/null +++ b/src/c/elementaryFunctions/float/sfloats.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +float sfloats(float x) { + return (float) x; +} diff --git a/src/c/elementaryFunctions/float/u16floata.c b/src/c/elementaryFunctions/float/u16floata.c new file mode 100644 index 00000000..febe5e08 --- /dev/null +++ b/src/c/elementaryFunctions/float/u16floata.c @@ -0,0 +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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +void u16floata(uint16* x, int size, float* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16floats(x[i]); +} diff --git a/src/c/elementaryFunctions/float/u16floats.c b/src/c/elementaryFunctions/float/u16floats.c new file mode 100644 index 00000000..47e19aed --- /dev/null +++ b/src/c/elementaryFunctions/float/u16floats.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +float u16floats(uint16 x) { + return (float) x; +} diff --git a/src/c/elementaryFunctions/float/u8floata.c b/src/c/elementaryFunctions/float/u8floata.c new file mode 100644 index 00000000..a4a1fec3 --- /dev/null +++ b/src/c/elementaryFunctions/float/u8floata.c @@ -0,0 +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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +void u8floata(uint8* x, int size, float* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8floats(x[i]); +} diff --git a/src/c/elementaryFunctions/float/u8floats.c b/src/c/elementaryFunctions/float/u8floats.c new file mode 100644 index 00000000..8b7dd8df --- /dev/null +++ b/src/c/elementaryFunctions/float/u8floats.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "get_float.h" + +float u8floats(uint8 x) { + return (float) x; +} diff --git a/src/c/elementaryFunctions/floor/i16floora.c b/src/c/elementaryFunctions/floor/i16floora.c new file mode 100644 index 00000000..7b7a211b --- /dev/null +++ b/src/c/elementaryFunctions/floor/i16floora.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +void i16floora(int16* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16floors(x[i]); +} diff --git a/src/c/elementaryFunctions/floor/i16floors.c b/src/c/elementaryFunctions/floor/i16floors.c new file mode 100644 index 00000000..cc35cf9a --- /dev/null +++ b/src/c/elementaryFunctions/floor/i16floors.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +int16 i16floors(int16 x) { + return (int16)(floorf(x)); +} diff --git a/src/c/elementaryFunctions/floor/i8floora.c b/src/c/elementaryFunctions/floor/i8floora.c new file mode 100644 index 00000000..5579321a --- /dev/null +++ b/src/c/elementaryFunctions/floor/i8floora.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +void i8floora(int8* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8floors(x[i]); +} diff --git a/src/c/elementaryFunctions/floor/i8floors.c b/src/c/elementaryFunctions/floor/i8floors.c new file mode 100644 index 00000000..30967cdc --- /dev/null +++ b/src/c/elementaryFunctions/floor/i8floors.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +int8 i8floors(int8 x) { + return (int8)(floorf(x)); +} diff --git a/src/c/elementaryFunctions/floor/u16floora.c b/src/c/elementaryFunctions/floor/u16floora.c new file mode 100644 index 00000000..abff8077 --- /dev/null +++ b/src/c/elementaryFunctions/floor/u16floora.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +void u16floora(uint16* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16floors(x[i]); +} diff --git a/src/c/elementaryFunctions/floor/u16floors.c b/src/c/elementaryFunctions/floor/u16floors.c new file mode 100644 index 00000000..a1fca9b5 --- /dev/null +++ b/src/c/elementaryFunctions/floor/u16floors.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +uint16 u16floors(uint16 x) { + return (uint16)(floorf(x)); +} diff --git a/src/c/elementaryFunctions/floor/u8floora.c b/src/c/elementaryFunctions/floor/u8floora.c new file mode 100644 index 00000000..04a980e9 --- /dev/null +++ b/src/c/elementaryFunctions/floor/u8floora.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +void u8floora(uint8* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8floors(x[i]); +} diff --git a/src/c/elementaryFunctions/floor/u8floors.c b/src/c/elementaryFunctions/floor/u8floors.c new file mode 100644 index 00000000..87a4e1fd --- /dev/null +++ b/src/c/elementaryFunctions/floor/u8floors.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "floor.h" + +uint8 u8floors(uint8 x) { + return (uint8)(floorf(x)); +} diff --git a/src/c/elementaryFunctions/includes/acosd.h b/src/c/elementaryFunctions/includes/acosd.h new file mode 100644 index 00000000..96dae80a --- /dev/null +++ b/src/c/elementaryFunctions/includes/acosd.h @@ -0,0 +1,33 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ACOSD_H__ +#define __ACOSD_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dacosds(double x); + +void dacosda(double* x, int size, double* y); + +double sacosds(float x); + +void sacosda(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOSD_H__ */ + diff --git a/src/c/elementaryFunctions/includes/acot.h b/src/c/elementaryFunctions/includes/acot.h new file mode 100644 index 00000000..430be12d --- /dev/null +++ b/src/c/elementaryFunctions/includes/acot.h @@ -0,0 +1,43 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ACOT_H__ +#define __ACOT_H__ +#include "types.h" +#include "floatComplex.h" +#include "doubleComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dacots(double x); + +void dacota(double* x, int size, double* y); + +float sacots(float x); + +void sacota(float* x, int size, float* y); + +floatComplex cacots(floatComplex x); + +void cacota(floatComplex* x, int size, floatComplex* y); + +doubleComplex zacots(doubleComplex x); + +void zacota(doubleComplex* x, int size, doubleComplex* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOT_H__ */ + diff --git a/src/c/elementaryFunctions/includes/acotd.h b/src/c/elementaryFunctions/includes/acotd.h new file mode 100644 index 00000000..3be05ccf --- /dev/null +++ b/src/c/elementaryFunctions/includes/acotd.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ACOTD_H__ +#define __ACOTD_H__ +#include "types.h" +#include "floatComplex.h" +#include "doubleComplex.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +double dacotds(double x); + +void dacotda(double* x, int size, double* y); + +float sacotds(float x); + +void sacotda(float* x, int size, float* y); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOTD_H__ */ + diff --git a/src/c/elementaryFunctions/includes/acoth.h b/src/c/elementaryFunctions/includes/acoth.h new file mode 100644 index 00000000..975182fe --- /dev/null +++ b/src/c/elementaryFunctions/includes/acoth.h @@ -0,0 +1,44 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ACOTH_H__ +#define __ACOTH_H__ +#include "types.h" +#include "floatComplex.h" +#include "doubleComplex.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +double dacoths(double x); + +void dacotha(double* x, int size, double* y); + +float sacoths(float x); + +void sacotha(float* x, int size, float* y); + +floatComplex cacoths(floatComplex x); + +void cacotha(floatComplex* x, int size, floatComplex* y); + +doubleComplex zacoths(doubleComplex x); + +void zacotha(doubleComplex* x, int size, doubleComplex* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOTH_H__ */ + diff --git a/src/c/elementaryFunctions/includes/acsc.h b/src/c/elementaryFunctions/includes/acsc.h new file mode 100644 index 00000000..be6455a4 --- /dev/null +++ b/src/c/elementaryFunctions/includes/acsc.h @@ -0,0 +1,44 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __ACSC_H__ +#define __ACSC_H__ +#include "types.h" +#include "floatComplex.h" +#include "doubleComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dacscs(double x); + +void dacsca(double* x, int size, double* y); + +float sacscs(float x); + +void sacsca(float* x, int size, float* y); + +floatComplex cacscs(floatComplex x); + +void cacsca(floatComplex* x, int size, floatComplex* y); + +doubleComplex zacscs(doubleComplex x); + +void zacsca(doubleComplex* x, int size, doubleComplex* y); + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACSC_H__ */ + diff --git a/src/c/elementaryFunctions/includes/acscd.h b/src/c/elementaryFunctions/includes/acscd.h new file mode 100644 index 00000000..3c5bb18d --- /dev/null +++ b/src/c/elementaryFunctions/includes/acscd.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __ACSCD_H__ +#define __ACSCD_H__ +#include "types.h" +#include "floatComplex.h" +#include "doubleComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dacscds(double x); + +void dacscda(double* x, int size, double* y); + +float sacscds(float x); + +void sacscda(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACSCD_H__ */ + diff --git a/src/c/elementaryFunctions/includes/acsch.h b/src/c/elementaryFunctions/includes/acsch.h new file mode 100644 index 00000000..ba2b1e1d --- /dev/null +++ b/src/c/elementaryFunctions/includes/acsch.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __ACSCH_H__ +#define __ACSCH_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dacschs(double x); + +void dacscha(double* x, int size, double* y); + +double sacschs(float x); + +void sacscha(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACSCH_H__ */ + diff --git a/src/c/elementaryFunctions/includes/asec.h b/src/c/elementaryFunctions/includes/asec.h new file mode 100644 index 00000000..8d1a65d1 --- /dev/null +++ b/src/c/elementaryFunctions/includes/asec.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ASEC_H__ +#define __ASEC_H__ +#include "types.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +double dasecs(double x); + +void daseca(double* x, int size, double* y); + +double sasecs(float x); + +void saseca(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASEC_H__ */ + diff --git a/src/c/elementaryFunctions/includes/asecd.h b/src/c/elementaryFunctions/includes/asecd.h new file mode 100644 index 00000000..104677bd --- /dev/null +++ b/src/c/elementaryFunctions/includes/asecd.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ASECD_H__ +#define __ASECD_H__ +#include "types.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +double dasecds(double x); + +void dasecda(double* x, int size, double* y); + +double sasecds(float x); + +void sasecda(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASECD_H__ */ + diff --git a/src/c/elementaryFunctions/includes/asech.h b/src/c/elementaryFunctions/includes/asech.h new file mode 100644 index 00000000..5e6c5e9c --- /dev/null +++ b/src/c/elementaryFunctions/includes/asech.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ASECH_H__ +#define __ASECH_H__ +#include "types.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +double dasechs(double x); + +void dasecha(double* x, int size, double* y); + +double sasechs(float x); + +void sasecha(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASECH_H__ */ + diff --git a/src/c/elementaryFunctions/includes/asind.h b/src/c/elementaryFunctions/includes/asind.h new file mode 100644 index 00000000..8f7d7102 --- /dev/null +++ b/src/c/elementaryFunctions/includes/asind.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ASIND_H__ +#define __ASIND_H__ +#include "types.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +double dasinds(double x); + +void dasinda(double* x, int size, double* y); + +double sasinds(float x); + +void sasinda(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASIND_H__ */ + diff --git a/src/c/elementaryFunctions/includes/atand.h b/src/c/elementaryFunctions/includes/atand.h new file mode 100644 index 00000000..ed10f09f --- /dev/null +++ b/src/c/elementaryFunctions/includes/atand.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __ATAND_H__ +#define __ATAND_H__ +#include "types.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +double datands(double x); + +void datanda(double* x, int size, double* y); + +double satands(float x); + +void satanda(float* x, int size, float* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ATAND_H__ */ + diff --git a/src/c/elementaryFunctions/includes/base2dec.h b/src/c/elementaryFunctions/includes/base2dec.h new file mode 100644 index 00000000..426388ef --- /dev/null +++ b/src/c/elementaryFunctions/includes/base2dec.h @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __BASE2DEC_H__ +#define __BASE2DEC_H__ + + + #ifdef __cplusplus + extern "C" { + #endif + +double gbase2decs(char* in,int size,int base); +double dbase2decs(double in,int base); +//void ghex2deca(char* in,int size,double* out); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__BASE2DEC_H__*/ diff --git a/src/c/elementaryFunctions/includes/bin2dec.h b/src/c/elementaryFunctions/includes/bin2dec.h new file mode 100644 index 00000000..ea1585f5 --- /dev/null +++ b/src/c/elementaryFunctions/includes/bin2dec.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __BIN2DEC_H__ +#define __BIN2DEC_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +long double dbin2decs(long double in); +int8 i8bin2decs(int8 in); +int16 i16bin2decs(int16 in); +uint8 u8bin2decs(uint8 in); +uint16 u16bin2decs(uint16 in); + +void dbin2deca(double* in,int size,double* out); +void i8bin2deca(int8* in,int size,int8* out); +void i16bin2deca(int16* in,int size,int16* out); +void u8bin2deca(uint8* in,int size,uint8* out); +void u16bin2deca(uint16* in,int size,uint16* out); + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__BIN2DEC_H__*/ diff --git a/src/c/elementaryFunctions/includes/bitand.h b/src/c/elementaryFunctions/includes/bitand.h new file mode 100644 index 00000000..ee132625 --- /dev/null +++ b/src/c/elementaryFunctions/includes/bitand.h @@ -0,0 +1,48 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __BITAND_H__ +#define __BITAND_H__ + + + +#include "dynlib_elementaryfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* bitand returns the logical AND operation + 12 = 00001100 (In Binary) + 25 = 00011001 (In Binary) + +Bit Operation of 12 and 25 + 00001100 +& 00011001 + ________ + 00001000 = 8 (In decimal) +*/ + +uint8 u8bitands(uint8 in1,uint8 in2); + +void u8bitanda(uint8* in1,uint8* in2,int size,uint8* out); + +uint16 u16bitands(uint16 in1,uint16 in2); + +void u16bitanda(uint16* in1,uint16* in2,int size,uint16* out); + + +#ifdef __cplusplus +} /*extern "C" */ +#endif + +#endif /* !__BITAND_H__ */ diff --git a/src/c/elementaryFunctions/includes/bitcmp.h b/src/c/elementaryFunctions/includes/bitcmp.h new file mode 100644 index 00000000..ead0b827 --- /dev/null +++ b/src/c/elementaryFunctions/includes/bitcmp.h @@ -0,0 +1,48 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __BITCMP_H__ +#define __BITCMP_H__ + + + +#include "dynlib_elementaryfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* bitcmp returns the complement +35=00100011 (In Binary) + +Bitwise complement Operation of 35 +~ 00100011 + ________ + 11011100 = 220 (In decimal) +*/ + +EXTERN_ELEMFUNCT uint8 u8bitcmps(uint8 in1,uint8 in2); + +EXTERN_ELEMFUNCT void u8bitcmpa(uint8* in1,uint8 in2,int size,uint8* out); + +EXTERN_ELEMFUNCT uint16 u16bitcmps(uint16 in1,uint16 in2); + +EXTERN_ELEMFUNCT void u16bitcmpa(uint16* in1,uint16 in2,int size,uint16* out); + + + +#ifdef __cplusplus + +} /*extern "C" */ +#endif + +#endif /* !__BITCMP_H__ */ diff --git a/src/c/elementaryFunctions/includes/bitget.h b/src/c/elementaryFunctions/includes/bitget.h new file mode 100644 index 00000000..9e12abdc --- /dev/null +++ b/src/c/elementaryFunctions/includes/bitget.h @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __BITGET_H__ +#define __BITGET_H__ + + + +#include "dynlib_elementaryfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +EXTERN_ELEMFUNCT uint8 u8bitgets(uint8 value,int position); + +EXTERN_ELEMFUNCT uint16 u16bitgets(uint16 value,int position); + +#ifdef __cplusplus + +} /*extern "C" */ +#endif + +#endif /* !__BITGET_H__ */ diff --git a/src/c/elementaryFunctions/includes/bitor.h b/src/c/elementaryFunctions/includes/bitor.h new file mode 100644 index 00000000..3f2ae085 --- /dev/null +++ b/src/c/elementaryFunctions/includes/bitor.h @@ -0,0 +1,48 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __BITOR_H__ +#define __BITOR_H__ + + + +#include "dynlib_elementaryfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* bitor returns the logical OR operation + 12 = 00001100 (In Binary) +25 = 00011001 (In Binary) + +Bitwise OR Operation of 12 and 25 + 00001100 +| 00011001 + ________ + 00011101 = 29 (In decimal) */ + +EXTERN_ELEMFUNCT uint8 u8bitors(uint8 in1,uint8 in2); + +EXTERN_ELEMFUNCT void u8bitora(uint8* in1,uint8* in2,int size,uint8* out); + +EXTERN_ELEMFUNCT uint16 u16bitors(uint16 in1,uint16 in2); + +EXTERN_ELEMFUNCT void u16bitora(uint16* in1,uint16* in2,int size,uint16* out); + + +#ifdef __cplusplus + +} /*extern "C" */ +#endif + +#endif /* !__BITOR_H__ */ diff --git a/src/c/elementaryFunctions/includes/bitset.h b/src/c/elementaryFunctions/includes/bitset.h new file mode 100644 index 00000000..5d519de9 --- /dev/null +++ b/src/c/elementaryFunctions/includes/bitset.h @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __BITSET_H__ +#define __BITSET_H__ + + + +#include "dynlib_elementaryfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +EXTERN_ELEMFUNCT uint8 u8bitsets(uint8 value,int position,int bit_value); + +EXTERN_ELEMFUNCT uint16 u16bitsets(uint16 value,int position,int bit_value); + +#ifdef __cplusplus + +} /*extern "C" */ +#endif + +#endif /* !__BITSET_H__ */ diff --git a/src/c/elementaryFunctions/includes/bitxor.h b/src/c/elementaryFunctions/includes/bitxor.h new file mode 100644 index 00000000..5d429571 --- /dev/null +++ b/src/c/elementaryFunctions/includes/bitxor.h @@ -0,0 +1,48 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __BITXOR_H__ +#define __BITXOR_H__ + + + +#include "dynlib_elementaryfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* bitxor returns the logical OR operation + 12 = 00001100 (In Binary) +25 = 00011001 (In Binary) + +Bitwise XOR Operation of 12 and 25 + 00001100 +^ 00011001 + ________ + 00010101 = 21 (In decimal) */ + +EXTERN_ELEMFUNCT uint8 u8bitxors(uint8 in1,uint8 in2); + +EXTERN_ELEMFUNCT void u8bitxora(uint8* in1,uint8* in2,int size,uint8* out); + +EXTERN_ELEMFUNCT uint16 u16bitxors(uint16 in1,uint16 in2); + +EXTERN_ELEMFUNCT void u16bitxora(uint16* in1,uint16* in2,int size,uint16* out); + + +#ifdef __cplusplus + +} /*extern "C" */ +#endif + +#endif /* !__BITXOR_H__ */ diff --git a/src/c/elementaryFunctions/includes/ceil.h b/src/c/elementaryFunctions/includes/ceil.h index 960b8b3b..57df72d5 100644 --- a/src/c/elementaryFunctions/includes/ceil.h +++ b/src/c/elementaryFunctions/includes/ceil.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus @@ -33,6 +34,14 @@ EXTERN_ELEMFUNCT floatComplex cceils(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zceils(doubleComplex in); +EXTERN_ELEMFUNCT uint8 u8ceils(uint8 in); + +EXTERN_ELEMFUNCT int8 i8ceils(int8 in); + +EXTERN_ELEMFUNCT uint16 u16ceils(uint16 in); + +EXTERN_ELEMFUNCT int16 i16ceils(int16 in); + EXTERN_ELEMFUNCT void sceila(float* in, int size, float* out); EXTERN_ELEMFUNCT void dceila(double* in, int size, double* out); @@ -41,6 +50,14 @@ EXTERN_ELEMFUNCT void cceila(floatComplex* in, int size, floatComplex* out); EXTERN_ELEMFUNCT void zceila(doubleComplex* in, int size, doubleComplex* out); +EXTERN_ELEMFUNCT void u8ceila(uint8* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void i8ceila(int8* in, int size, int8* out); + +EXTERN_ELEMFUNCT void u16ceila(uint16* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void i16ceila(int16* in, int size, int16* out); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/cos.h b/src/c/elementaryFunctions/includes/cos.h index 5d573b1e..25c76945 100644 --- a/src/c/elementaryFunctions/includes/cos.h +++ b/src/c/elementaryFunctions/includes/cos.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus extern "C" { @@ -49,6 +50,30 @@ EXTERN_ELEMFUNCT floatComplex ccoss(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zcoss(doubleComplex in); /* +** \brief Uint8 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u8coss(uint8 in); + +/* +** \brief Int8 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i8coss(int8 in); + +/* +** \brief Uint16 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u16coss(uint16 in); + +/* +** \brief Int8 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i16coss(int16 in); + +/* ** \brief Float Matrix Cosine function ** \param in : input array value. ** \param out : output array value. @@ -80,6 +105,38 @@ EXTERN_ELEMFUNCT void ccosa(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void zcosa(doubleComplex* in, int size, doubleComplex* out); +/* +** \brief uint8 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u8cosa(uint8* in, int size, float* out); + +/* +** \brief int8 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i8cosa(int8* in, int size, float* out); + +/* +** \brief uint16 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u16cosa(uint16* in, int size, float* out); + +/* +** \brief int16 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i16cosa(int16* in, int size, float* out); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/cosd.h b/src/c/elementaryFunctions/includes/cosd.h new file mode 100644 index 00000000..7cb59be1 --- /dev/null +++ b/src/c/elementaryFunctions/includes/cosd.h @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __COSD_H__ +#define __COSD_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dcosda(double* in,int size,double* out); +void scosda(float* in,int size,float* out); +double dcosds(double in); +float scosds(float in); + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__COSD_H__*/ diff --git a/src/c/elementaryFunctions/includes/cosh.h b/src/c/elementaryFunctions/includes/cosh.h index 0cbf8eb4..5c7c8b71 100644 --- a/src/c/elementaryFunctions/includes/cosh.h +++ b/src/c/elementaryFunctions/includes/cosh.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus @@ -50,6 +51,30 @@ EXTERN_ELEMFUNCT floatComplex ccoshs(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zcoshs(doubleComplex in); /* +** \brief uint8 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u8coshs(uint8 in); + +/* +** \brief int8 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i8coshs(int8 in); + +/* +** \brief uint16 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u16coshs(uint16 in); + +/* +** \brief int16 Cosine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i16coshs(int16 in); + +/* ** \brief Float Matrix Cosine function ** \param in : input array value. ** \param out : output array value. @@ -81,6 +106,39 @@ EXTERN_ELEMFUNCT void ccosha(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void zcosha(doubleComplex* in, int size, doubleComplex* out); +/* +** \brief Uint8 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u8cosha(uint8* in, int size, uint8* out); + +/* +** \brief Int8 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i8cosha(int8* in, int size, int8* out); + +/* +** \brief Uint16 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u16cosha(uint16* in, int size, uint16* out); + +/* +** \brief Int16 Matrix Cosine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i16cosha(int16* in, int size, int16* out); + + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/cotd.h b/src/c/elementaryFunctions/includes/cotd.h new file mode 100644 index 00000000..d2140cb0 --- /dev/null +++ b/src/c/elementaryFunctions/includes/cotd.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __COTD_H__ +#define __COTD_H__ + + + #ifdef __cplusplus + extern "C" { + #endif + +void dcotda(double* in,int size,double* out); +double dcotds(double in); +void scotda(float* in,int size,float* out); +float scotds(float in); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__COTD_H__*/ diff --git a/src/c/elementaryFunctions/includes/coth.h b/src/c/elementaryFunctions/includes/coth.h new file mode 100644 index 00000000..ac3f82c7 --- /dev/null +++ b/src/c/elementaryFunctions/includes/coth.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __COTH_H__ +#define __COTH_H__ +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dcotha(double* in,int size,double* out); +double dcoths(double in); +void scotha(float* in,int size,float* out); +float scoths(float in); +doubleComplex zcoths(doubleComplex z); +void zcotha(doubleComplex* in, int size,doubleComplex* out); +void ccotha(floatComplex* in, int size,floatComplex* out); +floatComplex ccoths(floatComplex z); + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__COTH_H__*/ diff --git a/src/c/elementaryFunctions/includes/csc.h b/src/c/elementaryFunctions/includes/csc.h new file mode 100644 index 00000000..6914c933 --- /dev/null +++ b/src/c/elementaryFunctions/includes/csc.h @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __CSC_H__ +#define __CSC_H__ +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dcsca(double* in,int size,double* out); +double dcscs(double in); +void scsca(float* in,int size,float* out); +float scscs(float in); +doubleComplex zcscs(doubleComplex z); +void zcsca(doubleComplex* in, int size,doubleComplex* out); +floatComplex ccscs(floatComplex z); +void ccsca(floatComplex* in, int size,floatComplex* out); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__CSC_H__*/ diff --git a/src/c/elementaryFunctions/includes/cscd.h b/src/c/elementaryFunctions/includes/cscd.h new file mode 100644 index 00000000..fad31551 --- /dev/null +++ b/src/c/elementaryFunctions/includes/cscd.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __CSCD_H__ +#define __CSCD_H__ +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dcscda(double* in,int size,double* out); +double dcscds(double in); +void scscda(float* in,int size,float* out); +float scscds(float in); + +void ccscda(floatComplex* in,int size,floatComplex* out); +floatComplex ccscds(floatComplex in); +void zcscda(doubleComplex* in,int size,doubleComplex* out); +doubleComplex zcscds(doubleComplex in); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__CSCD_H__*/ diff --git a/src/c/elementaryFunctions/includes/csch.h b/src/c/elementaryFunctions/includes/csch.h new file mode 100644 index 00000000..fd7b8cd1 --- /dev/null +++ b/src/c/elementaryFunctions/includes/csch.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __CSCH_H__ +#define __CSCH_H__ +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dcscha(double* in,int size,double* out); +double dcschs(double in); +void scscha(float* in,int size,float* out); +float scschs(float in); + +void ccscha(floatComplex* in,int size,floatComplex* out); +floatComplex ccschs(floatComplex in); +void zcscha(doubleComplex* in,int size,doubleComplex* out); +doubleComplex zcschs(doubleComplex in); + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__CSCH_H__*/ diff --git a/src/c/elementaryFunctions/includes/dec2base.h b/src/c/elementaryFunctions/includes/dec2base.h new file mode 100644 index 00000000..aa830072 --- /dev/null +++ b/src/c/elementaryFunctions/includes/dec2base.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __DEC2BASE_H__ +#define __DEC2BASE_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void ddec2bases(double in,int base,int n,char* out); +void ddec2basea(double* in,int size,int base,int n,char* out); +void sdec2bases(float in,int base,int n,char* out); +void sdec2basea(float* in,int size,int base,int n,char* out); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__DEC2BASE_H__*/ diff --git a/src/c/elementaryFunctions/includes/dec2bin.h b/src/c/elementaryFunctions/includes/dec2bin.h new file mode 100644 index 00000000..d0917bba --- /dev/null +++ b/src/c/elementaryFunctions/includes/dec2bin.h @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __DEC2BIN_H__ +#define __DEC2BIN_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void ddec2bins(double in,int n,double* out); +void i8dec2bins(int8 in,int n,int8* out); +void i16dec2bins(int16 in,int n,int16* out); +void u8dec2bins(uint8 in,int n,uint8* out); +void u16dec2bins(uint16 in,int n,uint16* out); + +void ddec2bina(double* in,int size,int n,double* out); +void i8dec2bina(int8* in,int size,int n,int8* out); +void i16dec2bina(int16* in,int size,int n,int16* out); +void u8dec2bina(uint8* in,int size,int n,uint8* out); +void u16dec2bina(uint16* in,int size,int n,uint16* out); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__DEC2BIN_H__*/ diff --git a/src/c/elementaryFunctions/includes/dec2hex.h b/src/c/elementaryFunctions/includes/dec2hex.h new file mode 100644 index 00000000..e973a871 --- /dev/null +++ b/src/c/elementaryFunctions/includes/dec2hex.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __DEC2HEX_H__ +#define __DEC2HEX_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void ddec2hexs(double in,char* out); +void i8dec2hexs(int8 in,char* out); +void i16dec2hexs(int16 in,char* out); +void u8dec2hexs(uint8 in,char* out); +void u16dec2hexs(uint16 in,char* out); + +void ddec2hexa(double* in,int size,char* out); +void i8dec2hexa(int8* in,int size,char* out); +void i16dec2hexa(int16* in,int size,char* out); +void u8dec2hexa(uint8* in,int size,char* out); +void u16dec2hexa(uint16* in,int size,char* out); + + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__DEC2HEX_H__*/ diff --git a/src/c/elementaryFunctions/includes/dec2oct.h b/src/c/elementaryFunctions/includes/dec2oct.h new file mode 100644 index 00000000..b0e38fa5 --- /dev/null +++ b/src/c/elementaryFunctions/includes/dec2oct.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __DEC2oct_H__ +#define __DEC2oct_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void ddec2octs(double in,double* out); +void i8dec2octs(int8 in,int8* out); +void i16dec2octs(int16 in,int16* out); +void u8dec2octs(uint8 in,uint8* out); +void u16dec2octs(uint16 in,uint16* out); + +void ddec2octa(double* in,int size,double* out); +void i8dec2octa(int8* in,int size,int8* out); +void i16dec2octa(int16* in,int size,int16* out); +void u8dec2octa(uint8* in,int size,uint8* out); +void u16dec2octa(uint16* in,int size,uint16* out); + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__DEC2oct_H__*/ diff --git a/src/c/elementaryFunctions/includes/exp.h b/src/c/elementaryFunctions/includes/exp.h index 297a5769..6e8f027c 100644 --- a/src/c/elementaryFunctions/includes/exp.h +++ b/src/c/elementaryFunctions/includes/exp.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus @@ -50,6 +51,30 @@ EXTERN_ELEMFUNCT floatComplex cexps(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zexps(doubleComplex in); /* +** \brief Uint8 Exponential function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u8exps(uint8 in); + +/* +** \brief Int8 Exponential function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i8exps(int8 in); + +/* +** \brief Uint16 Exponential function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u16exps(uint16 in); + +/* +** \brief Int16 Exponential function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i16exps(int16 in); + +/* ** \brief Float Matrix Exponential function ** \param in : input array value. ** \param out : output array value. @@ -81,6 +106,39 @@ EXTERN_ELEMFUNCT void cexpa(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void zexpa(doubleComplex* in, int size, doubleComplex* out); +/* +** \brief Uint8 Matrix Exponential function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u8expa(uint8* in, int size, float* out); + +/* +** \brief Int8 Matrix Exponential function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i8expa(int8* in, int size, float* out); + +/* +** \brief Uint16 Matrix Exponential function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u16expa(uint16* in, int size, float* out); + +/* +** \brief Int16 Matrix Exponential function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i16expa(int16* in, int size, float* out); + + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/factor.h b/src/c/elementaryFunctions/includes/factor.h new file mode 100644 index 00000000..bec7277b --- /dev/null +++ b/src/c/elementaryFunctions/includes/factor.h @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __FACTOR_H__ +#define __FACTOR_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dfactors(double in,double* out); +void sfactors(float in,float* out); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__FACTOR_H__*/ diff --git a/src/c/elementaryFunctions/includes/factorial.h b/src/c/elementaryFunctions/includes/factorial.h new file mode 100644 index 00000000..077191e3 --- /dev/null +++ b/src/c/elementaryFunctions/includes/factorial.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __FACTORIAL_H__ +#define __FACTORIAL_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dfactorials(double in); +//int8 i8factorials(int8 in); +//int16 i16factorials(int16 in); +//uint8 u8factorials(uint8 in); +//uint16 u16factorials(uint16 in); + +void dfactoriala(double* in,int size,double* out); +//void i8factoriala(int8* in,int size,int8* out); +//void i16factoriala(int16* in,int size,int16* out); +//void u8factoriala(uint8* in,int size,uint8* out); +//void u16factoriala(uint16* in,int size,uint16* out); + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__FACTORIAL_H__*/ diff --git a/src/c/elementaryFunctions/includes/fix.h b/src/c/elementaryFunctions/includes/fix.h index 504a63c1..592905b4 100644 --- a/src/c/elementaryFunctions/includes/fix.h +++ b/src/c/elementaryFunctions/includes/fix.h @@ -16,6 +16,10 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" +#include "floor.h" +#include "ceil.h" + #ifdef __cplusplus extern "C" { @@ -35,6 +39,14 @@ EXTERN_ELEMFUNCT floatComplex cfixs(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zfixs(doubleComplex in); +EXTERN_ELEMFUNCT uint8 u8fixs(uint8 in); + +EXTERN_ELEMFUNCT int8 i8fixs(int8 in); + +EXTERN_ELEMFUNCT uint16 u16fixs(uint16 in); + +EXTERN_ELEMFUNCT int16 i16fixs(int16 in); + EXTERN_ELEMFUNCT void sfixa(float* in, int size, float* out); EXTERN_ELEMFUNCT void dfixa(double* in, int size, double* out); @@ -43,6 +55,14 @@ EXTERN_ELEMFUNCT void cfixa(floatComplex* in, int size, floatComplex* out); EXTERN_ELEMFUNCT void zfixa(doubleComplex* in, int size, doubleComplex* out); +EXTERN_ELEMFUNCT void u8fixa(uint8* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void i8fixa(int8* in, int size, int8* out); + +EXTERN_ELEMFUNCT void u16fixa(uint16* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void i16fixa(int16* in, int size, int16* out); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/floor.h b/src/c/elementaryFunctions/includes/floor.h index 971cdf65..cd566416 100644 --- a/src/c/elementaryFunctions/includes/floor.h +++ b/src/c/elementaryFunctions/includes/floor.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus extern "C" { @@ -32,6 +33,14 @@ EXTERN_ELEMFUNCT floatComplex cfloors(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zfloors(doubleComplex in); +EXTERN_ELEMFUNCT uint8 u8floors(uint8 in); + +EXTERN_ELEMFUNCT int8 i8floors(int8 in); + +EXTERN_ELEMFUNCT uint16 u16floors(uint16 in); + +EXTERN_ELEMFUNCT int16 i16floors(int16 in); + EXTERN_ELEMFUNCT void sfloora(float* in, int size, float* out); EXTERN_ELEMFUNCT void dfloora(double* in, int size, double* out); @@ -40,6 +49,14 @@ EXTERN_ELEMFUNCT void cfloora(floatComplex* in, int size, floatComplex* out); EXTERN_ELEMFUNCT void zfloora(doubleComplex* in, int size, doubleComplex* out); +EXTERN_ELEMFUNCT void u8floora(uint8* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void i8floora(int8* in, int size, int8* out); + +EXTERN_ELEMFUNCT void u16floora(uint16* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void i16floora(int16* in, int size, int16* out); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/gcd.h b/src/c/elementaryFunctions/includes/gcd.h new file mode 100644 index 00000000..179eea0e --- /dev/null +++ b/src/c/elementaryFunctions/includes/gcd.h @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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 + */ +#ifndef __GCD_H__ +#define __GCD_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C"{ + #endif + +uint8 u8gcda(uint8* in,int size); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__GCD_H__*/ diff --git a/src/c/elementaryFunctions/includes/get_float.h b/src/c/elementaryFunctions/includes/get_float.h new file mode 100644 index 00000000..285cb9c9 --- /dev/null +++ b/src/c/elementaryFunctions/includes/get_float.h @@ -0,0 +1,56 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Arnaud Torset + * Author - Shamik Guha + * 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 __GET_FLOAT_H__ +#define __GET_FLOAT_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* + float(X) returns the unsigned char part of the double value +*/ + +EXTERN_ELEMFUNCT float sfloats(float in); + +EXTERN_ELEMFUNCT float dfloats(double in); + +EXTERN_ELEMFUNCT float i8floats(int8 in); + +EXTERN_ELEMFUNCT float u8floats(uint8 in); + +EXTERN_ELEMFUNCT float u16floats(uint16 in); + +EXTERN_ELEMFUNCT float i16floats(int16 in); + +EXTERN_ELEMFUNCT void sfloata(float* in, int size, float* out); + +EXTERN_ELEMFUNCT void dfloata(double* in, int size, float* out); + +EXTERN_ELEMFUNCT void i8floata(int8* in, int size, float* out); + +EXTERN_ELEMFUNCT void u16floata(uint16* in, int size, float* out); + +EXTERN_ELEMFUNCT void i16floata(int16* in, int size, float* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__GET_FLOAT_H__ */ + diff --git a/src/c/elementaryFunctions/includes/hex2dec.h b/src/c/elementaryFunctions/includes/hex2dec.h new file mode 100644 index 00000000..f16a8541 --- /dev/null +++ b/src/c/elementaryFunctions/includes/hex2dec.h @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __HEX2DEC_H__ +#define __HEX2DEC_H__ + + + #ifdef __cplusplus + extern "C" { + #endif + +double ghex2decs(char* in,int size); +double dhex2decs(double in); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__HEX2DEC_H__*/ diff --git a/src/c/elementaryFunctions/includes/int16.h b/src/c/elementaryFunctions/includes/int16.h new file mode 100644 index 00000000..6135e6b0 --- /dev/null +++ b/src/c/elementaryFunctions/includes/int16.h @@ -0,0 +1,54 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT16_H__ +#define __INT16_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* + int16(X) returns the signed int part of the double value +*/ + +EXTERN_ELEMFUNCT int16 sint16s(float in); + +EXTERN_ELEMFUNCT int16 dint16s(double in); + +EXTERN_ELEMFUNCT int16 u8int16s(uint8 in); + +EXTERN_ELEMFUNCT int16 i8int16s(int8 in); + +EXTERN_ELEMFUNCT int16 u16int16s(uint16 in); + +EXTERN_ELEMFUNCT void sint16a(float* in, int size, int16* out); + +EXTERN_ELEMFUNCT void dint16a(double* in, int size, int16* out); + +EXTERN_ELEMFUNCT void u8int16a(uint8* in, int size, int16* out); + +EXTERN_ELEMFUNCT void i8int16a(int8* in, int size, int16* out); + +EXTERN_ELEMFUNCT void u16int16a(uint16* in, int size, int16* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__INT16_H__ */ + diff --git a/src/c/elementaryFunctions/includes/int32.h b/src/c/elementaryFunctions/includes/int32.h new file mode 100644 index 00000000..26b7bcbf --- /dev/null +++ b/src/c/elementaryFunctions/includes/int32.h @@ -0,0 +1,62 @@ +/* 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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT32_H__ +#define __INT32_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* + int32(X) returns the signed int part of the double value +*/ + +EXTERN_ELEMFUNCT int32 sint32s(float in); + +EXTERN_ELEMFUNCT int32 dint32s(double in); + +EXTERN_ELEMFUNCT int32 u8int32s(uint8 in); + +EXTERN_ELEMFUNCT int32 i8int32s(int8 in); + +EXTERN_ELEMFUNCT int32 u16int32s(uint16 in); + +EXTERN_ELEMFUNCT int32 i16int32s(int16 in); + +EXTERN_ELEMFUNCT int32 u32int32s(uint32 in); + +EXTERN_ELEMFUNCT void sint32a(float* in, int size, int32* out); + +EXTERN_ELEMFUNCT void dint32a(double* in, int size, int32* out); + +EXTERN_ELEMFUNCT void u8int32a(uint8* in, int size, int32* out); + +EXTERN_ELEMFUNCT void i8int32a(int8* in, int size, int32* out); + +EXTERN_ELEMFUNCT void u16int32a(uint16* in, int size, int32* out); + +EXTERN_ELEMFUNCT void i16int32a(int16* in, int size, int32* out); + +EXTERN_ELEMFUNCT void u32int32a(uint32* in, int size, int32* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__INT32_H__ */ + diff --git a/src/c/elementaryFunctions/includes/int8.h b/src/c/elementaryFunctions/includes/int8.h new file mode 100644 index 00000000..0ac8723f --- /dev/null +++ b/src/c/elementaryFunctions/includes/int8.h @@ -0,0 +1,54 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT8_H__ +#define __INT8_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* + int8(X) returns the signed char part of the double value +*/ + +EXTERN_ELEMFUNCT int8 sint8s(float in); + +EXTERN_ELEMFUNCT int8 dint8s(double in); + +EXTERN_ELEMFUNCT int8 u8int8s(uint8 in); + +EXTERN_ELEMFUNCT int8 u16int8s(uint16 in); + +EXTERN_ELEMFUNCT int8 i16int8s(int16 in); + +EXTERN_ELEMFUNCT void sint8a(float* in, int size, int8* out); + +EXTERN_ELEMFUNCT void dint8a(double* in, int size, int8* out); + +EXTERN_ELEMFUNCT void u8int8a(uint8* in, int size, int8* out); + +EXTERN_ELEMFUNCT void u16int8a(uint16* in, int size, int8* out); + +EXTERN_ELEMFUNCT void i16int8a(int16* in, int size, int8* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__INT8_H__ */ + diff --git a/src/c/elementaryFunctions/includes/iscolumn.h b/src/c/elementaryFunctions/includes/iscolumn.h new file mode 100644 index 00000000..e9711766 --- /dev/null +++ b/src/c/elementaryFunctions/includes/iscolumn.h @@ -0,0 +1,42 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __ISCOLUMN_H__ +#define __ISCOLUMN_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char discolumna(double* , int); +char discolumns(double); +char siscolumna( float* , int); +char siscolumns( float); +char giscolumna(char* , int); +char giscolumns(char); +char ziscolumna(doubleComplex*, int); +char ziscolumns(doubleComplex); +char u16iscolumna(uint16*, int); +char u16iscolumns(uint16); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/isequal.h b/src/c/elementaryFunctions/includes/isequal.h new file mode 100644 index 00000000..d22a8047 --- /dev/null +++ b/src/c/elementaryFunctions/includes/isequal.h @@ -0,0 +1,38 @@ + /* 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 __ISEQUAL_H__ +#define __ISEQUAL_H__ +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char disequals(double inp1, double inp2); +char disequala(double* inp1, int size1r, int size1c, double* inp2, int size2r, int size2c); +char sisequals(float inp1, float inp2); +char sisequala(float* inp1, int size1r, int size1c, float* inp2, int size2r, int size2c); +char zisequals(doubleComplex inp1, doubleComplex inp2); +char zisequala(doubleComplex* inp1, int size1r, int size1c, doubleComplex* inp2, int size2r, int size2c); +char u16isequals(uint16 inp1, uint16 inp2); +char u16isequala(uint16* inp1, int size1r, int size1c, uint16* inp2, int size2r, int size2c); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__ISEQUAL_H__*/ diff --git a/src/c/elementaryFunctions/includes/isinf.h b/src/c/elementaryFunctions/includes/isinf.h new file mode 100644 index 00000000..6752c377 --- /dev/null +++ b/src/c/elementaryFunctions/includes/isinf.h @@ -0,0 +1,35 @@ + /* 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 __ISINF_H__ +#define __ISINF_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char disinfs(double x); +char sisinfs(float x); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__ISINF_H__ */ + diff --git a/src/c/elementaryFunctions/includes/ismatrix.h b/src/c/elementaryFunctions/includes/ismatrix.h new file mode 100644 index 00000000..0dd8b4a3 --- /dev/null +++ b/src/c/elementaryFunctions/includes/ismatrix.h @@ -0,0 +1,41 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __ISMATRIX_H__ +#define __ISMATRIX_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char dismatrixa(double*); +char dismatrixs(double); +char sismatrixa(float*); +char sismatrixs(float); +char gismatrixa(char*); +char gismatrixs(char); +char zismatrixa(doubleComplex*); +char zismatrixs(doubleComplex); +char u16ismatrixa(uint16*); +char u16ismatrixs(uint16); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/isreal.h b/src/c/elementaryFunctions/includes/isreal.h new file mode 100644 index 00000000..0183ebce --- /dev/null +++ b/src/c/elementaryFunctions/includes/isreal.h @@ -0,0 +1,30 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-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 + * + */ + +#ifndef __ISREAL_H__ +#define __ISREAL_H__ + +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +float sisreals(float a); + +double disreals(double a); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/isrow.h b/src/c/elementaryFunctions/includes/isrow.h new file mode 100644 index 00000000..2de7da3d --- /dev/null +++ b/src/c/elementaryFunctions/includes/isrow.h @@ -0,0 +1,41 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __ISROW_H__ +#define __ISROW_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char disrowa(double* , int); +char disrows(double); +char sisrowa( float* , int); +char sisrows( float); +char gisrowa(char* , int); +char gisrows(char); +char zisrowa(doubleComplex*, int); +char zisrows(doubleComplex); +char u16isrowa(uint16*, int); +char u16isrows(uint16); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/isscalar.h b/src/c/elementaryFunctions/includes/isscalar.h new file mode 100644 index 00000000..f4880437 --- /dev/null +++ b/src/c/elementaryFunctions/includes/isscalar.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __ISSCALAR_H__ +#define __ISSCALAR_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char disscalara(double* , int); +char disscalars(double); +char sisscalara( float* , int); +char sisscalars( float); +char gisscalara(char* , int); +char gisscalars(char); +char zisscalara(doubleComplex*, int); +char zisscalars(doubleComplex); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/issquare.h b/src/c/elementaryFunctions/includes/issquare.h new file mode 100644 index 00000000..70e4c455 --- /dev/null +++ b/src/c/elementaryFunctions/includes/issquare.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __ISSQUARE_H__ +#define __ISSQUARE_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char dissquarea(double* , int, int); +char dissquares(double); +char sissquarea( float* , int, int); +char sissquares( float); +char gissquarea(char* , int, int); +char gissquares(char); +char zissquarea(doubleComplex*, int, int); +char zissquares(doubleComplex); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/isvector.h b/src/c/elementaryFunctions/includes/isvector.h new file mode 100644 index 00000000..75599cdd --- /dev/null +++ b/src/c/elementaryFunctions/includes/isvector.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __ISVECTOR_H__ +#define __ISVECTOR_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char disvectora(double* , int, int); +char disvectors(double); +char sisvectora( float* , int, int); +char sisvectors( float); +char gisvectora(char* , int, int ); +char gisvectors(char); +char zisvectora(doubleComplex*, int, int); +char zisvectors(doubleComplex); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/lcm.h b/src/c/elementaryFunctions/includes/lcm.h new file mode 100644 index 00000000..3a3e66fb --- /dev/null +++ b/src/c/elementaryFunctions/includes/lcm.h @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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 + */ +#ifndef __LCM_H__ +#define __LCM_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +uint8 u8lcma(uint8* in,int size); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__LCM_H__*/ + diff --git a/src/c/elementaryFunctions/includes/linspace.h b/src/c/elementaryFunctions/includes/linspace.h new file mode 100644 index 00000000..62d45015 --- /dev/null +++ b/src/c/elementaryFunctions/includes/linspace.h @@ -0,0 +1,39 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __LINSPACE_H__ +#define __LINSPACE_H__ + +#include "dynlib_elementaryfunctions.h" +#ifdef __cplusplus +extern "C" { +#endif + + +EXTERN_ELEMFUNCT void dlinspaces(double low_limit,double up_limit,double range_num, double* out); + +EXTERN_ELEMFUNCT void slinspaces(float low_limit,float up_limit,float range_num, float* out); + +EXTERN_ELEMFUNCT void dlinspacea(double *low_limit,int row,double *up_limit,double range_num, double* out); + +EXTERN_ELEMFUNCT void slinspacea(float *low_limit,int row,float *up_limit,float range_num, float* out); + + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__LINSPACE_H__ */ + diff --git a/src/c/elementaryFunctions/includes/log2.h b/src/c/elementaryFunctions/includes/log2.h new file mode 100644 index 00000000..e7b2affb --- /dev/null +++ b/src/c/elementaryFunctions/includes/log2.h @@ -0,0 +1,39 @@ + /* 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 __LOG2_H__ +#define __LOG2_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" +#include "log.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dlog2s(double inp); +float slog2s(float inp); +doubleComplex zlog2s(doubleComplex inp); +void dlog2a(double* inp,int size, double* out); +void slog2a(float* inp,int size, float* out); +void zlog2a(doubleComplex* inp,int size, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__LOG2_H__ */ + diff --git a/src/c/elementaryFunctions/includes/logspace.h b/src/c/elementaryFunctions/includes/logspace.h new file mode 100644 index 00000000..eee39de7 --- /dev/null +++ b/src/c/elementaryFunctions/includes/logspace.h @@ -0,0 +1,32 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __LOGSPACE_H__ +#define __LOGSPACE_H__ + +#include "dynlib_elementaryfunctions.h" +#ifdef __cplusplus +extern "C" { +#endif + + +EXTERN_ELEMFUNCT void dlogspaces(double low_limit,double up_limit,double range_num, double* out); + +EXTERN_ELEMFUNCT void dlogspacea(double *low_limit,int row,double *up_limit,double range_num, double* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__LOGSPACE_H__ */ + diff --git a/src/c/elementaryFunctions/includes/nancumsum.h b/src/c/elementaryFunctions/includes/nancumsum.h new file mode 100644 index 00000000..48ccc96e --- /dev/null +++ b/src/c/elementaryFunctions/includes/nancumsum.h @@ -0,0 +1,42 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#ifndef __NANCUMSUM_H__ +#define __NANCUMSUM_H__ + +#include "types.h" +#include "doubleComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dnancumsuma(double* , int , double*); +void dnancumsumrowa(double*, int, int, double*); +void dnancumsumcola(double*, int, int, double*); + +void snancumsuma(float* , int, float* ); +void snancumsumrowa(float*, int, int, float*); +void snancumsumcola(float*, int, int, float*); + +void znancumsuma(doubleComplex* , int , doubleComplex*); +void znancumsumrowa(doubleComplex*, int, int, doubleComplex*); +void znancumsumcola(doubleComplex*, int, int, doubleComplex*); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__NANCUMSUM_H__*/ diff --git a/src/c/elementaryFunctions/includes/nanmax.h b/src/c/elementaryFunctions/includes/nanmax.h new file mode 100644 index 00000000..83cfa0e9 --- /dev/null +++ b/src/c/elementaryFunctions/includes/nanmax.h @@ -0,0 +1,48 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __NANMAX_H__ +#define __NANMAX_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "int16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dnanmaxa (double* , int); +double dnanmax1a (double* , int, int , double*); +double dnanmax2a (double* , int, double*); +void dnanmaxrowa (double*, int , int, double*, double*); +void dnanmaxcola (double*, int , int, double*, double*); +void dnanmaxrow1a (double*, int , int, double*); +void dnanmaxcol1a (double*, int , int, double*); + +float snanmaxa (float* , int); +float snanmax1a (float* , int, int , float*); +float snanmax2a (float* , int, float*); +void snanmaxrowa (float*, int , int, float*, float*); +void snanmaxcola (float*, int , int, float*, float*); +void snanmaxrow1a (float*, int , int, float*); +void snanmaxcol1a (float*, int , int, float*); + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/nanmean.h b/src/c/elementaryFunctions/includes/nanmean.h new file mode 100644 index 00000000..097fec4e --- /dev/null +++ b/src/c/elementaryFunctions/includes/nanmean.h @@ -0,0 +1,42 @@ +/* Copyright (C) 2016 - 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 __NANMEAN_H__ +#define __NANMEAN_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "int16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dnanmeana(double* in, int size); +void dnanmeancola(double *in, int row, int col, double* out); +void dnanmeanrowa(double *in, int row, int col, double* out); + +float snanmeana(float* in, int size); +void snanmeancola(float *in, int row, int col, float* out); +void snanmeanrowa(float *in, int row, int col, float* out); + +doubleComplex znanmeana(doubleComplex* in, int size); +void znanmeancola(doubleComplex *in, int row, int col, doubleComplex* out); +void znanmeanrowa(doubleComplex *in, int row, int col, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__NANMEAN_H__*/ diff --git a/src/c/elementaryFunctions/includes/nanmin.h b/src/c/elementaryFunctions/includes/nanmin.h new file mode 100644 index 00000000..34bbfefd --- /dev/null +++ b/src/c/elementaryFunctions/includes/nanmin.h @@ -0,0 +1,42 @@ +/* Copyright (C) 2016 - 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 __NANMIN_H__ +#define __NANMIN_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "int16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dnanmina(double* in, int row, int col, double* pos); +double dnanminnpa(double* in, int row, int col); +double dnanmins(double in, double* pos); +double dnanminnps(double in); + +void dnanminrownpa(double *in, int row, int col, double* out); +void dnanmincolnpa(double *in, int row, int col, double* out); +void dnanminrowa(double *in, int row, int col, double *out, double *p); +void dnanmincola(double *in, int row, int col, double *out, double *p); + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__NANMIN_H__*/ diff --git a/src/c/elementaryFunctions/includes/nansum.h b/src/c/elementaryFunctions/includes/nansum.h new file mode 100644 index 00000000..5a366631 --- /dev/null +++ b/src/c/elementaryFunctions/includes/nansum.h @@ -0,0 +1,42 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#ifndef __NANSUM_H__ +#define __NANSUM_H__ + +#include "types.h" +#include "doubleComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dnansuma(double* , int ); +void dnansumrowa(double*, int, int, double*); +void dnansumcola(double*, int, int, double*); + +float snansuma(float* , int ); +void snansumrowa(float*, int, int, float*); +void snansumcola(float*, int, int, float*); + +doubleComplex znansuma(doubleComplex* , int ); +void znansumrowa(doubleComplex*, int, int, doubleComplex*); +void znansumcola(doubleComplex*, int, int, doubleComplex*); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__MATRIX_H__*/ diff --git a/src/c/elementaryFunctions/includes/nextpow2.h b/src/c/elementaryFunctions/includes/nextpow2.h new file mode 100644 index 00000000..c86bea01 --- /dev/null +++ b/src/c/elementaryFunctions/includes/nextpow2.h @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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 +*/ + + +#ifndef __NEXTPOW2_H__ +#define __NEXTPOW2_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +void dnextpow2a(double *in,int size,double *out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif + diff --git a/src/c/elementaryFunctions/includes/nthroot.h b/src/c/elementaryFunctions/includes/nthroot.h new file mode 100644 index 00000000..62b533a0 --- /dev/null +++ b/src/c/elementaryFunctions/includes/nthroot.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __NTHROOT_H__ +#define __NTHROOT_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dnthroota(double* , int ,int , double*, int , int, double*); +void dnthroot1a(double*, int , int, double, double*); +double dnthroots(double, double); +void snthroota(float* , int ,int , float*, int , int, double*); +void snthroot1a(float*, int , int, float, double*); +double snthroots(float, float); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/oct2dec.h b/src/c/elementaryFunctions/includes/oct2dec.h new file mode 100644 index 00000000..0b454d11 --- /dev/null +++ b/src/c/elementaryFunctions/includes/oct2dec.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __OCT2DEC_H__ +#define __OCT2DEC_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +double doct2decs(double in); +int8 i8oct2decs(int8 in); +int16 i16oct2decs(int16 in); +uint8 u8oct2decs(uint8 in); +uint16 u16oct2decs(uint16 in); + +void doct2deca(double* in,int size,double* out); +void i8oct2deca(int8* in,int size,int8* out); +void i16oct2deca(int16* in,int size,int16* out); +void u8oct2deca(uint8* in,int size,uint8* out); +void u16oct2deca(uint16* in,int size,uint16* out); + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__OCT2DEC_H__*/ diff --git a/src/c/elementaryFunctions/includes/pmodulo.h b/src/c/elementaryFunctions/includes/pmodulo.h new file mode 100644 index 00000000..d46febc3 --- /dev/null +++ b/src/c/elementaryFunctions/includes/pmodulo.h @@ -0,0 +1,40 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __PMODULO_H__ +#define __PMODULO_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "int16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dpmoduloa(double*, int ,double*, double*); +double dpmodulos(double, double); + +void spmoduloa(float*, int ,float*, float*); +float spmodulos(float, float); + +void i16pmoduloa(int16*, int ,int16*, int16*); +int16 i16pmodulos(int16, int16); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/elementaryFunctions/includes/pow.h b/src/c/elementaryFunctions/includes/pow.h index ec8216d8..2905b7ed 100644 --- a/src/c/elementaryFunctions/includes/pow.h +++ b/src/c/elementaryFunctions/includes/pow.h @@ -15,6 +15,11 @@ #include "dynlib_elementaryfunctions.h" #include "multiplication.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "uint8.h" +#include "uint16.h" +#include "int16.h" #ifdef __cplusplus extern "C" { @@ -27,6 +32,14 @@ EXTERN_ELEMFUNCT floatComplex cpows(floatComplex value, floatComplex expand); EXTERN_ELEMFUNCT doubleComplex zpows(doubleComplex value, doubleComplex expand); +EXTERN_ELEMFUNCT uint8 u8pows(uint8 value, uint8 expand); + +EXTERN_ELEMFUNCT uint16 u16pows(uint16 value, uint16 expand); + +EXTERN_ELEMFUNCT int8 i8pows(int8 value, int8 expand); + +EXTERN_ELEMFUNCT int16 i16pows(int16 value, int16 expand); + EXTERN_ELEMFUNCT void spowa(float *value, int size, float* expand, float *out); EXTERN_ELEMFUNCT void dpowa(double *value, int size, double* expand, double *out); @@ -35,6 +48,14 @@ EXTERN_ELEMFUNCT void cpowa(floatComplex *value, int size, floatComplex* expand EXTERN_ELEMFUNCT void zpowa(doubleComplex *value, int size, doubleComplex* expand, doubleComplex *out); +EXTERN_ELEMFUNCT void u8powa(uint8 *value, int size, uint8* expand, uint8 *out); + +EXTERN_ELEMFUNCT void u16powa(uint16 *value, int size, uint16* expand, uint16 *out); + +EXTERN_ELEMFUNCT void i8powa(int8 *value, int size, int8* expand, int8 *out); + +EXTERN_ELEMFUNCT void i16powa(int16 *value, int size, int16* expand, int16 *out); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/primes.h b/src/c/elementaryFunctions/includes/primes.h new file mode 100644 index 00000000..c541df9e --- /dev/null +++ b/src/c/elementaryFunctions/includes/primes.h @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __PRIMES_H__ +#define __PRIMES_H__ +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +void dprimess(double in,double* out); +void sprimess(float in,float* out); + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__PRIMES_H__*/ diff --git a/src/c/elementaryFunctions/includes/round.h b/src/c/elementaryFunctions/includes/round.h index 1c3c0cea..6894265a 100644 --- a/src/c/elementaryFunctions/includes/round.h +++ b/src/c/elementaryFunctions/includes/round.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus extern "C" { @@ -32,6 +33,14 @@ EXTERN_ELEMFUNCT floatComplex crounds(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zrounds(doubleComplex in); +EXTERN_ELEMFUNCT uint8 u8rounds(uint8 in); + +EXTERN_ELEMFUNCT int8 i8rounds(int8 in); + +EXTERN_ELEMFUNCT uint16 u16rounds(uint16 in); + +EXTERN_ELEMFUNCT int16 i16rounds(int16 in); + EXTERN_ELEMFUNCT void srounda(float* in, int size, float* out); EXTERN_ELEMFUNCT void drounda(double* in, int size, double* out); @@ -40,6 +49,14 @@ EXTERN_ELEMFUNCT void crounda(floatComplex* in, int size, floatComplex* out); EXTERN_ELEMFUNCT void zrounda(doubleComplex* in, int size, doubleComplex* out); +EXTERN_ELEMFUNCT void u8rounda(uint8* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void i8rounda(int8* in, int size, int8* out); + +EXTERN_ELEMFUNCT void u16rounda(uint16* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void i16rounda(int16* in, int size, int16* out); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/sec.h b/src/c/elementaryFunctions/includes/sec.h new file mode 100644 index 00000000..a04c5f73 --- /dev/null +++ b/src/c/elementaryFunctions/includes/sec.h @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __SEC_H__ +#define __SEC_H__ +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +//#include <complex.h> +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dseca(double* in,int size,double* out); +double dsecs(double in); +void sseca(float* in,int size,float* out); +float ssecs(float in); + +doubleComplex zsecs(doubleComplex z); +//void zseca(doubleComplex* in, int size,doubleComplex* out); +floatComplex csecs(floatComplex z); +void cseca(floatComplex* in, int size,floatComplex* out); + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__SEC_H__*/ diff --git a/src/c/elementaryFunctions/includes/secd.h b/src/c/elementaryFunctions/includes/secd.h new file mode 100644 index 00000000..bf9c653d --- /dev/null +++ b/src/c/elementaryFunctions/includes/secd.h @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __SECD_H__ +#define __SECD_H__ +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dsecda(double* in,int size,double* out); +void ssecda(float* in,int size,float* out); +double dsecds(double in); +float ssecds(float in); + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__SECD_H__*/ diff --git a/src/c/elementaryFunctions/includes/sech.h b/src/c/elementaryFunctions/includes/sech.h new file mode 100644 index 00000000..9b85396a --- /dev/null +++ b/src/c/elementaryFunctions/includes/sech.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __SECH_H__ +#define __SECH_H__ +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + + #ifdef __cplusplus + extern "C" { + #endif + +void dsecha(double* in,int size,double* out); +double dsechs(double in); +void ssecha(float* in,int size,float* out); +float ssechs(float in); + +void csecha(floatComplex* in,int size,floatComplex* out); +floatComplex csechs(floatComplex in); +void zsecha(doubleComplex* in,int size,doubleComplex* out); +doubleComplex zsechs(doubleComplex in); + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__SECH_H__*/ diff --git a/src/c/elementaryFunctions/includes/sin.h b/src/c/elementaryFunctions/includes/sin.h index 198b0665..ffb76269 100644 --- a/src/c/elementaryFunctions/includes/sin.h +++ b/src/c/elementaryFunctions/includes/sin.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus extern "C" { @@ -49,6 +50,33 @@ EXTERN_ELEMFUNCT floatComplex csins(floatComplex in); EXTERN_ELEMFUNCT doubleComplex zsins(doubleComplex in); /* +** \brief Uint8 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u8sins(uint8 in); + + +/* +** \brief Int8 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i8sins(int8 in); + + +/* +** \brief Uint16 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u16sins(uint16 in); + + +/* +** \brief Int16 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i16sins(int16 in); + +/* ** \brief Float Matrix Sine function ** \param in : input array value. ** \param out : output array value. @@ -80,6 +108,39 @@ EXTERN_ELEMFUNCT void csina(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void zsina(doubleComplex* in, int size, doubleComplex* out); +/* +** \brief uint8 Matrix Sine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u8sina(uint8* in, int size, float* out); + +/* +** \brief int8 Matrix Sine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i8sina(int8* in, int size, float* out); + +/* +** \brief uint16 Matrix Sine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u16sina(uint16* in, int size, float* out); + +/* +** \brief int16 Matrix Sine function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i16sina(int16* in, int size, float* out); + + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/sinc.h b/src/c/elementaryFunctions/includes/sinc.h new file mode 100644 index 00000000..8bc98d28 --- /dev/null +++ b/src/c/elementaryFunctions/includes/sinc.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2016 - 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 + */ + +#ifndef __SINC_H__ +#define __SINC_H__ +#include "types.h" +#include "doubleComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void dsinca(double* sample,int size,double* oup); +void zsinca(doubleComplex* sample,int size,doubleComplex* oup); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* __SINC_H__ */ diff --git a/src/c/elementaryFunctions/includes/sind.h b/src/c/elementaryFunctions/includes/sind.h new file mode 100644 index 00000000..d98bd683 --- /dev/null +++ b/src/c/elementaryFunctions/includes/sind.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 __SIND_H__ +#define __SIND_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dsinds(double x); +float ssinds(float x); +void dsinda(double* x, int size, double* y); +void ssinda(float* x, int size, double* y); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__SIND_H__ */ + diff --git a/src/c/elementaryFunctions/includes/sinh.h b/src/c/elementaryFunctions/includes/sinh.h index c052a901..c464fce0 100644 --- a/src/c/elementaryFunctions/includes/sinh.h +++ b/src/c/elementaryFunctions/includes/sinh.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus extern "C" { @@ -48,6 +49,31 @@ EXTERN_ELEMFUNCT floatComplex csinhs(floatComplex in); */ EXTERN_ELEMFUNCT doubleComplex zsinhs(doubleComplex in); + +/* +** \brief Uint8 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u8sinhs(uint8 in); + +/* +** \brief Int8 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i8sinhs(int8 in); + +/* +** \brief Uint16 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u16sinhs(uint16 in); + +/* +** \brief Int16 Sine function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i16sinhs(int16 in); + /* ** \brief Float Matrix Sine function ** \param in : input array value. @@ -80,6 +106,39 @@ EXTERN_ELEMFUNCT void csinha(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void zsinha(doubleComplex* in, int size, doubleComplex* out); +/* +** \brief Uint8 Matrix Sine function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u8sinha(uint8* in, int size, float* out); + +/* +** \brief Int8 Matrix Sine function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i8sinha(int8* in, int size, float* out); + +/* +** \brief Uint16 Matrix Sine function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u16sinha(uint16* in, int size, float* out); + +/* +** \brief Int16 Matrix Sine function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i16sinha(int16* in, int size, float* out); + + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/sqrt.h b/src/c/elementaryFunctions/includes/sqrt.h index 7885c9c2..df11b20e 100644 --- a/src/c/elementaryFunctions/includes/sqrt.h +++ b/src/c/elementaryFunctions/includes/sqrt.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus extern "C" { @@ -48,13 +49,14 @@ EXTERN_ELEMFUNCT floatComplex csqrts(floatComplex in); */ EXTERN_ELEMFUNCT doubleComplex zsqrts(doubleComplex in); + /* ** \brief Float Matrix Square Root function ** \param in : input array value. ** \param out : output array value. ** \param size : the size of in and out arrays. */ -EXTERN_ELEMFUNCT void ssqrta(float* in, int size, float* out); +EXTERN_ELEMFUNCT void ssqrta(float* in, int size, float* out); /* ** \brief Double Matrix Square Root function @@ -80,6 +82,10 @@ EXTERN_ELEMFUNCT void csqrta(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void zsqrta(doubleComplex* in, int size, doubleComplex* out); + + + + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/tan.h b/src/c/elementaryFunctions/includes/tan.h index 77ef7868..2632a779 100644 --- a/src/c/elementaryFunctions/includes/tan.h +++ b/src/c/elementaryFunctions/includes/tan.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "types.h" #ifdef __cplusplus extern "C" { @@ -49,6 +50,31 @@ EXTERN_ELEMFUNCT floatComplex ctans(floatComplex in); EXTERN_ELEMFUNCT doubleComplex ztans(doubleComplex in); /* +** \brief Uint8 Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u8tans(uint8 in); + +/* +** \brief Int8 Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i8tans(int8 in); + +/* +** \brief Uint16 Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u16tans(uint16 in); + +/* +** \brief Int16 Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i16tans(int16 in); + + +/* ** \brief Float Matrix Tangeant function ** \param in : input array value. ** \param out : input array value. @@ -80,6 +106,39 @@ EXTERN_ELEMFUNCT void ctana(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void ztana(doubleComplex* in, int size, doubleComplex* out); +/* +** \brief Uint8 Matrix Tangeant function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u8tana(uint8* in, int size, float* out); + +/* +** \brief Int8 Matrix Tangeant function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i8tana(int8* in, int size, float* out); + +/* +** \brief Uint16 Matrix Tangeant function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u16tana(uint16* in, int size, float* out); + +/* +** \brief Int16 Matrix Tangeant function +** \param in : input array value. +** \param out : input array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i16tana(int16* in, int size, float* out); + + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/tand (copy).h b/src/c/elementaryFunctions/includes/tand (copy).h new file mode 100644 index 00000000..918d43ab --- /dev/null +++ b/src/c/elementaryFunctions/includes/tand (copy).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 __TAND_H__ +#define __TAND_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +double dtands(double x); +float stands(float x); +void dtanda(double* x, int size, double* y); +void standa(float* x, int size, double* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__TAND_H__ */ + diff --git a/src/c/elementaryFunctions/includes/tand.h b/src/c/elementaryFunctions/includes/tand.h new file mode 100644 index 00000000..918d43ab --- /dev/null +++ b/src/c/elementaryFunctions/includes/tand.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 __TAND_H__ +#define __TAND_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +double dtands(double x); +float stands(float x); +void dtanda(double* x, int size, double* y); +void standa(float* x, int size, double* y); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__TAND_H__ */ + diff --git a/src/c/elementaryFunctions/includes/tanh.h b/src/c/elementaryFunctions/includes/tanh.h index 9ff440cf..6a654230 100644 --- a/src/c/elementaryFunctions/includes/tanh.h +++ b/src/c/elementaryFunctions/includes/tanh.h @@ -16,6 +16,7 @@ #include "dynlib_elementaryfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#include "sinh.h" #ifdef __cplusplus extern "C" { @@ -49,6 +50,30 @@ EXTERN_ELEMFUNCT floatComplex ctanhs(floatComplex in); EXTERN_ELEMFUNCT doubleComplex ztanhs(doubleComplex in); /* +** \brief Uint8 Hyperbolic Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u8tanhs(uint8 in); + +/* +** \brief Int8 Hyperbolic Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i8tanhs(int8 in); + +/* +** \brief Uint16 Hyperbolic Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float u16tanhs(uint16 in); + +/* +** \brief Int16 Hyperbolic Tangeant function +** \param in : input value. +*/ +EXTERN_ELEMFUNCT float i16tanhs(int16 in); + +/* ** \brief Float Matrix Hyperbolic Tangeant function ** \param in : input array value. ** \param out : output array value. @@ -80,6 +105,38 @@ EXTERN_ELEMFUNCT void ctanha(floatComplex* in, int size, floatComplex* out); */ EXTERN_ELEMFUNCT void ztanha(doubleComplex* in, int size, doubleComplex* out); +/* +** \brief Uint8 Matrix Hyperbolic Tangeant function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u8tanha(uint8* in, int size, float* out); + +/* +** \brief Int8 Matrix Hyperbolic Tangeant function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i8tanha(int8* in, int size, float* out); + +/* +** \brief Uint16 Matrix Hyperbolic Tangeant function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void u16tanha(uint16* in, int size, float* out); + +/* +** \brief Int16 Matrix Hyperbolic Tangeant function +** \param in : input array value. +** \param out : output array value. +** \param size : the size of in and out arrays. +*/ +EXTERN_ELEMFUNCT void i16tanha(int16* in, int size, float* out); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/src/c/elementaryFunctions/includes/uint16.h b/src/c/elementaryFunctions/includes/uint16.h new file mode 100644 index 00000000..9e162130 --- /dev/null +++ b/src/c/elementaryFunctions/includes/uint16.h @@ -0,0 +1,54 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __UINT16_H__ +#define __UINT16_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* + uint16(X) returns the signed int part of the double value +*/ + +EXTERN_ELEMFUNCT uint16 suint16s(float in); + +EXTERN_ELEMFUNCT uint16 duint16s(double in); + +EXTERN_ELEMFUNCT uint16 u8uint16s(uint8 in); + +EXTERN_ELEMFUNCT uint16 i8uint16s(int8 in); + +EXTERN_ELEMFUNCT uint16 i16uint16s(int16 in); + +EXTERN_ELEMFUNCT void suint16a(float* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void duint16a(double* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void u8uint16a(uint8* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void i8uint16a(int8* in, int size, uint16* out); + +EXTERN_ELEMFUNCT void i16uint16a(int16* in, int size, uint16* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__UINT16_H__ */ + diff --git a/src/c/elementaryFunctions/includes/uint32.h b/src/c/elementaryFunctions/includes/uint32.h new file mode 100644 index 00000000..b90247bc --- /dev/null +++ b/src/c/elementaryFunctions/includes/uint32.h @@ -0,0 +1,62 @@ +/* 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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __UINT32_H__ +#define __UINT32_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* + uint32(X) returns the unsigned int part of the double value +*/ + +EXTERN_ELEMFUNCT uint32 suint32s(float in); + +EXTERN_ELEMFUNCT uint32 duint32s(double in); + +EXTERN_ELEMFUNCT uint32 u8uint32s(uint8 in); + +EXTERN_ELEMFUNCT uint32 i8uint32s(int8 in); + +EXTERN_ELEMFUNCT uint32 u16uint32s(uint16 in); + +EXTERN_ELEMFUNCT uint32 i16uint32s(int16 in); + +EXTERN_ELEMFUNCT uint32 i32uint32s(int32 in); + +EXTERN_ELEMFUNCT void suint32a(float* in, int size, uint32* out); + +EXTERN_ELEMFUNCT void duint32a(double* in, int size, uint32* out); + +EXTERN_ELEMFUNCT void u8uint32a(uint8* in, int size, uint32* out); + +EXTERN_ELEMFUNCT void i8uint32a(int8* in, int size, uint32* out); + +EXTERN_ELEMFUNCT void u16uint32a(uint16* in, int size, uint32* out); + +EXTERN_ELEMFUNCT void i16uint32a(int16* in, int size, uint32* out); + +EXTERN_ELEMFUNCT void i32uint32a(int32* in, int size, uint32* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__UINT32_H__ */ + diff --git a/src/c/elementaryFunctions/includes/uint8.h b/src/c/elementaryFunctions/includes/uint8.h new file mode 100644 index 00000000..63071c4a --- /dev/null +++ b/src/c/elementaryFunctions/includes/uint8.h @@ -0,0 +1,54 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __UINT8_H__ +#define __UINT8_H__ + +#include "dynlib_elementaryfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* + uint8(X) returns the unsigned char part of the double value +*/ + +EXTERN_ELEMFUNCT uint8 suint8s(float in); + +EXTERN_ELEMFUNCT uint8 duint8s(double in); + +EXTERN_ELEMFUNCT uint8 i8uint8s(int8 in); + +EXTERN_ELEMFUNCT uint8 u16uint8s(uint16 in); + +EXTERN_ELEMFUNCT uint8 i16uint8s(int16 in); + +EXTERN_ELEMFUNCT void suint8a(float* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void duint8a(double* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void i8uint8a(int8* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void u16uint8a(uint16* in, int size, uint8* out); + +EXTERN_ELEMFUNCT void i16uint8a(int16* in, int size, uint8* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__UINT8_H__ */ + diff --git a/src/c/elementaryFunctions/int16/dint16a.c b/src/c/elementaryFunctions/int16/dint16a.c new file mode 100644 index 00000000..e3b96116 --- /dev/null +++ b/src/c/elementaryFunctions/int16/dint16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int16.h" + +void dint16a(double* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = dint16s(x[i]); +} diff --git a/src/c/elementaryFunctions/int16/dint16s.c b/src/c/elementaryFunctions/int16/dint16s.c new file mode 100644 index 00000000..6f09631a --- /dev/null +++ b/src/c/elementaryFunctions/int16/dint16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int16.h" + +int16 dint16s(double x) { + return (int16) x; +} diff --git a/src/c/elementaryFunctions/int16/i8int16a.c b/src/c/elementaryFunctions/int16/i8int16a.c new file mode 100644 index 00000000..0885b021 --- /dev/null +++ b/src/c/elementaryFunctions/int16/i8int16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int16.h" + +void i8int16a(int8* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8int16s(x[i]); +} diff --git a/src/c/elementaryFunctions/int16/i8int16s.c b/src/c/elementaryFunctions/int16/i8int16s.c new file mode 100644 index 00000000..4a42acc0 --- /dev/null +++ b/src/c/elementaryFunctions/int16/i8int16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int16.h" + +int16 i8int16s(int8 x) { + return (int16) x; +} diff --git a/src/c/elementaryFunctions/int16/sint16a.c b/src/c/elementaryFunctions/int16/sint16a.c new file mode 100644 index 00000000..9769127b --- /dev/null +++ b/src/c/elementaryFunctions/int16/sint16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int16.h" + +void sint16a(float* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = sint16s(x[i]); +} diff --git a/src/c/elementaryFunctions/int16/sint16s.c b/src/c/elementaryFunctions/int16/sint16s.c new file mode 100644 index 00000000..2dd7af27 --- /dev/null +++ b/src/c/elementaryFunctions/int16/sint16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int16.h" + +int16 sint16s(float x) { + return (int16) x; +} diff --git a/src/c/elementaryFunctions/int16/u16int16a.c b/src/c/elementaryFunctions/int16/u16int16a.c new file mode 100644 index 00000000..bc631988 --- /dev/null +++ b/src/c/elementaryFunctions/int16/u16int16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int16.h" + +void u16int16a(uint16* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16int16s(x[i]); +} diff --git a/src/c/elementaryFunctions/int16/u16int16s.c b/src/c/elementaryFunctions/int16/u16int16s.c new file mode 100644 index 00000000..ad226dba --- /dev/null +++ b/src/c/elementaryFunctions/int16/u16int16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int16.h" + +int16 u16int16s(uint16 x) { + return (int16) x; +} diff --git a/src/c/elementaryFunctions/int16/u8int16a.c b/src/c/elementaryFunctions/int16/u8int16a.c new file mode 100644 index 00000000..8c9f94b0 --- /dev/null +++ b/src/c/elementaryFunctions/int16/u8int16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int16.h" + +void u8int16a(uint8* x, int size, int16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8int16s(x[i]); +} diff --git a/src/c/elementaryFunctions/int16/u8int16s.c b/src/c/elementaryFunctions/int16/u8int16s.c new file mode 100644 index 00000000..463565f1 --- /dev/null +++ b/src/c/elementaryFunctions/int16/u8int16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int16.h" + +int16 u8int16s(uint8 x) { + return (int16) x; +} diff --git a/src/c/elementaryFunctions/int32/dint32a.c b/src/c/elementaryFunctions/int32/dint32a.c new file mode 100644 index 00000000..f8b4b662 --- /dev/null +++ b/src/c/elementaryFunctions/int32/dint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +void dint32a(double* x, int size, int32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = dint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/int32/dint32s.c b/src/c/elementaryFunctions/int32/dint32s.c new file mode 100644 index 00000000..19366ef0 --- /dev/null +++ b/src/c/elementaryFunctions/int32/dint32s.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int32.h" + +int32 dint32s(double x) { + return (int32) x; +} diff --git a/src/c/elementaryFunctions/int32/i16int32a.c b/src/c/elementaryFunctions/int32/i16int32a.c new file mode 100644 index 00000000..e970deb2 --- /dev/null +++ b/src/c/elementaryFunctions/int32/i16int32a.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "int32.h" + +void i16int32a(int16* x, int size, int32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16int32s(x[i]); +} diff --git a/src/c/elementaryFunctions/int32/i16int32s.c b/src/c/elementaryFunctions/int32/i16int32s.c new file mode 100644 index 00000000..ad079930 --- /dev/null +++ b/src/c/elementaryFunctions/int32/i16int32s.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +int32 i16int32s(int16 x) { + return (int32) x; +} diff --git a/src/c/elementaryFunctions/int32/i8int32a.c b/src/c/elementaryFunctions/int32/i8int32a.c new file mode 100644 index 00000000..d046ba19 --- /dev/null +++ b/src/c/elementaryFunctions/int32/i8int32a.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "int32.h" + +void i8int32a(int8* x, int size, int32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8int32s(x[i]); +} diff --git a/src/c/elementaryFunctions/int32/i8int32s.c b/src/c/elementaryFunctions/int32/i8int32s.c new file mode 100644 index 00000000..c126662c --- /dev/null +++ b/src/c/elementaryFunctions/int32/i8int32s.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +int32 i8int32s(int8 x) { + return (int32) x; +} diff --git a/src/c/elementaryFunctions/int32/sint32a.c b/src/c/elementaryFunctions/int32/sint32a.c new file mode 100644 index 00000000..14dbefec --- /dev/null +++ b/src/c/elementaryFunctions/int32/sint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +void sint32a(float* x, int size, int32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = sint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/int32/sint32s.c b/src/c/elementaryFunctions/int32/sint32s.c new file mode 100644 index 00000000..8a4f8e7e --- /dev/null +++ b/src/c/elementaryFunctions/int32/sint32s.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +int32 sint32s(float x) { + return (int32) x; +} diff --git a/src/c/elementaryFunctions/int32/u16int32a.c b/src/c/elementaryFunctions/int32/u16int32a.c new file mode 100644 index 00000000..eaf90fda --- /dev/null +++ b/src/c/elementaryFunctions/int32/u16int32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +void u16int32a(uint16* x, int size, int32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16int32s(x[i]); +} diff --git a/src/c/elementaryFunctions/int32/u16int32s.c b/src/c/elementaryFunctions/int32/u16int32s.c new file mode 100644 index 00000000..be3909a2 --- /dev/null +++ b/src/c/elementaryFunctions/int32/u16int32s.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +int32 u16int32s(uint16 x) { + return (int32) x; +} diff --git a/src/c/elementaryFunctions/int32/u32int32a.c b/src/c/elementaryFunctions/int32/u32int32a.c new file mode 100644 index 00000000..a135d12a --- /dev/null +++ b/src/c/elementaryFunctions/int32/u32int32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +void u32int32a(uint32* x, int size, int32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u32int32s(x[i]); +} diff --git a/src/c/elementaryFunctions/int32/u32int32s.c b/src/c/elementaryFunctions/int32/u32int32s.c new file mode 100644 index 00000000..ee5a16aa --- /dev/null +++ b/src/c/elementaryFunctions/int32/u32int32s.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +int32 u32int32s(uint32 x) { + return (int32) x; +} diff --git a/src/c/elementaryFunctions/int32/u8int32a.c b/src/c/elementaryFunctions/int32/u8int32a.c new file mode 100644 index 00000000..1361feab --- /dev/null +++ b/src/c/elementaryFunctions/int32/u8int32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +void u8int32a(uint8* x, int size, int32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8int32s(x[i]); +} diff --git a/src/c/elementaryFunctions/int32/u8int32s.c b/src/c/elementaryFunctions/int32/u8int32s.c new file mode 100644 index 00000000..c3b06903 --- /dev/null +++ b/src/c/elementaryFunctions/int32/u8int32s.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int32.h" + +int32 u8int32s(uint8 x) { + return (int32) x; +} diff --git a/src/c/elementaryFunctions/int8/dint8a.c b/src/c/elementaryFunctions/int8/dint8a.c new file mode 100644 index 00000000..035ea4f1 --- /dev/null +++ b/src/c/elementaryFunctions/int8/dint8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int8.h" + +void dint8a(double* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = dint8s(x[i]); +} diff --git a/src/c/elementaryFunctions/int8/dint8s.c b/src/c/elementaryFunctions/int8/dint8s.c new file mode 100644 index 00000000..3b554141 --- /dev/null +++ b/src/c/elementaryFunctions/int8/dint8s.c @@ -0,0 +1,17 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int8.h" + +int8 dint8s(double x) { + return (int8) x; +} diff --git a/src/c/elementaryFunctions/int8/i16int8a.c b/src/c/elementaryFunctions/int8/i16int8a.c new file mode 100644 index 00000000..b9aa0931 --- /dev/null +++ b/src/c/elementaryFunctions/int8/i16int8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int8.h" + +void i16int8a(int16* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16int8s(x[i]); +} diff --git a/src/c/elementaryFunctions/int8/i16int8s.c b/src/c/elementaryFunctions/int8/i16int8s.c new file mode 100644 index 00000000..1bdd1764 --- /dev/null +++ b/src/c/elementaryFunctions/int8/i16int8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int8.h" + +int8 i16int8s(int16 x) { + return (int8) x; +} diff --git a/src/c/elementaryFunctions/int8/sint8a.c b/src/c/elementaryFunctions/int8/sint8a.c new file mode 100644 index 00000000..4a04a4b0 --- /dev/null +++ b/src/c/elementaryFunctions/int8/sint8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int8.h" + +void sint8a(float* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = sint8s(x[i]); +} diff --git a/src/c/elementaryFunctions/int8/sint8s.c b/src/c/elementaryFunctions/int8/sint8s.c new file mode 100644 index 00000000..6e4093e1 --- /dev/null +++ b/src/c/elementaryFunctions/int8/sint8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int8.h" + +int8 sint8s(float x) { + return (int8) x; +} diff --git a/src/c/elementaryFunctions/int8/u16int8a.c b/src/c/elementaryFunctions/int8/u16int8a.c new file mode 100644 index 00000000..958dcb7c --- /dev/null +++ b/src/c/elementaryFunctions/int8/u16int8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int8.h" + +void u16int8a(uint16* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16int8s(x[i]); +} diff --git a/src/c/elementaryFunctions/int8/u16int8s.c b/src/c/elementaryFunctions/int8/u16int8s.c new file mode 100644 index 00000000..440b5d8a --- /dev/null +++ b/src/c/elementaryFunctions/int8/u16int8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int8.h" + +int8 u16int8s(uint16 x) { + return (int8) x; +} diff --git a/src/c/elementaryFunctions/int8/u8int8a.c b/src/c/elementaryFunctions/int8/u8int8a.c new file mode 100644 index 00000000..310aafd6 --- /dev/null +++ b/src/c/elementaryFunctions/int8/u8int8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "int8.h" + +void u8int8a(uint8* x, int size, int8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8int8s(x[i]); +} diff --git a/src/c/elementaryFunctions/int8/u8int8s.c b/src/c/elementaryFunctions/int8/u8int8s.c new file mode 100644 index 00000000..40b7e932 --- /dev/null +++ b/src/c/elementaryFunctions/int8/u8int8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "int8.h" + +int8 u8int8s(uint8 x) { + return (int8) x; +} diff --git a/src/c/elementaryFunctions/interfaces/int_OpDotHat.h b/src/c/elementaryFunctions/interfaces/int_OpDotHat.h index 8e5c7042..2444f100 100644 --- a/src/c/elementaryFunctions/interfaces/int_OpDotHat.h +++ b/src/c/elementaryFunctions/interfaces/int_OpDotHat.h @@ -25,6 +25,14 @@ #define z0z0OpDotHatz0(in1, in2) zpows(in1, in2) +#define u80u80OpDotHatu80(in1, in2) u8pows(in1, in2) + +#define u160u160OpDotHatu160(in1, in2) u16pows(in1, in2) + +#define i80i80OpDotHati80(in1, in2) i8pows(in1, in2) + +#define i160i160OpDotHati60(in1, in2) i16pows(in1, in2) + #define s0c0OpDotHatc0(in1, in2) cpows(FloatComplex(in1,0), in2) #define c0s0OpDotHatc0(in1, in2) cpows(in1, FloatComplex(in2,0)) @@ -53,6 +61,20 @@ for (i=0;i<size[0]*size[1];i++) out[i]=zpows(in1,in2[i]);\ } +#define u80u82OpDotHatu82(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u8pows(in1,in2[i]);\ + } + +#define u160u162OpDotHatu162(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u16pows(in1,in2[i]);\ + } +#define i80i82OpDotHati82(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i8pows(in1,in2[i]);\ + } + +#define i160i162OpDotHati162(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i16pows(in1,in2[i]);\ + } #define s0c2OpDotHatc2(in1, in2, size, out) {int i=0;\ @@ -90,6 +112,23 @@ for (i=0;i<size[0]*size[1];i++) out[i]=zpows(in1[i],in2);\ } +#define u82u80OpDotHatu82(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u8pows(in1[i],in2);\ + } + +#define u162u160OpDotHatu162(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u16pows(in1[i],in2);\ + } + +#define i82i80OpDotHati82(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i8pows(in1[i],in2);\ + } + +#define i162i160OpDotHati162(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i16pows(in1[i],in2);\ + } + + #define s2c0OpDotHatc2(in1,size,in2,out) {int i=0;\ for (i=0;i<size[0]*size[1];i++) out[i]=cpows(FloatComplex(in1[i],0),in2);\ } @@ -106,6 +145,24 @@ for (i=0;i<size[0]*size[1];i++) out[i]=zpows(in1[i],DoubleComplex(in2,0));\ } +#define u82d0OpDotHatu82(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u8pows(in1[i],in2);\ + } + +#define u162d0OpDotHatu162(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u16pows(in1[i],in2);\ + } + + +#define i82d0OpDotHati82(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i8pows(in1[i],in2);\ + } + +#define i162d0OpDotHatui62(in1,size,in2,out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i16pows(in1[i],in2);\ + } + + /* Matrix - Matrix */ @@ -117,6 +174,14 @@ #define z2z2OpDotHatz2(in1, size1, in2, size2, out) zpowa(in1, size1[0]*size2[1], in2, out) +#define u82u82OpDotHatu82(in1, size1, in2, size2, out) u8powa(in1, size1[0]*size2[1], in2, out) + +#define u162u162OpDotHatu162(in1, size1, in2, size2, out) u16powa(in1, size1[0]*size2[1], in2, out) + +#define i82i82OpDotHati82(in1, size1, in2, size2, out) i8powa(in1, size1[0]*size2[1], in2, out) + +#define i162i162OpDotHati162(in1, size1, in2, size2, out) i16powa(in1, size1[0]*size2[1], in2, out) + #define s2c2OpDotHatc2(in1, size1, in2, size2, out) {int i=0;\ for (i=0;i<size1[0]*size2[1];i++) out[i]=cpows(FloatComplex(in1[i],0),in2[i]);\ } diff --git a/src/c/elementaryFunctions/interfaces/int_OpHat.h b/src/c/elementaryFunctions/interfaces/int_OpHat.h index 8cc8849c..f1bb8d51 100644 --- a/src/c/elementaryFunctions/interfaces/int_OpHat.h +++ b/src/c/elementaryFunctions/interfaces/int_OpHat.h @@ -23,6 +23,14 @@ #define c0c0OpHatc0(in1, in2) cpows(in1, in2) +#define u80u80OpHatu80(in1,in2) u8pows(in1, in2) + +#define u160u160OpHatu160(in1,in2) u16pows(in1, in2) + +#define i80i80OpHati80(in1,in2) i8pows(in1, in2) + +#define i160i60OpHati60(in1,in2) i6pows(in1, in2) + #define s0c0OpHatc0(in1, in2) cpows(FloatComplex(in1,0), in2) #define c0s0OpHatc0(in1, in2) cpows(in1, FloatComplex(in2,0)) @@ -54,6 +62,25 @@ for (i=0;i<size[0]*size[1];i++) out[i]=zpows(in1,in2[i]);\ } +#define u80u82OpHatu82(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u8pows(in1,in2[i]);\ + } + + +#define u160u162OpHatu162(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=u16pows(in1,in2[i]);\ + } + +#define i80i82OpHati82(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i8pows(in1,in2[i]);\ + } + + +#define i160i162OpHati162(in1, in2, size, out) {int i=0;\ + for (i=0;i<size[0]*size[1];i++) out[i]=i16pows(in1,in2[i]);\ + } + + #define s0c2OpHatc2(in1, in2, size, out) {int i=0;\ @@ -84,6 +111,22 @@ #define z2z0OpHatz2(in1,size,in2,out) zpowma(in1,size[0],in2,out); +#define u82u80OpHatu82(in1,size,in2,out) u8powa(in1,size[0],in2,out) + +#define u162u162OpHatu162(in1,size,in2,out) u16powa(in1,size[0],in2,out) + +#define i82i80OpHati82(in1,size,in2,out) i8powa(in1,size[0],in2,out) + +#define i162i160OpHati82(in1,size,in2,out) i16powa(in1,size[0],in2,out) + +#define u82d0OpHatu82(in1,size,in2,out) u8powa(in1,size[0],in2,out) + +#define u162d0OpHatu162(in1,size,in2,out) u16powa(in1,size[0],in2,out) + +#define i82d0OpHati82(in1,size,in2,out) i8powa(in1,size[0],in2,out) + +#define i162d0OpHati162(in1,sine,in2,out) i16powa(in1,size[0],in2,out) + /* FIXME : malloc here */ #define s2c0OpHatc2(in1,size,in2,out) {float* tmp;\ tmp = malloc((uint)(size[0]*size[1])*sizeof(float));\ diff --git a/src/c/elementaryFunctions/interfaces/int_acosd.h b/src/c/elementaryFunctions/interfaces/int_acosd.h new file mode 100644 index 00000000..ee188c98 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_acosd.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ACOSD_H__ +#define __INT_ACOSD_H__ + +#include "acosd.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0acosdd0(in1) dacosds(in1); + +#define d2acosdd2(in1,in2,in3) dacosda(in1,in2[0]*in2[1],in3); + +#define s0acosds0(in1) sacosds(in1); + +#define s2acosds2(in1,in2,in3) sacosda(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOSD_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_acot.h b/src/c/elementaryFunctions/interfaces/int_acot.h new file mode 100644 index 00000000..371e64b5 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_acot.h @@ -0,0 +1,42 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ACOT_H__ +#define __INT_ACOT_H__ + +#include "acot.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0acotd0(in1) dacots(in1); + +#define d2acotd2(in1,in2,in3) dacota(in1,in2[0]*in2[1],in3); + +#define s0acots0(in1) sacots(in1); + +#define s2acots2(in1,in2,in3) sacota(in1,in2[0]*in2[1],in3); + +#define c0acotd0(in1) cacots(in1); + +#define c2acotc2(in1,in2,in3) cacota(in1,in2[0]*in2[1],in3); + +#define z0acotz0(in1) zacots(in1); + +#define z2acotz2(in1,in2,in3) zacota(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOT_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_acotd.h b/src/c/elementaryFunctions/interfaces/int_acotd.h new file mode 100644 index 00000000..22367bee --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_acotd.h @@ -0,0 +1,33 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ACOTD_H__ +#define __INT_ACOTD_H__ + +#include "acotd.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0acotdd0(in1) dacotds(in1); + +#define d2acotdd2(in1,in2,in3) dacotda(in1,in2[0]*in2[1],in3); + +#define s0acotds0(in1) sacotds(in1); + +#define s2acotds2(in1,in2,in3) sacotda(in1,in2[0]*in2[1],in3); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOTD_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_acoth.h b/src/c/elementaryFunctions/interfaces/int_acoth.h new file mode 100644 index 00000000..8ec51a77 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_acoth.h @@ -0,0 +1,43 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in + +#ifndef __INT_ACOTH_H__ +#define __INT_ACOTH_H__ + +#include "acoth.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0acothd0(in1) dacoths(in1); + +#define d2acothd2(in1,in2,in3) dacotha(in1,in2[0]*in2[1],in3); + +#define s0acoths0(in1) sacoths(in1); + +#define s2acoths2(in1,in2,in3) sacotha(in1,in2[0]*in2[1],in3); + +#define c0acothc0(in1) cacoths(in1); + +#define c2acothc2(in1,in2,in3) cacotha(in1,in2[0]*in2[1],in3); + +#define z0acothz0(in1) zacoths(in1); + +#define z2acothz2(in1,in2,in3) zacotha(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACOTH_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_acsc.h b/src/c/elementaryFunctions/interfaces/int_acsc.h new file mode 100644 index 00000000..e16f7c99 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_acsc.h @@ -0,0 +1,42 @@ +// 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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ACSC_H__ +#define __INT_ACSC_H__ + +#include "acsc.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0acscd0(in1) dacscs(in1); + +#define d2acscd2(in1,in2,in3) dacsca(in1,in2[0]*in2[1],in3); + +#define s0acscs0(in1) sacscs(in1); + +#define s2acscs2(in1,in2,in3) sacsca(in1,in2[0]*in2[1],in3); + +#define c0acscc0(in1) cacscs(in1); + +#define c2acscc2(in1,in2,in3) cacsca(in1,in2[0]*in2[1],in3); + +#define z0acscz0(in1) zacscs(in1); + +#define z2acscz2(in1,in2,in3) zacsca(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACSC_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_acscd.h b/src/c/elementaryFunctions/interfaces/int_acscd.h new file mode 100644 index 00000000..fa13acb8 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_acscd.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ACSCD_H__ +#define __INT_ACSCD_H__ + +#include "acscd.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0acscdd0(in1) dacscds(in1); + +#define d2acscdd2(in1,in2,in3) dacscda(in1,in2[0]*in2[1],in3); + +#define s0acscds0(in1) sacscds(in1); + +#define s2acscds2(in1,in2,in3) sacscda(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACSCD_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_acsch.h b/src/c/elementaryFunctions/interfaces/int_acsch.h new file mode 100644 index 00000000..2101abe2 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_acsch.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ACSCH_H__ +#define __INT_ACSCH_H__ + +#include "acsch.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0acschd0(in1) dacschs(in1); + +#define d2acschd2(in1,in2,in3) dacscha(in1,in2[0]*in2[1],in3); + +#define s0acschs0(in1) sacschs(in1); + +#define s2acschs2(in1,in2,in3) sacscha(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ACSCH_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_asec.h b/src/c/elementaryFunctions/interfaces/int_asec.h new file mode 100644 index 00000000..25a1f111 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_asec.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ASEC_H__ +#define __INT_ASEC_H__ + +#include "asec.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0asecd0(in1) dasecs(in1); + +#define d2asecd2(in1,in2,in3) daseca(in1,in2[0]*in2[1],in3); + +#define s0asecs0(in1) sasecs(in1); + +#define s2asecs2(in1,in2,in3) saseca(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASEC_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_asecd.h b/src/c/elementaryFunctions/interfaces/int_asecd.h new file mode 100644 index 00000000..a722b6b8 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_asecd.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ASECD_H__ +#define __INT_ASECD_H__ + +#include "asecd.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0asecdd0(in1) dasecds(in1); + +#define d2asecdd2(in1,in2,in3) dasecda(in1,in2[0]*in2[1],in3); + +#define s0asecds0(in1) sasecds(in1); + +#define s2asecds2(in1,in2,in3) sasecda(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASECD_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_asech.h b/src/c/elementaryFunctions/interfaces/int_asech.h new file mode 100644 index 00000000..c6830f5c --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_asech.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ASECH_H__ +#define __INT_ASECH_H__ + +#include "asech.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0asechd0(in1) dasechs(in1); + +#define d2asechd2(in1,in2,in3) dasecha(in1,in2[0]*in2[1],in3); + +#define s0asechs0(in1) sasechs(in1); + +#define s2asechs2(in1,in2,in3) sasecha(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASECH_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_asind.h b/src/c/elementaryFunctions/interfaces/int_asind.h new file mode 100644 index 00000000..fe640ea5 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_asind.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ASIND_H__ +#define __INT_ASIND_H__ + +#include "asind.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0asindd0(in1) dasinds(in1); + +#define d2asindd2(in1,in2,in3) dasinda(in1,in2[0]*in2[1],in3); + +#define s0asinds0(in1) sasinds(in1); + +#define s2asinds2(in1,in2,in3) sasinda(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ASIND_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_atand.h b/src/c/elementaryFunctions/interfaces/int_atand.h new file mode 100644 index 00000000..0adc9065 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_atand.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 +// Organization: FOSSEE, IIT Bombay +// Author: Ashish Kamble +// Email: toolbox@scilab.in +#ifndef __INT_ATAND_H__ +#define __INT_ATAND_H__ + +#include "atand.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define d0atandd0(in1) datands(in1); + +#define d2atandd2(in1,in2,in3) datanda(in1,in2[0]*in2[1],in3); + +#define s0atands0(in1) satands(in1); + +#define s2atands2(in1,in2,in3) satanda(in1,in2[0]*in2[1],in3); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__ATAND_H__ */ + diff --git a/src/c/elementaryFunctions/interfaces/int_base2dec.h b/src/c/elementaryFunctions/interfaces/int_base2dec.h new file mode 100644 index 00000000..8d5e68eb --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_base2dec.h @@ -0,0 +1,27 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_base2dec_H__ +#define __INT_base2dec_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define g2d0base2decd0(in,size,base) gbase2decs(in,size[1],base) +#define d0d0base2decd0(in,base) dbase2decs(in,base) +//#define g2d0base2decd2(in,size,out) gbase2deca(in,size[1],out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_base2dec_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_bin2dec.h b/src/c/elementaryFunctions/interfaces/int_bin2dec.h new file mode 100644 index 00000000..c8e07b09 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_bin2dec.h @@ -0,0 +1,37 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_bin2dec_H__ +#define __INT_bin2dec_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0bin2decd0(in) dbin2decs(in) +#define i80bin2deci80(in) i8bin2decs(in) +//#define i160bin2deci160(in) i16bin2decs(in) +#define u80bin2decu80(in) u8bin2decs(in) +#define u160bin2decu160(in) u16bin2decs(in) + +#define d2bin2decd2(in,size,out) dbin2deca(in,size[0]*size[1],out) +#define i82bin2deci82(in,size,out) i8bin2deca(in,size[0]*size[1],out) +//#define i162bin2deci162(in,size,out) i16bin2deca(in,size[0]*size[1],out) +#define u82bin2decu82(in,size,out) u8bin2deca(in,size[0]*size[1],out) +#define u162bin2decu162(in,size,out) u16bin2deca(in,size[0]*size[1],out) + + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_bin2dec_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_bitand.h b/src/c/elementaryFunctions/interfaces/int_bitand.h new file mode 100644 index 00000000..8b208eaa --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_bitand.h @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_BITAND_H__ +#define __INT_BITAND_H__ + + +#define u80u80bitandu80(in1,in2) u8bitands(in1,in2) + +#define u82u82bitandu82(in1,size1,in2,size2,out) u8bitanda(in1,in2,size1[0]*size1[1],out) + +#define u160u160bitandu160(in1,in2) u16bitands(in1,in2) + +#define u162u162bitandu162(in1,size1,in2,size2,out) u16bitanda(in1,in2,size1[0]*size1[1],out) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_bitcmp.h b/src/c/elementaryFunctions/interfaces/int_bitcmp.h new file mode 100644 index 00000000..d49289f1 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_bitcmp.h @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_BITCMP_H__ +#define __INT_BITCMP_H__ + + +#define u80d0bitcmpu80(in1,in2) u8bitcmps(in1,in2) + +#define u82d0bitcmpu82(in1,size1,in2,out) u8bitcmpa(in1,in2,size1[0]*size1[1],out) + +#define u160d0bitcmpu160(in1,in2) u16bitcmps(in1,in2) + +#define u162d0bitcmpu162(in1,size1,in2,out) u16bitcmpa(in1,in2,size1[0]*size1[1],out) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_bitget.h b/src/c/elementaryFunctions/interfaces/int_bitget.h new file mode 100644 index 00000000..ea930ab1 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_bitget.h @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_BITGET_H__ +#define __INT_BITGET_H__ + +#define u80d0bitgetu80(in1,in2) u8bitgets(in1,in2) + +#define u160d0bitgetu160(in1,in2) u16bitgets(in1,in2) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_bitor.h b/src/c/elementaryFunctions/interfaces/int_bitor.h new file mode 100644 index 00000000..00edc483 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_bitor.h @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_BITOR_H__ +#define __INT_BITOR_H__ + + +#define u80u80bitoru80(in1,in2) u8bitors(in1,in2) + +#define u82u82bitoru82(in1,size1,in2,size2,out) u8bitora(in1,in2,size1[0]*size1[1],out) + +#define u160u160bitoru160(in1,in2) u16bitors(in1,in2) + +#define u162u162bitoru162(in1,size1,in2,size2,out) u16bitora(in1,in2,size1[0]*size1[1],out) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_bitset.h b/src/c/elementaryFunctions/interfaces/int_bitset.h new file mode 100644 index 00000000..a37160be --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_bitset.h @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_BITSET_H__ +#define __INT_BITSET_H__ + +#define u80d0d0bitsetu80(in1,in2,in3) u8bitsets(in1,in2,in3) + +#define u160d0d0bitsetu160(in1,in2,in3) u16bitsets(in1,in2,in3) + + + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_bitxor.h b/src/c/elementaryFunctions/interfaces/int_bitxor.h new file mode 100644 index 00000000..1722c909 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_bitxor.h @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_BITXOR_H__ +#define __INT_BITXOR_H__ + + +#define u80u80bitxoru80(in1,in2) u8bitxors(in1,in2) + +#define u82u82bitxoru82(in1,size1,in2,size2,out) u8bitxora(in1,in2,size1[0]*size1[1],out) + +#define u160u160bitxoru160(in1,in2) u16bitxors(in1,in2) + +#define u162u162bitxoru162(in1,size1,in2,size2,out) u16bitxora(in1,in2,size1[0]*size1[1],out) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_ceil.h b/src/c/elementaryFunctions/interfaces/int_ceil.h index 918dd5a0..33c01769 100644 --- a/src/c/elementaryFunctions/interfaces/int_ceil.h +++ b/src/c/elementaryFunctions/interfaces/int_ceil.h @@ -23,6 +23,14 @@ #define z0ceilz0(in) zceils(in) +#define u80ceilu80(in) u8ceils(in) + +#define i80ceili80(in) i8ceils(in) + +#define u160ceilu160(in) u16ceils(in) + +#define i160ceili160(in) i16ceils(in) + #define s2ceils2(in,size,out) sceila(in, size[0]*size[1], out) #define d2ceild2(in,size,out) dceila(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2ceilz2(in,size,out) zceila(in, size[0]*size[1], out) +#define u82ceilu82(in,size,out) u8ceila(in, size[0]*size[1], out) + +#define i82ceili82(in,size,out) i8ceila(in, size[0]*size[1], out) + +#define u162ceilu162(in,size,out) u16ceila(in, size[0]*size[1], out) + +#define i162ceili162(in,size,out) i16ceila(in, size[0]*size[1], out) + #endif /* !__INT_CEIL_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_cos.h b/src/c/elementaryFunctions/interfaces/int_cos.h index 647bff6c..b19bcfc1 100644 --- a/src/c/elementaryFunctions/interfaces/int_cos.h +++ b/src/c/elementaryFunctions/interfaces/int_cos.h @@ -23,6 +23,14 @@ #define z0cosz0(in) zcoss(in) +#define u80coss0(in) u8coss(in) + +#define i80coss0(in) i8coss(in) + +#define u160coss0(in) u16coss(in) + +#define i160coss0(in) i16coss(in) + #define s2coss2(in,size,out) scosa(in, size[0]*size[1], out) #define d2cosd2(in,size,out) dcosa(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2cosz2(in,size,out) zcosa(in, size[0]*size[1], out) +#define u82coss2(in,size,out) u8cosa(in, size[0]*size[1], out) + +#define i82coss2(in,size,out) i8cosa(in, size[0]*size[1], out) + +#define u162coss2(in,size,out) u16cosa(in, size[0]*size[1], out) + +#define i162coss2(in,size,out) i16cosa(in, size[0]*size[1], out) + #endif /* !__INT_COS_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_cosd.h b/src/c/elementaryFunctions/interfaces/int_cosd.h new file mode 100644 index 00000000..9ca9945b --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_cosd.h @@ -0,0 +1,28 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_COSD_H__ +#define __INT_COSD_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2cosdd2(in,size,out) dcosda(in,size[1],out) +#define d0cosdd0(in) dcosds(in) +#define s2cosds2(in,size,out) scosda(in,size[1],out) +#define s0cosds0(in) scosds(in) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_COSD_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_cosh.h b/src/c/elementaryFunctions/interfaces/int_cosh.h index 28915ca3..c2b97ada 100644 --- a/src/c/elementaryFunctions/interfaces/int_cosh.h +++ b/src/c/elementaryFunctions/interfaces/int_cosh.h @@ -23,6 +23,14 @@ #define z0coshz0(in) zcoshs(in) +#define u80coshs0(in) u8coshs(in) + +#define i80coshs0(in) i8coshs(in) + +#define u160coshs0(in) u16coshs(in) + +#define i160coshs0(in) i16coshs(in) + #define s2coshs2(in,size,out) scosha(in, size[0]*size[1], out) #define d2coshd2(in,size,out) dcosha(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2coshz2(in,size,out) zcosha(in, size[0]*size[1], out) +#define u82coshs2(in,size,out) u8cosha(in, size[0]*size[1], out) + +#define i82coshs2(in,size,out) i8cosha(in, size[0]*size[1], out) + +#define u162coshs2(in,size,out) u16cosha(in, size[0]*size[1], out) + +#define i162coshs2(in,size,out) i16cosha(in, size[0]*size[1], out) + #endif /* !__INT_COSH_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_cotd.h b/src/c/elementaryFunctions/interfaces/int_cotd.h new file mode 100644 index 00000000..382f7802 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_cotd.h @@ -0,0 +1,28 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_COTD_H__ +#define __INT_COTD_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2cotdd2(in,size,out) dcotda(in,size[1],out) +#define s2cotds2(in,size,out) scotda(in,size[1],out) +#define d0cotdd0(in) dcotds(in) +#define s0cotds0(in) scotds(in) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_COTD_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_coth.h b/src/c/elementaryFunctions/interfaces/int_coth.h new file mode 100644 index 00000000..db8887a3 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_coth.h @@ -0,0 +1,32 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_COTH_H__ +#define __INT_COTH_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2cothd2(in,size,out) dcotha(in,size[1],out) +#define s2coths2(in,size,out) scotha(in,size[1],out) +#define d0cothd0(in) dcoths(in) +#define s0coths0(in) scoths(in) +#define z0cothz0(in) zcoths(in) +#define z2cothz2(in,size,out) zcoths(in,size[1],out) +#define c0cothc0(in) ccoths(in) +#define c2cothc2(in,size,out) ccoths(in,size[1],out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_COTH_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_csc.h b/src/c/elementaryFunctions/interfaces/int_csc.h new file mode 100644 index 00000000..74038c97 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_csc.h @@ -0,0 +1,32 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_CSC_H__ +#define __INT_CSC_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2cscd2(in,size,out) dcsca(in,size[1],out) +#define d0cscd0(in) dcscs(in) +#define s2cscs2(in,size,out) scsca(in,size[1],out) +#define s0cscs0(in) scscs(in) +#define z2cscz2(in,size,out) zcsca(in,size[1],out) +#define z0cscz0(in) zcscs(in) +#define c2cscc2(in,size,out) ccsca(in,size[1],out) +#define c0cscc0(in) ccscs(in) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_CSC_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_cscd.h b/src/c/elementaryFunctions/interfaces/int_cscd.h new file mode 100644 index 00000000..99bc49a3 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_cscd.h @@ -0,0 +1,32 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_CSCD_H__ +#define __INT_CSCD_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2cscdd2(in,size,out) dcscda(in,size[1],out) +#define d0cscdd0(in) dcscds(in) +#define s2cscds2(in,size,out) scscda(in,size[1],out) +#define s0cscds0(in) scscds(in) +#define z0cscdz0(in) zcscds(in) +#define z2cscdz2(in,size,out) zcscds(in,size[1],out) +#define c0cscdc0(in) ccscds(in) +#define c2cscdc2(in,size,out) ccscds(in,size[1],out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_CSCD_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_csch.h b/src/c/elementaryFunctions/interfaces/int_csch.h new file mode 100644 index 00000000..ce355895 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_csch.h @@ -0,0 +1,32 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_CSCH_H__ +#define __INT_CSCH_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2cschd2(in,size,out) dcscha(in,size[1],out) +#define d0cschd0(in) dcschs(in) +#define s2cschs2(in,size,out) scscha(in,size[1],out) +#define s0cschs0(in) scschs(in) +#define z0cschz0(in) zcschs(in) +#define z2cschz2(in,size,out) zcschs(in,size[1],out) +#define c0cschc0(in) ccschs(in) +#define c2cschc2(in,size,out) ccschs(in,size[1],out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_CSC_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_dec2base.h b/src/c/elementaryFunctions/interfaces/int_dec2base.h new file mode 100644 index 00000000..637f099c --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_dec2base.h @@ -0,0 +1,35 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_dec2base_H__ +#define __INT_dec2base_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0d0dec2baseg2(in,base,out) ddec2bases(in,base,0,out) +#define s0d0dec2baseg2(in,base,out) sdec2bases(in,base,0,out) + +#define d2d0dec2baseg2(in,size,out) ddec2basea(in,size[0]*size[1],base,0,out) +#define s2d0dec2baseg2(in,size,out) sdec2basea(in,size[0]*size[1],base,0,out) + +#define d0d0d0dec2baseg2(in,base,n,out) ddec2bases(in,base,n,out) +#define s0d0d0dec2baseg2(in,base,n,out) sdec2bases(in,base,n,out) + +#define d2d0d0dec2baseg2(in,size,base,n,out) ddec2basea(in,size[0]*size[1],base,n,out) +#define s2d0d0dec2baseg2(in,size,base,n,out) sdec2basea(in,size[0]*size[1],base,n,out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_dec2base_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_dec2bin.h b/src/c/elementaryFunctions/interfaces/int_dec2bin.h new file mode 100644 index 00000000..c6f2008b --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_dec2bin.h @@ -0,0 +1,48 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_dec2bin_H__ +#define __INT_dec2bin_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0dec2bind2(in,out) ddec2bins(in,0,out) +#define i80dec2bini82(in,out) i8dec2bins(in,0,out) +#define i160dec2bini162(in,out) i16dec2bins(in,0,out) +#define u80dec2binu82(in,out) u8dec2bins(in,0,out) +#define u160dec2binu162(in,out) u16dec2bins(in,0,out) + +#define d2dec2bind2(in,size,out) ddec2bina(in,size[0]*size[1],0,out) +#define i82dec2bini82(in,size,out) i8dec2bina(in,size[0]*size[1],0,out) +#define i162dec2bini162(in,size,out) i16dec2bina(in,size[0]*size[1],0,out) +#define u82dec2binu82(in,size,out) u8dec2bina(in,size[0]*size[1],0,out) +#define u162dec2binu162(in,size,out) u16dec2bina(in,size[0]*size[1],0,out) + +#define d0d0dec2bind2(in,n,out) ddec2bins(in,n,out) +#define i80d0dec2bini82(in,n,out) i8dec2bins(in,n,out) +#define i160d0dec2bini162(in,n,out) i16dec2bins(in,n,out) +#define u80d0dec2binu82(in,n,out) u8dec2bins(in,n,out) +#define u160d0dec2binu162(in,n,out) u16dec2bins(in,n,out) + +#define d2d0dec2bind2(in,size,n,out) ddec2bina(in,size[0]*size[1],n,out) +#define i82d0dec2bini82(in,size,n,out) i8dec2bina(in,size[0]*size[1],n,out) +#define i162d0dec2bini162(in,size,n,out) i16dec2bina(in,size[0]*size[1],n,out) +#define u82d0dec2binu82(in,size,n,out) u8dec2bina(in,size[0]*size[1],n,out) +#define u162d0dec2binu162(in,size,n,out) u16dec2bina(in,size[0]*size[1],n,out) + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_dec2bin_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_dec2hex.h b/src/c/elementaryFunctions/interfaces/int_dec2hex.h new file mode 100644 index 00000000..bed85be1 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_dec2hex.h @@ -0,0 +1,35 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_dec2hex_H__ +#define __INT_dec2hex_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0dec2hexg2(in,out) ddec2hexs(in,out) +#define i80dec2hexg2(in,out) i8dec2hexs(in,out) +#define i160dec2hexg2(in,out) i16dec2hexs(in,out) +#define u80dec2hexg2(in,out) u8dec2hexs(in,out) +#define u160dec2hexg2(in,out) u16dec2hexs(in,out) + +#define d2dec2hexg2(in,size,out) ddec2hexa(in,size[0]*size[1],out) +#define i82dec2hexg2(in,size,out) i8dec2hexa(in,size[0]*size[1],out) +#define i162dec2hexg2(in,size,out) i16dec2hexa(in,size[0]*size[1],out) +#define u82dec2hexg2(in,size,out) u8dec2hexa(in,size[0]*size[1],out) +#define u162dec2hexg2(in,size,out) u16dec2hexa(in,size[0]*size[1],out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_dec2hex_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_dec2oct.h b/src/c/elementaryFunctions/interfaces/int_dec2oct.h new file mode 100644 index 00000000..5cf61be1 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_dec2oct.h @@ -0,0 +1,36 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_dec2oct_H__ +#define __INT_dec2oct_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0dec2octd2(in,out) ddec2octs(in,out) +#define i80dec2octi82(in,out) i8dec2octs(in,out) +#define i160dec2octi162(in,out) i16dec2octs(in,out) +#define u80dec2octu82(in,out) u8dec2octs(in,out) +#define u160dec2octu162(in,out) u16dec2octs(in,out) + +#define d2dec2octd2(in,size,out) ddec2octa(in,size[0]*size[1],out) +#define i82dec2octi82(in,size,out) i8dec2octa(in,size[0]*size[1],out) +#define i162dec2octi162(in,size,out) i16dec2octa(in,size[0]*size[1],out) +#define u82dec2octu82(in,size,out) u8dec2octa(in,size[0]*size[1],out) +#define u162dec2octu162(in,size,out) u16dec2octa(in,size[0]*size[1],out) + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_dec2oct_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_exp.h b/src/c/elementaryFunctions/interfaces/int_exp.h index 3727e3b6..bcb8dd99 100644 --- a/src/c/elementaryFunctions/interfaces/int_exp.h +++ b/src/c/elementaryFunctions/interfaces/int_exp.h @@ -23,6 +23,14 @@ #define z0expz0(in) zexps(in) +#define u80exps0(in) u8exps(in) + +#define i80exps0(in) i8exps(in) + +#define u160exps0(in) u16exps(in) + +#define i160exps0(in) i16exps(in) + #define s2exps2(in,size,out) sexpa(in, size[0]*size[1], out) #define d2expd2(in,size,out) dexpa(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2expz2(in,size,out) zexpa(in, size[0]*size[1], out) +#define u82exps2(in,size,out) u8expa(in, size[0]*size[1], out) + +#define i82exps2(in,size,out) i8expa(in, size[0]*size[1], out) + +#define u162exps2(in,size,out) u16expa(in, size[0]*size[1], out) + +#define i162exps2(in,size,out) i16expa(in, size[0]*size[1], out) + #endif /* !__INT_EXP_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_factor.h b/src/c/elementaryFunctions/interfaces/int_factor.h new file mode 100644 index 00000000..5e0991aa --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_factor.h @@ -0,0 +1,29 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_FACTOR_H__ +#define __INT_FACTOR_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0factord2(in,out) dfactors(in,out) +#define s0factors2(in,out) sfactors(in,out) + + + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_FACTOR_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_factorial.h b/src/c/elementaryFunctions/interfaces/int_factorial.h new file mode 100644 index 00000000..446b5135 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_factorial.h @@ -0,0 +1,31 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_FACTORIAL_H__ +#define __INT_FACTORIAL_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0factoriald0(in) dfactorials(in) +#define s0factorials0(in) sfactorials(in) + +#define d2factoriald2(in,size,out) dfactoriala(in,size[0]*size[1],out) +#define s2factorials2(in,size,out) sfactoriala(in,size[0]*size[1],out) + + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_FACTORIAL_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_fix.h b/src/c/elementaryFunctions/interfaces/int_fix.h index ac483c92..2a418a38 100644 --- a/src/c/elementaryFunctions/interfaces/int_fix.h +++ b/src/c/elementaryFunctions/interfaces/int_fix.h @@ -23,6 +23,15 @@ #define z0fixz0(in) zfixs(in) + +#define u80fixu80(in) u8fixs(in) + +#define i80fixi80(in) i8fixs(in) + +#define u160fixu160(in) u16fixs(in) + +#define i160fixi160(in) i16fixs(in) + #define s2fixs2(in,size,out) sfixa(in, size[0]*size[1], out) #define d2fixd2(in,size,out) dfixa(in, size[0]*size[1], out) @@ -31,4 +40,12 @@ #define z2fixz2(in,size,out) zfixa(in, size[0]*size[1], out) +#define u82fixu82(in,size,out) u8fixa(in, size[0]*size[1], out) + +#define i82fixi82(in,size,out) i8fixa(in, size[0]*size[1], out) + +#define u162fixu162(in,size,out) u16fixa(in, size[0]*size[1], out) + +#define i162fixi162(in,size,out) i16fixa(in, size[0]*size[1], out) + #endif /* !__INT_FIX_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_float.h b/src/c/elementaryFunctions/interfaces/int_float.h new file mode 100644 index 00000000..df9aa395 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_float.h @@ -0,0 +1,38 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * Author - Shamik Guha + * 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_FLOAT_H__ +#define __INT_FLOAT_H__ + +#define s0floats0(in) sfloats(in) + +#define d0floats0(in) dfloats(in) + +#define i80floats0(in) i8floats(in) + +#define u160floats0(in) u16floats(in) + +#define i160floats0(in) i16floats(in) + +#define s2floats2(in,size,out) sfloata(in, size[0]*size[1], out) + +#define d2floats2(in,size,out) dfloata(in, size[0]*size[1], out) + +#define i82floats2(in,size,out) i8floata(in, size[0]*size[1], out) + +#define u162floats2(in,size,out) u16floata(in, size[0]*size[1], out) + +#define i162floats2(in,size,out) i16floata(in, size[0]*size[1], out) + +#endif /* !__INT_FLOAT_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_floor.h b/src/c/elementaryFunctions/interfaces/int_floor.h index 548c5e2a..639819a7 100644 --- a/src/c/elementaryFunctions/interfaces/int_floor.h +++ b/src/c/elementaryFunctions/interfaces/int_floor.h @@ -23,6 +23,14 @@ #define z0floorz0(in) zfloors(in) +#define u80flooru80(in) u8floors(in) + +#define i80floori80(in) i8floors(in) + +#define u160flooru160(in) u16floors(in) + +#define i160floori160(in) i16floors(in) + #define s2floors2(in,size,out) sfloora(in, size[0]*size[1], out) #define d2floord2(in,size,out) dfloora(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2floorz2(in,size,out) zfloora(in, size[0]*size[1], out) +#define u82flooru82(in,size,out) u8floora(in, size[0]*size[1], out) + +#define i82floori82(in,size,out) i8floora(in, size[0]*size[1], out) + +#define u162flooru162(in,size,out) u16floora(in, size[0]*size[1], out) + +#define i162floori162(in,size,out) i16floora(in, size[0]*size[1], out) + #endif /* !__INT_FLOOR_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_gcd.h b/src/c/elementaryFunctions/interfaces/int_gcd.h new file mode 100644 index 00000000..f3e117c5 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_gcd.h @@ -0,0 +1,25 @@ + /* Copyright (C) 2016 - 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 + */ +#ifndef __INT_GCD_H__ +#define __INT_GCD_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define u82gcdu80(in,size) u8gcda(in,size[1]) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_GCD_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_hex2dec.h b/src/c/elementaryFunctions/interfaces/int_hex2dec.h new file mode 100644 index 00000000..d5589369 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_hex2dec.h @@ -0,0 +1,26 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_hex2dec_H__ +#define __INT_hex2dec_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define g2hex2decd0(in,size) ghex2decs(in,size[1]) +#define d0hex2decd0(in) dhex2decs(in) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_hex2dec_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_int16.h b/src/c/elementaryFunctions/interfaces/int_int16.h new file mode 100644 index 00000000..4f32fe9b --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_int16.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_INT16_H__ +#define __INT_INT16_H__ + +#define s0int16i160(in) sint16s(in) + +#define d0int16i160(in) dint16s(in) + +#define u80int16i160(in) u8int16s(in) + +#define i80int16i160(in) i8int16s(in) + +#define u160int16i160(in) u16int16s(in) + +#define s2int16i162(in,size,out) sint16a(in, size[0]*size[1], out) + +#define d2int16i162(in,size,out) dint16a(in, size[0]*size[1], out) + +#define u82int16i162(in,size,out) u8int16a(in, size[0]*size[1], out) + +#define i82int16i162(in,size,out) i8int16a(in, size[0]*size[1], out) + +#define u162int16i162(in,size,out) u16int16a(in, size[0]*size[1], out) + +#endif /* !__INT_INT8_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_int32.h b/src/c/elementaryFunctions/interfaces/int_int32.h new file mode 100644 index 00000000..5da9bd25 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_int32.h @@ -0,0 +1,46 @@ +/* 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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_INT32_H__ +#define __INT_INT32_H__ + +#define s0int32i320(in) sint32s(in) + +#define d0int32i320(in) dint32s(in) + +#define u80int32i320(in) u8int32s(in) + +#define i80int32i320(in) i8int32s(in) + +#define u160int32i320(in) u16int32s(in) + +#define i160int32i320(in) i16int32s(in) + +#define u320int32i320(in) u32int32s(in) + +#define s2int32i322(in,size,out) sint32a(in, size[0]*size[1], out) + +#define d2int32i322(in,size,out) dint32a(in, size[0]*size[1], out) + +#define u82int32i322(in,size,out) u8int32a(in, size[0]*size[1], out) + +#define i82int32i322(in,size,out) i8int32a(in, size[0]*size[1], out) + +#define u162int32i322(in,size,out) u16int32a(in, size[0]*size[1], out) + +#define i162int32i322(in,size,out) i16int32a(in, size[0]*size[1], out) + +#define u322int32i322(in,size,out) u32int32a(in, size[0]*size[1], out) + +#endif /* !__INT_INT32_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_int8.h b/src/c/elementaryFunctions/interfaces/int_int8.h new file mode 100644 index 00000000..5628c5ac --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_int8.h @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_INT8_H__ +#define __INT_INT8_H__ + +#define s0int8i80(in) sint8s(in) + +#define d0int8i80(in) dint8s(in) + +#define u80int8i80(in) u8int8s(in) + +#define u160int8i80(in) u16int8s(in) + +#define i160int8i80(in) i16int8s(in) + +#define s2int8i82(in,size,out) sint8a(in, size[0]*size[1], out) + +#define d2int8i82(in,size,out) dint8a(in, size[0]*size[1], out) + +#define u82int8i82(in,size,out) u8int8a(in, size[0]*size[1], out) + +#define u162int8i82(in,size,out) u16int8a(in, size[0]*size[1], out) + +#define i162int8i82(in,size,out) i16int8a(in, size[0]*size[1], out) + +#endif /* !__INT_INT8_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_iscolumn.h b/src/c/elementaryFunctions/interfaces/int_iscolumn.h new file mode 100644 index 00000000..e1011d72 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_iscolumn.h @@ -0,0 +1,29 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_ISCOLUMN_H__ +#define __INT_ISCOLUMN_H__ + +#define d2iscolumng0(in,size ) discolumna(in, size[1]) +#define d0iscolumng0(in) discolumns(in) +#define s2iscolumng0(in,size) siscolumna(in, size[1]) +#define s0iscolumng0(in) siscolumns(in) +#define g2iscolumng0(in,size) giscolumna(in, size[1]) +#define g0iscolumng0(in) giscolumns(in) +#define z2iscolumng0(in,size) ziscolumna(in , size[1]) +#define z0iscolumng0(in) ziscolumns(in) +#define u162iscolumng0(in,size) u16iscolumna(in , size[1]) +#define u160iscolumng0(in) u16iscolumns(in) + + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_isequal.h b/src/c/elementaryFunctions/interfaces/int_isequal.h new file mode 100644 index 00000000..d22ab65d --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_isequal.h @@ -0,0 +1,35 @@ + /* 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_ISEQUAL_H__ +#define __INT_ISEQUAL_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + + +#define d0d0isequalg0(in1,in2) disequals(in1,in2) +#define d2d2isequalg0(in1, s1, in2, s2) disequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) +#define s0s0isequalg0(in1,in2) sisequals(in1,in2) +#define s2s2isequalg0(in1, s1, in2, s2) sisequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) +#define z0z0isequalg0(in1,in2) zisequals(in1,in2) +#define z2z2isequalg0(in1, s1, in2, s2) zisequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) +#define u160u160isequalg0(in1,in2) u16isequals(in1,in2) +#define u162u162isequalg0(in1, s1, in2, s2) u16isequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_ISEQUAL_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_isinf.h b/src/c/elementaryFunctions/interfaces/int_isinf.h new file mode 100644 index 00000000..9eefa658 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_isinf.h @@ -0,0 +1,20 @@ + /* 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_ISINF_H__ +#define __INT_ISINF_H__ + +#define d0isinfg0(in) disinfs(in) +#define s0isinfg0(in) sisinfs(in) + + +#endif /* !__INT_ISINF_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_ismatrix.h b/src/c/elementaryFunctions/interfaces/int_ismatrix.h new file mode 100644 index 00000000..96352d13 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_ismatrix.h @@ -0,0 +1,28 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_ISMATRIX_H__ +#define __INT_ISMATRIX_H__ + +#define d2ismatrixg0(in, size ) dismatrixa(in) +#define d0ismatrixg0(in) dismatrixs(in) +#define s2ismatrixg0(in , size) sismatrixa(in) +#define s0ismatrixg0(in) sismatrixs(in) +#define g2ismatrixg0(in, size) gismatrixa(in) +#define g0ismatrixg0(in) gismatrixs(in) +#define z2ismatrixg0(in, size) zismatrixa(in) +#define z0ismatrixg0(in) zismatrixs(in) +#define u162ismatrixg0(in, size) u16ismatrixa(in) +#define u160ismatrixg0(in) u16ismatrixs(in) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_isreal.h b/src/c/elementaryFunctions/interfaces/int_isreal.h new file mode 100644 index 00000000..cebbf6db --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_isreal.h @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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 +*/ + + + +#ifndef __INT_ISREAL_H__ +#define __INT_ISREAL_H__ + +#define s0isreals0(in) sisreals(in) + +#define d0isreald0(in) disreals(in) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_isrow.h b/src/c/elementaryFunctions/interfaces/int_isrow.h new file mode 100644 index 00000000..9298de9d --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_isrow.h @@ -0,0 +1,29 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_ISROW_H__ +#define __INT_ISROW_H__ + +#define d2isrowg0(in, size ) disrowa(in, size[0]) +#define d0isrowg0(in) disrows(in) +#define s2isrowg0(in , size) sisrowa(in, size[0]) +#define s0isrowg0(in) sisrows(in) +#define g2isrowg0(in, size) gisrowa(in, size[0]) +#define g0isrowg0(in) gisrows(in) +#define z2isrowg0(in, size) zisrowa(in , size[0]) +#define z0isrowg0(in) zisrows(in) +#define u162isrowg0(in, size) u16isrowa(in , size[0]) +#define u160isrowg0(in) u16isrows(in) + + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_isscalar.h b/src/c/elementaryFunctions/interfaces/int_isscalar.h new file mode 100644 index 00000000..0b25be12 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_isscalar.h @@ -0,0 +1,26 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_ISSCALAR_H__ +#define __INT_ISSCALAR_H__ + +#define d2isscalarg0(in, size ) disscalara(in, size[0]) +#define d0isscalarg0(in) disscalars(in) +#define s2isscalarg0(in , size) sisscalara(in, size[0]) +#define s0isscalarg0(in) sisscalars(in) +#define g2isscalarg0(in, size) gisscalara(in, size[0]) +#define g0isscalarg0(in) gisscalars(in) +#define z2isscalarg0(in, size) zisscalara(in , size[0]) +#define z0isscalarg0(in) zisscalars(in) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_issquare.h b/src/c/elementaryFunctions/interfaces/int_issquare.h new file mode 100644 index 00000000..05357881 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_issquare.h @@ -0,0 +1,25 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_ISSQUARE_H__ +#define __INT_ISSQUARE_H__ + +#define d2issquareg0(in, size ) dissquarea(in, size[0], size[1]) +#define d0issquareg0(in) dissquares(in) +#define s2issquareg0(in , size) sissquarea(in, size[0], size[1]) +#define s0issquareg0(in) sissquares(in) +#define g2issquareg0(in, size) gissquarea(in, size[0], size[1]) +#define g0issquareg0(in) gissquares(in) +#define z2issquareg0(in, size) zissquarea(in , size[0], size[1]) +#define z0issquareg0(in) zissquares(in) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_isvector.h b/src/c/elementaryFunctions/interfaces/int_isvector.h new file mode 100644 index 00000000..a4edaea4 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_isvector.h @@ -0,0 +1,26 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_ISVECTOR_H__ +#define __INT_ISVECTOR_H__ + +#define d2isvectorg0(in, size ) disvectora(in, size[0], size[1]) +#define d0isvectorg0(in) disvectors(in) +#define s2isvectorg0(in , size) sisvectora(in, size[0], size[1]) +#define s0isvectorg0(in) sisvectors(in) +#define g2isvectorg0(in, size) gisvectora(in, size[0], size[1]) +#define g0isvectorg0(in) gisvectors(in) +#define z2isvectorg0(in, size) zisvectora(in , size[0], size[1]) +#define z0isvectorg0(in) zisvectors(in) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_lcm.h b/src/c/elementaryFunctions/interfaces/int_lcm.h new file mode 100644 index 00000000..2ef1a081 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_lcm.h @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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 + */ + + + +#ifndef __INT_LCM_H__ +#define __INT_LCM_H__ + #ifdef __cplusplus + extern "C" { + #endif + +#define u82lcmu80(in,size) u8lcma(in,size[1]) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /* !__INT_LCM_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_linspace.h b/src/c/elementaryFunctions/interfaces/int_linspace.h new file mode 100644 index 00000000..15ea2696 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_linspace.h @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_LINSPACE_H__ +#define __INT_LINSPACE_H__ + +#define d0d0d0linspaced2(in1,in2,in3,out) dlinspaces(in1,in2,in3,out) + +#define s0s0s0linspaces2(in1,in2,in3,out) slinspaces(in1,in2,in3,out) + +#define d2d2d0linspaced2(in1,size1,in2,size2,in3,out) dlinspacea(in1,size1[0],in2,in3,out) + +#define s2s2s0linspaces2(in1,size1,in2,size2,in3,out) slinspacea(in1,size1[0],in2,in3,out) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_log2.h b/src/c/elementaryFunctions/interfaces/int_log2.h new file mode 100644 index 00000000..370503cd --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_log2.h @@ -0,0 +1,33 @@ +/* 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_LOG2_H__ +#define __INT_LOG2_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + + +#define d0log2d0(in1) dlog2s(in1) +#define d2log2d2(in1, size1, out) dlog2a(in1,size1[0]*size1[1], out) +#define s0log2s0(in1) slog2s(in1, in2) +#define s2log2s2(in1, size1, out) slog2a(in1,size1[0]*size1[1], out) +#define z0log2z0(in1) zlog2s(in1, in2) +#define z2log2z2(in1, size1, out) zlog2a(in1,size1[0]*size1[1], out) + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_LOG2_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_logspace.h b/src/c/elementaryFunctions/interfaces/int_logspace.h new file mode 100644 index 00000000..2c244006 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_logspace.h @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_LOGSPACE_H__ +#define __INT_LOGSPACE_H__ + +#define d0d0d0logspaced2(in1,in2,in3,out) dlogspaces(in1,in2,in3,out) + +#define d2d2d0logspaced2(in1,size1,in2,size2,in3,out) dlogspacea(in1,size1[0],in2,in3,out) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_nancumsum.h b/src/c/elementaryFunctions/interfaces/int_nancumsum.h new file mode 100644 index 00000000..c82f6d65 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_nancumsum.h @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_NANCUMSUM_H__ +#define __INT_NANCUMSUM_H__ + + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2nancumsumd2(in1, size, out) dnancumsuma(in1, size[0]* size[1], out) +#define d2g2nancumsumd2(in1, size1, in2, size2, out) (in2[0]== 'r') ? dnancumsumrowa(in1, size1[0], size1[1], out) :dnancumsumcola(in1, size1[0], size1[1], out) + +#define s2nancumsums2(in1, size, out) snancumsuma(in1, size[0]* size[1], out) +#define s2g2nancumsums2(in1, size1, in2, size2, out) (in2[0]== 'r') ? snancumsumrowa(in1, size1[0], size1[1], out) :snancumsumcola(in1, size1[0], size1[1], out) + +#define z2nancumsumz2(in1, size, out) znancumsuma(in1, size[0]* size[1],out) +#define z2g2nancumsumz2(in1, size1, in2, size2, out) (in2[0]== 'r') ? znancumsumrowa(in1, size1[0], size1[1], out) :znancumsumcola(in1, size1[0], size1[1], out) + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_NANCUMSUM_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_nanmax.h b/src/c/elementaryFunctions/interfaces/int_nanmax.h new file mode 100644 index 00000000..6096290f --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_nanmax.h @@ -0,0 +1,26 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_NANMAX_H__ +#define __INT_NANMAX_H__ + +#define d2nanmaxd0(in1, size) dnanmaxa(in1,size[0]* size[1]) +#define d2nanmaxd0d2(in1, size, out) dnanmax1a(in1,size[0], size[1], out) +#define d2g2nanmaxd2(in1, size1, in2, size2, out) (in2[0]=='r') ? dnanmaxrow1a(in1, size1[0], size1[1], out) : dnanmaxcol1a(in1, size1[0] , size1[1], out) +#define d2g2nanmaxd2d2(in1, size1, in2, size2, out1, out2) (in2[0]=='r') ? dnanmaxrowa(in1, size1[0], size1[1], out1, out2) : dnanmaxcola(in1, size1[0] , size1[1], out1, out2) + +#define s2nanmaxs0(in1, size) snanmaxa(in1,size[0]* size[1]) +#define s2nanmaxs0s2(in1, size, out) snanmax1a(in1,size[0], size[1], out) +#define s2g2nanmaxs2(in1, size1, in2, size2, out) (in2[0]=='r') ? snanmaxrow1a(in1, size1[0], size1[1], out) : snanmaxcol1a(in1, size1[0] , size1[1], out) +#define s2g2nanmaxs2s2(in1, size1, in2, size2, out1, out2) (in2[0]=='r') ? snanmaxrowa(in1, size1[0], size1[1], out1, out2) : snanmaxcola(in1, size1[0] , size1[1], out1, out2) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_nanmean.h b/src/c/elementaryFunctions/interfaces/int_nanmean.h new file mode 100644 index 00000000..0195b0d3 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_nanmean.h @@ -0,0 +1,32 @@ + /*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_NANMEAN_H__ +#define __INT_NANMEAN_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + +#define d2nanmeand0(in1, size) dnanmeana(in1,size[0]* size[1]) +#define d2g2nanmeand2(in1, size1, in2, size2, out) (in2[0]=='r') ? dnanmeanrowa(in1, size1[0], size1[1], out) : dnanmeancola(in1, size1[0] , size1[1], out) + +#define s2nanmeans0(in1, size) snanmeana(in1,size[0]* size[1]) +#define s2g2nanmeans2(in1, size1, in2, size2, out) (in2[0]=='r') ? snanmeanrowa(in1, size1[0], size1[1], out) : snanmeancola(in1, size1[0] , size1[1], out) + +#define z2nanmeanz0(in1, size) znanmeana(in1,size[0]* size[1]) +#define z2g2nanmeanz2(in1, size1, in2, size2, out) (in2[0]=='r') ? znanmeanrowa(in1, size1[0], size1[1], out) : znanmeancola(in1, size1[0] , size1[1], out) + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_NANMEAN_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_nanmin.h b/src/c/elementaryFunctions/interfaces/int_nanmin.h new file mode 100644 index 00000000..e351a240 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_nanmin.h @@ -0,0 +1,31 @@ + /*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_NANMIN_H__ +#define __INT_NANMIN_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + +#define d2nanmind0d2(in1, size, pos) dnanmina(in1,size[0], size[1], pos) +#define d2nanmind0(in1, size) dnanminnpa(in1,size[0], size[1]) +#define d0nanmind0d2(in1, pos) dnanmins(in1, pos) +#define d0nanmind0(in1) dnanminnps(in1) + +#define d2g2nanmind2(in1, size1, in2, size2, out) (in2[0]=='r') ? dnanminrownpa(in1, size1[0], size1[1], out) : dnanmincolnpa(in1, size1[0] , size1[1], out) +#define d2g2nanmind2d2(in1, size1, in2, size2, out, p) (in2[0]=='r') ? dnanminrowa(in1, size1[0], size1[1], p, out) : dnanmincola(in1, size1[0] , size1[1], out, p) + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_NANMIN_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_nansum.h b/src/c/elementaryFunctions/interfaces/int_nansum.h new file mode 100644 index 00000000..149d69b8 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_nansum.h @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_NANSUM_H__ +#define __INT_NANSUM_H__ + + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2nansumd0(in1, size) dnansuma(in1, size[0]* size[1]) +#define d2g2nansumd2(in1, size1, in2, size2, out) (in2[0]== 'r') ? dnansumrowa(in1, size1[0], size1[1], out) :dnansumcola(in1, size1[0], size1[1], out) + +#define s2nansums0(in1, size) snansuma(in1, size[0]* size[1]) +#define s2g2nansums2(in1, size1, in2, size2, out) (in2[0]== 'r') ? snansumrowa(in1, size1[0], size1[1], out) :snansumcola(in1, size1[0], size1[1], out) + +#define z2nansumz0(in1, size) znansuma(in1, size[0]* size[1]) +#define z2g2nansumz2(in1, size1, in2, size2, out) (in2[0]== 'r') ? znansumrowa(in1, size1[0], size1[1], out) :znansumcola(in1, size1[0], size1[1], out) + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_MATRIX_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_nextpow2.h b/src/c/elementaryFunctions/interfaces/int_nextpow2.h new file mode 100644 index 00000000..6ae4747b --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_nextpow2.h @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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 IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + + +#ifndef __INT_NEXTPOW2_H__ +#define __INT_NEXTPOW2_H__ + + +#include "nextpow2.h" + +#define d0nextpow2d0(in,size,out) dnextpow2a(in,size[0]*size[1],out) + +#define d2nextpow2d2(in,size,out) dnextpow2a(in,size[0]*size[1],out) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_nthroot.h b/src/c/elementaryFunctions/interfaces/int_nthroot.h new file mode 100644 index 00000000..aa48fcc9 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_nthroot.h @@ -0,0 +1,23 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_NTHROOT_H__ +#define __INT_NTHROOT_H__ + +#define d2d2nthrootd2(in1, size1, in2, size2, out) dnthroota(in1, size1[0], size1[1], in2, size2[0], size2[1], out) +#define d2d0nthrootd2(in1, size1, in2, out) dnthroot1a(in1, size1[0], size1[1], in2, out) +#define d0d0nthrootd0(in1, in2) dnthroots(in1, in2) +#define s2s2nthrootd2(in1, size1, in2, size2, out) snthroota(in1, size1[0], size1[1], in2, size2[0], size2[1], out) +#define s2s0nthrootd2(in1, size1, in2, out) snthroot1a(in1, size1[0], size1[1], in2, out) +#define s0s0nthrootd0(in1, in2) snthroots(in1, in2) + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_oct2dec.h b/src/c/elementaryFunctions/interfaces/int_oct2dec.h new file mode 100644 index 00000000..0f5d1f24 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_oct2dec.h @@ -0,0 +1,35 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_oct2dec_H__ +#define __INT_oct2dec_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0oct2decd0(in) doct2decs(in) +#define i80oct2deci80(in) i8oct2decs(in) +#define i160oct2deci160(in) i16oct2decs(in) +#define u80oct2decu80(in) u8oct2decs(in) +#define u160oct2decu160(in) u16oct2decs(in) + +#define d2oct2decd2(in,size,out) doct2deca(in,size[0]*size[1],out) +#define i82oct2deci82(in,size,out) i8oct2deca(in,size[0]*size[1],out) +#define i162oct2deci162(in,size,out) i16oct2deca(in,size[0]*size[1],out) +#define u82oct2decu82(in,size,out) u8oct2deca(in,size[0]*size[1],out) +#define u162oct2decu162(in,size,out) u16oct2deca(in,size[0]*size[1],out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_oct2dec_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_pmodulo.h b/src/c/elementaryFunctions/interfaces/int_pmodulo.h new file mode 100644 index 00000000..72b12770 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_pmodulo.h @@ -0,0 +1,26 @@ + /*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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#ifndef __INT_PMODULO_H__ +#define __INT_PMODULO_H__ + +#define d0d0pmodulod0(in1, in2) dpmodulos(in1,in2) +#define d2d2pmodulod2(in1, size1, in2, size2, out) dpmoduloa(in1,size1[0]*size1[1],in2, out) + +#define s0s0pmodulos0(in1, in2) spmodulos(in1,in2) +#define s2s2pmodulos2(in1, size1, in2, size2, out) spmoduloa(in1,size1[0]*size1[1],in2, out) + +#define i160i160pmoduloi160(in1, in2) i16pmodulos(in1,in2) +#define i162i162pmoduloi162(in1, size1, in2, size2, out) i16pmoduloa(in1,size1[0]*size1[1],in2, out) + + +#endif diff --git a/src/c/elementaryFunctions/interfaces/int_primes.h b/src/c/elementaryFunctions/interfaces/int_primes.h new file mode 100644 index 00000000..d48a6831 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_primes.h @@ -0,0 +1,29 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_PRIMES_H__ +#define __INT_PRIMES_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d0primesd2(in,out) dprimess(in,out) +#define s0primess2(in,out) sprimess(in,out) + + + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_PRIMES_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_round.h b/src/c/elementaryFunctions/interfaces/int_round.h index a5da230c..7d013c1e 100644 --- a/src/c/elementaryFunctions/interfaces/int_round.h +++ b/src/c/elementaryFunctions/interfaces/int_round.h @@ -23,6 +23,14 @@ #define z0roundz0(in) zrounds(in) +#define u80roundu80(in) u8rounds(in) + +#define i80roundi80(in) i8rounds(in) + +#define u160roundu160(in) u16rounds(in) + +#define i160roundi160(in) i16rounds(in) + #define s2rounds2(in,size,out) srounda(in, size[0]*size[1], out) #define d2roundd2(in,size,out) drounda(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2roundz2(in,size,out) zrounda(in, size[0]*size[1], out) +#define u82roundu82(in,size,out) u8rounda(in, size[0]*size[1], out) + +#define i82roundi82(in,size,out) i8rounda(in, size[0]*size[1], out) + +#define u162roundu162(in,size,out) u16rounda(in, size[0]*size[1], out) + +#define i162roundi162(in,size,out) i16rounda(in, size[0]*size[1], out) + #endif /* !__INT_ROUND_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_sec.h b/src/c/elementaryFunctions/interfaces/int_sec.h new file mode 100644 index 00000000..b07cdfc9 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_sec.h @@ -0,0 +1,34 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_SEC_H__ +#define __INT_SEC_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2secd2(in,size,out) dseca(in,size[1],out) +#define d0secd0(in) dsecs(in) +#define s2secs2(in,size,out) sseca(in,size[1],out) +#define s0secs0(in) ssecs(in) + +#define z2secz2(in,size,out) zseca(in,size[1],out) +#define z0secz0(in) zsecs(in) +#define c2secc2(in,size,out) cseca(in,size[1],out) +#define c0secc0(in) csecs(in) + + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_SEC__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_secd.h b/src/c/elementaryFunctions/interfaces/int_secd.h new file mode 100644 index 00000000..9304eb04 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_secd.h @@ -0,0 +1,28 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_SECD_H__ +#define __INT_SECD_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2secdd2(in,size,out) dsecda(in,size[1],out) +#define d0secdd0(in) dsecds(in) +#define s2secds2(in,size,out) ssecda(in,size[1],out) +#define s0secds0(in) ssecds(in) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_SECD_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_sech.h b/src/c/elementaryFunctions/interfaces/int_sech.h new file mode 100644 index 00000000..1cd42218 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_sech.h @@ -0,0 +1,32 @@ + /* Copyright (C) 2016 - 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: Shamik Guha + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_SECH_H__ +#define __INT_SECH_H__ + + #ifdef __cplusplus + extern "C" { + #endif + +#define d2sechd2(in,size,out) dsecha(in,size[1],out) +#define s2sechs2(in,size,out) ssecha(in,size[1],out) +#define d0sechd0(in) dsechs(in) +#define s0sechs0(in) ssechs(in) +#define z0sechz0(in) zsechs(in) +#define z2sechz2(in,size,out) zsechs(in,size[1],out) +#define c0sechc0(in) csechs(in) +#define c2sechc2(in,size,out) csechs(in,size[1],out) + + #ifdef __cplusplus + } /* extern "C" */ + #endif + +#endif /*__INT_SECH_H__*/ diff --git a/src/c/elementaryFunctions/interfaces/int_sin.h b/src/c/elementaryFunctions/interfaces/int_sin.h index 556281a5..4132704a 100644 --- a/src/c/elementaryFunctions/interfaces/int_sin.h +++ b/src/c/elementaryFunctions/interfaces/int_sin.h @@ -23,6 +23,14 @@ #define z0sinz0(in) zsins(in) +#define u80sins0(in) u8sins(in) + +#define i80sins0(in) i8sins(in) + +#define u160sins0(in) u16sins(in) + +#define i160sins0(in) i16sins(in) + #define s2sins2(in,size,out) ssina(in, size[0]*size[1], out) #define d2sind2(in,size,out) dsina(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2sinz2(in,size,out) zsina(in, size[0]*size[1], out) +#define u82sins2(in,size,out) u8sina(in, size[0]*size[1], out) + +#define i82sins2(in,size,out) i8sina(in, size[0]*size[1], out) + +#define u162sins2(in,size,out) u16sina(in, size[0]*size[1], out) + +#define i162sins2(in,size,out) i16sina(in, size[0]*size[1], out) + #endif /* !__INT_SIN_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_sinc.h b/src/c/elementaryFunctions/interfaces/int_sinc.h new file mode 100644 index 00000000..35a519db --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_sinc.h @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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 + */ + +#ifndef __INT_SINC_H__ +#define __INT_SINC_H__ + +#define d2sincd2(sample,size,oup) dsinca(sample,size[1],oup) +#define z2sincz2(sample,size,oup) zsinca(sample,size[1],oup) + +#endif /* !__INT_SINC_H__! */ diff --git a/src/c/elementaryFunctions/interfaces/int_sind.h b/src/c/elementaryFunctions/interfaces/int_sind.h new file mode 100644 index 00000000..780a6965 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_sind.h @@ -0,0 +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: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_SIND_H__ +#define __INT_SIND_H__ + +#define d0sindd0(in) dsinds(in) +#define s0sinds0(in) ssinds(in) +#define s0sindd0(in) ssinds(in) +#define d2sindd2(in, size1, out) dsinda(in, size1[0]*size1[1], out) +#define s2sinds2(in, size1, out) ssinda(in, size1[0]*size1[1], out) +#define s2sindd2(in, size1, out) ssinda(in, size1[0]*size1[1], out) + +#endif /* !__INT_SIND_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_sinh.h b/src/c/elementaryFunctions/interfaces/int_sinh.h index e0c930e9..c5682a46 100644 --- a/src/c/elementaryFunctions/interfaces/int_sinh.h +++ b/src/c/elementaryFunctions/interfaces/int_sinh.h @@ -23,6 +23,14 @@ #define z0sinhz0(in) zsinhs(in) +#define u80sinhs0(in) u8sinhs(in) + +#define i80sinhs0(in) i8sinhs(in) + +#define u160sinhs0(in) u16sinhs(in) + +#define i160sinhs0(in) i16sinhs(in) + #define s2sinhs2(in,size,out) ssinha(in, size[0]*size[1], out) #define d2sinhd2(in,size,out) dsinha(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2sinhz2(in,size,out) zsinha(in, size[0]*size[1], out) +#define u82sinhs2(in,size,out) u8sinha(in, size[0]*size[1], out) + +#define i82sinhs2(in,size,out) i8sinha(in, size[0]*size[1], out) + +#define u162sinhs2(in,size,out) u16sinha(in, size[0]*size[1], out) + +#define i162sinhs2(in,size,out) i16sinha(in, size[0]*size[1], out) + #endif /* !__INT_SINH_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_sqrt.h b/src/c/elementaryFunctions/interfaces/int_sqrt.h index 0efbca96..090d9825 100644 --- a/src/c/elementaryFunctions/interfaces/int_sqrt.h +++ b/src/c/elementaryFunctions/interfaces/int_sqrt.h @@ -33,27 +33,32 @@ #define __INT_SQRT_H__ #define s0sqrts0(in) ssqrts(in) -
+ #define s0sqrtc0(in) csqrts(FloatComplex(in,0)) #define d0sqrtd0(in) dsqrts(in) -
+ #define d0sqrtz0(in) zsqrts(DoubleComplex(in,0)) #define c0sqrtc0(in) csqrts(in) -
+ #define z0sqrtz0(in) zsqrts(in) -
+ + + #define s2sqrts2(in,size,out) ssqrta(in, size[0]*size[1], out) #define s2sqrtc2(in,size,out) csqrta(FloatComplexMatrix(in,0), size[0]*size[1], out) #define d2sqrtd2(in,size,out) dsqrta(in, size[0]*size[1], out) -
+ #define d2sqrtz2(in,size,out) zsqrta(DoubleComplexMatrix(in,0), size[0]*size[1], out) #define c2sqrtc2(in,size,out) csqrta(in, size[0]*size[1], out) -
-#define z2sqrtz2(in,size,out) zsqrta(in, size[0]*size[1], out)
+ +#define z2sqrtz2(in,size,out) zsqrta(in, size[0]*size[1], out) + + + #endif /* !__INT_SQRT_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_tan.h b/src/c/elementaryFunctions/interfaces/int_tan.h index c2c3df2e..ddfb4ca1 100644 --- a/src/c/elementaryFunctions/interfaces/int_tan.h +++ b/src/c/elementaryFunctions/interfaces/int_tan.h @@ -23,6 +23,14 @@ #define z0tanz0(in) ztans(in) +#define u80tans0(in) u8tans(in) + +#define i80tans0(in) i8tans(in) + +#define u160tans0(in) u16tans(in) + +#define i160tans0(in) i16tans(in) + #define s2tans2(in,size,out) stana(in, size[0]*size[1], out) #define d2tand2(in,size,out) dtana(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2tanz2(in,size,out) ztana(in, size[0]*size[1], out) +#define u82tans2(in,size,out) u8tana(in, size[0]*size[1], out) + +#define i82tans2(in,size,out) i8tana(in, size[0]*size[1], out) + +#define u162tans2(in,size,out) u16tana(in, size[0]*size[1], out) + +#define i162tans2(in,size,out) i16tana(in, size[0]*size[1], out) + #endif /* !__INT_TAN_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_tand.h b/src/c/elementaryFunctions/interfaces/int_tand.h new file mode 100644 index 00000000..d2fb30ea --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_tand.h @@ -0,0 +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: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __INT_TAND_H__ +#define __INT_TAND_H__ + +#define d0tandd0(in) dtands(in) +#define s0tands0(in) stands(in) +#define s0tandd0(in) stands(in) +#define d2tandd2(in, size1, out) dtanda(in, size1[0]*size1[1], out) +#define s2tands2(in, size1, out) standa(in, size1[0]*size1[1], out) +#define s2tandd2(in, size1, out) standa(in, size1[0]*size1[1], out) + +#endif /* !__INT_TAND_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_tanh.h b/src/c/elementaryFunctions/interfaces/int_tanh.h index 1819d3a1..e60e2c26 100644 --- a/src/c/elementaryFunctions/interfaces/int_tanh.h +++ b/src/c/elementaryFunctions/interfaces/int_tanh.h @@ -23,6 +23,14 @@ #define z0tanhz0(in) ztanhs(in) +#define u80tanhs0(in) u8tanhs(in) + +#define i80tanhs0(in) i8tanhs(in) + +#define u160tanhs0(in) u16tanhs(in) + +#define i160tanhs0(in) i16tanhs(in) + #define s2tanhs2(in,size,out) stanha(in, size[0]*size[1], out) #define d2tanhd2(in,size,out) dtanha(in, size[0]*size[1], out) @@ -31,4 +39,12 @@ #define z2tanhz2(in,size,out) ztanha(in, size[0]*size[1], out) +#define u82tanhs2(in,size,out) u8tanha(in, size[0]*size[1], out) + +#define i82tanhs2(in,size,out) i8tanha(in, size[0]*size[1], out) + +#define u162tanhs2(in,size,out) u16tanha(in, size[0]*size[1], out) + +#define i162tanhs2(in,size,out) i16tanha(in, size[0]*size[1], out) + #endif /* !__INT_TANH_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_uint16.h b/src/c/elementaryFunctions/interfaces/int_uint16.h new file mode 100644 index 00000000..12808776 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_uint16.h @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_UINT16_H__ +#define __INT_UINT16_H__ + +#define s0uint16u160(in) suint16s(in) + +#define d0uint16u160(in) duint16s(in) + +#define u80uint16u160(in) u8uint16s(in) + +#define i80uint16u160(in) i8uint16s(in) + +#define i160uint16u160(in) i16uint16s(in) + +#define s2uint16u162(in,size,out) suint16a(in, size[0]*size[1], out) + +#define d2uint16u162(in,size,out) duint16a(in, size[0]*size[1], out) + +#define u82uint16u162(in,size,out) u8uint16a(in, size[0]*size[1], out) + +#define i82uint16u162(in,size,out) i8int16a(in, size[0]*size[1], out) + +#define i162uint16u162(in,size,out) i16uint16a(in, size[0]*size[1], out) + +#endif /* !__INT_UINT8_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_uint32.h b/src/c/elementaryFunctions/interfaces/int_uint32.h new file mode 100644 index 00000000..7c9353b3 --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_uint32.h @@ -0,0 +1,44 @@ +/* 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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_UINT32_H__ +#define __INT_UINT32_H__ + +#define s0uint32u320(in) suint32s(in) + +#define d0uint32u320(in) duint32s(in) + +#define u80uint32u320(in) u8uint32s(in) + +#define i80uint32u320(in) i8uint32s(in) + +#define u160uint32u320(in) u16uint32s(in) + +#define i160uint32u320(in) i16uint32s(in) + +#define i320uint32u320(in) i32uint32s(in) + +#define s2uint32u322(in,size,out) suint32a(in, size[0]*size[1], out) + +#define d2uint32u322(in,size,out) duint32a(in, size[0]*size[1], out) + +#define u82uint32u322(in,size,out) u8uint32a(in, size[0]*size[1], out) + +#define i82uint32u322(in,size,out) i8int32a(in, size[0]*size[1], out) + +#define u162uint32u322(in,size,out) u16uint32a(in, size[0]*size[1], out) + +#define i162uint32u322(in,size,out) i16uint32a(in, size[0]*size[1], out) + +#define i322uint32u322(in,size,out) i32uint32a(in, size[0]*size[1], out) + +#endif /* !__INT_UINT32_H__ */ diff --git a/src/c/elementaryFunctions/interfaces/int_uint8.h b/src/c/elementaryFunctions/interfaces/int_uint8.h new file mode 100644 index 00000000..ac0bc43e --- /dev/null +++ b/src/c/elementaryFunctions/interfaces/int_uint8.h @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_UINT8_H__ +#define __INT_UINT8_H__ + +#define s0uint8u80(in) suint8s(in) + +#define d0uint8u80(in) duint8s(in) + +#define i80uint8u80(in) i8uint8s(in) + +#define u160uint8u80(in) u16uint8s(in) + +#define i160uint8u80(in) i16uint8s(in) + +#define s2uint8u82(in,size,out) suint8a(in, size[0]*size[1], out) + +#define d2uint8u82(in,size,out) duint8a(in, size[0]*size[1], out) + +#define i82uint8u82(in,size,out) i8uint8a(in, size[0]*size[1], out) + +#define u162uint8u82(in,size,out) u16uint8a(in, size[0]*size[1], out) + +#define i162uint8u82(in,size,out) i16uint8a(in, size[0]*size[1], out) + +#endif /* !__INT_UINT8_H__ */ diff --git a/src/c/elementaryFunctions/iscolumn/discolumna.c b/src/c/elementaryFunctions/iscolumn/discolumna.c new file mode 100644 index 00000000..8bebfcad --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/discolumna.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" +char discolumna(double* inp, int size1) +{ + char out= 'F' ; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/discolumns.c b/src/c/elementaryFunctions/iscolumn/discolumns.c new file mode 100644 index 00000000..b81074b5 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/discolumns.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" + +char discolumns(double inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/giscolumna.c b/src/c/elementaryFunctions/iscolumn/giscolumna.c new file mode 100644 index 00000000..db6ff431 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/giscolumna.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" +#include "string.h" +char giscolumna(char *inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/giscolumns.c b/src/c/elementaryFunctions/iscolumn/giscolumns.c new file mode 100644 index 00000000..57b93e95 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/giscolumns.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" + +char giscolumns(char inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/siscolumna.c b/src/c/elementaryFunctions/iscolumn/siscolumna.c new file mode 100644 index 00000000..ed4ee5b9 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/siscolumna.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" +char siscolumna(float* inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/siscolumns.c b/src/c/elementaryFunctions/iscolumn/siscolumns.c new file mode 100644 index 00000000..ebb89e11 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/siscolumns.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" + +char siscolumns(float inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/u16iscolumna.c b/src/c/elementaryFunctions/iscolumn/u16iscolumna.c new file mode 100644 index 00000000..ef0821d6 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/u16iscolumna.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" +#include "uint16.h" +char u16iscolumna(uint16* inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/u16iscolumns.c b/src/c/elementaryFunctions/iscolumn/u16iscolumns.c new file mode 100644 index 00000000..7a174642 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/u16iscolumns.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" +#include "uint16.h" + +char u16iscolumns(uint16 inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/ziscolumna.c b/src/c/elementaryFunctions/iscolumn/ziscolumna.c new file mode 100644 index 00000000..a1aca1bf --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/ziscolumna.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "doubleComplex.h" +#include "iscolumn.h" +#include "types.h" + +char ziscolumna(doubleComplex *inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/iscolumn/ziscolumns.c b/src/c/elementaryFunctions/iscolumn/ziscolumns.c new file mode 100644 index 00000000..f1d28508 --- /dev/null +++ b/src/c/elementaryFunctions/iscolumn/ziscolumns.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "iscolumn.h" +#include "types.h" +#include "doubleComplex.h" + +char ziscolumns(doubleComplex inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isequal/disequala.c b/src/c/elementaryFunctions/isequal/disequala.c new file mode 100644 index 00000000..8781ac7b --- /dev/null +++ b/src/c/elementaryFunctions/isequal/disequala.c @@ -0,0 +1,39 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> + +char disequala(double* inp1, int size1r, int size1c, double* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i<size1r*size1c; i++) + { + if (inp1[i] != inp2[i]) + { + f = 1; + break; + } + } + + if (f == 1) + return 'F'; + else + return 'T'; + } +} + diff --git a/src/c/elementaryFunctions/isequal/disequals.c b/src/c/elementaryFunctions/isequal/disequals.c new file mode 100644 index 00000000..319c3308 --- /dev/null +++ b/src/c/elementaryFunctions/isequal/disequals.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> + +char disequals(double inp1, double inp2) +{ + if (inp1 == inp2) + return 'T'; + else + return 'F'; +} + diff --git a/src/c/elementaryFunctions/isequal/sisequala.c b/src/c/elementaryFunctions/isequal/sisequala.c new file mode 100644 index 00000000..2634efd5 --- /dev/null +++ b/src/c/elementaryFunctions/isequal/sisequala.c @@ -0,0 +1,39 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> + +char sisequala(float* inp1, int size1r, int size1c, float* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i<size1r*size1c; i++) + { + if (inp1[i] != inp2[i]) + { + f = 1; + break; + } + } + + if (f == 1) + return 'F'; + else + return 'T'; + } +} + diff --git a/src/c/elementaryFunctions/isequal/sisequals.c b/src/c/elementaryFunctions/isequal/sisequals.c new file mode 100644 index 00000000..66bef36d --- /dev/null +++ b/src/c/elementaryFunctions/isequal/sisequals.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> + +char sisequals(float inp1, float inp2) +{ + if (inp1 == inp2) + return 'T'; + else + return 'F'; +} + diff --git a/src/c/elementaryFunctions/isequal/u16isequala.c b/src/c/elementaryFunctions/isequal/u16isequala.c new file mode 100644 index 00000000..62de1e86 --- /dev/null +++ b/src/c/elementaryFunctions/isequal/u16isequala.c @@ -0,0 +1,40 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> +#include "uint16.h" + +char u16isequala(uint16* inp1, int size1r, int size1c, uint16* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i<size1r*size1c; i++) + { + if (inp1[i] != inp2[i]) + { + f = 1; + break; + } + } + + if (f == 1) + return 'F'; + else + return 'T'; + } +} + diff --git a/src/c/elementaryFunctions/isequal/u16isequals.c b/src/c/elementaryFunctions/isequal/u16isequals.c new file mode 100644 index 00000000..4f797d40 --- /dev/null +++ b/src/c/elementaryFunctions/isequal/u16isequals.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> +#include "uint16.h" + +char u16isequals(uint16 inp1, uint16 inp2) +{ + if (inp1 == inp2) + return 'T'; + else + return 'F'; +} + diff --git a/src/c/elementaryFunctions/isequal/zisequala.c b/src/c/elementaryFunctions/isequal/zisequala.c new file mode 100644 index 00000000..13d241fe --- /dev/null +++ b/src/c/elementaryFunctions/isequal/zisequala.c @@ -0,0 +1,40 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> +#include "doubleComplex.h" + +char zisequala(doubleComplex* inp1, int size1r, int size1c, doubleComplex* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i<size1r*size1c; i++) + { + if (!(zisequals(inp1[i],inp2[i]))) + { + f = 1; + break; + } + } + + if (f == 1) + return 'F'; + else + return 'T'; + } +} + diff --git a/src/c/elementaryFunctions/isequal/zisequals.c b/src/c/elementaryFunctions/isequal/zisequals.c new file mode 100644 index 00000000..6914dc87 --- /dev/null +++ b/src/c/elementaryFunctions/isequal/zisequals.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <isreal.h> +#include "doubleComplex.h" + +char zisequals(doubleComplex inp1, doubleComplex inp2) +{ + if ((zreals(inp1) == zreals(inp2)) && (zimags(inp1) == zimags(inp2))) + return 'T'; + else + return 'F'; +} + diff --git a/src/c/elementaryFunctions/isinf/disinfs.c b/src/c/elementaryFunctions/isinf/disinfs.c new file mode 100644 index 00000000..1d940051 --- /dev/null +++ b/src/c/elementaryFunctions/isinf/disinfs.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isinf.h" + +char disinfs(double x) +{ + char o = 'F'; + if (x == INFINITY || x == - INFINITY) + o = 'T'; + return o; +} diff --git a/src/c/elementaryFunctions/isinf/sisinfs.c b/src/c/elementaryFunctions/isinf/sisinfs.c new file mode 100644 index 00000000..c36c0a5b --- /dev/null +++ b/src/c/elementaryFunctions/isinf/sisinfs.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isinf.h" + +char sisinfs(float x) +{ + char o = 'F'; + if (x == INFINITY || x == - INFINITY) + o = 'T'; + return o; +} diff --git a/src/c/elementaryFunctions/ismatrix/dismatrixa.c b/src/c/elementaryFunctions/ismatrix/dismatrixa.c new file mode 100644 index 00000000..4fe7d192 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/dismatrixa.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +char dismatrixa(double* in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/dismatrixs.c b/src/c/elementaryFunctions/ismatrix/dismatrixs.c new file mode 100644 index 00000000..15edcf22 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/dismatrixs.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +char dismatrixs(double in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/gismatrixa.c b/src/c/elementaryFunctions/ismatrix/gismatrixa.c new file mode 100644 index 00000000..f7288145 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/gismatrixa.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +char gismatrixa(char* in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/gismatrixs.c b/src/c/elementaryFunctions/ismatrix/gismatrixs.c new file mode 100644 index 00000000..61a3062a --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/gismatrixs.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +char gismatrixs(char in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/sismatrixa.c b/src/c/elementaryFunctions/ismatrix/sismatrixa.c new file mode 100644 index 00000000..44335b81 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/sismatrixa.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +char sismatrixa(float* in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/sismatrixs.c b/src/c/elementaryFunctions/ismatrix/sismatrixs.c new file mode 100644 index 00000000..d6c6f233 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/sismatrixs.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +char sismatrixs(float in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/u16ismatrixa.c b/src/c/elementaryFunctions/ismatrix/u16ismatrixa.c new file mode 100644 index 00000000..c16d54c8 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/u16ismatrixa.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +#include "uint16.h" +char u16ismatrixa(uint16* in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/u16ismatrixs.c b/src/c/elementaryFunctions/ismatrix/u16ismatrixs.c new file mode 100644 index 00000000..64313577 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/u16ismatrixs.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +#include "uint16.h" +char u16ismatrixs(uint16 in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/zismatrixa.c b/src/c/elementaryFunctions/ismatrix/zismatrixa.c new file mode 100644 index 00000000..32d72605 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/zismatrixa.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +#include "uint16.h" +#include "doubleComplex.h" +char zismatrixa(doubleComplex* in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/ismatrix/zismatrixs.c b/src/c/elementaryFunctions/ismatrix/zismatrixs.c new file mode 100644 index 00000000..d38592c7 --- /dev/null +++ b/src/c/elementaryFunctions/ismatrix/zismatrixs.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "ismatrix.h" +#include "types.h" +#include "uint16.h" +#include "doubleComplex.h" +char zismatrixs(doubleComplex in) +{ + char out= 'T' ; + return out; +} diff --git a/src/c/elementaryFunctions/isreal/disreals.c b/src/c/elementaryFunctions/isreal/disreals.c new file mode 100644 index 00000000..8c7c8201 --- /dev/null +++ b/src/c/elementaryFunctions/isreal/disreals.c @@ -0,0 +1,17 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include "isreal.h" + +double disreals(double a){ + return 1; +} diff --git a/src/c/elementaryFunctions/isreal/sisreals.c b/src/c/elementaryFunctions/isreal/sisreals.c new file mode 100644 index 00000000..4b93c02c --- /dev/null +++ b/src/c/elementaryFunctions/isreal/sisreals.c @@ -0,0 +1,17 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include "isreal.h" + +float sisreals(float a){ + return 1; +} diff --git a/src/c/elementaryFunctions/isrow/disrowa.c b/src/c/elementaryFunctions/isrow/disrowa.c new file mode 100644 index 00000000..826afca7 --- /dev/null +++ b/src/c/elementaryFunctions/isrow/disrowa.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" +char disrowa(double* inp, int size1) +{ + char out= 'F' ; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/isrow/disrows.c b/src/c/elementaryFunctions/isrow/disrows.c new file mode 100644 index 00000000..e3bdadb5 --- /dev/null +++ b/src/c/elementaryFunctions/isrow/disrows.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" + +char disrows(double inp) +{ + double out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isrow/gisrowa.c b/src/c/elementaryFunctions/isrow/gisrowa.c new file mode 100644 index 00000000..c62350fc --- /dev/null +++ b/src/c/elementaryFunctions/isrow/gisrowa.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" +#include "string.h" +char gisrowa(char *inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/isrow/gisrows.c b/src/c/elementaryFunctions/isrow/gisrows.c new file mode 100644 index 00000000..a4393bdb --- /dev/null +++ b/src/c/elementaryFunctions/isrow/gisrows.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" + +char gisrows(char inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isrow/sisrowa.c b/src/c/elementaryFunctions/isrow/sisrowa.c new file mode 100644 index 00000000..bf9d4c36 --- /dev/null +++ b/src/c/elementaryFunctions/isrow/sisrowa.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" +char sisrowa(float* inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/isrow/sisrows.c b/src/c/elementaryFunctions/isrow/sisrows.c new file mode 100644 index 00000000..331e0a9d --- /dev/null +++ b/src/c/elementaryFunctions/isrow/sisrows.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" + +char sisrows(float inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isrow/u16isrowa.c b/src/c/elementaryFunctions/isrow/u16isrowa.c new file mode 100644 index 00000000..3ddbb0fe --- /dev/null +++ b/src/c/elementaryFunctions/isrow/u16isrowa.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" +#include "uint16.h" +char u16isrowa(uint16* inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/isrow/u16isrows.c b/src/c/elementaryFunctions/isrow/u16isrows.c new file mode 100644 index 00000000..2942dd3b --- /dev/null +++ b/src/c/elementaryFunctions/isrow/u16isrows.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" +#include "uint16.h" + +char u16isrows(uint16 inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isrow/zisrowa.c b/src/c/elementaryFunctions/isrow/zisrowa.c new file mode 100644 index 00000000..312ddf5b --- /dev/null +++ b/src/c/elementaryFunctions/isrow/zisrowa.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "doubleComplex.h" +#include "isrow.h" +#include "types.h" + +char zisrowa(doubleComplex *inp, int size1) +{ + char out='F'; + if(size1==1) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/isrow/zisrows.c b/src/c/elementaryFunctions/isrow/zisrows.c new file mode 100644 index 00000000..96e671ab --- /dev/null +++ b/src/c/elementaryFunctions/isrow/zisrows.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isrow.h" +#include "types.h" +#include "doubleComplex.h" + +char zisrows(doubleComplex inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/disscalara.c b/src/c/elementaryFunctions/isscalar/disscalara.c new file mode 100644 index 00000000..eb70cf6a --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/disscalara.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isscalar.h" +#include "types.h" +char disscalara(double* inp, int size1) +{ + char out= 'F' ; + + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/disscalars.c b/src/c/elementaryFunctions/isscalar/disscalars.c new file mode 100644 index 00000000..fe7ce3e3 --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/disscalars.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isscalar.h" +#include "types.h" + +char disscalars(double inp) +{ + double out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/gisscalara.c b/src/c/elementaryFunctions/isscalar/gisscalara.c new file mode 100644 index 00000000..fdfac778 --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/gisscalara.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isscalar.h" +#include "types.h" +#include "string.h" +char gisscalara(char *inp, int size1) +{ + char out='F'; + + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/gisscalars.c b/src/c/elementaryFunctions/isscalar/gisscalars.c new file mode 100644 index 00000000..5a208959 --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/gisscalars.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isscalar.h" +#include "types.h" + +char giscalars(char inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/sisscalara.c b/src/c/elementaryFunctions/isscalar/sisscalara.c new file mode 100644 index 00000000..59a51653 --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/sisscalara.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isscalar.h" +#include "types.h" +char sisscalara(float* inp, int size1) +{ + char out='F'; + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/sisscalars.c b/src/c/elementaryFunctions/isscalar/sisscalars.c new file mode 100644 index 00000000..6ca7c4b4 --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/sisscalars.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isscalar.h" +#include "types.h" + +char sisscalars(float inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/zisscalara.c b/src/c/elementaryFunctions/isscalar/zisscalara.c new file mode 100644 index 00000000..942bbb54 --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/zisscalara.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "doubleComplex.h" +#include "isscalar.h" +#include "types.h" + +char zisscalara(doubleComplex *inp, int size1) +{ + char out='F'; + + return out; +} diff --git a/src/c/elementaryFunctions/isscalar/zisscalars.c b/src/c/elementaryFunctions/isscalar/zisscalars.c new file mode 100644 index 00000000..2bf8e949 --- /dev/null +++ b/src/c/elementaryFunctions/isscalar/zisscalars.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isscalar.h" +#include "types.h" +#include "doubleComplex.h" + +char zisscalars(doubleComplex inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/issquare/dissquarea.c b/src/c/elementaryFunctions/issquare/dissquarea.c new file mode 100644 index 00000000..840190d0 --- /dev/null +++ b/src/c/elementaryFunctions/issquare/dissquarea.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "issquare.h" +#include "types.h" +char dissquarea(double* inp, int size1, int size2) +{ + char out= 'F' ; + if(size1==size2) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/issquare/dissquares.c b/src/c/elementaryFunctions/issquare/dissquares.c new file mode 100644 index 00000000..ac6d67e1 --- /dev/null +++ b/src/c/elementaryFunctions/issquare/dissquares.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "issquare.h" +#include "types.h" + +char dissquares(double inp) +{ + double out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/issquare/gissquarea.c b/src/c/elementaryFunctions/issquare/gissquarea.c new file mode 100644 index 00000000..73e2b37e --- /dev/null +++ b/src/c/elementaryFunctions/issquare/gissquarea.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "issquare.h" +#include "types.h" +#include "string.h" +char gissquarea(char *inp, int size1, int size2) +{ + char out='F'; + if(size1==size2) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/issquare/gissquares.c b/src/c/elementaryFunctions/issquare/gissquares.c new file mode 100644 index 00000000..572afd19 --- /dev/null +++ b/src/c/elementaryFunctions/issquare/gissquares.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "issquare.h" +#include "types.h" + +char gissquares(char inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/issquare/sissquarea.c b/src/c/elementaryFunctions/issquare/sissquarea.c new file mode 100644 index 00000000..856cb818 --- /dev/null +++ b/src/c/elementaryFunctions/issquare/sissquarea.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "issquare.h" +#include "types.h" +char sissquarea(float* inp, int size1, int size2) +{ + char out='F'; + if(size1==size2) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/issquare/sissquares.c b/src/c/elementaryFunctions/issquare/sissquares.c new file mode 100644 index 00000000..1a6fbf85 --- /dev/null +++ b/src/c/elementaryFunctions/issquare/sissquares.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "issquare.h" +#include "types.h" + +char sissquares(float inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/issquare/zissquarea.c b/src/c/elementaryFunctions/issquare/zissquarea.c new file mode 100644 index 00000000..023b8fc6 --- /dev/null +++ b/src/c/elementaryFunctions/issquare/zissquarea.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "doubleComplex.h" +#include "issquare.h" +#include "types.h" + +char zissquarea(doubleComplex *inp, int size1, int size2) +{ + char out='F'; + if(size1==size2) + { + out = 'T'; + } + return out; +} diff --git a/src/c/elementaryFunctions/issquare/zissquares.c b/src/c/elementaryFunctions/issquare/zissquares.c new file mode 100644 index 00000000..2c1bb566 --- /dev/null +++ b/src/c/elementaryFunctions/issquare/zissquares.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "issquare.h" +#include "types.h" +#include "doubleComplex.h" + +char zissquares(doubleComplex inp) +{ + char out='T'; + + return out; +} diff --git a/src/c/elementaryFunctions/isvector/disvectora.c b/src/c/elementaryFunctions/isvector/disvectora.c new file mode 100644 index 00000000..a96485be --- /dev/null +++ b/src/c/elementaryFunctions/isvector/disvectora.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isvector.h" +#include "types.h" +char disvectora(double* inp, int row, int col) +{ + if(row ==1 || col==1) + return 'T'; + return 'F'; +} diff --git a/src/c/elementaryFunctions/isvector/disvectors.c b/src/c/elementaryFunctions/isvector/disvectors.c new file mode 100644 index 00000000..703e6673 --- /dev/null +++ b/src/c/elementaryFunctions/isvector/disvectors.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isvector.h" +#include "types.h" + +char disvectors(double inp) +{ + double out='F'; + + return out; +} diff --git a/src/c/elementaryFunctions/isvector/gisvectora.c b/src/c/elementaryFunctions/isvector/gisvectora.c new file mode 100644 index 00000000..758fa879 --- /dev/null +++ b/src/c/elementaryFunctions/isvector/gisvectora.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isvector.h" +#include "types.h" +#include "string.h" +char gisvectora(char *inp, int row, int col) +{ + if(row ==1 || col==1) + return 'T'; + return 'F'; +} diff --git a/src/c/elementaryFunctions/isvector/gisvectors.c b/src/c/elementaryFunctions/isvector/gisvectors.c new file mode 100644 index 00000000..72118603 --- /dev/null +++ b/src/c/elementaryFunctions/isvector/gisvectors.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isvector.h" +#include "types.h" + +char gisvectors(char inp) +{ + char out='F'; + + return out; +} diff --git a/src/c/elementaryFunctions/isvector/sisvectora.c b/src/c/elementaryFunctions/isvector/sisvectora.c new file mode 100644 index 00000000..d6a4821b --- /dev/null +++ b/src/c/elementaryFunctions/isvector/sisvectora.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isvector.h" +#include "types.h" +char sisvectora(float* inp, int row, int col) +{ + if(row ==1 || col==1) + return 'T'; + return 'F'; +} diff --git a/src/c/elementaryFunctions/isvector/sisvectors.c b/src/c/elementaryFunctions/isvector/sisvectors.c new file mode 100644 index 00000000..019bd464 --- /dev/null +++ b/src/c/elementaryFunctions/isvector/sisvectors.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isvector.h" +#include "types.h" + +char sisvectors(float inp) +{ + char out='F'; + + return out; +} diff --git a/src/c/elementaryFunctions/isvector/zisvectora.c b/src/c/elementaryFunctions/isvector/zisvectora.c new file mode 100644 index 00000000..0ed64a63 --- /dev/null +++ b/src/c/elementaryFunctions/isvector/zisvectora.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "doubleComplex.h" +#include "isvector.h" +#include "types.h" + +char zisvectora(doubleComplex *inp, int row, int col) +{ + if(row ==1 || col==1) + return 'T'; + return 'F'; +} diff --git a/src/c/elementaryFunctions/isvector/zisvectors.c b/src/c/elementaryFunctions/isvector/zisvectors.c new file mode 100644 index 00000000..bc9e5ce6 --- /dev/null +++ b/src/c/elementaryFunctions/isvector/zisvectors.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "isvector.h" +#include "types.h" +#include "doubleComplex.h" + +char zisvectors(doubleComplex inp) +{ + char out='F'; + + return out; +} diff --git a/src/c/elementaryFunctions/linspace/dlinspacea.c b/src/c/elementaryFunctions/linspace/dlinspacea.c new file mode 100644 index 00000000..e23db2f3 --- /dev/null +++ b/src/c/elementaryFunctions/linspace/dlinspacea.c @@ -0,0 +1,49 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include <stdlib.h> +#include "linspace.h" + +void dlinspacea(double *low_limit,int _row,double *up_limit,double range_num,double *out) +{ + int i,j,k; + double temp; + double *step_iterate; /* for each row the spacing between two values is different.*/ + step_iterate = (double*) malloc((double)_row*sizeof(double)); + for(i=0;i<_row;i++) + { + + step_iterate[i] = (up_limit[i]-low_limit[i])/(range_num-1); + + } + for(j=0;j < _row;j++) + { + out[j] = low_limit[j]; /* For every row first element is the first value of low_limit array*/ + temp = low_limit[j]; + for(k=1;k < (double)range_num;k++ ) + { + out[(_row*k)+j] = temp + step_iterate[j]; /* Output matrix positions for 3 X 5 matrix are [0 3 6 9 12;1 4 7 10 13;2 5 8 11 14] so (_row*k)+j) used*/ + temp = out[(_row*k)+j]; + if(k == (double)range_num-1 ) + { + out[(_row*k)+j] = (double)up_limit[j]; /* Last value of output is equal to first value of up_limit array*/ + } + + } + + + } + + + + +} + diff --git a/src/c/elementaryFunctions/linspace/dlinspaces.c b/src/c/elementaryFunctions/linspace/dlinspaces.c new file mode 100644 index 00000000..9ac80271 --- /dev/null +++ b/src/c/elementaryFunctions/linspace/dlinspaces.c @@ -0,0 +1,33 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "linspace.h" +void dlinspaces(double low_limit,double up_limit,double range_num,double *out) +{ + int j; + double temp = low_limit; + float step_iterate = (up_limit-low_limit)/(range_num-1); + out[0] = low_limit; /*First value of output is equal to low_limit value*/ + for(j=1; j<(double)range_num; j++) + { + out[j] = temp + step_iterate; + temp = out[j]; + if(j == (double)range_num-1 ) + { + out[j] = (double)up_limit; /* Last value of output is equal to up_limit value*/ + } + } + + + +} + diff --git a/src/c/elementaryFunctions/linspace/slinspacea.c b/src/c/elementaryFunctions/linspace/slinspacea.c new file mode 100644 index 00000000..38af3942 --- /dev/null +++ b/src/c/elementaryFunctions/linspace/slinspacea.c @@ -0,0 +1,49 @@ +/* Copyright (C) 2016 - 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 +*/ +#include <stdlib.h> +#include "linspace.h" + +void slinspacea(float *low_limit,int _row,float *up_limit,float range_num,float *out) +{ + int i,j,k; + float temp; + float *step_iterate; /* for each row the spacing between two values is different.*/ + step_iterate = (float*) malloc((float)_row*sizeof(float)); + for(i=0;i<_row;i++) + { + + step_iterate[i] = (up_limit[i]-low_limit[i])/(range_num-1); + + } + for(j=0;j < _row;j++) + { + out[j] = low_limit[j]; /* For every row first element is the first value of low_limit array*/ + temp = low_limit[j]; + for(k=1;k < (float)range_num;k++ ) + { + out[(_row*k)+j] = temp + step_iterate[j]; /* Output matrix positions for 3 X 5 matrix are [0 3 6 9 12;1 4 7 10 13;2 5 8 11 14] so (_row*k)+j) used*/ + temp = out[(_row*k)+j]; + if(k == (float)range_num-1 ) + { + out[(_row*k)+j] = (float)up_limit[j]; /* Last value of output is equal to first value of up_limit array*/ + } + + } + + + } + + + + +} + diff --git a/src/c/elementaryFunctions/linspace/slinspaces.c b/src/c/elementaryFunctions/linspace/slinspaces.c new file mode 100644 index 00000000..2404f4de --- /dev/null +++ b/src/c/elementaryFunctions/linspace/slinspaces.c @@ -0,0 +1,33 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include "linspace.h" +void slinspaces(float low_limit,float up_limit,float range_num,float *out) +{ + int j; + float temp = low_limit; + float step_iterate = (up_limit-low_limit)/(range_num-1); + out[0] = low_limit; /*First value of output is equal to low_limit value*/ + for(j=1; j<(float)range_num; j++) + { + out[j] = temp + step_iterate; + temp = out[j]; + if(j == (float)range_num-1 ) + { + out[j] = (float)up_limit; /* Last value of output is equal to up_limit value*/ + } + } + + + +} + diff --git a/src/c/elementaryFunctions/log2/dlog2a.c b/src/c/elementaryFunctions/log2/dlog2a.c new file mode 100644 index 00000000..79047dec --- /dev/null +++ b/src/c/elementaryFunctions/log2/dlog2a.c @@ -0,0 +1,20 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Brijesh Gupta C R + Email: toolbox@scilab.in +*/ +#include <stdio.h> +#include <math.h> +#include "log2.h" + +void dlog2a(double* inp,int size, double* out) +{ + for(int i = 0; i<size; i++) + out[i] = dlog2s(inp[i]); +} diff --git a/src/c/elementaryFunctions/log2/dlog2s.c b/src/c/elementaryFunctions/log2/dlog2s.c new file mode 100644 index 00000000..9d2f8ab2 --- /dev/null +++ b/src/c/elementaryFunctions/log2/dlog2s.c @@ -0,0 +1,21 @@ +/* Copyright (C) 2016 - 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 +*/ +#include <stdio.h> +#include <math.h> +#include "log2.h" + +double dlog2s(double inp) +{ + return log(inp)/log(2); +} + + diff --git a/src/c/elementaryFunctions/log2/slog2a.c b/src/c/elementaryFunctions/log2/slog2a.c new file mode 100644 index 00000000..04723072 --- /dev/null +++ b/src/c/elementaryFunctions/log2/slog2a.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Brijesh Gupta C R + Email: toolbox@scilab.in +*/ +#include <stdio.h> +#include <math.h> +#include "factorial.h" +#include "log2.h" + +void slog2a(float* inp,int size, float* out) +{ + for(int i = 0; i<size; i++) + out[i] = slog2s(inp[i]); +} diff --git a/src/c/elementaryFunctions/log2/slog2s.c b/src/c/elementaryFunctions/log2/slog2s.c new file mode 100644 index 00000000..d162248a --- /dev/null +++ b/src/c/elementaryFunctions/log2/slog2s.c @@ -0,0 +1,20 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Brijesh Gupta C R + Email: toolbox@scilab.in +*/ +#include <stdio.h> +#include <math.h> +#include "factorial.h" +#include "log2.h" + +float slog2s(float inp) +{ + return log(inp)/log(2); +} diff --git a/src/c/elementaryFunctions/log2/zlog2a.c b/src/c/elementaryFunctions/log2/zlog2a.c new file mode 100644 index 00000000..4cd0b33f --- /dev/null +++ b/src/c/elementaryFunctions/log2/zlog2a.c @@ -0,0 +1,20 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Brijesh Gupta C R + Email: toolbox@scilab.in +*/ +#include <stdio.h> +#include <math.h> +#include "log2.h" + +void zlog2a(doubleComplex* inp,int size, doubleComplex* out) +{ + for(int i = 0; i<size; i++) + out[i] = zlog2s(inp[i]); +} diff --git a/src/c/elementaryFunctions/log2/zlog2s.c b/src/c/elementaryFunctions/log2/zlog2s.c new file mode 100644 index 00000000..8447c9e3 --- /dev/null +++ b/src/c/elementaryFunctions/log2/zlog2s.c @@ -0,0 +1,22 @@ +/* Copyright (C) 2016 - 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 +*/ +#include <stdio.h> +#include <math.h> +#include "log2.h" +#include "log.h" + +doubleComplex zlog2s(doubleComplex inp) +{ + return zlogs(inp)/zlogs(2); +} + + diff --git a/src/c/elementaryFunctions/logspace/dlogspacea.c b/src/c/elementaryFunctions/logspace/dlogspacea.c new file mode 100644 index 00000000..62802f77 --- /dev/null +++ b/src/c/elementaryFunctions/logspace/dlogspacea.c @@ -0,0 +1,50 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include <math.h> +#include <stdlib.h> +#include "logspace.h" + +void dlogspacea(double *low_limit,int _row,double *up_limit,double range_num,double *out) +{ + int i,j,k; + double temp; + double *step_iterate; /* for each row the spacing between two values is different.*/ + step_iterate = (double*) malloc((double)_row*sizeof(double)); + for(i=0;i<_row;i++) + { + step_iterate[i] = pow(10,((up_limit[i]-low_limit[i])/(range_num-1))); + + + } + for(j=0;j < _row;j++) + { + out[j] = pow(10,low_limit[j]); /* For every row first element is equal to 10 raise to the first value of low_limit array*/ + temp = out[j]; + for(k=1;k < (double)range_num;k++ ) + { + out[(_row*k)+j] = temp*step_iterate[j]; /* Output matrix positions for 3 X 5 matrix are [0 3 6 9 12;1 4 7 10 13;2 5 8 11 14] so (_row*k)+j) used*/ + temp = out[(_row*k)+j]; + if(k == (double)range_num-1 ) + { + out[(_row*k)+j] = pow(10,((double)up_limit[j])); /* For every row Last value of output is equal to 10 raise to first value of up_limit array*/ + } + + } + + + } + + + + +} + diff --git a/src/c/elementaryFunctions/logspace/dlogspaces.c b/src/c/elementaryFunctions/logspace/dlogspaces.c new file mode 100644 index 00000000..df9c94f0 --- /dev/null +++ b/src/c/elementaryFunctions/logspace/dlogspaces.c @@ -0,0 +1,34 @@ +/* Copyright (C) 2016 - 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: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "logspace.h" +#include<math.h> +void dlogspaces(double low_limit,double up_limit,double range_num,double *out) +{ + int j; + double temp = pow(10,low_limit); + double step_iterate = pow(10,((up_limit-low_limit)/(range_num-1))); + out[0] = pow(10,low_limit); /*First value of output is equal to low_limit value*/ + for(j=1; j<(double)range_num; j++) + { + out[j] = temp*step_iterate; + temp = out[j]; + if(j == (double)range_num-1 ) + { + out[j] = pow(10,((double)up_limit)); /* Last value of output is equal to up_limit value*/ + } + } + + + +} + diff --git a/src/c/elementaryFunctions/nancumsum/dnancumsuma.c b/src/c/elementaryFunctions/nancumsum/dnancumsuma.c new file mode 100644 index 00000000..135ab4bb --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/dnancumsuma.c @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +void dnancumsuma(double *in, int size, double* out) +{ + double fin=0; + + + + for (int i = 0; i < size; ++i) + + { + if(!(isnan(in[i]))) + { + fin= dadds(fin, in[i]); + + } + out[i]= fin; + + } + + +} diff --git a/src/c/elementaryFunctions/nancumsum/dnancumsumcola.c b/src/c/elementaryFunctions/nancumsum/dnancumsumcola.c new file mode 100644 index 00000000..a49b394d --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/dnancumsumcola.c @@ -0,0 +1,43 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +void dnancumsumcola(double *in, int row, int col, double* out) +{ + double fin=0; + +for(int i=0; i< row; i++) + { + + for(int j= 0; j< col; j ++) + { + if(!(isnan(in[i+j*row]))) + + { + + fin = dadds(fin, in[i+j*row]); + + + + } + out[i+j*row]= fin; + + } + fin=0; + + } +} diff --git a/src/c/elementaryFunctions/nancumsum/dnancumsumrowa.c b/src/c/elementaryFunctions/nancumsum/dnancumsumrowa.c new file mode 100644 index 00000000..45ce1ca2 --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/dnancumsumrowa.c @@ -0,0 +1,45 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +void dnancumsumrowa(double *in, int row, int col, double* out) +{ + + double fin=0; + + +for(int i=0; i< col; i++) + { + + for(int j= 0; j< row; j ++) + { + if(!(isnan(in[j+i*row]))) + + { + + fin = dadds(fin, in[j+i*row]); + + + + } + out[j+i*row]= fin; + + } + fin=0; + + } +} diff --git a/src/c/elementaryFunctions/nancumsum/snancumsuma.c b/src/c/elementaryFunctions/nancumsum/snancumsuma.c new file mode 100644 index 00000000..56d16335 --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/snancumsuma.c @@ -0,0 +1,38 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +void snancumsuma(float *in, int size, float* out) +{ + float fin=0; + + + + for (int i = 0; i < size; ++i) + + { + if(!(isnan(in[i]))) + { + fin= sadds(fin, in[i]); + + } + out[i]= fin; + + } + + +} diff --git a/src/c/elementaryFunctions/nancumsum/snancumsumcola.c b/src/c/elementaryFunctions/nancumsum/snancumsumcola.c new file mode 100644 index 00000000..3b96ef01 --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/snancumsumcola.c @@ -0,0 +1,43 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +void snancumsumcola(float *in, int row, int col, float* out) +{ + float fin=0; + +for(int i=0; i< row; i++) + { + + for(int j= 0; j< col; j ++) + { + if(!(isnan(in[i+j*row]))) + + { + + fin = sadds(fin, in[i+j*row]); + + + + } + out[i+j*row]= fin; + + } + fin=0; + + } +} diff --git a/src/c/elementaryFunctions/nancumsum/snancumsumrowa.c b/src/c/elementaryFunctions/nancumsum/snancumsumrowa.c new file mode 100644 index 00000000..7eef3869 --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/snancumsumrowa.c @@ -0,0 +1,44 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +void snancumsumrowa(float *in, int row, int col, float* out) +{ + float fin=0; + + +for(int i=0; i< col; i++) + { + + for(int j= 0; j< row; j ++) + { + if(!(isnan(in[j+i*row]))) + + { + + fin = sadds(fin, in[j+i*row]); + + + + } + out[j+i*row]= fin; + + } + fin=0; + + } +} diff --git a/src/c/elementaryFunctions/nancumsum/znancumsuma.c b/src/c/elementaryFunctions/nancumsum/znancumsuma.c new file mode 100644 index 00000000..fd0a1e3e --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/znancumsuma.c @@ -0,0 +1,39 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "doubleComplex.h" +#include "addition.h" + +void znancumsuma(doubleComplex *in, int size, doubleComplex* out) +{ + doubleComplex fin=0; + + + + for (int i = 0; i < size; ++i) + + { + if(!(isnan(zreals(in[i]))) && !(isnan(zimags(in[i]))) ) + { + fin= zadds(fin, in[i]); + + } + out[i]= fin; + + } + + +} diff --git a/src/c/elementaryFunctions/nancumsum/znancumsumcola.c b/src/c/elementaryFunctions/nancumsum/znancumsumcola.c new file mode 100644 index 00000000..c1ca16b6 --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/znancumsumcola.c @@ -0,0 +1,44 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" +#include "doubleComplex.h" + +void znancumsumcola(doubleComplex* in, int row, int col, doubleComplex* out) +{ + doubleComplex fin= 0; + +for(int i=0; i< row; i++) + { + + for(int j= 0; j< col; j ++) + { + if( !(isnan(zreals(in[i+j*row]))) && !(isnan(zimags(in[i+j*row]))) ) + + { + + fin = zadds(fin, in[i+j*row]); + + + + } + out[i+j*row]= fin; + + } + fin= 0; + + } +} diff --git a/src/c/elementaryFunctions/nancumsum/znancumsumrowa.c b/src/c/elementaryFunctions/nancumsum/znancumsumrowa.c new file mode 100644 index 00000000..be04a4a7 --- /dev/null +++ b/src/c/elementaryFunctions/nancumsum/znancumsumrowa.c @@ -0,0 +1,45 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nancumsum.h" +#include "types.h" +#include "doubleComplex.h" +#include "uint16.h" +#include "addition.h" + +void znancumsumrowa(doubleComplex *in, int row, int col, doubleComplex* out) +{ + doubleComplex fin=0; + + +for(int i=0; i< col; i++) + { + + for(int j= 0; j< row; j ++) + { + if(!(isnan(zreals(in[j+i*row]))) && !(isnan(zimags(in[j+i*row]))) ) + + { + + fin = zadds(fin, in[j+i*row]); + + + + } + out[j+i*row]= fin; + + } + fin=0; + + } +} diff --git a/src/c/elementaryFunctions/nanmax/dnanmax1a.c b/src/c/elementaryFunctions/nanmax/dnanmax1a.c new file mode 100644 index 00000000..a0e7eede --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/dnanmax1a.c @@ -0,0 +1,58 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmax.h" +#include "types.h" +double dnanmax1a(double* in, int row, int col, double* out) +{ +double high; +int ival=0; +for(int i=0; i<row*col; i++) +{ + if( !(isnan(in[i])) ) + { + high= in[i]; + break; + + } +} + + + + for(int i=0; i< row*col; i++) + { + if( !(isnan(in[i])) ) + { + if( in[i] > high) + { + high= in[i]; + ival=i; + + } + + + } + + + } + +out[0]= ival%row +1; +out[1]= ival/row +1; + + + +return high; + +} diff --git a/src/c/elementaryFunctions/nanmax/dnanmax2a.c b/src/c/elementaryFunctions/nanmax/dnanmax2a.c new file mode 100644 index 00000000..82ddda6b --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/dnanmax2a.c @@ -0,0 +1,53 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmax.h" +#include "types.h" +double dnanmax2a(double* in, int size, double* out) +{ +double high; +for(int i=0; i<size; i++) +{ + if( !(isnan(in[i])) ) + { + high= in[i]; + break; + + } +} + + + + for(int i=0; i< size; i++) + { + if( !(isnan(in[i])) ) + { + if( in[i] > high) + { + high= in[i]; + *out= i+1; + + } + + + } + + + } + + +return high; + +} diff --git a/src/c/elementaryFunctions/nanmax/dnanmaxa.c b/src/c/elementaryFunctions/nanmax/dnanmaxa.c new file mode 100644 index 00000000..4ff4a1a8 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/dnanmaxa.c @@ -0,0 +1,53 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmax.h" +#include "types.h" +double dnanmaxa(double* in, int size) +{ +double high; +for(int i=0; i<size; i++) +{ + if( !(isnan(in[i])) ) + { + high= in[i]; + break; + + } +} + + + + for(int i=0; i< size; i++) + { + if( !(isnan(in[i])) ) + { + if( in[i] > high) + { + high= in[i]; + + } + + + } + + + } + + + +return high; + +} diff --git a/src/c/elementaryFunctions/nanmax/dnanmaxcol1a.c b/src/c/elementaryFunctions/nanmax/dnanmaxcol1a.c new file mode 100644 index 00000000..1198dcea --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/dnanmaxcol1a.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void dnanmaxcol1a(double *in, int row, int col, double* out1) +{ + double inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out1[i]= dnanmaxa( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmax/dnanmaxcola.c b/src/c/elementaryFunctions/nanmax/dnanmaxcola.c new file mode 100644 index 00000000..388337e7 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/dnanmaxcola.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void dnanmaxcola(double *in, int row, int col, double* out1, double* out2) +{ + double inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out1[i]= dnanmax2a( inter, col, &out2[i]); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmax/dnanmaxrow1a.c b/src/c/elementaryFunctions/nanmax/dnanmaxrow1a.c new file mode 100644 index 00000000..c4a7a4d1 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/dnanmaxrow1a.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void dnanmaxrow1a(double *in, int row, int col, double* out1) +{ + double inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out1[i]= dnanmaxa( inter, row); + + } + + + +} diff --git a/src/c/elementaryFunctions/nanmax/dnanmaxrowa.c b/src/c/elementaryFunctions/nanmax/dnanmaxrowa.c new file mode 100644 index 00000000..47d4d386 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/dnanmaxrowa.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void dnanmaxrowa(double *in, int row, int col, double* out1, double* out2) +{ + double inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out1[i]= dnanmax2a( inter, row, &out2[i]); + + } + + + +} diff --git a/src/c/elementaryFunctions/nanmax/snanmax1a.c b/src/c/elementaryFunctions/nanmax/snanmax1a.c new file mode 100644 index 00000000..7420c3a3 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/snanmax1a.c @@ -0,0 +1,58 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmax.h" +#include "types.h" +float snanmax1a(float* in, int row, int col, float* out) +{ +float high; +int ival=0; +for(int i=0; i<row*col; i++) +{ + if( !(isnan(in[i])) ) + { + high= in[i]; + break; + + } +} + + + + for(int i=0; i< row*col; i++) + { + if( !(isnan(in[i])) ) + { + if( in[i] > high) + { + high= in[i]; + ival=i; + + } + + + } + + + } + +out[0]= ival%row +1; +out[1]= ival/row +1; + + + +return high; + +} diff --git a/src/c/elementaryFunctions/nanmax/snanmax2a.c b/src/c/elementaryFunctions/nanmax/snanmax2a.c new file mode 100644 index 00000000..59c282d8 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/snanmax2a.c @@ -0,0 +1,53 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmax.h" +#include "types.h" +float snanmax2a(float* in, int size, float* out) +{ +float high; +for(int i=0; i<size; i++) +{ + if( !(isnan(in[i])) ) + { + high= in[i]; + break; + + } +} + + + + for(int i=0; i< size; i++) + { + if( !(isnan(in[i])) ) + { + if( in[i] > high) + { + high= in[i]; + *out= i+1; + + } + + + } + + + } + + +return high; + +} diff --git a/src/c/elementaryFunctions/nanmax/snanmaxa.c b/src/c/elementaryFunctions/nanmax/snanmaxa.c new file mode 100644 index 00000000..1eab1ac1 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/snanmaxa.c @@ -0,0 +1,53 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmax.h" +#include "types.h" +float snanmaxa(float* in, int size) +{ +float high; +for(int i=0; i<size; i++) +{ + if( !(isnan(in[i])) ) + { + high= in[i]; + break; + + } +} + + + + for(int i=0; i< size; i++) + { + if( !(isnan(in[i])) ) + { + if( in[i] > high) + { + high= in[i]; + + } + + + } + + + } + + + +return high; + +} diff --git a/src/c/elementaryFunctions/nanmax/snanmaxcol1a.c b/src/c/elementaryFunctions/nanmax/snanmaxcol1a.c new file mode 100644 index 00000000..a737033b --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/snanmaxcol1a.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void snanmaxcol1a(float *in, int row, int col, float* out1) +{ + float inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out1[i]= snanmaxa( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmax/snanmaxcola.c b/src/c/elementaryFunctions/nanmax/snanmaxcola.c new file mode 100644 index 00000000..2703319a --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/snanmaxcola.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void snanmaxcola(float *in, int row, int col, float* out1, float* out2) +{ + float inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out1[i]= snanmax2a( inter, col, &out2[i]); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmax/snanmaxrow1a.c b/src/c/elementaryFunctions/nanmax/snanmaxrow1a.c new file mode 100644 index 00000000..09d062c7 --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/snanmaxrow1a.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void snanmaxrow1a(float *in, int row, int col, float* out1) +{ + float inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out1[i]= snanmaxa( inter, row); + + } + + + +} diff --git a/src/c/elementaryFunctions/nanmax/snanmaxrowa.c b/src/c/elementaryFunctions/nanmax/snanmaxrowa.c new file mode 100644 index 00000000..c438ae0f --- /dev/null +++ b/src/c/elementaryFunctions/nanmax/snanmaxrowa.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nanmax.h" +#include "types.h" +#include "uint16.h" + +void snanmaxrowa(float *in, int row, int col, float* out1, float* out2) +{ + float inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out1[i]= snanmax2a( inter, row, &out2[i]); + + } + + + +} diff --git a/src/c/elementaryFunctions/nanmean/cnanmeana.c b/src/c/elementaryFunctions/nanmean/cnanmeana.c new file mode 100644 index 00000000..eaca1e79 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/cnanmeana.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" +#include "doubleComplex.h" +#include "floatComplex.h" + + +floatComplex cnanmeana(floatComplex* in, int size) +{ + floatComplex sum = 0; + double count = 0; + + for(int i = 0; i<size; i++) + { + if(!(isnan(zreals(in[i]))) && !(isnan(zimags(in[i])))) + { + count++; + sum += in[i]; + } + } + + return sum/count; +} + diff --git a/src/c/elementaryFunctions/nanmean/cnanmeancola.c b/src/c/elementaryFunctions/nanmean/cnanmeancola.c new file mode 100644 index 00000000..7f643a65 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/cnanmeancola.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +void cnanmeancola(floatComplex *in, int row, int col, floatComplex* out) +{ + floatComplex inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= cnanmeana( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmean/cnanmeanrowa.c b/src/c/elementaryFunctions/nanmean/cnanmeanrowa.c new file mode 100644 index 00000000..05aa7e93 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/cnanmeanrowa.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +void cnanmeanrowa(floatComplex *in, int row, int col, floatComplex* out) +{ + floatComplex inter[row]; + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= cnanmeana( inter, row); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmean/dnanmeana.c b/src/c/elementaryFunctions/nanmean/dnanmeana.c new file mode 100644 index 00000000..40f9ac6f --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/dnanmeana.c @@ -0,0 +1,33 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" + +double dnanmeana(double* in, int size) +{ + double count = 0, sum = 0; + + for(int i = 0; i<size; i++) + { + if(!(isnan(in[i]))) + { + count++; + sum += in[i]; + } + } + + return sum/count; +} + diff --git a/src/c/elementaryFunctions/nanmean/dnanmeancola.c b/src/c/elementaryFunctions/nanmean/dnanmeancola.c new file mode 100644 index 00000000..81ed5338 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/dnanmeancola.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" + +void dnanmeancola(double *in, int row, int col, double* out) +{ + double inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= dnanmeana( inter, col); + + } + + +} + diff --git a/src/c/elementaryFunctions/nanmean/dnanmeanrowa.c b/src/c/elementaryFunctions/nanmean/dnanmeanrowa.c new file mode 100644 index 00000000..1ac02f5f --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/dnanmeanrowa.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" + +void dnanmeanrowa(double *in, int row, int col, double* out) +{ + double inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= dnanmeana( inter, row); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmean/snanmeana.c b/src/c/elementaryFunctions/nanmean/snanmeana.c new file mode 100644 index 00000000..aecf6984 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/snanmeana.c @@ -0,0 +1,33 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" + +float snanmeana(float* in, int size) +{ + float count = 0, sum = 0; + + for(int i = 0; i<size; i++) + { + if(!(isnan(in[i]))) + { + count++; + sum += in[i]; + } + } + + return sum/count; +} + diff --git a/src/c/elementaryFunctions/nanmean/snanmeancola.c b/src/c/elementaryFunctions/nanmean/snanmeancola.c new file mode 100644 index 00000000..68df77b8 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/snanmeancola.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" + +void snanmeancola(float *in, int row, int col, float* out) +{ + float inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= snanmeana( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmean/snanmeanrowa.c b/src/c/elementaryFunctions/nanmean/snanmeanrowa.c new file mode 100644 index 00000000..1664aa4e --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/snanmeanrowa.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" + +void snanmeanrowa(float *in, int row, int col, float* out) +{ + float inter[row]; + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= snanmeana( inter, row); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmean/znanmeana.c b/src/c/elementaryFunctions/nanmean/znanmeana.c new file mode 100644 index 00000000..366657a5 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/znanmeana.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" +#include "doubleComplex.h" +#include "floatComplex.h" + + +doubleComplex znanmeana(doubleComplex* in, int size) +{ + doubleComplex sum = 0; + double count = 0; + + for(int i = 0; i<size; i++) + { + if(!(isnan(zreals(in[i]))) && !(isnan(zimags(in[i])))) + { + count++; + sum += in[i]; + } + } + + return sum/count; +} + diff --git a/src/c/elementaryFunctions/nanmean/znanmeancola.c b/src/c/elementaryFunctions/nanmean/znanmeancola.c new file mode 100644 index 00000000..28743e3f --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/znanmeancola.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +void znanmeancola(doubleComplex *in, int row, int col, doubleComplex* out) +{ + doubleComplex inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= znanmeana( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmean/znanmeanrowa.c b/src/c/elementaryFunctions/nanmean/znanmeanrowa.c new file mode 100644 index 00000000..8d80c779 --- /dev/null +++ b/src/c/elementaryFunctions/nanmean/znanmeanrowa.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmean.h" +#include "doubleComplex.h" +#include "floatComplex.h" + +void znanmeanrowa(doubleComplex *in, int row, int col, doubleComplex* out) +{ + doubleComplex inter[row]; + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= znanmeana( inter, row); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmin/dnanmina.c b/src/c/elementaryFunctions/nanmin/dnanmina.c new file mode 100644 index 00000000..f2bce003 --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanmina.c @@ -0,0 +1,53 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +double dnanmina(double* in, int row, int col, double* pos) +{ + double low = 0; + int ival = 0, nanflag = 1; + + for(int i = 0; i<row*col; i++) + { + if(!(isnan(in[i]))) + { + low = in[i]; + nanflag = 0; + break; + } + } + + for(int i = 0; i<row*col; i++) + { + if(!(isnan(in[i]))) + { + if(in[i]<low) + { + low = in[i]; + ival = i; + } + } + } + + pos[0] = ival % row + 1; + pos[1] = ival / row + 1; + + if (nanflag == 1) + return 0.0/0.0; + + return low; +} + diff --git a/src/c/elementaryFunctions/nanmin/dnanmincola.c b/src/c/elementaryFunctions/nanmin/dnanmincola.c new file mode 100644 index 00000000..35b94c08 --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanmincola.c @@ -0,0 +1,33 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +void dnanmincola(double *in, int row, int col, double *out, double *p) +{ + double inter[col]; + double position[col]; + + for(int i=0; i < row; i++) + { + for(int j=0; j < col; i++) + { + inter[j]= in[i+ (j*row)]; + } + + out[i]= dnanmina(inter, 1, col, position); + + } +} diff --git a/src/c/elementaryFunctions/nanmin/dnanmincolnpa.c b/src/c/elementaryFunctions/nanmin/dnanmincolnpa.c new file mode 100644 index 00000000..3d1623c2 --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanmincolnpa.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +void dnanmincolnpa(double *in, int row, int col, double* out) +{ + double inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= dnanminnpa( inter, 1, col); + + } + + +} + diff --git a/src/c/elementaryFunctions/nanmin/dnanminnpa.c b/src/c/elementaryFunctions/nanmin/dnanminnpa.c new file mode 100644 index 00000000..6456ebe9 --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanminnpa.c @@ -0,0 +1,51 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +double dnanminnpa(double* in, int row, int col) +{ + double low = 0; + int nanflag = 1; + + + for(int i = 0; i<row*col; i++) + { + if(!(isnan(in[i]))) + { + low = in[i]; + nanflag = 0; + break; + } + } + + for(int i = 0; i<row*col; i++) + { + if(!(isnan(in[i]))) + { + if(in[i]<low) + { + low = in[i]; + + } + } + } + + if (nanflag == 1) + return 0.0/0.0; + + return low; +} + diff --git a/src/c/elementaryFunctions/nanmin/dnanminnps.c b/src/c/elementaryFunctions/nanmin/dnanminnps.c new file mode 100644 index 00000000..9a33d2fe --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanminnps.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +double dnanminnps(double in) +{ + if(isnan(in)) + return 0; + + return in; +} + diff --git a/src/c/elementaryFunctions/nanmin/dnanminrowa.c b/src/c/elementaryFunctions/nanmin/dnanminrowa.c new file mode 100644 index 00000000..0909fc2c --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanminrowa.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +void dnanminrowa(double *in, int row, int col, double *out, double *p) +{ + double inter[row], *position; + + + + for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= dnanmina( inter, row, 1, position); + } + //p = position; + +} diff --git a/src/c/elementaryFunctions/nanmin/dnanminrownpa.c b/src/c/elementaryFunctions/nanmin/dnanminrownpa.c new file mode 100644 index 00000000..fc46a0a4 --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanminrownpa.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +void dnanminrownpa(double *in, int row, int col, double* out) +{ + double inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= dnanminnpa( inter, row, 1); + + } + + +} diff --git a/src/c/elementaryFunctions/nanmin/dnanmins.c b/src/c/elementaryFunctions/nanmin/dnanmins.c new file mode 100644 index 00000000..86764a2a --- /dev/null +++ b/src/c/elementaryFunctions/nanmin/dnanmins.c @@ -0,0 +1,32 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanmin.h" + +double dnanmins(double in, double* pos) +{ + pos[0] = 1; + pos[1] = 1; + + if(isnan(in)) + { + pos[0] = 0; + pos[1] = 0; + return 0; + } + + return in; +} + diff --git a/src/c/elementaryFunctions/nansum/dnansuma.c b/src/c/elementaryFunctions/nansum/dnansuma.c new file mode 100644 index 00000000..adc4a02b --- /dev/null +++ b/src/c/elementaryFunctions/nansum/dnansuma.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +double dnansuma(double *in, int size) +{ + double fin=0; + + + for (int i = 0; i < size; ++i) + + { + if(!(isnan(in[i]))) + { + fin= dadds(fin, in[i]); + + } + + + } + + return fin; +} diff --git a/src/c/elementaryFunctions/nansum/dnansumcola.c b/src/c/elementaryFunctions/nansum/dnansumcola.c new file mode 100644 index 00000000..eb406387 --- /dev/null +++ b/src/c/elementaryFunctions/nansum/dnansumcola.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" + +void dnansumcola(double *in, int row, int col, double* out) +{ + double inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= dnansuma( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nansum/dnansumrowa.c b/src/c/elementaryFunctions/nansum/dnansumrowa.c new file mode 100644 index 00000000..e8a7cfb3 --- /dev/null +++ b/src/c/elementaryFunctions/nansum/dnansumrowa.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" + +void dnansumrowa(double *in, int row, int col, double* out) +{ + double inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= dnansuma( inter, row); + + } + + +} diff --git a/src/c/elementaryFunctions/nansum/snansuma.c b/src/c/elementaryFunctions/nansum/snansuma.c new file mode 100644 index 00000000..8c1cebbb --- /dev/null +++ b/src/c/elementaryFunctions/nansum/snansuma.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" +#include "addition.h" + +float snansuma(float *in, int size) +{ + float fin=0; + + + for (int i = 0; i < size; ++i) + + { + if(!(isnan(in[i]))) + { + fin= sadds(fin, in[i]); + + } + + + } + + return fin; +} diff --git a/src/c/elementaryFunctions/nansum/snansumcola.c b/src/c/elementaryFunctions/nansum/snansumcola.c new file mode 100644 index 00000000..d83e6f0d --- /dev/null +++ b/src/c/elementaryFunctions/nansum/snansumcola.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" + +void snansumcola(float *in, int row, int col, float* out) +{ + float inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= snansuma( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nansum/snansumrowa.c b/src/c/elementaryFunctions/nansum/snansumrowa.c new file mode 100644 index 00000000..5442694d --- /dev/null +++ b/src/c/elementaryFunctions/nansum/snansumrowa.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" + +void snansumrowa(float *in, int row, int col, float* out) +{ + float inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= snansuma( inter, row); + + } + + +} diff --git a/src/c/elementaryFunctions/nansum/znansuma.c b/src/c/elementaryFunctions/nansum/znansuma.c new file mode 100644 index 00000000..cb839f02 --- /dev/null +++ b/src/c/elementaryFunctions/nansum/znansuma.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "doubleComplex.h" +#include "addition.h" + +doubleComplex znansuma(doubleComplex *in, int size) +{ + doubleComplex fin=0; + + + for (int i = 0; i < size; ++i) + + { + if(!(isnan(zreals(in[i]))) && !(isnan(zimags(in[i])))) + { + fin= zadds(fin, in[i]); + + } + + + } + + return fin; +} diff --git a/src/c/elementaryFunctions/nansum/znansumcola.c b/src/c/elementaryFunctions/nansum/znansumcola.c new file mode 100644 index 00000000..2543c49e --- /dev/null +++ b/src/c/elementaryFunctions/nansum/znansumcola.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" +#include "doubleComplex.h" + +void znansumcola(doubleComplex *in, int row, int col, doubleComplex * out) +{ + doubleComplex inter[col]; + + +for(int i=0; i< row; i++) + { + for(int j=0 ; j< col; j++) + { + inter[j]= in[i+ (j*row)]; + + } + out[i]= znansuma( inter, col); + + } + + +} diff --git a/src/c/elementaryFunctions/nansum/znansumrowa.c b/src/c/elementaryFunctions/nansum/znansumrowa.c new file mode 100644 index 00000000..39535c9f --- /dev/null +++ b/src/c/elementaryFunctions/nansum/znansumrowa.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "nansum.h" +#include "types.h" +#include "uint16.h" +#include "doubleComplex.h" + +void znansumrowa(doubleComplex *in, int row, int col, doubleComplex* out) +{ + doubleComplex inter[row]; + + + +for(int i=0; i< col; i++) + { + for(int j=0 ; j< row; j++) + { + inter[j]= in[j+ (i*row)]; + + } + out[i]= znansuma( inter, row); + + } + + +} diff --git a/src/c/elementaryFunctions/nextpow2/dnextpow2a.c b/src/c/elementaryFunctions/nextpow2/dnextpow2a.c new file mode 100644 index 00000000..46f7eb80 --- /dev/null +++ b/src/c/elementaryFunctions/nextpow2/dnextpow2a.c @@ -0,0 +1,30 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Ukasha Noor + Email: toolbox@scilab.in +*/ + +#include "nextpow2.h" +#include <math.h> + +void dnextpow2a(double *in,int size,double *out) +{ + int i,j,s; + double k; + i=2; + for(s=0;s<size;s++) + { + j=-1; + do{ + j++; + k=pow(i,j); + }while(in[s]>k); + out[s]=j; + } +} diff --git a/src/c/elementaryFunctions/nthroot/dnthroot1a.c b/src/c/elementaryFunctions/nthroot/dnthroot1a.c new file mode 100644 index 00000000..7c65169a --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/dnthroot1a.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" +void dnthroot1a(double* inp1, int irows, int icols, double inp2, double* out) +{ + + + for(int i=0; i< irows*icols; i++) + { + out[i]= dnthroots(inp1[i], inp2); + + } + +} diff --git a/src/c/elementaryFunctions/nthroot/dnthroota.c b/src/c/elementaryFunctions/nthroot/dnthroota.c new file mode 100644 index 00000000..6f33b21e --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/dnthroota.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" +void dnthroota(double* inp1, int irows, int icols, double* inp2, int crows, int ccols, double* out) +{ + + if(irows==crows && icols==ccols) + { + for(int i=0; i< irows*icols; i++) + { + + out[i]= dnthroots(inp1[i], inp2[i]); + + } + + + + } + + + +} diff --git a/src/c/elementaryFunctions/nthroot/dnthroots.c b/src/c/elementaryFunctions/nthroot/dnthroots.c new file mode 100644 index 00000000..99beaa13 --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/dnthroots.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" + +double dnthroots(double inp1, double inp2) +{ + + return pow(inp1, (1/inp2)); +} diff --git a/src/c/elementaryFunctions/nthroot/snthroot1a.c b/src/c/elementaryFunctions/nthroot/snthroot1a.c new file mode 100644 index 00000000..60fae3d6 --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/snthroot1a.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" +void snthroot1a(float* inp1, int irows, int icols, float inp2, double* out) +{ + + + for(int i=0; i< irows*icols; i++) + { + out[i]= dnthroots(inp1[i], inp2); + + } + +} diff --git a/src/c/elementaryFunctions/nthroot/snthroota.c b/src/c/elementaryFunctions/nthroot/snthroota.c new file mode 100644 index 00000000..4a04c1d6 --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/snthroota.c @@ -0,0 +1,36 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" +void snthroota(float* inp1, int irows, int icols, float* inp2, int crows, int ccols, double* out) +{ + + if(irows==crows && icols==ccols) + { + for(int i=0; i< irows*icols; i++) + { + + out[i]= dnthroots(inp1[i], inp2[i]); + + } + + + + } + + + +} diff --git a/src/c/elementaryFunctions/nthroot/snthroots.c b/src/c/elementaryFunctions/nthroot/snthroots.c new file mode 100644 index 00000000..ad83dacc --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/snthroots.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" + +double snthroots(float inp1, float inp2) +{ + + return pow(inp1, (1/inp2)); +} diff --git a/src/c/elementaryFunctions/nthroot/u16nthroot1a.c b/src/c/elementaryFunctions/nthroot/u16nthroot1a.c new file mode 100644 index 00000000..4cb654c9 --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/u16nthroot1a.c @@ -0,0 +1,29 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" +#include "uint16.h" +void snthroot1a(uint16* inp1, int irows, int icols, uint16 inp2, double* out) +{ + + + for(int i=0; i< irows*icols; i++) + { + out[i]= dnthroots(inp1[i], inp2); + + } + +} diff --git a/src/c/elementaryFunctions/nthroot/u16nthroota.c b/src/c/elementaryFunctions/nthroot/u16nthroota.c new file mode 100644 index 00000000..5d178a17 --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/u16nthroota.c @@ -0,0 +1,37 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" +#include "uint16.h" +void dnthroota(uint16* inp1, int irows, int icols, uint16* inp2, int crows, int ccols, double* out) +{ + + if(irows==crows && icols==ccols) + { + for(int i=0; i< irows*icols; i++) + { + + out[i]= dnthroots(inp1[i], inp2[i]); + + } + + + + } + + + +} diff --git a/src/c/elementaryFunctions/nthroot/u16nthroots.c b/src/c/elementaryFunctions/nthroot/u16nthroots.c new file mode 100644 index 00000000..618d29f6 --- /dev/null +++ b/src/c/elementaryFunctions/nthroot/u16nthroots.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nthroot.h" +#include "types.h" +#include "uint16.h" + +double dnthroots(uint16 inp1, uint16 inp2) +{ + + return pow(inp1, (1/inp2)); +} diff --git a/src/c/elementaryFunctions/pmodulo/dpmoduloa.c b/src/c/elementaryFunctions/pmodulo/dpmoduloa.c new file mode 100644 index 00000000..0817987a --- /dev/null +++ b/src/c/elementaryFunctions/pmodulo/dpmoduloa.c @@ -0,0 +1,32 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "pmodulo.h" +#include "types.h" +void dpmoduloa(double* inp1, int size, double* inp2, double* out) +{ + + + for(int i=0; i< size; i++) + { + + out[i]= dpmodulos(inp1[i], inp2[i]); + + } + + + + +} diff --git a/src/c/elementaryFunctions/pmodulo/dpmodulos.c b/src/c/elementaryFunctions/pmodulo/dpmodulos.c new file mode 100644 index 00000000..61441777 --- /dev/null +++ b/src/c/elementaryFunctions/pmodulo/dpmodulos.c @@ -0,0 +1,54 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "pmodulo.h" +#include "types.h" + +double dpmodulos(double inp1, double inp2) +{ + if( inp1>0 && inp2>0) + + { + return fmod(inp1,inp2); + + } + + + if( inp1>0 && inp2<0) + + { + + return fmod(inp1,inp2); + + } + + + if(inp1<0 && inp2>0) + + { + + return ((fmod(inp1,inp2))+(inp2)); + + + } + + if(inp1<0 && inp2<0) + { + + return ((fmod(inp1,inp2))-(inp2)); + + } + +} diff --git a/src/c/elementaryFunctions/pmodulo/i16pmoduloa.c b/src/c/elementaryFunctions/pmodulo/i16pmoduloa.c new file mode 100644 index 00000000..bb76d7ff --- /dev/null +++ b/src/c/elementaryFunctions/pmodulo/i16pmoduloa.c @@ -0,0 +1,33 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "int16.h" +#include "pmodulo.h" +#include "types.h" +void i16pmoduloa(int16* inp1, int size, int16* inp2, int16* out) +{ + + + for(int i=0; i< size; i++) + { + + out[i]= i16pmodulos(inp1[i], inp2[i]); + + } + + + + +} diff --git a/src/c/elementaryFunctions/pmodulo/i16pmodulos.c b/src/c/elementaryFunctions/pmodulo/i16pmodulos.c new file mode 100644 index 00000000..f7f86c5b --- /dev/null +++ b/src/c/elementaryFunctions/pmodulo/i16pmodulos.c @@ -0,0 +1,55 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "int16.h" +#include "pmodulo.h" +#include "types.h" + +int16 i16pmodulos(int16 inp1, int16 inp2) +{ + if( inp1>0 && inp2>0) + + { + return inp1%inp2; + + } + + + if( inp1>0 && inp2<0) + + { + + return inp1%inp2; + + } + + + if(inp1<0 && inp2>0) + + { + + return ((inp1%inp2)+(inp2)); + + + } + + if(inp1<0 && inp2<0) + { + + return ((inp1%inp2)-(inp2)); + + } + +} diff --git a/src/c/elementaryFunctions/pmodulo/spmoduloa.c b/src/c/elementaryFunctions/pmodulo/spmoduloa.c new file mode 100644 index 00000000..87b2a2fb --- /dev/null +++ b/src/c/elementaryFunctions/pmodulo/spmoduloa.c @@ -0,0 +1,32 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "pmodulo.h" +#include "types.h" +void spmoduloa(float* inp1, int size, float* inp2, float* out) +{ + + + for(int i=0; i< size; i++) + { + + out[i]= spmodulos(inp1[i], inp2[i]); + + } + + + + +} diff --git a/src/c/elementaryFunctions/pmodulo/spmodulos.c b/src/c/elementaryFunctions/pmodulo/spmodulos.c new file mode 100644 index 00000000..9ab6bc49 --- /dev/null +++ b/src/c/elementaryFunctions/pmodulo/spmodulos.c @@ -0,0 +1,54 @@ +/* Copyright (C) 2016 - 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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "pmodulo.h" +#include "types.h" + +float spmodulos(float inp1, float inp2) +{ + if( inp1>0 && inp2>0) + + { + return fmod(inp1,inp2); + + } + + + if( inp1>0 && inp2<0) + + { + + return fmod(inp1,inp2); + + } + + + if(inp1<0 && inp2>0) + + { + + return ((fmod(inp1,inp2))+(inp2)); + + + } + + if(inp1<0 && inp2<0) + { + + return ((fmod(inp1,inp2))-(inp2)); + + } + +} diff --git a/src/c/elementaryFunctions/pow/dpows.c b/src/c/elementaryFunctions/pow/dpows.c index c291bf71..cce89196 100644 --- a/src/c/elementaryFunctions/pow/dpows.c +++ b/src/c/elementaryFunctions/pow/dpows.c @@ -13,6 +13,7 @@ #include <math.h> #include "pow.h" -double dpows(double x, double p) { +double dpows(double x, double p) +{ return pow(x, p); } diff --git a/src/c/elementaryFunctions/pow/i16powa.c b/src/c/elementaryFunctions/pow/i16powa.c new file mode 100644 index 00000000..eecce15f --- /dev/null +++ b/src/c/elementaryFunctions/pow/i16powa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "pow.h" + +void i16powa(int16* x, int size, int16* power, int16 *out) { + /* + Computes Scilab x.^power + Computes power element by element + x and power must have same size + */ + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = i16pows(x[i], power[i]); + } +} diff --git a/src/c/elementaryFunctions/pow/i16pows.c b/src/c/elementaryFunctions/pow/i16pows.c new file mode 100644 index 00000000..63f92d92 --- /dev/null +++ b/src/c/elementaryFunctions/pow/i16pows.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "pow.h" + +int16 i16pows(int16 x, int16 p) { + return pow(x, p); +} diff --git a/src/c/elementaryFunctions/pow/i8powa.c b/src/c/elementaryFunctions/pow/i8powa.c new file mode 100644 index 00000000..bf948223 --- /dev/null +++ b/src/c/elementaryFunctions/pow/i8powa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "pow.h" + +void i8powa(int8* x, int size, int8* power, int8 *out) { + /* + Computes Scilab x.^power + Computes power element by element + x and power must have same size + */ + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = i8pows(x[i], power[i]); + } +} diff --git a/src/c/elementaryFunctions/pow/i8pows.c b/src/c/elementaryFunctions/pow/i8pows.c new file mode 100644 index 00000000..125ef8c2 --- /dev/null +++ b/src/c/elementaryFunctions/pow/i8pows.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "pow.h" + +int8 i8pows(int8 x, int8 p) { + return pow(x, p); +} diff --git a/src/c/elementaryFunctions/pow/u16powa.c b/src/c/elementaryFunctions/pow/u16powa.c new file mode 100644 index 00000000..df34972d --- /dev/null +++ b/src/c/elementaryFunctions/pow/u16powa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "pow.h" + +void u16powa(uint16* x, int size, uint16* power, uint16 *out) { + /* + Computes Scilab x.^power + Computes power element by element + x and power must have same size + */ + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = u16pows(x[i], power[i]); + } +} diff --git a/src/c/elementaryFunctions/pow/u16pows.c b/src/c/elementaryFunctions/pow/u16pows.c new file mode 100644 index 00000000..49dd654c --- /dev/null +++ b/src/c/elementaryFunctions/pow/u16pows.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "pow.h" + +uint16 u16pows(uint16 x, uint16 p) { + return pow(x, p); +} diff --git a/src/c/elementaryFunctions/pow/u8powa.c b/src/c/elementaryFunctions/pow/u8powa.c new file mode 100644 index 00000000..90bcc642 --- /dev/null +++ b/src/c/elementaryFunctions/pow/u8powa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "pow.h" + +void u8powa(uint8* x, int size, uint8* power, uint8 *out) { + /* + Computes Scilab x.^power + Computes power element by element + x and power must have same size + */ + int i = 0; + for (i = 0; i < size; ++i) { + out[i] = u8pows(x[i], power[i]); + } +} diff --git a/src/c/elementaryFunctions/pow/u8pows.c b/src/c/elementaryFunctions/pow/u8pows.c new file mode 100644 index 00000000..cfcd4c69 --- /dev/null +++ b/src/c/elementaryFunctions/pow/u8pows.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "pow.h" + +uint8 u8pows(uint8 x, uint8 p) +{ + return pow(x, p); +} diff --git a/src/c/elementaryFunctions/pow/zpows.c b/src/c/elementaryFunctions/pow/zpows.c index 1a7059b2..4fe771ab 100644 --- a/src/c/elementaryFunctions/pow/zpows.c +++ b/src/c/elementaryFunctions/pow/zpows.c @@ -14,7 +14,7 @@ #include "log.h" #include "exp.h" -doubleComplex zpows(doubleComplex z, doubleComplex power) { +doubleComplex zpows(doubleComplex z, doubleComplex power) { /*Cas z=0 */ if ( (zreals(z)==0) && (zimags(z)==0) ){ /* Cas 0^0 */ diff --git a/src/c/elementaryFunctions/radix_conversions/base2dec/dbase2decs.c b/src/c/elementaryFunctions/radix_conversions/base2dec/dbase2decs.c new file mode 100644 index 00000000..a92fc76f --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/base2dec/dbase2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "base2dec.h" +#include <stdio.h> +#include <math.h> + +double dbase2decs(double in,int base) +{ + int n=0,rem=0, base1=1; + double out=0.0; + n=(int)in; + while (n!=0) + { + rem = n%10; + out = out + (rem * base1); + n = n / 10 ; + base1 = base1 * base; + } + return out; +} + + diff --git a/src/c/elementaryFunctions/radix_conversions/base2dec/gbase2decs.c b/src/c/elementaryFunctions/radix_conversions/base2dec/gbase2decs.c new file mode 100644 index 00000000..811a4116 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/base2dec/gbase2decs.c @@ -0,0 +1,166 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <stdio.h> +#include <math.h> +#include "base2dec.h" +#include <string.h> + +double gbase2decs(char* in,int size,int base) +{ + size-=2; + int i=0,val=0,j=0; + double o=0.0; + for(i=0; in[i]!='\0'; i++) + { + //printf("%c \n",in[i]); + switch(in[i]) + { + case '0': + val = 0; + break; + case '1': + val = 1; + break; + case '2': + val = 2; + break; + case '3': + val = 3; + break; + case '4': + val = 4; + break; + case '5': + val = 5; + break; + case '6': + val = 6; + break; + case '7': + val = 7; + break; + case '8': + val = 8; + break; + case '9': + val = 9; + break; + case 'a': + case 'A': + val = 10; + break; + case 'b': + case 'B': + val = 11; + break; + case 'c': + case 'C': + val = 12; + break; + case 'd': + case 'D': + val = 13; + break; + case 'e': + case 'E': + val = 14; + break; + case 'f': + case 'F': + val = 15; + break; + case 'g': + case 'G': + val = 16; + break; + case 'h': + case 'H': + val = 17; + break; + case 'i': + case 'I': + val = 18; + break; + case 'j': + case 'J': + val = 19; + break; + case 'k': + case 'K': + val = 20; + break; + case 'l': + case 'L': + val = 21; + break; + case 'm': + case 'M': + val = 22; + break; + case 'n': + case 'N': + val = 23; + break; + case 'o': + case 'O': + val = 24; + break; + case 'p': + case 'P': + val = 25; + break; + case 'q': + case 'Q': + val = 26; + break; + case 'r': + case 'R': + val = 27; + break; + case 's': + case 'S': + val = 28; + break; + case 't': + case 'T': + val = 29; + break; + case 'u': + case 'U': + val = 30; + break; + case 'v': + case 'V': + val = 31; + break; + case 'w': + case 'W': + val = 32; + break; + case 'x': + case 'X': + val = 33; + break; + case 'y': + case 'Y': + val = 34; + break; + case 'z': + case 'Z': + val = 35; + break; + } + o = o + (val * (int)pow((double)base, size)); + size--; + } + return o; + } diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/dbin2deca.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/dbin2deca.c new file mode 100644 index 00000000..96fccc5f --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/dbin2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "bin2dec.h" + +void dbin2deca(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=dbin2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/dbin2decs.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/dbin2decs.c new file mode 100644 index 00000000..ff363c37 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/dbin2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "bin2dec.h" +#include <stdlib.h> +#include <stdio.h> +long double dbin2decs(long double in) +{ + int base=1, rem=0; + long double out=0.0; + int in1; + in1=(int)in; + while (in1 != 0) + { + rem = in1 % 10; + out = out + (rem * base); + in1 = in1 / 10 ; + base = base * 2; + } + return out; + // printf("Decimal equivalent is: %f \n",out); +} + diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/i16bin2deca.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/i16bin2deca.c new file mode 100644 index 00000000..8511df92 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/i16bin2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "bin2dec.h" + +void i16bin2deca(int16* in,int size,int16* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=i16bin2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/i16bin2decs.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/i16bin2decs.c new file mode 100644 index 00000000..9aa3be9b --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/i16bin2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "bin2dec.h" +#include <stdlib.h> +#include <stdio.h> +int16 i16bin2decs(int16 in) +{ + int base=1, rem=0; + int16 out=0; + int in1; + in1=(int)in; + while (in1 != 0) + { + rem = in1 % 10; + out = out + (rem * base); + in1 = in1 / 10 ; + base = base * 2; + } + return out; + // printf("Decimal equivalent is: %f \n",out); +} + diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/i8bin2deca.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/i8bin2deca.c new file mode 100644 index 00000000..c923ffb0 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/i8bin2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "bin2dec.h" + +void i8bin2deca(int8* in,int size,int8* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=i8bin2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/i8bin2decs.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/i8bin2decs.c new file mode 100644 index 00000000..abd3b894 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/i8bin2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "bin2dec.h" +#include <stdlib.h> +#include <stdio.h> +int8 i8bin2decs(int8 in) +{ + int base=1, rem=0; + int8 out=0; + int in1; + in1=(int)in; + while (in1 != 0) + { + rem = in1 % 10; + out = out + (rem * base); + in1 = in1 / 10 ; + base = base * 2; + } + return out; + // printf("Decimal equivalent is: %f \n",out); +} + diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/u16bin2deca.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/u16bin2deca.c new file mode 100644 index 00000000..b6b75d71 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/u16bin2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "bin2dec.h" + +void u16bin2deca(uint16* in,int size,uint16* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=u16bin2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/u16bin2decs.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/u16bin2decs.c new file mode 100644 index 00000000..cb45a201 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/u16bin2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "bin2dec.h" +#include <stdlib.h> +#include <stdio.h> +uint16 u16bin2decs(uint16 in) +{ + int base=1, rem=0; + uint16 out=0; + int in1; + in1=(int)in; + while (in1 != 0) + { + rem = in1 % 10; + out = out + (rem * base); + in1 = in1 / 10 ; + base = base * 2; + } + return out; + // printf("Decimal equivalent is: %f \n",out); +} + diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/u8bin2deca.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/u8bin2deca.c new file mode 100644 index 00000000..10461cad --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/u8bin2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "bin2dec.h" + +void u8bin2deca(uint8* in,int size,uint8* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=u8bin2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/bin2dec/u8bin2decs.c b/src/c/elementaryFunctions/radix_conversions/bin2dec/u8bin2decs.c new file mode 100644 index 00000000..0a0f5c40 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/bin2dec/u8bin2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "bin2dec.h" +#include <stdlib.h> +#include <stdio.h> +uint8 u8bin2decs(uint8 in) +{ + int base=1, rem=0; + uint8 out=0; + int in1; + in1=(int)in; + while (in1 != 0) + { + rem = in1 % 10; + out = out + (rem * base); + in1 = in1 / 10 ; + base = base * 2; + } + return out; + // printf("Decimal equivalent is: %f \n",out); +} + diff --git a/src/c/elementaryFunctions/radix_conversions/dec2base/ddec2basea.c b/src/c/elementaryFunctions/radix_conversions/dec2base/ddec2basea.c new file mode 100644 index 00000000..4de34f00 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2base/ddec2basea.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2base.h" + +void ddec2basea(double* in,int size,int base,int n,char* out) +{ + int i=0; + for(i=0;i<size;i++) + { + ddec2bases(in[i],base,n,&(out[i*3])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2base/ddec2bases.c b/src/c/elementaryFunctions/radix_conversions/dec2base/ddec2bases.c new file mode 100644 index 00000000..dae7bdcc --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2base/ddec2bases.c @@ -0,0 +1,71 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2base.h" +#include <stdio.h> + +void ddec2bases(double in,int base,int n,char* out) +{ + int quot; + //printf("%d\n",n); + int i=0,j=0,k=0,tmp,temp; + quot=(int)in; + //printf("%d",quot); + while(quot!=0) + { + temp=quot%base; + //printf("%d\n",temp); + if(temp < 10) + { temp = temp + 48; + //printf("%d\n",temp); + } + else + { + temp = temp + 55; + //printf("%d\n",temp); + } + out[i++]=temp; + //printf("%c\n",out[i-1]); + quot = quot/base; + } +//printf("%d\n",i); + if(n>i-1) + { + for(j=i;j<=n;j++) + { out[j]='0'; + //printf(" %c %c \n",out[j],out[i]); + } + } + if(n==0) + { + j=i-1; + n=i; + } + else + j=n-1; + + out[n]='\0'; + //for(k=0;k<=n;k++) + //printf("%c\n",out[k]); + i=0; + while(i<j) + { + tmp=out[i]; + //printf("%c\n",out[i]); + out[i]=out[j]; + out[j]=tmp; + //printf("%c\n",out[j]); + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2base/sdec2basea.c b/src/c/elementaryFunctions/radix_conversions/dec2base/sdec2basea.c new file mode 100644 index 00000000..dc4d8590 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2base/sdec2basea.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2base.h" + +void sdec2basea(float* in,int size,int base,int n,char* out) +{ + int i=0; + for(i=0;i<size;i++) + { + sdec2bases(in[i],base,n,&(out[i*3])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2base/sdec2bases.c b/src/c/elementaryFunctions/radix_conversions/dec2base/sdec2bases.c new file mode 100644 index 00000000..a627c052 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2base/sdec2bases.c @@ -0,0 +1,45 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2base.h" +#include <stdio.h> + +void sdec2bases(float in,int base,int n,char* out) +{ + int quot; + int i=0,j=0,k=0,tmp,temp; + quot=(int)in; + while(quot!=0) + { + temp=quot%base; + if(temp < 10) + temp = temp + 48; + else + temp = temp + 55; + out[i++]=temp; + quot = quot/base; + } + out[i]='\0'; + j=i-1; + i=0; + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } + + +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/ddec2bina.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/ddec2bina.c new file mode 100644 index 00000000..c69b7823 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/ddec2bina.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2bin.h" + +void ddec2bina(double* in,int size,int n,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + ddec2bins(in[i],n,&(out[i*15])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/ddec2bins.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/ddec2bins.c new file mode 100644 index 00000000..f5db16c8 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/ddec2bins.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "dec2bin.h" +#include <stdio.h> +void ddec2bins(double in,int n,double* out) +{ + int quotient,i=0,j=0,tmp=0; + quotient=(int)in; + for(i=0;i<n;i++) + { + out[i]=0.0; + } + i=0; + while(quotient!=0) + { + out[i++]= quotient%2; + quotient=quotient/2; + } + if(n>i-1) + { + for(j=i;j<=n;j++) + out[j]=0.0; + } + if(n==0) + j=i-1; + else + j=n-1; + + i=0; + + while(i<j) + { + tmp=out[i]; + //printf("%f",tmp); + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/i16dec2bina.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/i16dec2bina.c new file mode 100644 index 00000000..93d1fdda --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/i16dec2bina.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2bin.h" + +void i16dec2bina(int16* in,int size,int n,int16* out) +{ + int i=0; + for(i=0;i<size;i++) + { + i16dec2bins(in[i],n,&(out[i*15])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/i16dec2bins.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/i16dec2bins.c new file mode 100644 index 00000000..5df0fe8d --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/i16dec2bins.c @@ -0,0 +1,43 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "dec2bin.h" +#include <stdio.h> +void i16dec2bins(int16 in,int n,int16* out) +{ + int quotient,i=0,j=0,tmp=0; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%2; + quotient=quotient/2; + } + if(n>i-1) + { + for(j=i;j<=n;j++) + out[j]=0.0; + } + if(n==0) + j=i-1; + else + j=n-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/i8dec2bina.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/i8dec2bina.c new file mode 100644 index 00000000..90062f9c --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/i8dec2bina.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2bin.h" + +void i8dec2bina(int8* in,int size,int n,int8* out) +{ + int i=0; + for(i=0;i<size;i++) + { + i8dec2bins(in[i],n,&(out[i*15])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/i8dec2bins.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/i8dec2bins.c new file mode 100644 index 00000000..ea689857 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/i8dec2bins.c @@ -0,0 +1,43 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "dec2bin.h" +#include <stdio.h> +void i8dec2bins(int8 in,int n,int8* out) +{ + int quotient,i=0,j=0,tmp=0; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%2; + quotient=quotient/2; + } + if(n>i-1) + { + for(j=i;j<=n;j++) + out[j]=0.0; + } + if(n==0) + j=i-1; + else + j=n-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/u16dec2bina.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/u16dec2bina.c new file mode 100644 index 00000000..165485e0 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/u16dec2bina.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2bin.h" + +void u16dec2bina(uint16* in,int size,int n,uint16* out) +{ + int i=0; + for(i=0;i<size;i++) + { + u16dec2bins(in[i],n,&(out[i*15])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/u16dec2bins.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/u16dec2bins.c new file mode 100644 index 00000000..ea998897 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/u16dec2bins.c @@ -0,0 +1,43 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "dec2bin.h" +#include <stdio.h> +void u16dec2bins(uint16 in,int n,uint16* out) +{ + int quotient,i=0,j=0,tmp=0; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%2; + quotient=quotient/2; + } + if(n>i-1) + { + for(j=i;j<=n;j++) + out[j]=0.0; + } + if(n==0) + j=i-1; + else + j=n-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/u8dec2bina.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/u8dec2bina.c new file mode 100644 index 00000000..4ebdc634 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/u8dec2bina.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2bin.h" + +void u8dec2bina(uint8* in,int size,int n,uint8* out) +{ + int i=0; + for(i=0;i<size;i++) + { + u8dec2bins(in[i],n,&(out[i*15])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2bin/u8dec2bins.c b/src/c/elementaryFunctions/radix_conversions/dec2bin/u8dec2bins.c new file mode 100644 index 00000000..af56d92f --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2bin/u8dec2bins.c @@ -0,0 +1,43 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "dec2bin.h" +#include <stdio.h> +void u8dec2bins(uint8 in,int n,uint8* out) +{ + int quotient,i=0,j=0,tmp=0; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%2; + quotient=quotient/2; + } + if(n>i-1) + { + for(j=i;j<=n;j++) + out[j]=0.0; + } + if(n==0) + j=i-1; + else + j=n-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/ddec2hexa.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/ddec2hexa.c new file mode 100644 index 00000000..f2fda27a --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/ddec2hexa.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2hex.h" + +void ddec2hexa(double* in,int size,char* out) +{ + int i=0; + for(i=0;i<size;i++) + { + ddec2hexs(in[i],&(out[i*3])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/ddec2hexs.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/ddec2hexs.c new file mode 100644 index 00000000..bcbb2667 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/ddec2hexs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2hex.h" +#include <stdio.h> + +void ddec2hexs(double in,char* out) +{ + int quot; + int i=0,j=0,k=0,tmp,temp; + quot=(int)in; + while(quot!=0) + { + temp=quot%16; + //To convert integer into character + if(temp < 10) + temp = temp + 48; + else + temp = temp + 55; + + out[i++]=temp; + quot = quot/16; + //printf("%c ",out[i-1]); + } + out[i]='\0'; + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } + //out[i+1]=' '; + + +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/i16dec2hexa.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/i16dec2hexa.c new file mode 100644 index 00000000..e00eec42 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/i16dec2hexa.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2hex.h" + +void i16dec2hexa(int16* in,int size,char* out) +{ + int i=0; + for(i=0;i<size;i++) + { + i16dec2hexs(in[i],&(out[i*3])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/i16dec2hexs.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/i16dec2hexs.c new file mode 100644 index 00000000..f4a15ee2 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/i16dec2hexs.c @@ -0,0 +1,49 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2hex.h" +#include <stdio.h> + +void i16dec2hexs(int16 in,char* out) +{ + int quot; + int i=0,j=0,k=0,tmp,temp; + quot=(int)in; + while(quot!=0) + { + temp=quot%16; + //To convert integer into character + if(temp < 10) + temp = temp + 48; + else + temp = temp + 55; + + out[i++]=temp; + quot = quot/16; + //printf("%c ",out[i-1]); + } + out[i]='\0'; + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } + out[i+1]=' '; + +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/i8dec2hexa.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/i8dec2hexa.c new file mode 100644 index 00000000..be659d47 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/i8dec2hexa.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2hex.h" + +void i8dec2hexa(int8* in,int size,char* out) +{ + int i=0; + for(i=0;i<size;i++) + { + i8dec2hexs(in[i],&(out[i*3])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/i8dec2hexs.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/i8dec2hexs.c new file mode 100644 index 00000000..290335f9 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/i8dec2hexs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2hex.h" +#include <stdio.h> + +void i8dec2hexs(int8 in,char* out) +{ + int quot; + int i=0,j=0,k=0,tmp,temp; + quot=(int)in; + while(quot!=0) + { + temp=quot%16; + //To convert integer into character + if(temp < 10) + temp = temp + 48; + else + temp = temp + 55; + + out[i++]=temp; + quot = quot/16; + //printf("%c ",out[i-1]); + } + out[i]='\0'; + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } + out[i+1]=' '; + + +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/u16dec2hexa.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/u16dec2hexa.c new file mode 100644 index 00000000..abfe5aa1 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/u16dec2hexa.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2hex.h" + +void u16dec2hexa(uint16* in,int size,char* out) +{ + int i=0; + for(i=0;i<size;i++) + { + u16dec2hexs(in[i],&(out[i*3])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/u16dec2hexs.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/u16dec2hexs.c new file mode 100644 index 00000000..b7c3c98a --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/u16dec2hexs.c @@ -0,0 +1,49 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2hex.h" +#include <stdio.h> + +void u16dec2hexs(uint16 in,char* out) +{ + int quot; + int i=0,j=0,k=0,tmp,temp; + quot=(int)in; + while(quot!=0) + { + temp=quot%16; + //To convert integer into character + if(temp < 10) + temp = temp + 48; + else + temp = temp + 55; + + out[i++]=temp; + quot = quot/16; + //printf("%c ",out[i-1]); + } + out[i]='\0'; + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } + out[i+1]=' '; + +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/u8dec2hexa.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/u8dec2hexa.c new file mode 100644 index 00000000..8fe0526a --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/u8dec2hexa.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2hex.h" + +void u8dec2hexa(uint8* in,int size,char* out) +{ + int i=0; + for(i=0;i<size;i++) + { + u8dec2hexs(in[i],&(out[i*3])); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2hex/u8dec2hexs.c b/src/c/elementaryFunctions/radix_conversions/dec2hex/u8dec2hexs.c new file mode 100644 index 00000000..acf236e6 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2hex/u8dec2hexs.c @@ -0,0 +1,49 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2hex.h" +#include <stdio.h> + +void u8dec2hexs(uint8 in,char* out) +{ + int quot; + int i=0,j=0,k=0,tmp,temp; + quot=(int)in; + while(quot!=0) + { + temp=quot%16; + //To convert integer into character + if(temp < 10) + temp = temp + 48; + else + temp = temp + 55; + + out[i++]=temp; + quot = quot/16; + //printf("%c ",out[i-1]); + } + out[i]='\0'; + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } + out[i+1]=' '; + +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/ddec2octa.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/ddec2octa.c new file mode 100644 index 00000000..f6cbcfef --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/ddec2octa.c @@ -0,0 +1,20 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2oct.h" + +void ddec2octa(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { ddec2octs(in[i],&(out[i*15])); +} +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/ddec2octs.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/ddec2octs.c new file mode 100644 index 00000000..702f1862 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/ddec2octs.c @@ -0,0 +1,38 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2oct.h" +#include <stdio.h> + +void ddec2octs(double in,double* out) +{ + int i=0,j=0,tmp=0; + int quotient; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%8; + quotient=quotient/8; + } + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/i16dec2octa.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/i16dec2octa.c new file mode 100644 index 00000000..fec152c8 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/i16dec2octa.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2oct.h" + +void i16dec2octa(int16* in,int size,int16* out) +{ + int i=0; + for(i=0;i<size;i++) + { +i16dec2octs(in[i],&(out[i*15])); +} +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/i16dec2octs.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/i16dec2octs.c new file mode 100644 index 00000000..340958fa --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/i16dec2octs.c @@ -0,0 +1,38 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2oct.h" +#include <stdio.h> + +void i16dec2octs(int16 in,int16* out) +{ + int i=0,j=0,tmp=0; + int quotient; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%8; + quotient=quotient/8; + } + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/i8dec2octa.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/i8dec2octa.c new file mode 100644 index 00000000..0c96f01b --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/i8dec2octa.c @@ -0,0 +1,20 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2oct.h" + +void i8dec2octa(int8* in,int size,int8* out) +{ + int i=0; + for(i=0;i<size;i++) + { i8dec2octs(in[i],&(out[i*15])); +} +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/i8dec2octs.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/i8dec2octs.c new file mode 100644 index 00000000..0a35f94f --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/i8dec2octs.c @@ -0,0 +1,38 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2oct.h" +#include <stdio.h> + +void i8dec2octs(int8 in,int8* out) +{ + int i=0,j=0,tmp=0; + int quotient; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%8; + quotient=quotient/8; + } + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/u16dec2octa.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/u16dec2octa.c new file mode 100644 index 00000000..7a3e60e4 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/u16dec2octa.c @@ -0,0 +1,20 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2oct.h" + +void u16dec2octa(uint16* in,int size,uint16* out) +{ + int i=0; + for(i=0;i<size;i++) + { u16dec2octs(in[i],&(out[i*15])); +} +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/u16dec2octs.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/u16dec2octs.c new file mode 100644 index 00000000..99936b4b --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/u16dec2octs.c @@ -0,0 +1,38 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2oct.h" +#include <stdio.h> + +void u16dec2octs(uint16 in,uint16* out) +{ + int i=0,j=0,tmp=0; + int quotient; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%8; + quotient=quotient/8; + } + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/u8dec2octa.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/u8dec2octa.c new file mode 100644 index 00000000..1a4e0267 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/u8dec2octa.c @@ -0,0 +1,20 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "dec2oct.h" + +void u8dec2octa(uint8* in,int size,uint8* out) +{ + int i=0; + for(i=0;i<size;i++) + { u8dec2octs(in[i],&(out[i*15])); +} +} diff --git a/src/c/elementaryFunctions/radix_conversions/dec2oct/u8dec2octs.c b/src/c/elementaryFunctions/radix_conversions/dec2oct/u8dec2octs.c new file mode 100644 index 00000000..fbfc1048 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/dec2oct/u8dec2octs.c @@ -0,0 +1,38 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include <math.h> +#include "dec2oct.h" +#include <stdio.h> + +void u8dec2octs(uint8 in,uint8* out) +{ + int i=0,j=0,tmp=0; + int quotient; + quotient=(int)in; + while(quotient!=0) + { + out[i++]= quotient%8; + quotient=quotient/8; + } + j=i-1; + i=0; + + while(i<j) + { + tmp=out[i]; + out[i]=out[j]; + out[j]=tmp; + i++; + j--; + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/hex2dec/dhex2decs.c b/src/c/elementaryFunctions/radix_conversions/hex2dec/dhex2decs.c new file mode 100644 index 00000000..42975737 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/hex2dec/dhex2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "hex2dec.h" +#include <stdio.h> +#include <math.h> + +double dhex2decs(double in) +{ + int n=0,rem=0, base=1; + double out=0.0; + n=(int)in; + while (n!=0) + { + rem = n%10; + out = out + (rem * base); + n = n / 10 ; + base = base * 16; + } + return out; +} + + diff --git a/src/c/elementaryFunctions/radix_conversions/hex2dec/ghex2decs.c b/src/c/elementaryFunctions/radix_conversions/hex2dec/ghex2decs.c new file mode 100644 index 00000000..eb42a7a7 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/hex2dec/ghex2decs.c @@ -0,0 +1,87 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "hex2dec.h" +#include <stdio.h> +#include <math.h> + +double ghex2decs(char* in,int size) +{ + size-=2; + int i=0,val=0,j=0; + double o=0.0; + for(i=0; in[i]!='\0'; i++) + { +/* Finds the decimal equivalent of each hexadecimal digit +*/ + switch(in[i]) + { + case '0': + val = 0; + break; + case '1': + val = 1; + break; + case '2': + val = 2; + break; + case '3': + val = 3; + break; + case '4': + val = 4; + break; + case '5': + val = 5; + break; + case '6': + val = 6; + break; + case '7': + val = 7; + break; + case '8': + val = 8; + break; + case '9': + val = 9; + break; + case 'a': + case 'A': + val = 10; + break; + case 'b': + case 'B': + val = 11; + break; + case 'c': + case 'C': + val = 12; + break; + case 'd': + case 'D': + val = 13; + break; + case 'e': + case 'E': + val = 14; + break; + case 'f': + case 'F': + val = 15; + break; + } + o = o + (val * (int)pow((double)16, size)); + size--; + } + return o; + } diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/doct2deca.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/doct2deca.c new file mode 100644 index 00000000..e3619eb3 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/doct2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "oct2dec.h" + +void doct2deca(double* in,int size,double* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=doct2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/doct2decs.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/doct2decs.c new file mode 100644 index 00000000..b126c619 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/doct2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "oct2dec.h" +#include <stdio.h> +#include <math.h> + +double doct2decs(double in) +{ + int n=0,rem=0, base=1; + double out=0.0; + n=(int)in; + while (n!=0) + { + rem = n%10; + out = out + (rem * base); + n = n / 10 ; + base = base * 8; + } + return out; +} + + diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/i16oct2deca.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/i16oct2deca.c new file mode 100644 index 00000000..9db3e2e1 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/i16oct2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "oct2dec.h" + +void i16oct2deca(int16* in,int size,int16* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=i16oct2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/i16oct2decs.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/i16oct2decs.c new file mode 100644 index 00000000..928c3a2a --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/i16oct2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "oct2dec.h" +#include <stdio.h> +#include <math.h> + +int16 i16oct2decs(int16 in) /* Function to convert octal to decimal */ +{ + int n=0,rem=0, base=1; + int16 out=0; + n=(int)in; + while (n!=0) + { + rem = n%10; + out = out + (rem * base); + n = n / 10 ; + base = base * 8; + } + return out; +} + + diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/i8oct2deca.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/i8oct2deca.c new file mode 100644 index 00000000..de57a0ea --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/i8oct2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "oct2dec.h" + +void i8oct2deca(int8* in,int size,int8* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=i8oct2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/i8oct2decs.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/i8oct2decs.c new file mode 100644 index 00000000..b95a0426 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/i8oct2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "oct2dec.h" +#include <stdio.h> +#include <math.h> + +int8 i8oct2decs(int8 in) /* Function to convert octal to decimal */ +{ + int n=0,rem=0, base=1; + int8 out=0; + n=(int)in; + while (n!=0) + { + rem = n%10; + out = out + (rem * base); + n = n / 10 ; + base = base * 8; + } + return out; +} + + diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/u16oct2deca.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/u16oct2deca.c new file mode 100644 index 00000000..7778ee96 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/u16oct2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "oct2dec.h" + +void u16oct2deca(uint16* in,int size,uint16* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=u16oct2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/u16oct2decs.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/u16oct2decs.c new file mode 100644 index 00000000..4b30443e --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/u16oct2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "oct2dec.h" +#include <stdio.h> +#include <math.h> + +uint16 u16oct2decs(uint16 in) /* Function to convert octal to decimal */ +{ + int n=0,rem=0, base=1; + uint16 out=0; + n=(int)in; + while (n!=0) + { + rem = n%10; + out = out + (rem * base); + n = n / 10 ; + base = base * 8; + } + return out; +} + + diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/u8oct2deca.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/u8oct2deca.c new file mode 100644 index 00000000..d1880203 --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/u8oct2deca.c @@ -0,0 +1,21 @@ +/* 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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include "oct2dec.h" + +void u8oct2deca(uint8* in,int size,uint8* out) +{ + int i=0; + for(i=0;i<size;i++) + { + out[i]=u8oct2decs(in[i]); + } +} diff --git a/src/c/elementaryFunctions/radix_conversions/oct2dec/u8oct2decs.c b/src/c/elementaryFunctions/radix_conversions/oct2dec/u8oct2decs.c new file mode 100644 index 00000000..f804f7fd --- /dev/null +++ b/src/c/elementaryFunctions/radix_conversions/oct2dec/u8oct2decs.c @@ -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 + Organization: FOSSEE, IIT Bombay + Author: Shamik Guha + Email: toolbox@scilab.in +*/ +#include <string.h> +#include "oct2dec.h" +#include <stdio.h> +#include <math.h> + +uint8 u8oct2decs(uint8 in) /* Function to convert octal to decimal */ +{ + int n=0,rem=0, base=1; + uint8 out=0; + n=(int)in; + while (n!=0) + { + rem = n%10; + out = out + (rem * base); + n = n / 10 ; + base = base * 8; + } + return out; +} + + diff --git a/src/c/elementaryFunctions/round/i16rounda.c b/src/c/elementaryFunctions/round/i16rounda.c new file mode 100644 index 00000000..26ed262a --- /dev/null +++ b/src/c/elementaryFunctions/round/i16rounda.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +void i16rounda(int16* x, int size, int16* out) { + int i=0; + + for (i=0;i<size;i++) out[i]=i16rounds(x[i]); +} diff --git a/src/c/elementaryFunctions/round/i16rounds.c b/src/c/elementaryFunctions/round/i16rounds.c new file mode 100644 index 00000000..68bd7a4c --- /dev/null +++ b/src/c/elementaryFunctions/round/i16rounds.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +int16 i16rounds(int16 x) { + int result; + + if(x>=0) result = (int16)((float)x+0.5); + else result = (int16)((float)x-0.5); + + return (int16)result; +} diff --git a/src/c/elementaryFunctions/round/i8rounda.c b/src/c/elementaryFunctions/round/i8rounda.c new file mode 100644 index 00000000..bb0b0c90 --- /dev/null +++ b/src/c/elementaryFunctions/round/i8rounda.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +void i8rounda(int8* x, int size, int8* out) { + int i=0; + + for (i=0;i<size;i++) out[i]=i8rounds(x[i]); +} diff --git a/src/c/elementaryFunctions/round/i8rounds.c b/src/c/elementaryFunctions/round/i8rounds.c new file mode 100644 index 00000000..bb737241 --- /dev/null +++ b/src/c/elementaryFunctions/round/i8rounds.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +int8 i8rounds(int8 x) { + int result; + + if(x>=0) result = (int8)((float)x+0.5); + else result = (int8)((float)x-0.5); + + return (int8)result; +} diff --git a/src/c/elementaryFunctions/round/u16rounda.c b/src/c/elementaryFunctions/round/u16rounda.c new file mode 100644 index 00000000..1b0b1edc --- /dev/null +++ b/src/c/elementaryFunctions/round/u16rounda.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +void u16rounda(uint16* x, int size, uint16* out) { + int i=0; + + for (i=0;i<size;i++) out[i]=u16rounds(x[i]); +} diff --git a/src/c/elementaryFunctions/round/u16rounds.c b/src/c/elementaryFunctions/round/u16rounds.c new file mode 100644 index 00000000..f8a4ad49 --- /dev/null +++ b/src/c/elementaryFunctions/round/u16rounds.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +uint16 u16rounds(uint16 x) { + int result; + + if(x>=0) result = (uint16)((float)x+0.5); + else result = (uint16)((float)x-0.5); + + return (uint16)result; +} diff --git a/src/c/elementaryFunctions/round/u8rounda.c b/src/c/elementaryFunctions/round/u8rounda.c new file mode 100644 index 00000000..b58a6d20 --- /dev/null +++ b/src/c/elementaryFunctions/round/u8rounda.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +void u8rounda(uint8* x, int size, uint8* out) { + int i=0; + + for (i=0;i<size;i++) out[i]=u8rounds(x[i]); +} diff --git a/src/c/elementaryFunctions/round/u8rounds.c b/src/c/elementaryFunctions/round/u8rounds.c new file mode 100644 index 00000000..e27cc2ca --- /dev/null +++ b/src/c/elementaryFunctions/round/u8rounds.c @@ -0,0 +1,23 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "round.h" + +uint8 u8rounds(uint8 x) { + int result; + + if(x>=0) result = (uint8)((float)x+0.5); + else result = (uint8)((float)x-0.5); + + return (uint8)result; +} diff --git a/src/c/elementaryFunctions/sin/i16sina.c b/src/c/elementaryFunctions/sin/i16sina.c new file mode 100644 index 00000000..4e9a3b06 --- /dev/null +++ b/src/c/elementaryFunctions/sin/i16sina.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sin.h" + +void i16sina(int16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i16sins(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sin/i16sins.c b/src/c/elementaryFunctions/sin/i16sins.c new file mode 100644 index 00000000..6fcbd26f --- /dev/null +++ b/src/c/elementaryFunctions/sin/i16sins.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" + +float i16sins(int16 x) { + return (sin((double)x)); +} diff --git a/src/c/elementaryFunctions/sin/i8sina.c b/src/c/elementaryFunctions/sin/i8sina.c new file mode 100644 index 00000000..2457388f --- /dev/null +++ b/src/c/elementaryFunctions/sin/i8sina.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sin.h" + +void i8sina(int8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i8sins(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sin/i8sins.c b/src/c/elementaryFunctions/sin/i8sins.c new file mode 100644 index 00000000..23823566 --- /dev/null +++ b/src/c/elementaryFunctions/sin/i8sins.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" + +float i8sins(int8 x) { + return (sin((double)x)); +} diff --git a/src/c/elementaryFunctions/sin/u16sina.c b/src/c/elementaryFunctions/sin/u16sina.c new file mode 100644 index 00000000..03054c20 --- /dev/null +++ b/src/c/elementaryFunctions/sin/u16sina.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sin.h" + +void u16sina(uint16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u16sins(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sin/u16sins.c b/src/c/elementaryFunctions/sin/u16sins.c new file mode 100644 index 00000000..651b8e1a --- /dev/null +++ b/src/c/elementaryFunctions/sin/u16sins.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" + +float u16sins(uint16 x) { + return (sin((double)x)); +} diff --git a/src/c/elementaryFunctions/sin/u8sina.c b/src/c/elementaryFunctions/sin/u8sina.c new file mode 100644 index 00000000..271d6451 --- /dev/null +++ b/src/c/elementaryFunctions/sin/u8sina.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sin.h" + +void u8sina(uint8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u8sins(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sin/u8sins.c b/src/c/elementaryFunctions/sin/u8sins.c new file mode 100644 index 00000000..f7c982f2 --- /dev/null +++ b/src/c/elementaryFunctions/sin/u8sins.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sin.h" + +float u8sins(uint8 x) { + return (sin((double)x)); +} diff --git a/src/c/elementaryFunctions/sind/dsinda.c b/src/c/elementaryFunctions/sind/dsinda.c new file mode 100644 index 00000000..c13fa0c7 --- /dev/null +++ b/src/c/elementaryFunctions/sind/dsinda.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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 +*/ + +#include "sind.h" + +void dsinda(double* x, int size, double* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = dsinds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sind/dsinds.c b/src/c/elementaryFunctions/sind/dsinds.c new file mode 100644 index 00000000..f7dc54f1 --- /dev/null +++ b/src/c/elementaryFunctions/sind/dsinds.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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 +*/ +#include <math.h> +#include "sind.h" +#define PI 3.1415927 + +double dsinds(double x) { + return sin(x*PI/180); +} diff --git a/src/c/elementaryFunctions/sind/ssinda.c b/src/c/elementaryFunctions/sind/ssinda.c new file mode 100644 index 00000000..baefd68d --- /dev/null +++ b/src/c/elementaryFunctions/sind/ssinda.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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 +*/ +#include "sind.h" + +void ssinda(float* x, int size, double* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = ssinds(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sind/ssinds.c b/src/c/elementaryFunctions/sind/ssinds.c new file mode 100644 index 00000000..9d5bf0e7 --- /dev/null +++ b/src/c/elementaryFunctions/sind/ssinds.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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 +*/ +#include <math.h> +#include "sind.h" +#include "sin.h" +#define PI 3.1415927 + +float ssinds(float x) { + return ssins(x*PI/180); +} diff --git a/src/c/elementaryFunctions/sinh/i16sinha.c b/src/c/elementaryFunctions/sinh/i16sinha.c new file mode 100644 index 00000000..71ad70b2 --- /dev/null +++ b/src/c/elementaryFunctions/sinh/i16sinha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sinh.h" + +void i16sinha(int16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i16sinhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sinh/i16sinhs.c b/src/c/elementaryFunctions/sinh/i16sinhs.c new file mode 100644 index 00000000..a7ab3d51 --- /dev/null +++ b/src/c/elementaryFunctions/sinh/i16sinhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sinh.h" + +float i16sinhs(int16 x) { + return (sinh((double)x)); +} diff --git a/src/c/elementaryFunctions/sinh/i8sinha.c b/src/c/elementaryFunctions/sinh/i8sinha.c new file mode 100644 index 00000000..50025748 --- /dev/null +++ b/src/c/elementaryFunctions/sinh/i8sinha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sinh.h" + +void i8sinha(int8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i8sinhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sinh/i8sinhs.c b/src/c/elementaryFunctions/sinh/i8sinhs.c new file mode 100644 index 00000000..ddc052aa --- /dev/null +++ b/src/c/elementaryFunctions/sinh/i8sinhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sinh.h" + +float i8sinhs(int8 x) { + return (sinh((double)x)); +} diff --git a/src/c/elementaryFunctions/sinh/u16sinha.c b/src/c/elementaryFunctions/sinh/u16sinha.c new file mode 100644 index 00000000..279ed488 --- /dev/null +++ b/src/c/elementaryFunctions/sinh/u16sinha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sinh.h" + +void u16sinha(uint16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u16sinhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sinh/u16sinhs.c b/src/c/elementaryFunctions/sinh/u16sinhs.c new file mode 100644 index 00000000..5f828cd7 --- /dev/null +++ b/src/c/elementaryFunctions/sinh/u16sinhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sinh.h" + +float u16sinhs(uint16 x) { + return (sinh((double)x)); +} diff --git a/src/c/elementaryFunctions/sinh/u8sinha.c b/src/c/elementaryFunctions/sinh/u8sinha.c new file mode 100644 index 00000000..66a51e81 --- /dev/null +++ b/src/c/elementaryFunctions/sinh/u8sinha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sinh.h" + +void u8sinha(uint8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u8sinhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/sinh/u8sinhs.c b/src/c/elementaryFunctions/sinh/u8sinhs.c new file mode 100644 index 00000000..9f49d7b6 --- /dev/null +++ b/src/c/elementaryFunctions/sinh/u8sinhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "sinh.h" + +float u8sinhs(uint8 x) { + return (sinh((double)x)); +} diff --git a/src/c/elementaryFunctions/sqrt/dsqrta.c b/src/c/elementaryFunctions/sqrt/dsqrta.c index a948f35b..b87800f4 100644 --- a/src/c/elementaryFunctions/sqrt/dsqrta.c +++ b/src/c/elementaryFunctions/sqrt/dsqrta.c @@ -12,7 +12,7 @@ #include "sqrt.h" -void dsqrta(double* in, int size, double* out) { +void dsqrta(double* in, int size, double* out) { int i = 0; for (i = 0 ; i < size ; ++i) { out[i] = dsqrts(in[i]); diff --git a/src/c/elementaryFunctions/sqrt/dsqrts.c b/src/c/elementaryFunctions/sqrt/dsqrts.c index 350cbbd0..8e664495 100644 --- a/src/c/elementaryFunctions/sqrt/dsqrts.c +++ b/src/c/elementaryFunctions/sqrt/dsqrts.c @@ -13,6 +13,6 @@ #include <math.h> #include "sqrt.h" -double dsqrts(double in){ +double dsqrts(double in){ return sqrt(in); } diff --git a/src/c/elementaryFunctions/tan/i16tana.c b/src/c/elementaryFunctions/tan/i16tana.c new file mode 100644 index 00000000..cbbe237b --- /dev/null +++ b/src/c/elementaryFunctions/tan/i16tana.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tan.h" + +void i16tana(int16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i16tans(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tan/i16tans.c b/src/c/elementaryFunctions/tan/i16tans.c new file mode 100644 index 00000000..b7cc7bb7 --- /dev/null +++ b/src/c/elementaryFunctions/tan/i16tans.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tan.h" + +float i16tans(int16 x) { + return (tanf(x)); +} diff --git a/src/c/elementaryFunctions/tan/i8tana.c b/src/c/elementaryFunctions/tan/i8tana.c new file mode 100644 index 00000000..4daeb471 --- /dev/null +++ b/src/c/elementaryFunctions/tan/i8tana.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tan.h" + +void i8tana(int8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i8tans(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tan/i8tans.c b/src/c/elementaryFunctions/tan/i8tans.c new file mode 100644 index 00000000..0dc9f9a5 --- /dev/null +++ b/src/c/elementaryFunctions/tan/i8tans.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tan.h" + +float i8tans(int8 x) { + return (tanf(x)); +} diff --git a/src/c/elementaryFunctions/tan/u16tana.c b/src/c/elementaryFunctions/tan/u16tana.c new file mode 100644 index 00000000..12df0ee9 --- /dev/null +++ b/src/c/elementaryFunctions/tan/u16tana.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tan.h" + +void u16tana(uint16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u16tans(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tan/u16tans.c b/src/c/elementaryFunctions/tan/u16tans.c new file mode 100644 index 00000000..f184a674 --- /dev/null +++ b/src/c/elementaryFunctions/tan/u16tans.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tan.h" + +float u16tans(uint16 x) { + return (tanf(x)); +} diff --git a/src/c/elementaryFunctions/tan/u8tana.c b/src/c/elementaryFunctions/tan/u8tana.c new file mode 100644 index 00000000..d541b20f --- /dev/null +++ b/src/c/elementaryFunctions/tan/u8tana.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tan.h" + +void u8tana(uint8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u8tans(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tan/u8tans.c b/src/c/elementaryFunctions/tan/u8tans.c new file mode 100644 index 00000000..74b5fb9d --- /dev/null +++ b/src/c/elementaryFunctions/tan/u8tans.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tan.h" + +float u8tans(uint8 x) { + return (tanf(x)); +} diff --git a/src/c/elementaryFunctions/tand/dtanda.c b/src/c/elementaryFunctions/tand/dtanda.c new file mode 100644 index 00000000..e5d56a87 --- /dev/null +++ b/src/c/elementaryFunctions/tand/dtanda.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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 +*/ +#include "tand.h" + +void dtanda(double* x, int size, double* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = dtands(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tand/dtands.c b/src/c/elementaryFunctions/tand/dtands.c new file mode 100644 index 00000000..6fda5b7d --- /dev/null +++ b/src/c/elementaryFunctions/tand/dtands.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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 +*/ +#include <math.h> +#include "tand.h" +#define PI 3.1415927 + +double dtands(double x) { + return tan(x*PI/180); +} diff --git a/src/c/elementaryFunctions/tand/standa.c b/src/c/elementaryFunctions/tand/standa.c new file mode 100644 index 00000000..e37f5a05 --- /dev/null +++ b/src/c/elementaryFunctions/tand/standa.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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 +*/ +#include "tand.h" + +void standa(float* x, int size, double* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = stands(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tand/stands.c b/src/c/elementaryFunctions/tand/stands.c new file mode 100644 index 00000000..4d667015 --- /dev/null +++ b/src/c/elementaryFunctions/tand/stands.c @@ -0,0 +1,19 @@ +/* Copyright (C) 2016 - 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 +*/ +#include <math.h> +#include "tand.h" +#include "tan.h" +#define PI 3.1415927 + +float stands(float x) { + return stans(x*PI/180); +} diff --git a/src/c/elementaryFunctions/tanh/ctanhs.c b/src/c/elementaryFunctions/tanh/ctanhs.c index 5111dbd7..24c1fa68 100644 --- a/src/c/elementaryFunctions/tanh/ctanhs.c +++ b/src/c/elementaryFunctions/tanh/ctanhs.c @@ -13,7 +13,7 @@ #include "tanh.h" #include "tan.h" -floatComplex ctanhs(floatComplex z) { +floatComplex ctanhs(floatComplex z) { float real = creals(z); float imag = cimags(z); diff --git a/src/c/elementaryFunctions/tanh/i16tanha.c b/src/c/elementaryFunctions/tanh/i16tanha.c new file mode 100644 index 00000000..3a4e37cd --- /dev/null +++ b/src/c/elementaryFunctions/tanh/i16tanha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tanh.h" + +void i16tanha(int16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i16tanhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tanh/i16tanhs.c b/src/c/elementaryFunctions/tanh/i16tanhs.c new file mode 100644 index 00000000..7d8b1843 --- /dev/null +++ b/src/c/elementaryFunctions/tanh/i16tanhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tanh.h" + +float i16tanhs(int16 x) { + return (tanhf(x)); +} diff --git a/src/c/elementaryFunctions/tanh/i8tanha.c b/src/c/elementaryFunctions/tanh/i8tanha.c new file mode 100644 index 00000000..dca31761 --- /dev/null +++ b/src/c/elementaryFunctions/tanh/i8tanha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tanh.h" + +void i8tanha(int8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = i8tanhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tanh/i8tanhs.c b/src/c/elementaryFunctions/tanh/i8tanhs.c new file mode 100644 index 00000000..6351e5c8 --- /dev/null +++ b/src/c/elementaryFunctions/tanh/i8tanhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tanh.h" + +float i8tanhs(int8 x) { + return (tanhf(x)); +} diff --git a/src/c/elementaryFunctions/tanh/u16tanha.c b/src/c/elementaryFunctions/tanh/u16tanha.c new file mode 100644 index 00000000..61db747b --- /dev/null +++ b/src/c/elementaryFunctions/tanh/u16tanha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tanh.h" + +void u16tanha(uint16* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u16tanhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tanh/u16tanhs.c b/src/c/elementaryFunctions/tanh/u16tanhs.c new file mode 100644 index 00000000..17909e7c --- /dev/null +++ b/src/c/elementaryFunctions/tanh/u16tanhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tanh.h" + +float u16tanhs(uint16 x) { + return (tanhf(x)); +} diff --git a/src/c/elementaryFunctions/tanh/u8tanha.c b/src/c/elementaryFunctions/tanh/u8tanha.c new file mode 100644 index 00000000..9ca20eeb --- /dev/null +++ b/src/c/elementaryFunctions/tanh/u8tanha.c @@ -0,0 +1,20 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "tanh.h" + +void u8tanha(uint8* x, int size, float* y) { + int i = 0; + for (i = 0; i < size; ++i) { + y[i] = u8tanhs(x[i]); + } +} diff --git a/src/c/elementaryFunctions/tanh/u8tanhs.c b/src/c/elementaryFunctions/tanh/u8tanhs.c new file mode 100644 index 00000000..c6179f9d --- /dev/null +++ b/src/c/elementaryFunctions/tanh/u8tanhs.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <math.h> +#include "tanh.h" + +float u8tanhs(uint8 x) { + return (tanhf(x)); +} diff --git a/src/c/elementaryFunctions/type/gtype b/src/c/elementaryFunctions/type/gtype new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/c/elementaryFunctions/type/gtype diff --git a/src/c/elementaryFunctions/uint16/duint16a.c b/src/c/elementaryFunctions/uint16/duint16a.c new file mode 100644 index 00000000..af9e2f57 --- /dev/null +++ b/src/c/elementaryFunctions/uint16/duint16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint16.h" + +void duint16a(double* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = duint16s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint16/duint16s.c b/src/c/elementaryFunctions/uint16/duint16s.c new file mode 100644 index 00000000..79bd75a3 --- /dev/null +++ b/src/c/elementaryFunctions/uint16/duint16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint16.h" + +uint16 duint16s(double x) { + return (uint16) x; +} diff --git a/src/c/elementaryFunctions/uint16/i16uint16a.c b/src/c/elementaryFunctions/uint16/i16uint16a.c new file mode 100644 index 00000000..64a598d2 --- /dev/null +++ b/src/c/elementaryFunctions/uint16/i16uint16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint16.h" + +void i16uint16a(int16* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16uint16s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint16/i16uint16s.c b/src/c/elementaryFunctions/uint16/i16uint16s.c new file mode 100644 index 00000000..01d46ac1 --- /dev/null +++ b/src/c/elementaryFunctions/uint16/i16uint16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint16.h" + +uint16 i16uint16s(int16 x) { + return (uint16) x; +} diff --git a/src/c/elementaryFunctions/uint16/i8uint16a.c b/src/c/elementaryFunctions/uint16/i8uint16a.c new file mode 100644 index 00000000..3cab61fa --- /dev/null +++ b/src/c/elementaryFunctions/uint16/i8uint16a.c @@ -0,0 +1,17 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "uint16.h" + +void i8uint16a(int8* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8uint16s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint16/i8uint16s.c b/src/c/elementaryFunctions/uint16/i8uint16s.c new file mode 100644 index 00000000..5527838e --- /dev/null +++ b/src/c/elementaryFunctions/uint16/i8uint16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint16.h" + +uint16 i8uint16s(int8 x) { + return (uint16) x; +} diff --git a/src/c/elementaryFunctions/uint16/suint16a.c b/src/c/elementaryFunctions/uint16/suint16a.c new file mode 100644 index 00000000..e048922f --- /dev/null +++ b/src/c/elementaryFunctions/uint16/suint16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint16.h" + +void suint16a(float* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = suint16s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint16/suint16s.c b/src/c/elementaryFunctions/uint16/suint16s.c new file mode 100644 index 00000000..8d277d19 --- /dev/null +++ b/src/c/elementaryFunctions/uint16/suint16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint16.h" + +uint16 suint16s(float x) { + return (uint16) x; +} diff --git a/src/c/elementaryFunctions/uint16/u8uint16a.c b/src/c/elementaryFunctions/uint16/u8uint16a.c new file mode 100644 index 00000000..b5ca533f --- /dev/null +++ b/src/c/elementaryFunctions/uint16/u8uint16a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint16.h" + +void u8uint16a(uint8* x, int size, uint16* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8uint16s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint16/u8uint16s.c b/src/c/elementaryFunctions/uint16/u8uint16s.c new file mode 100644 index 00000000..9da480f8 --- /dev/null +++ b/src/c/elementaryFunctions/uint16/u8uint16s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint16.h" + +uint16 u8uint16s(uint8 x) { + return (uint16) x; +} diff --git a/src/c/elementaryFunctions/uint32/duint32a.c b/src/c/elementaryFunctions/uint32/duint32a.c new file mode 100644 index 00000000..7cd0ea3e --- /dev/null +++ b/src/c/elementaryFunctions/uint32/duint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint32.h" + +void duint32a(double* x, int size, uint32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = duint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint32/duint32s.c b/src/c/elementaryFunctions/uint32/duint32s.c new file mode 100644 index 00000000..f507305a --- /dev/null +++ b/src/c/elementaryFunctions/uint32/duint32s.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint32.h" + +uint32 duint32s(double x) { + return (uint32) x; +} diff --git a/src/c/elementaryFunctions/uint32/i16uint32a.c b/src/c/elementaryFunctions/uint32/i16uint32a.c new file mode 100644 index 00000000..84d0fa02 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/i16uint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint32.h" + +void i16uint32a(int16* x, int size, uint32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16uint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint32/i16uint32s.c b/src/c/elementaryFunctions/uint32/i16uint32s.c new file mode 100644 index 00000000..7d9ccef7 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/i16uint32s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint32.h" + +uint32 i16uint32s(int16 x) { + return (uint32) x; +} diff --git a/src/c/elementaryFunctions/uint32/i32uint32a.c b/src/c/elementaryFunctions/uint32/i32uint32a.c new file mode 100644 index 00000000..415711ed --- /dev/null +++ b/src/c/elementaryFunctions/uint32/i32uint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint32.h" + +void i32uint32a(int32* x, int size, uint32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i32uint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint32/i32uint32s.c b/src/c/elementaryFunctions/uint32/i32uint32s.c new file mode 100644 index 00000000..63442f24 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/i32uint32s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint32.h" + +uint32 i32uint32s(int32 x) { + return (uint32) x; +} diff --git a/src/c/elementaryFunctions/uint32/i8uint32a.c b/src/c/elementaryFunctions/uint32/i8uint32a.c new file mode 100644 index 00000000..0dca1b5b --- /dev/null +++ b/src/c/elementaryFunctions/uint32/i8uint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint32.h" + +void i8uint32a(int8* x, int size, uint32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8uint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint32/i8uint32s.c b/src/c/elementaryFunctions/uint32/i8uint32s.c new file mode 100644 index 00000000..46c0ecb5 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/i8uint32s.c @@ -0,0 +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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint32.h" + +uint32 i8uint32s(int8 x) { + return (uint32) x; +} diff --git a/src/c/elementaryFunctions/uint32/suint32a.c b/src/c/elementaryFunctions/uint32/suint32a.c new file mode 100644 index 00000000..2478c021 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/suint32a.c @@ -0,0 +1,19 @@ +/* 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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint32.h" + +void suint32a(float* x, int size, uint32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = suint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint32/suint32s.c b/src/c/elementaryFunctions/uint32/suint32s.c new file mode 100644 index 00000000..3578b428 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/suint32s.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint32.h" + +uint32 suint32s(float x) { + return (uint32) x; +} diff --git a/src/c/elementaryFunctions/uint32/u16uint32a.c b/src/c/elementaryFunctions/uint32/u16uint32a.c new file mode 100644 index 00000000..177bae24 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/u16uint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint32.h" + +void u16uint32a(uint16* x, int size, uint32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16uint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint32/u16uint32s.c b/src/c/elementaryFunctions/uint32/u16uint32s.c new file mode 100644 index 00000000..df258b26 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/u16uint32s.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint32.h" + +uint32 u16uint32s(uint16 x) { + return (uint32) x; +} diff --git a/src/c/elementaryFunctions/uint32/u8uint32a.c b/src/c/elementaryFunctions/uint32/u8uint32a.c new file mode 100644 index 00000000..a89541b1 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/u8uint32a.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint32.h" + +void u8uint32a(uint8* x, int size, uint32* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u8uint32s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint32/u8uint32s.c b/src/c/elementaryFunctions/uint32/u8uint32s.c new file mode 100644 index 00000000..ac48fe27 --- /dev/null +++ b/src/c/elementaryFunctions/uint32/u8uint32s.c @@ -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: Siddhesh Wani, Jorawar Singh + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint32.h" + +uint32 u8uint32s(uint8 x) { + return (uint32) x; +} diff --git a/src/c/elementaryFunctions/uint8/duint8a.c b/src/c/elementaryFunctions/uint8/duint8a.c new file mode 100644 index 00000000..02d63058 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/duint8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint8.h" + +void duint8a(double* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = duint8s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint8/duint8s.c b/src/c/elementaryFunctions/uint8/duint8s.c new file mode 100644 index 00000000..d7a7524f --- /dev/null +++ b/src/c/elementaryFunctions/uint8/duint8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint8.h" + +uint8 duint8s(double x) { + return (uint8) x; +} diff --git a/src/c/elementaryFunctions/uint8/i16uint8a.c b/src/c/elementaryFunctions/uint8/i16uint8a.c new file mode 100644 index 00000000..49e31d12 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/i16uint8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint8.h" + +void i16uint8a(int16* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i16uint8s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint8/i16uint8s.c b/src/c/elementaryFunctions/uint8/i16uint8s.c new file mode 100644 index 00000000..695d7882 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/i16uint8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint8.h" + +uint8 i16uint8s(int16 x) { + return (uint8) x; +} diff --git a/src/c/elementaryFunctions/uint8/i8uint8a.c b/src/c/elementaryFunctions/uint8/i8uint8a.c new file mode 100644 index 00000000..89574e83 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/i8uint8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint8.h" + +void i8uint8a(int8* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = i8uint8s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint8/i8uint8s.c b/src/c/elementaryFunctions/uint8/i8uint8s.c new file mode 100644 index 00000000..4c83c4e4 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/i8uint8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint8.h" + +uint8 i8uint8s(int8 x) { + return (uint8) x; +} diff --git a/src/c/elementaryFunctions/uint8/suint8a.c b/src/c/elementaryFunctions/uint8/suint8a.c new file mode 100644 index 00000000..2e1a5ac8 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/suint8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint8.h" + +void suint8a(float* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = suint8s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint8/suint8s.c b/src/c/elementaryFunctions/uint8/suint8s.c new file mode 100644 index 00000000..ce38c1d0 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/suint8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint8.h" + +uint8 suint8s(float x) { + return (uint8) x; +} diff --git a/src/c/elementaryFunctions/uint8/u16uint8a.c b/src/c/elementaryFunctions/uint8/u16uint8a.c new file mode 100644 index 00000000..0c4246ec --- /dev/null +++ b/src/c/elementaryFunctions/uint8/u16uint8a.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "uint8.h" + +void u16uint8a(uint16* x, int size, uint8* out) { + int i = 0; + for (i=0;i<size;i++) out[i] = u16uint8s(x[i]); +} diff --git a/src/c/elementaryFunctions/uint8/u16uint8s.c b/src/c/elementaryFunctions/uint8/u16uint8s.c new file mode 100644 index 00000000..32d5b718 --- /dev/null +++ b/src/c/elementaryFunctions/uint8/u16uint8s.c @@ -0,0 +1,18 @@ +/* Copyright (C) 2016 - 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: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "uint8.h" + +uint8 u16uint8s(uint16 x) { + return (uint8) x; +} |