From 0957ceb219554ed8e39ba7b2b96d0aabcc94b8fe Mon Sep 17 00:00:00 2001 From: Allan CORNET Date: Fri, 1 Jan 2021 09:53:35 +0100 Subject: [PATCH] fix #385, #388 statistics module --- CHANGELOG.md | 7 + NelSon.sln | 22 ++ appveyor.yml | 5 +- modules/CMakeLists.txt | 3 +- .../c/nlsElementary_functions_builtin.vcxproj | 6 - ...ementary_functions_builtin.vcxproj.filters | 18 -- .../builtin/cpp/Gateway.cpp | 9 - .../src/c/nlsElementary_functions.vcxproj | 10 +- .../c/nlsElementary_functions.vcxproj.filters | 18 -- .../src/include/lapack_eigen.hpp | 6 + modules/modules.iss | 1 + modules/modules.nls.in | 6 +- modules/modules.nls.vc | 6 +- modules/statistics/CMakeLists.txt | 120 ++++++++++ modules/statistics/builtin/c/dllMain.c | 47 ++++ .../builtin/c/nlsStatistics_builtin.vcxproj | 221 ++++++++++++++++++ .../c/nlsStatistics_builtin.vcxproj.filters | 62 +++++ modules/statistics/builtin/c/resources.rc | 98 ++++++++ modules/statistics/builtin/cpp/Gateway.cpp | 51 ++++ .../builtin/cpp/corrcoefBuiltin.cpp | 2 +- .../builtin/cpp/meanBuiltin.cpp | 2 +- .../builtin/cpp/varBuiltin.cpp | 4 +- .../builtin/include/corrcoefBuiltin.hpp | 2 +- .../builtin/include/meanBuiltin.hpp | 2 +- .../include/nlsStatistics_builtin_exports.h | 37 +++ .../builtin/include/varBuiltin.hpp | 2 +- modules/statistics/etc/finish.nls | 26 +++ modules/statistics/etc/startup.nls | 27 +++ .../functions/cov.nlf | 0 modules/statistics/help/en_US/xml/chapter.xml | 9 + .../help/en_US/xml/corrcoef.xml | 0 .../help/en_US/xml/cov.xml | 0 .../help/en_US/xml/mean.xml | 0 .../help/en_US/xml/var.xml | 0 modules/statistics/loader.nls | 27 +++ modules/statistics/module.iss | 40 ++++ modules/statistics/src/c/dllMain.c | 45 ++++ .../statistics/src/c/nlsStatistics.vcxproj | 207 ++++++++++++++++ .../src/c/nlsStatistics.vcxproj.filters | 56 +++++ modules/statistics/src/c/resources.rc | 98 ++++++++ .../src/cpp/CorrelationCoefficients.cpp | 0 .../src/cpp/Mean.cpp | 0 .../src/cpp/Variance.cpp | 0 .../src/include/CorrelationCoefficients.hpp | 4 +- .../src/include/Mean.hpp | 6 +- .../src/include/Variance.hpp | 4 +- .../src/include/nlsStatistics_exports.h | 37 +++ .../tests/bench_corrcoef.nls | 0 .../tests/test_corrcoef.nls | 0 .../tests/test_cov.nls | 0 .../tests/test_mean.nls | 0 .../tests/test_var.nls | 0 52 files changed, 1275 insertions(+), 78 deletions(-) create mode 100644 modules/statistics/CMakeLists.txt create mode 100644 modules/statistics/builtin/c/dllMain.c create mode 100644 modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj create mode 100644 modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj.filters create mode 100644 modules/statistics/builtin/c/resources.rc create mode 100644 modules/statistics/builtin/cpp/Gateway.cpp rename modules/{elementary_functions => statistics}/builtin/cpp/corrcoefBuiltin.cpp (97%) rename modules/{elementary_functions => statistics}/builtin/cpp/meanBuiltin.cpp (99%) rename modules/{elementary_functions => statistics}/builtin/cpp/varBuiltin.cpp (96%) rename modules/{elementary_functions => statistics}/builtin/include/corrcoefBuiltin.hpp (98%) rename modules/{elementary_functions => statistics}/builtin/include/meanBuiltin.hpp (98%) create mode 100644 modules/statistics/builtin/include/nlsStatistics_builtin_exports.h rename modules/{elementary_functions => statistics}/builtin/include/varBuiltin.hpp (98%) create mode 100644 modules/statistics/etc/finish.nls create mode 100644 modules/statistics/etc/startup.nls rename modules/{elementary_functions => statistics}/functions/cov.nlf (100%) create mode 100644 modules/statistics/help/en_US/xml/chapter.xml rename modules/{elementary_functions => statistics}/help/en_US/xml/corrcoef.xml (100%) rename modules/{elementary_functions => statistics}/help/en_US/xml/cov.xml (100%) rename modules/{elementary_functions => statistics}/help/en_US/xml/mean.xml (100%) rename modules/{elementary_functions => statistics}/help/en_US/xml/var.xml (100%) create mode 100644 modules/statistics/loader.nls create mode 100644 modules/statistics/module.iss create mode 100644 modules/statistics/src/c/dllMain.c create mode 100644 modules/statistics/src/c/nlsStatistics.vcxproj create mode 100644 modules/statistics/src/c/nlsStatistics.vcxproj.filters create mode 100644 modules/statistics/src/c/resources.rc rename modules/{elementary_functions => statistics}/src/cpp/CorrelationCoefficients.cpp (100%) rename modules/{elementary_functions => statistics}/src/cpp/Mean.cpp (100%) rename modules/{elementary_functions => statistics}/src/cpp/Variance.cpp (100%) rename modules/{elementary_functions => statistics}/src/include/CorrelationCoefficients.hpp (95%) rename modules/{elementary_functions => statistics}/src/include/Mean.hpp (94%) rename modules/{elementary_functions => statistics}/src/include/Variance.hpp (96%) create mode 100644 modules/statistics/src/include/nlsStatistics_exports.h rename modules/{elementary_functions => statistics}/tests/bench_corrcoef.nls (100%) rename modules/{elementary_functions => statistics}/tests/test_corrcoef.nls (100%) rename modules/{elementary_functions => statistics}/tests/test_cov.nls (100%) rename modules/{elementary_functions => statistics}/tests/test_mean.nls (100%) rename modules/{elementary_functions => statistics}/tests/test_var.nls (100%) diff --git a/CHANGELOG.md b/CHANGELOG.md index f8ce222176..15c15ac961 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # 0.5.XX (2021-01-XX) +## Bug Fixes: + +- [#388](http://github.com/Nelson-numerical-software/nelson/issues/388): Windows x64 build failed (elementary_functions module was too big). + + +- [#385](http://github.com/Nelson-numerical-software/nelson/issues/385): `corrcoef`, `mean`, `var`, `cov` moved in statistics module. + ## Compilation: - 0.5 family (CHANGELOG) diff --git a/NelSon.sln b/NelSon.sln index 0167127d40..2823d27776 100644 --- a/NelSon.sln +++ b/NelSon.sln @@ -38,6 +38,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NelSon-cli", "modules\main\ {964FF907-D58A-48B6-A03B-3F6CF48CBE41} = {964FF907-D58A-48B6-A03B-3F6CF48CBE41} {17135B09-BC25-448E-9750-C09A87FDE6F8} = {17135B09-BC25-448E-9750-C09A87FDE6F8} {31EFFD09-DC10-4163-BC2F-4F285F96A7D6} = {31EFFD09-DC10-4163-BC2F-4F285F96A7D6} + {9AC8560A-9E4C-4430-9938-63D6377890EB} = {9AC8560A-9E4C-4430-9938-63D6377890EB} {A52B940C-3987-4DB4-9785-45CBBE5D0B23} = {A52B940C-3987-4DB4-9785-45CBBE5D0B23} {7EAA9510-D91B-41A7-B27D-B4994B6EF069} = {7EAA9510-D91B-41A7-B27D-B4994B6EF069} {636D4715-9889-4A8E-9404-3B05CB7734D1} = {636D4715-9889-4A8E-9404-3B05CB7734D1} @@ -91,6 +92,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NelSon-cli", "modules\main\ {1BF47B95-0985-4267-9644-A50C7E186C47} = {1BF47B95-0985-4267-9644-A50C7E186C47} {2391A997-6A1F-49EF-8A7A-92769F13B1F7} = {2391A997-6A1F-49EF-8A7A-92769F13B1F7} {AB85E897-56B7-4792-8A8E-F3797BE2B7CC} = {AB85E897-56B7-4792-8A8E-F3797BE2B7CC} + {0C41339D-F889-4C5F-9D0C-689605FC43C2} = {0C41339D-F889-4C5F-9D0C-689605FC43C2} {DDCCE99F-2EB8-4692-9E79-84F5FE42B7DE} = {DDCCE99F-2EB8-4692-9E79-84F5FE42B7DE} {9067DFA1-CE20-4CAA-97E2-34D3C6A2AD7D} = {9067DFA1-CE20-4CAA-97E2-34D3C6A2AD7D} {B1129CA6-B4DE-43D1-84C9-C1C7F0787E5E} = {B1129CA6-B4DE-43D1-84C9-C1C7F0787E5E} @@ -418,6 +420,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "nlsIpc", "modules\ipc\src\c EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "nlsIpc_builtin", "modules\ipc\builtin\c\nlsIpc_builtin.vcxproj", "{20244504-06DA-42F2-9DF1-21740C2054F3}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "nlsStatistics", "modules\statistics\src\c\nlsStatistics.vcxproj", "{9AC8560A-9E4C-4430-9938-63D6377890EB}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "nlsStatistics_builtin", "modules\statistics\builtin\c\nlsStatistics_builtin.vcxproj", "{0C41339D-F889-4C5F-9D0C-689605FC43C2}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 @@ -1438,6 +1444,22 @@ Global {20244504-06DA-42F2-9DF1-21740C2054F3}.Release|Win32.Build.0 = Release|Win32 {20244504-06DA-42F2-9DF1-21740C2054F3}.Release|x64.ActiveCfg = Release|x64 {20244504-06DA-42F2-9DF1-21740C2054F3}.Release|x64.Build.0 = Release|x64 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Debug|Win32.ActiveCfg = Debug|Win32 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Debug|Win32.Build.0 = Debug|Win32 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Debug|x64.ActiveCfg = Debug|x64 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Debug|x64.Build.0 = Debug|x64 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Release|Win32.ActiveCfg = Release|Win32 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Release|Win32.Build.0 = Release|Win32 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Release|x64.ActiveCfg = Release|x64 + {9AC8560A-9E4C-4430-9938-63D6377890EB}.Release|x64.Build.0 = Release|x64 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Debug|Win32.ActiveCfg = Debug|Win32 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Debug|Win32.Build.0 = Debug|Win32 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Debug|x64.ActiveCfg = Debug|x64 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Debug|x64.Build.0 = Debug|x64 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Release|Win32.ActiveCfg = Release|Win32 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Release|Win32.Build.0 = Release|Win32 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Release|x64.ActiveCfg = Release|x64 + {0C41339D-F889-4C5F-9D0C-689605FC43C2}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/appveyor.yml b/appveyor.yml index 57c718e1a6..dfce7ee010 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -16,7 +16,7 @@ platform: - x64 #init: -# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1')) +# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1')) # - ps: $blockRdp = $true install: @@ -24,6 +24,7 @@ install: - C:/build_chain/MSMpiSetup.exe -unattend -minimal - set PATH=C:\Program Files\Microsoft MPI\Bin;%PATH% - SET PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\15.0\Bin\;C:\Program Files (x86)\Inno Setup 6;%PATH% +- SET sePreferredToolArchitecture=x64 - call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" %platform% before_build: @@ -36,7 +37,7 @@ before_build: build_script: - cd "c:\build_chain\nelson" -- msbuild nelson.sln /p:Configuration=Release /p:Platform=%NELSON_PLATFORM% /target:"NelSon-gui" /m:4 +- msbuild nelson.sln /p:Configuration=Release /p:Platform=%NELSON_PLATFORM% /target:"NelSon-gui" /m:4 after_build: - if %platform%==x64 (set GENERATED_EXE=Nelson-%APPVEYOR_BUILD_VERSION%-x86-64.exe) else (set GENERATED_EXE=Nelson-%APPVEYOR_BUILD_VERSION%-x86-32.exe) diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index a0e38ebb3e..b19afdc015 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -88,7 +88,8 @@ list( webtools graphics mex - ipc) + ipc + statistics) list(APPEND moduleslist main) # ============================================================================== if(NOT WITHOUT_FFTW AND NOT LGPL21_ONLY) diff --git a/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj b/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj index 3e091c3f08..97ffe4d8a6 100644 --- a/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj +++ b/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj @@ -179,7 +179,6 @@ - @@ -215,7 +214,6 @@ - @@ -251,7 +249,6 @@ - @@ -293,7 +290,6 @@ - @@ -328,7 +324,6 @@ - @@ -365,7 +360,6 @@ - diff --git a/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj.filters b/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj.filters index ad3372dfd6..0faae15800 100644 --- a/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj.filters +++ b/modules/elementary_functions/builtin/c/nlsElementary_functions_builtin.vcxproj.filters @@ -255,12 +255,6 @@ Source Files - - Source Files - - - Source Files - Source Files @@ -270,9 +264,6 @@ Source Files - - Source Files - @@ -526,12 +517,6 @@ Header Files - - Header Files - - - Header Files - Header Files @@ -541,8 +526,5 @@ Header Files - - Header Files - \ No newline at end of file diff --git a/modules/elementary_functions/builtin/cpp/Gateway.cpp b/modules/elementary_functions/builtin/cpp/Gateway.cpp index ee664e00db..f7db38bdc2 100644 --- a/modules/elementary_functions/builtin/cpp/Gateway.cpp +++ b/modules/elementary_functions/builtin/cpp/Gateway.cpp @@ -102,12 +102,9 @@ #include "minBuiltin.hpp" #include "fliplrBuiltin.hpp" #include "flipudBuiltin.hpp" -#include "meanBuiltin.hpp" -#include "varBuiltin.hpp" #include "findBuiltin.hpp" #include "isvectorBuiltin.hpp" #include "isscalarBuiltin.hpp" -#include "corrcoefBuiltin.hpp" //============================================================================= using namespace Nelson; //============================================================================= @@ -280,16 +277,10 @@ static const nlsGateway gateway[] = { CPP_BUILTIN_WITH_EVALUATOR }, { "flipud", (void*)Nelson::ElementaryFunctionsGateway::flipudBuiltin, 1, 1, CPP_BUILTIN_WITH_EVALUATOR }, - { "mean", (void*)Nelson::ElementaryFunctionsGateway::meanBuiltin, 1, 4, - CPP_BUILTIN_WITH_EVALUATOR }, - { "var", (void*)Nelson::ElementaryFunctionsGateway::varBuiltin, 1, 3, - CPP_BUILTIN_WITH_EVALUATOR }, { "find", (void*)Nelson::ElementaryFunctionsGateway::findBuiltin, 3, 3, CPP_BUILTIN_WITH_EVALUATOR }, { "isvector", (void*)Nelson::ElementaryFunctionsGateway::isvectorBuiltin, 1, 1, CPP_BUILTIN }, { "isscalar", (void*)Nelson::ElementaryFunctionsGateway::isscalarBuiltin, 1, 1, CPP_BUILTIN }, - { "corrcoef", (void*)Nelson::ElementaryFunctionsGateway::corrcoefBuiltin, 1, 1, - CPP_BUILTIN_WITH_EVALUATOR }, }; //============================================================================= NLSGATEWAYFUNC(gateway) diff --git a/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj b/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj index 63aad72d60..7d866fe106 100644 --- a/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj +++ b/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj @@ -30,12 +30,14 @@ true v142 Unicode + x64 DynamicLibrary true v142 Unicode + x64 DynamicLibrary @@ -43,6 +45,7 @@ v142 true Unicode + x64 DynamicLibrary @@ -50,6 +53,7 @@ v142 true Unicode + x64 @@ -182,7 +186,6 @@ - @@ -201,7 +204,6 @@ - @@ -256,7 +258,6 @@ - @@ -290,7 +291,6 @@ - @@ -320,7 +320,6 @@ - @@ -348,7 +347,6 @@ - diff --git a/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj.filters b/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj.filters index 7c4ee6d476..bcaa5bf5f2 100644 --- a/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj.filters +++ b/modules/elementary_functions/src/c/nlsElementary_functions.vcxproj.filters @@ -231,21 +231,12 @@ Source Files - - Source Files - Source Files - - Source Files - Source Files - - Source Files - @@ -503,21 +494,12 @@ Header Files - - Header Files - Header Files - - Header Files - Header Files - - Header Files - diff --git a/modules/linear_algebra/src/include/lapack_eigen.hpp b/modules/linear_algebra/src/include/lapack_eigen.hpp index 9e8ae4142c..d961bae1b3 100644 --- a/modules/linear_algebra/src/include/lapack_eigen.hpp +++ b/modules/linear_algebra/src/include/lapack_eigen.hpp @@ -30,6 +30,12 @@ //============================================================================= #include //============================================================================= +#pragma warning(disable : 4190) +#ifndef lapack_complex_float #define lapack_complex_float std::complex +#endif +//============================================================================= +#ifndef lapack_complex_double #define lapack_complex_double std::complex +#endif //============================================================================= diff --git a/modules/modules.iss b/modules/modules.iss index 7fd90ee8aa..25fbbbcdd6 100644 --- a/modules/modules.iss +++ b/modules/modules.iss @@ -90,4 +90,5 @@ Source: {#RootPath}modules\modules.nls; DestDir: {app}\modules\; AfterInstall: A #include "graphics/module.iss" #include "mex/module.iss" #include "ipc/module.iss" +#include "statistics/module.iss" ;============================================================================== diff --git a/modules/modules.nls.in b/modules/modules.nls.in index 0031e16ef5..a6527f6c40 100644 --- a/modules/modules.nls.in +++ b/modules/modules.nls.in @@ -79,7 +79,8 @@ modules_list = [ "webtools"; "graphics"; "mex"; -"ipc" +"ipc"; +"statistics"; ]; // ============================================================================ // optional modules @@ -148,6 +149,7 @@ modules_help_list = [ "webtools"; "mex"; "graphics"; -"ipc" +"ipc"; +"statistics"; ]; // ============================================================================ diff --git a/modules/modules.nls.vc b/modules/modules.nls.vc index c567278c97..af7b77479a 100644 --- a/modules/modules.nls.vc +++ b/modules/modules.nls.vc @@ -80,7 +80,8 @@ modules_list = [ "webtools"; "graphics"; "mex"; -"ipc" +"ipc"; +"statistics"; ]; // ============================================================================ // optional modules @@ -149,6 +150,7 @@ modules_help_list = [ "webtools"; "mex"; "graphics"; -"ipc" +"ipc"; +"statistics"; ]; // ============================================================================ diff --git a/modules/statistics/CMakeLists.txt b/modules/statistics/CMakeLists.txt new file mode 100644 index 0000000000..7928d087fa --- /dev/null +++ b/modules/statistics/CMakeLists.txt @@ -0,0 +1,120 @@ +# ============================================================================== +# Copyright (c) 2016-present Allan CORNET (Nelson) +# ============================================================================== +# This file is part of the Nelson. +# ============================================================================= +# LICENCE_BLOCK_BEGIN +# This program is free software; you can redistribute it +# and/or modify it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 2.1 of the License, +# or (at your option) any later version. +# +# Alternatively, you can redistribute it and/or modify it under the terms of the +# GNU General Public License as published by the Free Software Foundation; +# either version 2 of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more +# details. +# +# You should have received a copy of the GNU Lesser General Public License along +# with this program. If not, see . +# LICENCE_BLOCK_END +# ============================================================================== +set(module_name statistics) +set(module_library_name nlsStatistics) +set(module_library_builtin_name ${module_library_name}_builtin) +# ============================================================================== +include_directories( + ${EIGEN3_INCLUDE_DIR} + ${Boost_INCLUDE_DIRS} + ${CMAKE_CURRENT_SOURCE_DIR}/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../linear_algebra/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../characters_encoding/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../types/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../error_manager/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../stream_manager/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../elementary_functions/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../i18n/src/include) +# ============================================================================== +file(GLOB STATISTICS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/src/cpp/*.cpp") +# ============================================================================== +add_library(${module_library_name} SHARED ${STATISTICS_SRC}) +# ============================================================================== +target_link_libraries( + ${module_library_name} + nlsError_manager + nlsApi_nelson + nlsTypes + nlsI18n + nlsElementary_functions + ${BLAS_LIBRARIES} + ${LAPACK_LIBRARIES} + ${LAPACKE_LIBRARIES} + ${MAC_LAPACKE_LIBRARY}) +# ============================================================================== +set_target_properties( + ${module_library_name} + PROPERTIES + VERSION + ${Nelson_VERSION_MAJOR}.${Nelson_VERSION_MINOR}.${Nelson_VERSION_MAINTENANCE} + SOVERSION ${Nelson_VERSION_MAJOR}) +# ============================================================================== +file(GLOB STATISTICS_BUILTIN + "${CMAKE_CURRENT_SOURCE_DIR}/builtin/cpp/*.cpp") +# ============================================================================== +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR}/builtin/include + ${CMAKE_CURRENT_SOURCE_DIR}/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../interpreter/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../overload/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../api_nelson/src/include + ${CMAKE_CURRENT_SOURCE_DIR}/../i18n/src/include) +# ============================================================================== +add_library(${module_library_builtin_name} SHARED ${STATISTICS_BUILTIN}) +# ============================================================================== +target_link_libraries( + ${module_library_builtin_name} + ${module_library_name} + nlsApi_nelson + nlsError_manager + nlsInterpreter + nlsOverload + nlsTypes + nlsI18n) +# ============================================================================== +set_target_properties( + ${module_library_builtin_name} + PROPERTIES + VERSION + ${Nelson_VERSION_MAJOR}.${Nelson_VERSION_MINOR}.${Nelson_VERSION_MAINTENANCE} + SOVERSION ${Nelson_VERSION_MAJOR}) +# ============================================================================== +install(TARGETS ${module_library_name} LIBRARY DESTINATION ${LIBRARY_OUTPUT}) +install(TARGETS ${module_library_builtin_name} + LIBRARY DESTINATION ${LIBRARY_OUTPUT}) +install(FILES ${CMAKE_SOURCE_DIR}/modules/${module_name}/etc/startup.nls + DESTINATION ${ROOT_OUTPUT}/modules/${module_name}/etc) +install(FILES ${CMAKE_SOURCE_DIR}/modules/${module_name}/etc/finish.nls + DESTINATION ${ROOT_OUTPUT}/modules/${module_name}/etc) +install(FILES ${CMAKE_SOURCE_DIR}/modules/${module_name}/loader.nls + DESTINATION ${ROOT_OUTPUT}/modules/${module_name}) +install( + DIRECTORY ${CMAKE_SOURCE_DIR}/modules/${module_name}/functions + DESTINATION ${ROOT_OUTPUT}/modules/${module_name} + FILES_MATCHING + PATTERN "*.nlf") +install( + DIRECTORY ${CMAKE_SOURCE_DIR}/modules/${module_name}/help + DESTINATION ${ROOT_OUTPUT}/modules/${module_name} + FILES_MATCHING + PATTERN "*.qch" + PATTERN "xml" EXCLUDE + PATTERN "md" EXCLUDE) +install( + DIRECTORY ${CMAKE_SOURCE_DIR}/modules/${module_name}/tests + DESTINATION ${ROOT_OUTPUT}/modules/${module_name} + FILES_MATCHING + PATTERN "*.nls") +# ============================================================================== diff --git a/modules/statistics/builtin/c/dllMain.c b/modules/statistics/builtin/c/dllMain.c new file mode 100644 index 0000000000..62314027d2 --- /dev/null +++ b/modules/statistics/builtin/c/dllMain.c @@ -0,0 +1,47 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +#include "nlsConfig.h" +#include +//============================================================================= +#pragma comment(lib, CAT_3_STRINGS("boost_system-", BOOST_TARGET, ".lib")) +#pragma comment(lib, CAT_3_STRINGS("boost_filesystem-", BOOST_TARGET, ".lib")) +//============================================================================= +int WINAPI +DllMain(HINSTANCE hInstance, DWORD reason, PVOID pvReserved) +{ + switch (reason) { + case DLL_PROCESS_ATTACH: + break; + case DLL_PROCESS_DETACH: + break; + case DLL_THREAD_ATTACH: + break; + case DLL_THREAD_DETACH: + break; + } + return 1; +} +//============================================================================= diff --git a/modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj b/modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj new file mode 100644 index 0000000000..d68f6ad91b --- /dev/null +++ b/modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj @@ -0,0 +1,221 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {0C41339D-F889-4C5F-9D0C-689605FC43C2} + Win32Proj + nlsStatistics_builtin + 10.0 + + + + DynamicLibrary + true + v142 + Unicode + + + DynamicLibrary + true + v142 + Unicode + + + DynamicLibrary + false + v142 + true + Unicode + + + DynamicLibrary + false + v142 + true + Unicode + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)bin/$(PlatformName)/ + lib$(ProjectName) + + + lib$(ProjectName) + true + $(SolutionDir)bin/$(PlatformName)/ + + + false + $(SolutionDir)bin/$(PlatformName)/ + lib$(ProjectName) + + + lib$(ProjectName) + false + $(SolutionDir)bin/$(PlatformName)/ + + + + + + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_BUILTIN_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/builtin/include;$(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/overload/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + 4190 + + + Windows + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost/lib + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_BUILTIN_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/builtin/include;$(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/overload/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + 4190 + + + Windows + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost/lib + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_BUILTIN_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/builtin/include;$(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/overload/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + 4190 + + + Windows + true + true + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost/lib + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_BUILTIN_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/builtin/include;$(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/overload/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + 4190 + + + Windows + true + true + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost/lib + + + + + {1c76cdc6-19d8-429a-9ec1-817ad139f80d} + + + {d0ef0ceb-a3bd-44ab-91b3-f33db1870f8d} + + + {eca1e952-8391-4e71-9a91-0e7fd2854320} + + + {17135b09-bc25-448e-9750-c09a87fde6f8} + + + {937bee8b-e934-45f1-98ef-33aaf951e5e9} + + + {ab85e897-56b7-4792-8a8e-f3797be2b7cc} + + + {0229f943-6e1a-4cdd-8a0b-cf0f211b6c13} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj.filters b/modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj.filters new file mode 100644 index 0000000000..e53508a11a --- /dev/null +++ b/modules/statistics/builtin/c/nlsStatistics_builtin.vcxproj.filters @@ -0,0 +1,62 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + + + + + + + Resource Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/modules/statistics/builtin/c/resources.rc b/modules/statistics/builtin/c/resources.rc new file mode 100644 index 0000000000..0eeaf1c032 --- /dev/null +++ b/modules/statistics/builtin/c/resources.rc @@ -0,0 +1,98 @@ +// Microsoft Visual C++ generated resource script. +// + + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#define APSTUDIO_HIDDEN_SYMBOLS +#include "windows.h" +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// French (France) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA) +#ifdef _WIN32 +LANGUAGE LANG_FRENCH, SUBLANG_FRENCH +#pragma code_page(1252) +#endif //_WIN32 + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + + +3 TEXTINCLUDE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 0,5,1,0 + PRODUCTVERSION 0,5,1,0 + FILEFLAGSMASK 0x17L +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x4L + FILETYPE 0x0L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040c04b0" + BEGIN + VALUE "FileDescription", "statistics_builtin" + VALUE "InternalName", "statistics_builtin" + VALUE "OriginalFilename", "libnlsstatistics_builtin.dll" + VALUE "ProductName", "Nelson (statistics_builtin)" + VALUE "ProductVersion", "0,5,1,0" + VALUE "FileVersion", "0,5,1,0" + VALUE "LegalCopyright", "Nelson Copyright (C) 2016-present" + VALUE "Comments", "All rights reserved." + VALUE "CompanyName", "Allan CORNET" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x40c, 1200 + END +END + +#endif // French (France) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED + diff --git a/modules/statistics/builtin/cpp/Gateway.cpp b/modules/statistics/builtin/cpp/Gateway.cpp new file mode 100644 index 0000000000..d13cb74510 --- /dev/null +++ b/modules/statistics/builtin/cpp/Gateway.cpp @@ -0,0 +1,51 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +#include "NelsonGateway.hpp" +#include "corrcoefBuiltin.hpp" +#include "varBuiltin.hpp" +#include "meanBuiltin.hpp" +//============================================================================= +using namespace Nelson; +//============================================================================= +const std::wstring gatewayName = L"statistics"; +//============================================================================= +static const nlsGateway gateway[] = { + { "corrcoef", (void*)Nelson::StatisticsGateway::corrcoefBuiltin, 1, 1, + CPP_BUILTIN_WITH_EVALUATOR }, + { "var", (void*)Nelson::StatisticsGateway::varBuiltin, 1, 3, + CPP_BUILTIN_WITH_EVALUATOR }, + { "mean", (void*)Nelson::StatisticsGateway::meanBuiltin, 1, 4, + CPP_BUILTIN_WITH_EVALUATOR }, +}; +//============================================================================= +NLSGATEWAYFUNC(gateway) +//============================================================================= +NLSGATEWAYINFO(gateway) +//============================================================================= +NLSGATEWAYREMOVE(gateway) +//============================================================================= +NLSGATEWAYNAME() +//============================================================================= diff --git a/modules/elementary_functions/builtin/cpp/corrcoefBuiltin.cpp b/modules/statistics/builtin/cpp/corrcoefBuiltin.cpp similarity index 97% rename from modules/elementary_functions/builtin/cpp/corrcoefBuiltin.cpp rename to modules/statistics/builtin/cpp/corrcoefBuiltin.cpp index dd7b3986ea..dbfbef9095 100644 --- a/modules/elementary_functions/builtin/cpp/corrcoefBuiltin.cpp +++ b/modules/statistics/builtin/cpp/corrcoefBuiltin.cpp @@ -31,7 +31,7 @@ using namespace Nelson; //============================================================================= ArrayOfVector -Nelson::ElementaryFunctionsGateway::corrcoefBuiltin( +Nelson::StatisticsGateway::corrcoefBuiltin( Evaluator* eval, int nLhs, const ArrayOfVector& argIn) { ArrayOfVector retval; diff --git a/modules/elementary_functions/builtin/cpp/meanBuiltin.cpp b/modules/statistics/builtin/cpp/meanBuiltin.cpp similarity index 99% rename from modules/elementary_functions/builtin/cpp/meanBuiltin.cpp rename to modules/statistics/builtin/cpp/meanBuiltin.cpp index 337a0d90a4..d8612f6c94 100644 --- a/modules/elementary_functions/builtin/cpp/meanBuiltin.cpp +++ b/modules/statistics/builtin/cpp/meanBuiltin.cpp @@ -32,7 +32,7 @@ using namespace Nelson; //============================================================================= ArrayOfVector -Nelson::ElementaryFunctionsGateway::meanBuiltin( +Nelson::StatisticsGateway::meanBuiltin( Evaluator* eval, int nLhs, const ArrayOfVector& argIn) { ArrayOfVector retval; diff --git a/modules/elementary_functions/builtin/cpp/varBuiltin.cpp b/modules/statistics/builtin/cpp/varBuiltin.cpp similarity index 96% rename from modules/elementary_functions/builtin/cpp/varBuiltin.cpp rename to modules/statistics/builtin/cpp/varBuiltin.cpp index da8e66ac20..d9762a5404 100644 --- a/modules/elementary_functions/builtin/cpp/varBuiltin.cpp +++ b/modules/statistics/builtin/cpp/varBuiltin.cpp @@ -32,12 +32,12 @@ using namespace Nelson; //============================================================================= ArrayOfVector -Nelson::ElementaryFunctionsGateway::varBuiltin( +Nelson::StatisticsGateway::varBuiltin( Evaluator* eval, int nLhs, const ArrayOfVector& argIn) { ArrayOfVector retval; bool bSuccess = false; - bool nArgInSupported = argIn.size() > 1 || argIn.size() < 3; + bool nArgInSupported = argIn.size() > 0 && argIn.size() < 4; if (!nArgInSupported) { Error(ERROR_WRONG_NUMBERS_INPUT_ARGS); } diff --git a/modules/elementary_functions/builtin/include/corrcoefBuiltin.hpp b/modules/statistics/builtin/include/corrcoefBuiltin.hpp similarity index 98% rename from modules/elementary_functions/builtin/include/corrcoefBuiltin.hpp rename to modules/statistics/builtin/include/corrcoefBuiltin.hpp index 63f88d32ec..a4dec4e5c7 100644 --- a/modules/elementary_functions/builtin/include/corrcoefBuiltin.hpp +++ b/modules/statistics/builtin/include/corrcoefBuiltin.hpp @@ -30,7 +30,7 @@ //============================================================================= namespace Nelson { //============================================================================= -namespace ElementaryFunctionsGateway { +namespace StatisticsGateway { //============================================================================= ArrayOfVector corrcoefBuiltin(Evaluator* eval, int nLhs, const ArrayOfVector& argIn); diff --git a/modules/elementary_functions/builtin/include/meanBuiltin.hpp b/modules/statistics/builtin/include/meanBuiltin.hpp similarity index 98% rename from modules/elementary_functions/builtin/include/meanBuiltin.hpp rename to modules/statistics/builtin/include/meanBuiltin.hpp index d44697f057..62b9a5e953 100644 --- a/modules/elementary_functions/builtin/include/meanBuiltin.hpp +++ b/modules/statistics/builtin/include/meanBuiltin.hpp @@ -30,7 +30,7 @@ //============================================================================= namespace Nelson { //============================================================================= -namespace ElementaryFunctionsGateway { +namespace StatisticsGateway { ArrayOfVector meanBuiltin(Evaluator* eval, int nLhs, const ArrayOfVector& argIn); } diff --git a/modules/statistics/builtin/include/nlsStatistics_builtin_exports.h b/modules/statistics/builtin/include/nlsStatistics_builtin_exports.h new file mode 100644 index 0000000000..87d0329f0f --- /dev/null +++ b/modules/statistics/builtin/include/nlsStatistics_builtin_exports.h @@ -0,0 +1,37 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +#pragma once +//============================================================================= +#ifdef _MSC_VER +#ifdef NLSSINGLE_BUILTIN_EXPORTS +#define NLSSINGLE_BUILTIN_IMPEXP __declspec(dllexport) +#else +#define NLSSINGLE_BUILTIN_IMPEXP __declspec(dllimport) +#endif +#else +#define NLSSINGLE_BUILTIN_IMPEXP __attribute__((visibility("default"))) +#endif +//============================================================================= diff --git a/modules/elementary_functions/builtin/include/varBuiltin.hpp b/modules/statistics/builtin/include/varBuiltin.hpp similarity index 98% rename from modules/elementary_functions/builtin/include/varBuiltin.hpp rename to modules/statistics/builtin/include/varBuiltin.hpp index 053618502f..2e5b99c1a3 100644 --- a/modules/elementary_functions/builtin/include/varBuiltin.hpp +++ b/modules/statistics/builtin/include/varBuiltin.hpp @@ -30,7 +30,7 @@ //============================================================================= namespace Nelson { //============================================================================= -namespace ElementaryFunctionsGateway { +namespace StatisticsGateway { //============================================================================= ArrayOfVector varBuiltin(Evaluator* eval, int nLhs, const ArrayOfVector& argIn); diff --git a/modules/statistics/etc/finish.nls b/modules/statistics/etc/finish.nls new file mode 100644 index 0000000000..951091ce71 --- /dev/null +++ b/modules/statistics/etc/finish.nls @@ -0,0 +1,26 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +removegateway(modulepath(nelsonroot(), 'statistics', 'builtin')); \ No newline at end of file diff --git a/modules/statistics/etc/startup.nls b/modules/statistics/etc/startup.nls new file mode 100644 index 0000000000..1a37302bd3 --- /dev/null +++ b/modules/statistics/etc/startup.nls @@ -0,0 +1,27 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +addgateway(modulepath(nelsonroot(), 'statistics', 'builtin')); +addpath(modulepath(nelsonroot(), 'statistics', 'functions'), '-frozen'); diff --git a/modules/elementary_functions/functions/cov.nlf b/modules/statistics/functions/cov.nlf similarity index 100% rename from modules/elementary_functions/functions/cov.nlf rename to modules/statistics/functions/cov.nlf diff --git a/modules/statistics/help/en_US/xml/chapter.xml b/modules/statistics/help/en_US/xml/chapter.xml new file mode 100644 index 0000000000..a1a59db4da --- /dev/null +++ b/modules/statistics/help/en_US/xml/chapter.xml @@ -0,0 +1,9 @@ + + + SAME AS NELSON SOFTWARE + en_US + statistics + statistics + statistics functions + + diff --git a/modules/elementary_functions/help/en_US/xml/corrcoef.xml b/modules/statistics/help/en_US/xml/corrcoef.xml similarity index 100% rename from modules/elementary_functions/help/en_US/xml/corrcoef.xml rename to modules/statistics/help/en_US/xml/corrcoef.xml diff --git a/modules/elementary_functions/help/en_US/xml/cov.xml b/modules/statistics/help/en_US/xml/cov.xml similarity index 100% rename from modules/elementary_functions/help/en_US/xml/cov.xml rename to modules/statistics/help/en_US/xml/cov.xml diff --git a/modules/elementary_functions/help/en_US/xml/mean.xml b/modules/statistics/help/en_US/xml/mean.xml similarity index 100% rename from modules/elementary_functions/help/en_US/xml/mean.xml rename to modules/statistics/help/en_US/xml/mean.xml diff --git a/modules/elementary_functions/help/en_US/xml/var.xml b/modules/statistics/help/en_US/xml/var.xml similarity index 100% rename from modules/elementary_functions/help/en_US/xml/var.xml rename to modules/statistics/help/en_US/xml/var.xml diff --git a/modules/statistics/loader.nls b/modules/statistics/loader.nls new file mode 100644 index 0000000000..6f504382ec --- /dev/null +++ b/modules/statistics/loader.nls @@ -0,0 +1,27 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +addmodule([nelsonroot() '/modules/' 'statistics'], 'statistics'); +//============================================================================= diff --git a/modules/statistics/module.iss b/modules/statistics/module.iss new file mode 100644 index 0000000000..36e8a7d2aa --- /dev/null +++ b/modules/statistics/module.iss @@ -0,0 +1,40 @@ +;============================================================================== +; Copyright (c) 2016-present Allan CORNET (Nelson) +;============================================================================== +; This file is part of the Nelson. +;============================================================================== +; LICENCE_BLOCK_BEGIN +; This program is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2.1 of the License, or (at your option) any later version. +; +; Alternatively, you can redistribute it and/or +; modify it under the terms of the GNU General Public License as +; published by the Free Software Foundation; either version 2 of +; the License, or (at your option) any later version. +; +; This program is distributed in the hope that it will be useful, +; but WITHOUT ANY WARRANTY; without even the implied warranty of +; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +; GNU Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this program. If not, see . +; LICENCE_BLOCK_END +;============================================================================== +#define MODULE_NAME "statistics" +;============================================================================== +Source: {#RootPath}bin\{#BinPath}\libnlsStatistics.dll; DestDir: {app}\bin\{#BinPath}\; +Source: {#RootPath}bin\{#BinPath}\libnlsStatistics_builtin.dll; DestDir: {app}\bin\{#BinPath}\; +;============================================================================== +Source: {#RootPath}modules\{#MODULE_NAME}\loader.nls; DestDir: {app}\modules\{#MODULE_NAME}\; +Source: {#RootPath}modules\{#MODULE_NAME}\etc\startup.nls; DestDir: {app}\modules\{#MODULE_NAME}\etc\; +Source: {#RootPath}modules\{#MODULE_NAME}\etc\finish.nls; DestDir: {app}\modules\{#MODULE_NAME}\etc\; +;============================================================================== +Source: {#RootPath}modules\{#MODULE_NAME}\functions\*.nlf; DestDir: {app}\modules\{#MODULE_NAME}\functions\; +;============================================================================== +Source: {#RootPath}modules\{#MODULE_NAME}\help\*.qch; DestDir: {app}\modules\{#MODULE_NAME}\help\; Flags: recursesubdirs +;============================================================================== +Source: {#RootPath}modules\{#MODULE_NAME}\tests\*.nls; DestDir: {app}\modules\{#MODULE_NAME}\tests\; Flags: recursesubdirs +;============================================================================== diff --git a/modules/statistics/src/c/dllMain.c b/modules/statistics/src/c/dllMain.c new file mode 100644 index 0000000000..93b2678be2 --- /dev/null +++ b/modules/statistics/src/c/dllMain.c @@ -0,0 +1,45 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +#include +//============================================================================= +#pragma comment(lib, "libnlsblaslapack.lib") +//============================================================================= +int WINAPI +DllMain(HINSTANCE hInstance, DWORD reason, PVOID pvReserved) +{ + switch (reason) { + case DLL_PROCESS_ATTACH: + break; + case DLL_PROCESS_DETACH: + break; + case DLL_THREAD_ATTACH: + break; + case DLL_THREAD_DETACH: + break; + } + return 1; +} +//============================================================================= diff --git a/modules/statistics/src/c/nlsStatistics.vcxproj b/modules/statistics/src/c/nlsStatistics.vcxproj new file mode 100644 index 0000000000..278b2e1e61 --- /dev/null +++ b/modules/statistics/src/c/nlsStatistics.vcxproj @@ -0,0 +1,207 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {9AC8560A-9E4C-4430-9938-63D6377890EB} + Win32Proj + nlsStatistics + 10.0 + + + + DynamicLibrary + true + v142 + Unicode + + + DynamicLibrary + true + v142 + Unicode + + + DynamicLibrary + false + v142 + true + Unicode + + + DynamicLibrary + false + v142 + true + Unicode + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)bin/$(PlatformName)/ + lib$(ProjectName) + + + lib$(ProjectName) + true + $(SolutionDir)bin/$(PlatformName)/ + + + false + $(SolutionDir)bin/$(PlatformName)/ + lib$(ProjectName) + + + lib$(ProjectName) + false + $(SolutionDir)bin/$(PlatformName)/ + + + + + + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/linear_algebra/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/constructors_functions/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)modules/elementary_functions/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Eigen;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + + + Windows + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/openblas/lib + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/linear_algebra/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/constructors_functions/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)modules/elementary_functions/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Eigen;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + + + Windows + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/openblas/lib + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/linear_algebra/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/constructors_functions/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)modules/elementary_functions/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Eigen;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + + + Windows + true + true + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/openblas/lib + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NLSSTATISTICS_EXPORTS;%(PreprocessorDefinitions) + true + $(SolutionDir)modules/statistics/src/include;$(SolutionDir)modules/linear_algebra/src/include;$(SolutionDir)modules/api_nelson/src/include;$(SolutionDir)modules/interpreter/src/include;$(SolutionDir)modules/types/src/include;$(SolutionDir)modules/constructors_functions/src/include;$(SolutionDir)modules/stream_manager/src/include;$(SolutionDir)modules/i18n/src/include;$(SolutionDir)modules/elementary_functions/src/include;$(SolutionDir)modules/error_manager/src/include;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Eigen;$(SolutionDir)../NelSon-thirdparty-$(PlatformName)/Boost + true + + + Windows + true + true + true + $(SolutionDir)../NelSon-thirdparty-$(PlatformName)/openblas/lib + + + + + {1c76cdc6-19d8-429a-9ec1-817ad139f80d} + + + {c87973dd-f66c-4f35-b875-5e0a0a47b3e7} + + + {d0ef0ceb-a3bd-44ab-91b3-f33db1870f8d} + + + {eca1e952-8391-4e71-9a91-0e7fd2854320} + + + {ab85e897-56b7-4792-8a8e-f3797be2b7cc} + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/statistics/src/c/nlsStatistics.vcxproj.filters b/modules/statistics/src/c/nlsStatistics.vcxproj.filters new file mode 100644 index 0000000000..05cdeb2892 --- /dev/null +++ b/modules/statistics/src/c/nlsStatistics.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + + + + Resource Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/modules/statistics/src/c/resources.rc b/modules/statistics/src/c/resources.rc new file mode 100644 index 0000000000..4d50f41b2b --- /dev/null +++ b/modules/statistics/src/c/resources.rc @@ -0,0 +1,98 @@ +// Microsoft Visual C++ generated resource script. +// + + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#define APSTUDIO_HIDDEN_SYMBOLS +#include "windows.h" +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// French (France) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA) +#ifdef _WIN32 +LANGUAGE LANG_FRENCH, SUBLANG_FRENCH +#pragma code_page(1252) +#endif //_WIN32 + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + + +3 TEXTINCLUDE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 0,5,1,0 + PRODUCTVERSION 0,5,1,0 + FILEFLAGSMASK 0x17L +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x4L + FILETYPE 0x0L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040c04b0" + BEGIN + VALUE "FileDescription", "statistics" + VALUE "InternalName", "statistics" + VALUE "OriginalFilename", "libnlsstatistics.dll" + VALUE "ProductName", "Nelson (statistics)" + VALUE "ProductVersion", "0,5,1,0" + VALUE "FileVersion", "0,5,1,0" + VALUE "LegalCopyright", "Nelson Copyright (C) 2016-present" + VALUE "Comments", "All rights reserved." + VALUE "CompanyName", "Allan CORNET" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x40c, 1200 + END +END + +#endif // French (France) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED + diff --git a/modules/elementary_functions/src/cpp/CorrelationCoefficients.cpp b/modules/statistics/src/cpp/CorrelationCoefficients.cpp similarity index 100% rename from modules/elementary_functions/src/cpp/CorrelationCoefficients.cpp rename to modules/statistics/src/cpp/CorrelationCoefficients.cpp diff --git a/modules/elementary_functions/src/cpp/Mean.cpp b/modules/statistics/src/cpp/Mean.cpp similarity index 100% rename from modules/elementary_functions/src/cpp/Mean.cpp rename to modules/statistics/src/cpp/Mean.cpp diff --git a/modules/elementary_functions/src/cpp/Variance.cpp b/modules/statistics/src/cpp/Variance.cpp similarity index 100% rename from modules/elementary_functions/src/cpp/Variance.cpp rename to modules/statistics/src/cpp/Variance.cpp diff --git a/modules/elementary_functions/src/include/CorrelationCoefficients.hpp b/modules/statistics/src/include/CorrelationCoefficients.hpp similarity index 95% rename from modules/elementary_functions/src/include/CorrelationCoefficients.hpp rename to modules/statistics/src/include/CorrelationCoefficients.hpp index e12a929c6d..631f9768d2 100644 --- a/modules/elementary_functions/src/include/CorrelationCoefficients.hpp +++ b/modules/statistics/src/include/CorrelationCoefficients.hpp @@ -26,11 +26,11 @@ #pragma once //============================================================================= #include "ArrayOf.hpp" -#include "nlsElementary_functions_exports.h" +#include "nlsStatistics_exports.h" //============================================================================= namespace Nelson { //============================================================================= -NLSELEMENTARY_FUNCTIONS_IMPEXP ArrayOf +NLSSTATISTICS_IMPEXP ArrayOf CorrelationCoefficients(const ArrayOf& A, bool& needToOverload); //============================================================================= } // namespace Nelson diff --git a/modules/elementary_functions/src/include/Mean.hpp b/modules/statistics/src/include/Mean.hpp similarity index 94% rename from modules/elementary_functions/src/include/Mean.hpp rename to modules/statistics/src/include/Mean.hpp index 7c6d7a1ea9..39fcc2c97e 100644 --- a/modules/elementary_functions/src/include/Mean.hpp +++ b/modules/statistics/src/include/Mean.hpp @@ -26,7 +26,7 @@ #pragma once //============================================================================= #include "ArrayOf.hpp" -#include "nlsElementary_functions_exports.h" +#include "nlsStatistics_exports.h" //============================================================================= namespace Nelson { /** @@ -40,10 +40,10 @@ enum MEAN_OUT_TYPE DOUBLE }; //============================================================================= -NLSELEMENTARY_FUNCTIONS_IMPEXP ArrayOf +NLSSTATISTICS_IMPEXP ArrayOf MeanAll(const ArrayOf& A, bool omitNaN, MEAN_OUT_TYPE outType, bool& needToOverload); //============================================================================= -NLSELEMENTARY_FUNCTIONS_IMPEXP ArrayOf +NLSSTATISTICS_IMPEXP ArrayOf Mean(const ArrayOf& A, indexType dim, bool omitNaN, MEAN_OUT_TYPE outType, bool& needToOverload); //============================================================================= } // namespace Nelson diff --git a/modules/elementary_functions/src/include/Variance.hpp b/modules/statistics/src/include/Variance.hpp similarity index 96% rename from modules/elementary_functions/src/include/Variance.hpp rename to modules/statistics/src/include/Variance.hpp index bdaa3e9513..c5f6c876f6 100644 --- a/modules/elementary_functions/src/include/Variance.hpp +++ b/modules/statistics/src/include/Variance.hpp @@ -26,11 +26,11 @@ #pragma once //============================================================================= #include "ArrayOf.hpp" -#include "nlsElementary_functions_exports.h" +#include "nlsStatistics_exports.h" //============================================================================= namespace Nelson { //============================================================================= -NLSELEMENTARY_FUNCTIONS_IMPEXP +NLSSTATISTICS_IMPEXP ArrayOf Variance(const ArrayOf& A, int w, int dim, bool& needToOverload); //============================================================================= diff --git a/modules/statistics/src/include/nlsStatistics_exports.h b/modules/statistics/src/include/nlsStatistics_exports.h new file mode 100644 index 0000000000..01744e8004 --- /dev/null +++ b/modules/statistics/src/include/nlsStatistics_exports.h @@ -0,0 +1,37 @@ +//============================================================================= +// Copyright (c) 2016-present Allan CORNET (Nelson) +//============================================================================= +// This file is part of the Nelson. +//============================================================================= +// LICENCE_BLOCK_BEGIN +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// Alternatively, you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of +// the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program. If not, see . +// LICENCE_BLOCK_END +//============================================================================= +#pragma once +//============================================================================= +#ifdef _MSC_VER +#ifdef NLSSTATISTICS_EXPORTS +#define NLSSTATISTICS_IMPEXP __declspec(dllexport) +#else +#define NLSSTATISTICS_IMPEXP __declspec(dllimport) +#endif +#else +#define NLSSTATISTICS_IMPEXP __attribute__((visibility("default"))) +#endif +//============================================================================= diff --git a/modules/elementary_functions/tests/bench_corrcoef.nls b/modules/statistics/tests/bench_corrcoef.nls similarity index 100% rename from modules/elementary_functions/tests/bench_corrcoef.nls rename to modules/statistics/tests/bench_corrcoef.nls diff --git a/modules/elementary_functions/tests/test_corrcoef.nls b/modules/statistics/tests/test_corrcoef.nls similarity index 100% rename from modules/elementary_functions/tests/test_corrcoef.nls rename to modules/statistics/tests/test_corrcoef.nls diff --git a/modules/elementary_functions/tests/test_cov.nls b/modules/statistics/tests/test_cov.nls similarity index 100% rename from modules/elementary_functions/tests/test_cov.nls rename to modules/statistics/tests/test_cov.nls diff --git a/modules/elementary_functions/tests/test_mean.nls b/modules/statistics/tests/test_mean.nls similarity index 100% rename from modules/elementary_functions/tests/test_mean.nls rename to modules/statistics/tests/test_mean.nls diff --git a/modules/elementary_functions/tests/test_var.nls b/modules/statistics/tests/test_var.nls similarity index 100% rename from modules/elementary_functions/tests/test_var.nls rename to modules/statistics/tests/test_var.nls