diff options
author | Brijeshcr | 2017-08-04 18:00:38 +0530 |
---|---|---|
committer | Brijeshcr | 2017-08-04 18:00:38 +0530 |
commit | f42fcd5532d7ed17a8ddf2cd583d545846fd9562 (patch) | |
tree | abc9996b9531f4b56393eb620ef81621327affd5 | |
parent | ee498f417540084c08cf335a03cdefcd3fa853e4 (diff) | |
parent | c73be8f2ad1c7c11f67ba31817f9d051bfa29fa1 (diff) | |
download | Scilab2C_fossee_old-f42fcd5532d7ed17a8ddf2cd583d545846fd9562.tar.gz Scilab2C_fossee_old-f42fcd5532d7ed17a8ddf2cd583d545846fd9562.tar.bz2 Scilab2C_fossee_old-f42fcd5532d7ed17a8ddf2cd583d545846fd9562.zip |
Pulled on 4th august
71 files changed, 1206 insertions, 21 deletions
diff --git a/demos/Abhinav_Demos/nan_cumsum.sci b/demos/Abhinav_Demos/nan_cumsum.sci new file mode 100644 index 0000000..c5943a0 --- /dev/null +++ b/demos/Abhinav_Demos/nan_cumsum.sci @@ -0,0 +1,35 @@ +function nan_cumsum () + x= [1 %nan 1 0.8; 21 1 13 %nan] + disp('Double') + a= nancumsum(x) + disp(a) + disp('') + b= nancumsum(x, 'r') + disp(b) + disp('') + c= nancumsum(x,'c') + disp(c) + disp('') + y= float(x) + disp('Float') + d= nancumsum(y) + disp(d) + disp('') + e= nancumsum(y, 'r') + disp(e) + disp('') + f= nancumsum(y,'c') + disp(f) + disp('') + z= [%nan , 12, 1219, %nan + %i*121; 121 %nan 90 12] + disp('DoubleComplex') + g= nancumsum(z) + disp(g) + disp('') + h= nancumsum(z, 'r') + disp(h) + disp('') + i= nancumsum(z,'c') + disp(i) + disp('') +endfunction diff --git a/demos/Abhinav_Demos/nan_stdev.sci b/demos/Abhinav_Demos/nan_stdev.sci new file mode 100644 index 0000000..0ff5b25 --- /dev/null +++ b/demos/Abhinav_Demos/nan_stdev.sci @@ -0,0 +1,31 @@ +function nan_stdev() + +x=[%nan 0.121 %nan 0.5 0.8; 21.9 %nan 1 0.9812 %nan; 0.12 0.65 1.08 12 0.1621; %nan 12 24 1 12] + +disp('Double') + +disp(nanstdev(x)) +disp('') + +disp(nanstdev(x , 'r')) +disp('') + +disp(nanstdev(x, 'c')) +disp('') + +y= float(x) + +disp('Float') + +disp(nanstdev(y)) +disp('') + +disp(nanstdev(y , 'r')) +disp('') + +disp(nanstdev(y, 'c')) +disp('') + + +endfunction + diff --git a/demos/Abhinav_Demos/std_dev.sci b/demos/Abhinav_Demos/std_dev.sci new file mode 100644 index 0000000..f7dbe41 --- /dev/null +++ b/demos/Abhinav_Demos/std_dev.sci @@ -0,0 +1,20 @@ +// Test file for "Column" function for the data types double, float, double complex, string. +// All the below statements are added to initialize variables in different data types + + +function std_dev() + a=[1,2,3,4; 5,6,7,8; 98,162,6587,0] + disp('Double') + disp(stdev(a)) + disp('') + disp(stdev(a,'r')) + disp('') + disp(stdev(a,'c')) + b=float(a) + disp('Float') + disp(stdev(b)) + disp('') + disp(stdev(b,'r')) + disp('') + disp(stdev(b,'c')) +endfunction diff --git a/includes/sci2clib.h b/includes/sci2clib.h index ad3e4f1..b561e49 100644 --- a/includes/sci2clib.h +++ b/includes/sci2clib.h @@ -201,9 +201,12 @@ extern "C" { /*interfacing nanmin*/ #include "nanmin.h" #include "int_nanmin.h" -/*interfacing nanmin*/ +/*interfacing nansum*/ #include "nansum.h" #include "int_nansum.h" +/*interfacing nancumsum*/ +#include "nancumsum.h" +#include "int_nancumsum.h" /*interfacing issquare*/ #include "issquare.h" #include "int_issquare.h" @@ -638,12 +641,18 @@ extern "C" { /* interfacing nanmedian */ #include "nanmedian.h" #include "int_nanmedian.h" +/* interfacing nanstdev */ +#include "nanstdev.h" +#include "int_nanstdev.h" /* interfacing mad */ #include "mad.h" #include "int_mad.h" /* interfacing stdevf */ #include "stdevf.h" #include "int_stdevf.h" +/* interfacing stdev */ +#include "stdev.h" +#include "int_stdev.h" /* interfacing meanf */ #include "meanf.h" #include "int_meanf.h" diff --git a/jar/scilab_en_US_help.jar b/jar/scilab_en_US_help.jar Binary files differindex 0393ca2..aeb5ddf 100644 --- a/jar/scilab_en_US_help.jar +++ b/jar/scilab_en_US_help.jar diff --git a/macros/ASTManagement/lib b/macros/ASTManagement/lib Binary files differdeleted file mode 100644 index dee4362..0000000 --- a/macros/ASTManagement/lib +++ /dev/null diff --git a/macros/CCodeGeneration/lib b/macros/CCodeGeneration/lib Binary files differdeleted file mode 100644 index 3d4fed1..0000000 --- a/macros/CCodeGeneration/lib +++ /dev/null diff --git a/macros/ErrorMessages/lib b/macros/ErrorMessages/lib Binary files differdeleted file mode 100644 index ba3b9a5..0000000 --- a/macros/ErrorMessages/lib +++ /dev/null diff --git a/macros/FunctionAnnotation/lib b/macros/FunctionAnnotation/lib Binary files differdeleted file mode 100644 index 239105c..0000000 --- a/macros/FunctionAnnotation/lib +++ /dev/null diff --git a/macros/FunctionList/lib b/macros/FunctionList/lib Binary files differdeleted file mode 100644 index 1c722dd..0000000 --- a/macros/FunctionList/lib +++ /dev/null diff --git a/macros/GeneralFunctions/lib b/macros/GeneralFunctions/lib Binary files differdeleted file mode 100644 index 7586a91..0000000 --- a/macros/GeneralFunctions/lib +++ /dev/null diff --git a/macros/Hardware/AVR/lib b/macros/Hardware/AVR/lib Binary files differdeleted file mode 100644 index ed4c52b..0000000 --- a/macros/Hardware/AVR/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Digital/lib b/macros/Hardware/RasberryPi/Digital/lib Binary files differdeleted file mode 100644 index ba42ba7..0000000 --- a/macros/Hardware/RasberryPi/Digital/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/I2C/lib b/macros/Hardware/RasberryPi/I2C/lib Binary files differdeleted file mode 100644 index 561476c..0000000 --- a/macros/Hardware/RasberryPi/I2C/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Interrupt/lib b/macros/Hardware/RasberryPi/Interrupt/lib Binary files differdeleted file mode 100644 index 97a61ac..0000000 --- a/macros/Hardware/RasberryPi/Interrupt/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Misc/lib b/macros/Hardware/RasberryPi/Misc/lib Binary files differdeleted file mode 100644 index c718615..0000000 --- a/macros/Hardware/RasberryPi/Misc/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/SPI/lib b/macros/Hardware/RasberryPi/SPI/lib Binary files differdeleted file mode 100644 index a16d474..0000000 --- a/macros/Hardware/RasberryPi/SPI/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Serial/lib b/macros/Hardware/RasberryPi/Serial/lib Binary files differdeleted file mode 100644 index a007f00..0000000 --- a/macros/Hardware/RasberryPi/Serial/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Setup/lib b/macros/Hardware/RasberryPi/Setup/lib Binary files differdeleted file mode 100644 index 83655c9..0000000 --- a/macros/Hardware/RasberryPi/Setup/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Shift/lib b/macros/Hardware/RasberryPi/Shift/lib Binary files differdeleted file mode 100644 index 2b12025..0000000 --- a/macros/Hardware/RasberryPi/Shift/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Soft/lib b/macros/Hardware/RasberryPi/Soft/lib Binary files differdeleted file mode 100644 index 09ecede..0000000 --- a/macros/Hardware/RasberryPi/Soft/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/Timing/lib b/macros/Hardware/RasberryPi/Timing/lib Binary files differdeleted file mode 100644 index d271c90..0000000 --- a/macros/Hardware/RasberryPi/Timing/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/gertBoard/lib b/macros/Hardware/RasberryPi/gertBoard/lib Binary files differdeleted file mode 100644 index e8db080..0000000 --- a/macros/Hardware/RasberryPi/gertBoard/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/lcd/lib b/macros/Hardware/RasberryPi/lcd/lib Binary files differdeleted file mode 100644 index c2b693f..0000000 --- a/macros/Hardware/RasberryPi/lcd/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/lcd128x64/lib b/macros/Hardware/RasberryPi/lcd128x64/lib Binary files differdeleted file mode 100644 index 94dfda8..0000000 --- a/macros/Hardware/RasberryPi/lcd128x64/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/lib b/macros/Hardware/RasberryPi/lib Binary files differdeleted file mode 100644 index 49ed811..0000000 --- a/macros/Hardware/RasberryPi/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/mcp/lib b/macros/Hardware/RasberryPi/mcp/lib Binary files differdeleted file mode 100644 index d411aad..0000000 --- a/macros/Hardware/RasberryPi/mcp/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/pcf/lib b/macros/Hardware/RasberryPi/pcf/lib Binary files differdeleted file mode 100644 index da6a8da..0000000 --- a/macros/Hardware/RasberryPi/pcf/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/piGlow/lib b/macros/Hardware/RasberryPi/piGlow/lib Binary files differdeleted file mode 100644 index 3f30f85..0000000 --- a/macros/Hardware/RasberryPi/piGlow/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/pinMap/lib b/macros/Hardware/RasberryPi/pinMap/lib Binary files differdeleted file mode 100644 index 133363e..0000000 --- a/macros/Hardware/RasberryPi/pinMap/lib +++ /dev/null diff --git a/macros/Hardware/RasberryPi/pwm/lib b/macros/Hardware/RasberryPi/pwm/lib Binary files differdeleted file mode 100644 index 8711baf..0000000 --- a/macros/Hardware/RasberryPi/pwm/lib +++ /dev/null diff --git a/macros/ImageProcessing/core/lib b/macros/ImageProcessing/core/lib Binary files differdeleted file mode 100644 index 40b7b0a..0000000 --- a/macros/ImageProcessing/core/lib +++ /dev/null diff --git a/macros/ImageProcessing/highgui/lib b/macros/ImageProcessing/highgui/lib Binary files differdeleted file mode 100644 index 0d7f88a..0000000 --- a/macros/ImageProcessing/highgui/lib +++ /dev/null diff --git a/macros/ImageProcessing/imgproc/lib b/macros/ImageProcessing/imgproc/lib Binary files differdeleted file mode 100644 index 63b5e7e..0000000 --- a/macros/ImageProcessing/imgproc/lib +++ /dev/null diff --git a/macros/Scilab-Arduino/lib b/macros/Scilab-Arduino/lib Binary files differdeleted file mode 100644 index a62fd4e..0000000 --- a/macros/Scilab-Arduino/lib +++ /dev/null diff --git a/macros/SymbolTable/lib b/macros/SymbolTable/lib Binary files differdeleted file mode 100644 index 4379c83..0000000 --- a/macros/SymbolTable/lib +++ /dev/null diff --git a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci index 7bb54a3..291d98e 100644 --- a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci +++ b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci @@ -1306,6 +1306,44 @@ INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,Ex // -------------------
+// --- Class Nancumsum. ---
+// -------------------
+ClassName = 'Nancumsum';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+PrintStringInfo('NIN= 2',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');
+
+//---Function list class. ----
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y');
+PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y');
+PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y');
+PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y');
+PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y');
+PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y');
+
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'nancumsum';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+
+
+// -------------------
// --- Class Nanmean. ---
// -------------------
ClassName = 'Nanmean';
@@ -2297,6 +2335,16 @@ PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file', INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+FunctionName = 'stdev'; // BJ : Done AS : Float_Done
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+FunctionName = 'nanstdev'; // BJ : Done AS : Float_Done
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
// --------------------
diff --git a/macros/ToolInitialization/lib b/macros/ToolInitialization/lib Binary files differdeleted file mode 100644 index 670a52e..0000000 --- a/macros/ToolInitialization/lib +++ /dev/null diff --git a/macros/findDeps/getAllHeaders.sci b/macros/findDeps/getAllHeaders.sci index 115f7e4..3b8f080 100644 --- a/macros/findDeps/getAllHeaders.sci +++ b/macros/findDeps/getAllHeaders.sci @@ -137,6 +137,7 @@ function allHeaders = getAllHeaders(SharedInfo) "src/c/elementaryFunctions/includes/nanmean.h" "src/c/elementaryFunctions/includes/nanmin.h" "src/c/elementaryFunctions/includes/nansum.h" + "src/c/elementaryFunctions/includes/nancumsum.h" "src/c/elementaryFunctions/includes/issquare.h" "src/c/elementaryFunctions/includes/isscalar.h" "src/c/elementaryFunctions/includes/isvector.h" @@ -150,9 +151,11 @@ function allHeaders = getAllHeaders(SharedInfo) "src/c/statisticsFunctions/includes/mean.h" "src/c/statisticsFunctions/includes/median.h" "src/c/statisticsFunctions/includes/nanmedian.h" + "src/c/statisticsFunctions/includes/nanstdev.h" "src/c/statisticsFunctions/includes/mad.h" "src/c/statisticsFunctions/includes/meanf.h" - "src/c/statisticsFunctions/includes/stdevf.h" + "src/c/statisticsFunctions/includes/stdevf.h" + "src/c/statisticsFunctions/includes/stdev.h" "src/c/statisticsFunctions/includes/prod.h" "src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h" "src/c/statisticsFunctions/includes/statMax.h" diff --git a/macros/findDeps/getAllInterfaces.sci b/macros/findDeps/getAllInterfaces.sci index 59f7c42..c065176 100644 --- a/macros/findDeps/getAllInterfaces.sci +++ b/macros/findDeps/getAllInterfaces.sci @@ -108,6 +108,7 @@ function allInterfaces = getAllInterfaces(SharedInfo) "src/c/elementaryFunctions/interfaces/int_nanmean.h" "src/c/elementaryFunctions/interfaces/int_nanmin.h" "src/c/elementaryFunctions/interfaces/int_nansum.h" + "src/c/elementaryFunctions/interfaces/int_nancumsum.h" "src/c/elementaryFunctions/interfaces/int_issquare.h" "src/c/elementaryFunctions/interfaces/int_isscalar.h" "src/c/elementaryFunctions/interfaces/int_isvector.h" @@ -139,9 +140,11 @@ function allInterfaces = getAllInterfaces(SharedInfo) "src/c/statisticsFunctions/interfaces/int_mean.h" "src/c/statisticsFunctions/interfaces/int_median.h" "src/c/statisticsFunctions/interfaces/int_nanmedian.h" + "src/c/statisticsFunctions/interfaces/int_nanstdev.h" "src/c/statisticsFunctions/interfaces/int_mad.h" "src/c/statisticsFunctions/interfaces/int_meanf.h" "src/c/statisticsFunctions/interfaces/int_stdevf.h" + "src/c/statisticsFunctions/interfaces/int_stdev.h" "src/c/statisticsFunctions/interfaces/int_prod.h" "src/c/statisticsFunctions/interfaces/int_variance.h" "src/c/statisticsFunctions/interfaces/int_sum.h" diff --git a/macros/findDeps/getAllSources.sci b/macros/findDeps/getAllSources.sci index 66b094b..a4b4786 100644 --- a/macros/findDeps/getAllSources.sci +++ b/macros/findDeps/getAllSources.sci @@ -914,6 +914,15 @@ function allSources = getAllSources(SharedInfo,BuildTool) "src/c/elementaryFunctions/nansum/znansuma.c" "src/c/elementaryFunctions/nansum/znansumcola.c" "src/c/elementaryFunctions/nansum/znansumrowa.c" + "src/c/elementaryFunctions/nancumsum/dnancumsuma.c" + "src/c/elementaryFunctions/nancumsum/dnancumsumrowa.c" + "src/c/elementaryFunctions/nancumsum/dnancumsumcola.c" + "src/c/elementaryFunctions/nancumsum/snancumsuma.c" + "src/c/elementaryFunctions/nancumsum/snancumsumrowa.c" + "src/c/elementaryFunctions/nancumsum/snancumsumcola.c" + "src/c/elementaryFunctions/nancumsum/znancumsuma.c" + "src/c/elementaryFunctions/nancumsum/znancumsumcola.c" + "src/c/elementaryFunctions/nancumsum/znancumsumrowa.c" "src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcda.c" "src/c/elementaryFunctions/discrete_mathematics/lcm/u8lcma.c" "src/c/elementaryFunctions/isequal/disequals.c" @@ -988,6 +997,12 @@ function allSources = getAllSources(SharedInfo,BuildTool) "src/c/statisticsFunctions/median/zmediana.c" "src/c/statisticsFunctions/median/zmediancola.c" "src/c/statisticsFunctions/median/zmedianrowa.c" + "src/c/statisticsFunctions/stdev/dstdeva.c" + "src/c/statisticsFunctions/stdev/dstdevrowa.c" + "src/c/statisticsFunctions/stdev/dstdevcola.c" + "src/c/statisticsFunctions/stdev/sstdeva.c" + "src/c/statisticsFunctions/stdev/sstdevrowa.c" + "src/c/statisticsFunctions/stdev/sstdevcola.c" "src/c/statisticsFunctions/nanmedian/dnanmediana.c" "src/c/statisticsFunctions/nanmedian/dnanmedianrowa.c" "src/c/statisticsFunctions/nanmedian/dnanmediancola.c" @@ -997,6 +1012,12 @@ function allSources = getAllSources(SharedInfo,BuildTool) "src/c/statisticsFunctions/nanmedian/znanmediana.c" "src/c/statisticsFunctions/nanmedian/znanmediancola.c" "src/c/statisticsFunctions/nanmedian/znanmedianrowa.c" + "src/c/statisticsFunctions/nanstdev/dnanstdeva.c" + "src/c/statisticsFunctions/nanstdev/dnanstdevrowa.c" + "src/c/statisticsFunctions/nanstdev/dnanstdevcola.c" + "src/c/statisticsFunctions/nanstdev/snanstdeva.c" + "src/c/statisticsFunctions/nanstdev/snanstdevrowa.c" + "src/c/statisticsFunctions/nanstdev/snanstdevcola.c" "src/c/statisticsFunctions/mad/dmada.c" "src/c/statisticsFunctions/mad/dmadrowa.c" "src/c/statisticsFunctions/mad/dmadcola.c" diff --git a/macros/findDeps/lib b/macros/findDeps/lib Binary files differdeleted file mode 100644 index afcd3ca..0000000 --- a/macros/findDeps/lib +++ /dev/null diff --git a/macros/lib b/macros/lib Binary files differdeleted file mode 100644 index 551263e..0000000 --- a/macros/lib +++ /dev/null diff --git a/src/c/elementaryFunctions/includes/nancumsum.h b/src/c/elementaryFunctions/includes/nancumsum.h new file mode 100644 index 0000000..48ccc96 --- /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/interfaces/int_nancumsum.h b/src/c/elementaryFunctions/interfaces/int_nancumsum.h new file mode 100644 index 0000000..c82f6d6 --- /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/nancumsum/dnancumsuma.c b/src/c/elementaryFunctions/nancumsum/dnancumsuma.c new file mode 100644 index 0000000..135ab4b --- /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 0000000..a49b394 --- /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 0000000..45ce1ca --- /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 0000000..56d1633 --- /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 0000000..3b96ef0 --- /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 0000000..7eef386 --- /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 0000000..fd0a1e3 --- /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 0000000..c1ca16b --- /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 0000000..be04a4a --- /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/statisticsFunctions/includes/nanstdev.h b/src/c/statisticsFunctions/includes/nanstdev.h new file mode 100644 index 0000000..5c14093 --- /dev/null +++ b/src/c/statisticsFunctions/includes/nanstdev.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 __NANSTDEV_H__ +#define __NANSTDEV_H__ + + +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "int16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dnanstdeva (double* , int); +void dnanstdevrowa (double*, int , int, double*); +void dnanstdevcola (double*, int , int, double*); + +float snanstdeva (float* , int); +void snanstdevrowa (float*, int , int, float*); +void snanstdevcola (float*, int , int, float*); + + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/src/c/statisticsFunctions/includes/stdev.h b/src/c/statisticsFunctions/includes/stdev.h new file mode 100644 index 0000000..16b4697 --- /dev/null +++ b/src/c/statisticsFunctions/includes/stdev.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 __STDEV_H__ +#define __STDEV_H__ + +#include "types.h" +#include "doubleComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +double dstdeva(double* , int ); +void dstdevrowa(double*, int, int, double*); +void dstdevcola(double*, int, int, double*); + +float sstdeva(float* , int ); +void sstdevrowa(float*, int, int, float*); +void sstdevcola(float*, int, int, float*); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__STDEV_H__*/ diff --git a/src/c/statisticsFunctions/interfaces/int_median.h b/src/c/statisticsFunctions/interfaces/int_median.h index 2a21987..e9f3578 100644 --- a/src/c/statisticsFunctions/interfaces/int_median.h +++ b/src/c/statisticsFunctions/interfaces/int_median.h @@ -31,27 +31,9 @@ extern "C" { #define z2g2medianz2(in1, size1, in2, size2, out) (in2[0]== 'r') ? zmedianrowa(in1, size1[0], size1[1], out) :zmediancola(in1, size1[0], size1[1], out) -#define s2d0d0matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) -#define s2s0s0matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) -//#define s2u160u160matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) -//#define s2u80u80matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) - -#define u162d0d0matrixu162(in1, size, in2, in3, out ) u16matrixa(in1, size[0], size[1], in2, in3, out) -#define u162s0s0matrixu162(in1, size, in2, in3, out ) u16matrixa(in1, size[0], size[1], in2, in3, out) -//#define s2u160u160matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) -//#define s2u80u80matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) - -#define z2d0d0matrixz2(in1, size, in2, in3, out ) zmatrixa(in1, size[0], size[1], in2, in3, out) -#define z2s0s0matrixz2(in1, size, in2, in3, out ) zmatrixa(in1, size[0], size[1], in2, in3, out) -//#define s2u160u160matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) -//#define s2u80u80matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) - - - - #ifdef __cplusplus } /* extern "C" */ #endif -#endif /*__INT_MATRIX_H__*/ +#endif /*__INT_MEDIAN_H__*/ diff --git a/src/c/statisticsFunctions/interfaces/int_nanstdev.h b/src/c/statisticsFunctions/interfaces/int_nanstdev.h new file mode 100644 index 0000000..1d652ee --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_nanstdev.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_NANSTDEV_H__ +#define __INT_NANSTDEV_H__ + +#define d2nanstdevd0(in1, size) dnanstdeva(in1,size[0]* size[1]) +#define d2g2nanstdevd2(in1, size1, in2, size2, out) (in2[0]=='r') ? dnanstdevrowa(in1, size1[0], size1[1], out) : dnanstdevcola(in1, size1[0] , size1[1], out) + +#define s2nanstdevs0(in1, size) snanstdeva(in1,size[0]* size[1]) +#define s2g2nanstdevs2(in1, size1, in2, size2, out) (in2[0]=='r') ? snanstdevrowa(in1, size1[0], size1[1], out) : snanstdevcola(in1, size1[0] , size1[1], out) + + +#endif diff --git a/src/c/statisticsFunctions/interfaces/int_stdev.h b/src/c/statisticsFunctions/interfaces/int_stdev.h new file mode 100644 index 0000000..1e0b6a3 --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_stdev.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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#ifndef __INT_STDEV_H__ +#define __INT_STDEV_H__ + + +#ifdef __cplusplus +extern "C" { +#endif + +#define d2stdevd0(in1, size) dstdeva(in1, size[0]* size[1]) +#define d2g2stdevd2(in1, size1, in2, size2, out) (in2[0]== 'r') ? dstdevrowa(in1, size1[0], size1[1], out) :dstdevcola(in1, size1[0], size1[1], out) + +#define s2stdevs0(in1, size) sstdeva(in1, size[0]* size[1]) +#define s2g2stdevs2(in1, size1, in2, size2, out) (in2[0]== 'r') ? sstdevrowa(in1, size1[0], size1[1], out) :sstdevcola(in1, size1[0], size1[1], out) + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_STDEV_H__*/ diff --git a/src/c/statisticsFunctions/nanstdev/dnanstdeva.c b/src/c/statisticsFunctions/nanstdev/dnanstdeva.c new file mode 100644 index 0000000..05b5433 --- /dev/null +++ b/src/c/statisticsFunctions/nanstdev/dnanstdeva.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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanstdev.h" +#include "stdev.h" +#include "types.h" +double dnanstdeva(double* in, int size) +{ + +double temp[size]; +double out; +int j=0; + +double a= 0.0/0.0; + + + + for(int i=0; i< size; i++) + { + if( !(isnan(in[i])) ) + { + temp[j]= in[i]; + j=j+1; + + + } + + + } + + +out= dstdeva(temp, j); + +if(j=0) +return a; +else +return out; + +} diff --git a/src/c/statisticsFunctions/nanstdev/dnanstdevcola.c b/src/c/statisticsFunctions/nanstdev/dnanstdevcola.c new file mode 100644 index 0000000..a6704b0 --- /dev/null +++ b/src/c/statisticsFunctions/nanstdev/dnanstdevcola.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 "nanstdev.h" +#include "types.h" +#include "uint16.h" + +void dnanstdevcola(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]= dnanstdeva( inter, col); + + } + + +} diff --git a/src/c/statisticsFunctions/nanstdev/dnanstdevrowa.c b/src/c/statisticsFunctions/nanstdev/dnanstdevrowa.c new file mode 100644 index 0000000..52a1722 --- /dev/null +++ b/src/c/statisticsFunctions/nanstdev/dnanstdevrowa.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 "nanstdev.h" +#include "types.h" +#include "uint16.h" + +void dnanstdevrowa(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]= dnanstdeva( inter, row); + + } + + +} diff --git a/src/c/statisticsFunctions/nanstdev/snanstdeva.c b/src/c/statisticsFunctions/nanstdev/snanstdeva.c new file mode 100644 index 0000000..3e6ab15 --- /dev/null +++ b/src/c/statisticsFunctions/nanstdev/snanstdeva.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: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> +#include "nanstdev.h" +#include "stdev.h" +#include "types.h" +float snanstdeva(float* in, int size) +{ + +float temp[size]; +float out; +int j=0; + +double a= 0.0/0.0; + + + + for(int i=0; i< size; i++) + { + if( !(isnan(in[i])) ) + { + temp[j]= in[i]; + j=j+1; + + + } + + + } + + +out= sstdeva(temp, j); + +if(j=0) +return a; +else +return out; + +} diff --git a/src/c/statisticsFunctions/nanstdev/snanstdevcola.c b/src/c/statisticsFunctions/nanstdev/snanstdevcola.c new file mode 100644 index 0000000..987cb3f --- /dev/null +++ b/src/c/statisticsFunctions/nanstdev/snanstdevcola.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 "nanstdev.h" +#include "types.h" +#include "uint16.h" + +void snanstdevcola(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]= snanstdeva( inter, col); + + } + + +} diff --git a/src/c/statisticsFunctions/nanstdev/snanstdevrowa.c b/src/c/statisticsFunctions/nanstdev/snanstdevrowa.c new file mode 100644 index 0000000..9c08682 --- /dev/null +++ b/src/c/statisticsFunctions/nanstdev/snanstdevrowa.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 "nanstdev.h" +#include "types.h" +#include "uint16.h" + +void snanstdevrowa(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]= snanstdeva( inter, row); + + } + + +} 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 <math.h> +#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 <math.h> +#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); + + } + + +} |