From ac4326bd2f66e0978e200e4685f14669b8feda82 Mon Sep 17 00:00:00 2001 From: Abhinav Dronamraju Date: Tue, 1 Aug 2017 20:22:53 +0530 Subject: Nanstdev, stdev, nancumsum added --- src/c/statisticsFunctions/stdev/dstdeva.c | 29 ++++++++++++++++++++++ src/c/statisticsFunctions/stdev/dstdevcola.c | 35 +++++++++++++++++++++++++++ src/c/statisticsFunctions/stdev/dstdevrowa.c | 36 ++++++++++++++++++++++++++++ src/c/statisticsFunctions/stdev/sstdeva.c | 29 ++++++++++++++++++++++ src/c/statisticsFunctions/stdev/sstdevcola.c | 35 +++++++++++++++++++++++++++ src/c/statisticsFunctions/stdev/sstdevrowa.c | 36 ++++++++++++++++++++++++++++ 6 files changed, 200 insertions(+) create mode 100644 src/c/statisticsFunctions/stdev/dstdeva.c create mode 100644 src/c/statisticsFunctions/stdev/dstdevcola.c create mode 100644 src/c/statisticsFunctions/stdev/dstdevrowa.c create mode 100644 src/c/statisticsFunctions/stdev/sstdeva.c create mode 100644 src/c/statisticsFunctions/stdev/sstdevcola.c create mode 100644 src/c/statisticsFunctions/stdev/sstdevrowa.c (limited to 'src/c/statisticsFunctions/stdev') diff --git a/src/c/statisticsFunctions/stdev/dstdeva.c b/src/c/statisticsFunctions/stdev/dstdeva.c new file mode 100644 index 0000000..73a4bec --- /dev/null +++ b/src/c/statisticsFunctions/stdev/dstdeva.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 "stdev.h" +#include +#include "mean.h" +#include "pow.h" +#include "variance.h" +#include "types.h" +#include "uint16.h" + +double dstdeva(double *in, int size) +{ + double variance = dvariancea(in, size); + + return dpows(variance, 0.5); + + +} diff --git a/src/c/statisticsFunctions/stdev/dstdevcola.c b/src/c/statisticsFunctions/stdev/dstdevcola.c new file mode 100644 index 0000000..cdce81a --- /dev/null +++ b/src/c/statisticsFunctions/stdev/dstdevcola.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 "stdev.h" +#include "types.h" +#include "uint16.h" + +void dstdevcola(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]= dstdeva( inter, col); + + } + + +} diff --git a/src/c/statisticsFunctions/stdev/dstdevrowa.c b/src/c/statisticsFunctions/stdev/dstdevrowa.c new file mode 100644 index 0000000..a4cf40c --- /dev/null +++ b/src/c/statisticsFunctions/stdev/dstdevrowa.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 "stdev.h" +#include "types.h" +#include "uint16.h" + +void dstdevrowa(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]= dstdeva( inter, row); + + } + + +} diff --git a/src/c/statisticsFunctions/stdev/sstdeva.c b/src/c/statisticsFunctions/stdev/sstdeva.c new file mode 100644 index 0000000..db76d95 --- /dev/null +++ b/src/c/statisticsFunctions/stdev/sstdeva.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 "stdev.h" +#include +#include "mean.h" +#include "pow.h" +#include "variance.h" +#include "types.h" +#include "uint16.h" + +float sstdeva(float *in, int size) +{ + float variance = svariancea(in, size); + + return spows(variance, 0.5); + + +} diff --git a/src/c/statisticsFunctions/stdev/sstdevcola.c b/src/c/statisticsFunctions/stdev/sstdevcola.c new file mode 100644 index 0000000..c72b4a5 --- /dev/null +++ b/src/c/statisticsFunctions/stdev/sstdevcola.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 "stdev.h" +#include "types.h" +#include "uint16.h" + +void sstdevcola(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]= sstdeva( inter, col); + + } + + +} diff --git a/src/c/statisticsFunctions/stdev/sstdevrowa.c b/src/c/statisticsFunctions/stdev/sstdevrowa.c new file mode 100644 index 0000000..415d409 --- /dev/null +++ b/src/c/statisticsFunctions/stdev/sstdevrowa.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 "stdev.h" +#include "types.h" +#include "uint16.h" + +void sstdevrowa(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]= sstdeva( inter, row); + + } + + +} -- cgit