diff --git a/src/.removed_features/domain/Domain.hpp b/src/.removed_features/domain/Domain.hpp index 7d2b657f5f10388e0e95fa1b34c2612db35cde00..d342f55cbbd05c8d89103b3b7bd7d992cb95ecba 100644 --- a/src/.removed_features/domain/Domain.hpp +++ b/src/.removed_features/domain/Domain.hpp @@ -3,7 +3,7 @@ * * A dictionary representation of the domain for a features (key = domain, value = power) * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.cpp b/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.cpp index 3600a90017d7a5c9e375e8125a990eaa217e2782..bf7d040a39d4c3d9009714d022b64fe3ab0d972f 100644 --- a/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.cpp +++ b/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.cpp @@ -1,4 +1,4 @@ -#include <descriptor_identifier/Model/ModelLogRegressorFitC.hpp> +#include <descriptor_identifier/model/ModelLogRegressorFitC.hpp> ModelLogRegressorFitC::ModelLogRegressorFitC(Unit prop_unit, std::vector<double> prop_train, std::vector<double> prop_test, std::vector<model_node_ptr> feats, std::vector<int> task_sizes_train, std::vector<int> task_sizes_test, bool fix_intercept) : ModelLogRegressor(prop_unit, prop_train, prop_test, feats, task_sizes_train, task_sizes_test, fix_intercept), diff --git a/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.hpp b/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.hpp index 8a88603d299bfeabb7f508c21775b11c587fb09f..a699cd703f2e0ac9e107e077d7a060472e6041cd 100644 --- a/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.hpp +++ b/src/.removed_features/log_fit_c_regressor/ModelLogRegressorFitC.hpp @@ -4,13 +4,14 @@ * Creates a ModelLogRegressorFitC generated from SISSO and the corresponding output file. * It also has functionality to read in an output file to regenerate the model. * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef MODEL_LOG_REGRESSOR_FIT_C #define MODEL_LOG_REGRESSOR_FIT_C -#include <descriptor_identifier/Model/ModelLogRegressor.hpp> +#include <descriptor_identifier/model/ModelLogRegressor.hpp> #include <nl_opt/NLOptWrapper.hpp> #ifdef PY_BINDINGS namespace np = boost::python::numpy; diff --git a/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.cpp b/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.cpp index ad5ad1acbd6dfe014b0656a0c3df066c8ba46e03..020e91aecc7ed7e0ed56c780de93e6448db6e8b6 100644 --- a/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.cpp +++ b/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.cpp @@ -1,4 +1,4 @@ -#include <descriptor_identifier/SISSO_DI/SISSOLogRegressorFitC.hpp> +#include <descriptor_identifier/solver/SISSOLogRegressorFitC.hpp> SISSOLogRegressorFitC::SISSOLogRegressorFitC( std::shared_ptr<FeatureSpace> feat_space, diff --git a/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.hpp b/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.hpp index 01eb4c381e9434adc2719588629908144aa2eb81..904c36376f919cd16fc07b6c7ac51b4b376006da 100644 --- a/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.hpp +++ b/src/.removed_features/log_fit_c_regressor/SISSOLogRegressorFitC.hpp @@ -3,14 +3,15 @@ * * Takes in a feature space and performs SISSO on it while storing the selected features in _models * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef SISSO_LOG_REGRESSOR_FIT_C #define SISSO_LOG_REGRESSOR_FIT_C -#include <descriptor_identifier/Model/ModelLogRegressorFitC.hpp> -#include <descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp> +#include <descriptor_identifier/model/ModelLogRegressorFitC.hpp> +#include <descriptor_identifier/solver/SISSOLogRegressor.hpp> #ifdef PY_BINDINGS namespace np = boost::python::numpy; @@ -146,7 +147,7 @@ public: // DocString: sisso_log_reg_models_py /** - * @brief The selected models (cpp definition in <python/descriptor_identifier/SISSO_DI.cpp) + * @brief The selected models (cpp definition in <python/descriptor_identifier/SISSOSolver.cpp) * @return models as a python list */ py::list models_py(); diff --git a/src/classification/ConvexHull1D.hpp b/src/classification/ConvexHull1D.hpp index d94d542811afaabb26feda34e664ccb95ce34fa2..8d04afef2f978945ff77389d759160c655d1f917 100644 --- a/src/classification/ConvexHull1D.hpp +++ b/src/classification/ConvexHull1D.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file classification/ConvexHull1D.hpp - * @brief A set of functions to create convex hulls, and compare overlap/distance + * @brief Defines a class that calculates the 1D Convex Hull overlap of a vector with property labels * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef CONVEX_UTILS #define CONVEX_UTILS diff --git a/src/classification/LPWrapper.hpp b/src/classification/LPWrapper.hpp index 5002b33712378f62ad875583165d470e73aec32e..2e72dee0686a4f4309a12dcfdc795d7b3fe98764 100644 --- a/src/classification/LPWrapper.hpp +++ b/src/classification/LPWrapper.hpp @@ -11,10 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file classification/LPWrapper.hpp - * @brief A class used to wrap Coin-Clp into a single class + * @brief A class used to wrap the Coin-Clp Simplex Library, and facilitate its use with SISSO++ * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/classification/SVMWrapper.cpp b/src/classification/SVMWrapper.cpp index 4fa2bf162830be4a22e07df08df693835229fc69..e69b40f00bb72d57d8f21ed33f4e278539261998 100644 --- a/src/classification/SVMWrapper.cpp +++ b/src/classification/SVMWrapper.cpp @@ -11,6 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + #include "classification/SVMWrapper.hpp" SVMWrapper::SVMWrapper(const int n_class, const int n_dim, const int n_samp, const double* prop) : diff --git a/src/classification/SVMWrapper.hpp b/src/classification/SVMWrapper.hpp index c8a589551a0c9c7dcfa4ae2c487d7aea34f043ca..fe0524b0f697399f9a31f6a04bdeed8e7ce432cf 100644 --- a/src/classification/SVMWrapper.hpp +++ b/src/classification/SVMWrapper.hpp @@ -11,10 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file classification/SVMWrapper.hpp - * @brief A class used to wrap libsvm in more C++ oriented data structure + * @brief A class used to wrap libsvm in more C++ oriented data structure * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/classification/prop_sorted_d_mat.hpp b/src/classification/prop_sorted_d_mat.hpp index 8434fb2f4014c461f767cc7aed6bea366b33c627..acabd3b7c34ae59c315c2ca186d802376c0f851a 100644 --- a/src/classification/prop_sorted_d_mat.hpp +++ b/src/classification/prop_sorted_d_mat.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -/** @file classification/prop_sorted_d_mat.hpp - * @brief Central storage area for a sorted descriptor matrix based on the task/class of a sample - * @author Thomas A. R. Purcell (tpurcell) +/** @file classification/prop_sorted_d_mat.hpp + * @brief Central storage area for a sorted descriptor matrix based on the task/class of a sample + * + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef PROP_SORTED_D_MAT #define PROP_SORTED_D_MAT diff --git a/src/descriptor_identifier/Model/Model.cpp b/src/descriptor_identifier/model/Model.cpp similarity index 99% rename from src/descriptor_identifier/Model/Model.cpp rename to src/descriptor_identifier/model/Model.cpp index e3ef4be28b2562c0b00b0136f07090e14526d842..bc55527f26cef3c64434153c0513a4cea96f0e23 100644 --- a/src/descriptor_identifier/Model/Model.cpp +++ b/src/descriptor_identifier/model/Model.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/Model/Model.hpp" +#include "descriptor_identifier/model/Model.hpp" Model::Model( const std::string prop_label, diff --git a/src/descriptor_identifier/Model/Model.hpp b/src/descriptor_identifier/model/Model.hpp similarity index 98% rename from src/descriptor_identifier/Model/Model.hpp rename to src/descriptor_identifier/model/Model.hpp index 2a4f1790227467e338a6dae859de85c661197497..1847bf12333b52d9105f6b800a60dfdf3fac99d4 100644 --- a/src/descriptor_identifier/Model/Model.hpp +++ b/src/descriptor_identifier/model/Model.hpp @@ -11,15 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -/** @file descriptor_identifier/Model/Model.hpp - * @brief Object to store the models generated form SISSO - * - * Creates a Model generated from SISSO and the corresponding output file. - * It also has functionality to read in an output file to regenerate the model. + +/** @file descriptor_identifier/model/Model.hpp + * @brief Defines the base class of the output Models for SISSO * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef MODEL #define MODEL diff --git a/src/descriptor_identifier/Model/ModelClassifier.cpp b/src/descriptor_identifier/model/ModelClassifier.cpp similarity index 99% rename from src/descriptor_identifier/Model/ModelClassifier.cpp rename to src/descriptor_identifier/model/ModelClassifier.cpp index 9db9dec9b2525470d5850df3d55d4e23e5748392..94895e49242e21da6b074811fc93f310e3cd69f4 100644 --- a/src/descriptor_identifier/Model/ModelClassifier.cpp +++ b/src/descriptor_identifier/model/ModelClassifier.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/Model/ModelClassifier.hpp" +#include "descriptor_identifier/model/ModelClassifier.hpp" ModelClassifier::ModelClassifier( const std::string prop_label, diff --git a/src/descriptor_identifier/Model/ModelClassifier.hpp b/src/descriptor_identifier/model/ModelClassifier.hpp similarity index 96% rename from src/descriptor_identifier/Model/ModelClassifier.hpp rename to src/descriptor_identifier/model/ModelClassifier.hpp index 6459c29a465636651665e2629f0619f6e7f7c8c9..94baf348cb99675cf7755f5d8dd8b22fc61e3a2a 100644 --- a/src/descriptor_identifier/Model/ModelClassifier.hpp +++ b/src/descriptor_identifier/model/ModelClassifier.hpp @@ -11,19 +11,18 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -/** @file descriptor_identifier/ModelClassifier/ModelClassifier.hpp - * @brief Object to store the models generated form SISSO - * - * Creates a ModelClassifier generated from SISSO and the corresponding output file. - * It also has functionality to read in an output file to regenerate the model. + +/** @file descriptor_identifier/model/ModelClassifier.hpp + * @brief Defines a class for the output models from solving a classification problem * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef MODEL_CLASSIFIER #define MODEL_CLASSIFIER -#include "descriptor_identifier/Model/Model.hpp" +#include "descriptor_identifier/model/Model.hpp" #ifdef PY_BINDINGS namespace np = boost::python::numpy; diff --git a/src/descriptor_identifier/Model/ModelLogRegressor.cpp b/src/descriptor_identifier/model/ModelLogRegressor.cpp similarity index 99% rename from src/descriptor_identifier/Model/ModelLogRegressor.cpp rename to src/descriptor_identifier/model/ModelLogRegressor.cpp index 39009feb22e848e0f0a8fb2493326e99ceb366f3..5bb4703ddfa227cdbc034bad2918543e8c2b05e1 100644 --- a/src/descriptor_identifier/Model/ModelLogRegressor.cpp +++ b/src/descriptor_identifier/model/ModelLogRegressor.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/Model/ModelLogRegressor.hpp" +#include "descriptor_identifier/model/ModelLogRegressor.hpp" ModelLogRegressor::ModelLogRegressor() {} diff --git a/src/descriptor_identifier/Model/ModelLogRegressor.hpp b/src/descriptor_identifier/model/ModelLogRegressor.hpp similarity index 94% rename from src/descriptor_identifier/Model/ModelLogRegressor.hpp rename to src/descriptor_identifier/model/ModelLogRegressor.hpp index b57965afe654e6723174e4d5b6b9c12f8156b52c..8b94934c08ad8948199ed6dec2dfc071f584dcf0 100644 --- a/src/descriptor_identifier/Model/ModelLogRegressor.hpp +++ b/src/descriptor_identifier/model/ModelLogRegressor.hpp @@ -11,19 +11,18 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -/** @file descriptor_identifier/ModelLogRegressor/ModelLogRegressor.hpp - * @brief Object to store the models generated form SISSO - * - * Creates a ModelLogRegressor generated from SISSO and the corresponding output file. - * It also has functionality to read in an output file to regenerate the model. + +/** @file descriptor_identifier/model/ModelLogRegressor.hpp + * @brief Defines a class for the output models from solving a log regression problem * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef MODEL_LOG_REGRESSOR #define MODEL_LOG_REGRESSOR -#include "descriptor_identifier/Model/ModelRegressor.hpp" +#include "descriptor_identifier/model/ModelRegressor.hpp" #ifdef PY_BINDINGS namespace np = boost::python::numpy; diff --git a/src/descriptor_identifier/Model/ModelRegressor.cpp b/src/descriptor_identifier/model/ModelRegressor.cpp similarity index 99% rename from src/descriptor_identifier/Model/ModelRegressor.cpp rename to src/descriptor_identifier/model/ModelRegressor.cpp index 0c151af4a95e553dbb4aa20e1cfea1a3933a9874..a528498a1a66475b13317f640838856c79b1f703 100644 --- a/src/descriptor_identifier/Model/ModelRegressor.cpp +++ b/src/descriptor_identifier/model/ModelRegressor.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/Model/ModelRegressor.hpp" +#include "descriptor_identifier/model/ModelRegressor.hpp" ModelRegressor::ModelRegressor() {} diff --git a/src/descriptor_identifier/Model/ModelRegressor.hpp b/src/descriptor_identifier/model/ModelRegressor.hpp similarity index 96% rename from src/descriptor_identifier/Model/ModelRegressor.hpp rename to src/descriptor_identifier/model/ModelRegressor.hpp index 93713be12e2210201ff4e8b4c282e20ad2360ebc..753a4c66e8fc83228e88fb149cffd3d4d54fccbe 100644 --- a/src/descriptor_identifier/Model/ModelRegressor.hpp +++ b/src/descriptor_identifier/model/ModelRegressor.hpp @@ -11,19 +11,18 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -/** @file descriptor_identifier/ModelRegressor/ModelRegressor.hpp - * @brief Object to store the models generated form SISSO - * - * Creates a ModelRegressor generated from SISSO and the corresponding output file. - * It also has functionality to read in an output file to regenerate the model. + +/** @file descriptor_identifier/model/ModelRegressor.hpp + * @brief Defines a class for the output models from solving a regression problem * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef MODEL_REGRESSOR #define MODEL_REGRESSOR -#include "descriptor_identifier/Model/Model.hpp" +#include "descriptor_identifier/model/Model.hpp" #ifdef PY_BINDINGS namespace np = boost::python::numpy; diff --git a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp b/src/descriptor_identifier/solver/SISSOClassifier.cpp similarity index 99% rename from src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp rename to src/descriptor_identifier/solver/SISSOClassifier.cpp index 437e27ca8829ea11d75c34732dddc79b654b57c2..68a9e529f99781e756f901de2913d6f094777fad 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp +++ b/src/descriptor_identifier/solver/SISSOClassifier.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp" +#include "descriptor_identifier/solver/SISSOClassifier.hpp" SISSOClassifier::SISSOClassifier( const std::shared_ptr<FeatureSpace> feat_space, @@ -26,7 +26,7 @@ SISSOClassifier::SISSOClassifier( const int n_residual, const int n_models_store ): - SISSO_DI( + SISSOSolver( "classification", feat_space, prop_label, diff --git a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp b/src/descriptor_identifier/solver/SISSOClassifier.hpp similarity index 95% rename from src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp rename to src/descriptor_identifier/solver/SISSOClassifier.hpp index 0ba5dc5dc0d3795b431a48274c642e97090e7368..c54eb98cae9cccd061f987594e1848cc1911cce3 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp +++ b/src/descriptor_identifier/solver/SISSOClassifier.hpp @@ -11,21 +11,21 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file descriptor_identifier/SISSOClassifier.hpp - * @brief Perform SISSO on a previously generated Feature Space - * - * Takes in a feature space and performs SISSO on it while storing the selected features in _models + * @brief Define a class for solving classification problems with SISSO * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef SISSO_CLASSIFIER #define SISSO_CLASSIFIER #include <coin/ClpSimplex.hpp> #include "classification/prop_sorted_d_mat.hpp" -#include "descriptor_identifier/Model/ModelClassifier.hpp" -#include "descriptor_identifier/SISSO_DI/SISSO_DI.hpp" +#include "descriptor_identifier/model/ModelClassifier.hpp" +#include "descriptor_identifier/solver/SISSOSolver.hpp" #include "utils/vector_utils.hpp" #ifdef PY_BINDINGS @@ -38,7 +38,7 @@ * @brief SISSO Classifier class, performs the SISSO algorithm and stores all selected models * */ -class SISSOClassifier: public SISSO_DI +class SISSOClassifier: public SISSOSolver { protected: std::vector<std::vector<ModelClassifier>> _models; //!< List of models diff --git a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp b/src/descriptor_identifier/solver/SISSOLogRegressor.cpp similarity index 99% rename from src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp rename to src/descriptor_identifier/solver/SISSOLogRegressor.cpp index d46b45b615e4e27695674f8b14331c621b38607d..438ff9d341146b842fb8be9f6969f65292fe0aff 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp +++ b/src/descriptor_identifier/solver/SISSOLogRegressor.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp" +#include "descriptor_identifier/solver/SISSOLogRegressor.hpp" SISSOLogRegressor::SISSOLogRegressor( const std::shared_ptr<FeatureSpace> feat_space, diff --git a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp b/src/descriptor_identifier/solver/SISSOLogRegressor.hpp similarity index 95% rename from src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp rename to src/descriptor_identifier/solver/SISSOLogRegressor.hpp index 448aae513c4afaf973aac82f14cd76c522dc3b20..6eca36d3cb2581cd97734b44ff1b0a896b4a52da 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp +++ b/src/descriptor_identifier/solver/SISSOLogRegressor.hpp @@ -11,19 +11,19 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file descriptor_identifier/SISSOLogRegressor.hpp - * @brief Perform SISSO on a previously generated Feature Space - * - * Takes in a feature space and performs SISSO on it while storing the selected features in _models + * @brief Defines a class for solving logarithmic regression problems with SISSO * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef SISSO_LOG_REGRESSOR #define SISSO_LOG_REGRESSOR -#include "descriptor_identifier/Model/ModelLogRegressor.hpp" -#include "descriptor_identifier/SISSO_DI/SISSORegressor.hpp" +#include "descriptor_identifier/model/ModelLogRegressor.hpp" +#include "descriptor_identifier/solver/SISSORegressor.hpp" #ifdef PY_BINDINGS namespace np = boost::python::numpy; diff --git a/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp b/src/descriptor_identifier/solver/SISSORegressor.cpp similarity index 99% rename from src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp rename to src/descriptor_identifier/solver/SISSORegressor.cpp index bde3be0701dd1e0cec6658afea6293830bf4bd58..d33d91ffde0870c983e404d1245e3bc9a50bfea8 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp +++ b/src/descriptor_identifier/solver/SISSORegressor.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSORegressor.hpp" +#include "descriptor_identifier/solver/SISSORegressor.hpp" SISSORegressor::SISSORegressor( const std::shared_ptr<FeatureSpace> feat_space, @@ -27,7 +27,7 @@ SISSORegressor::SISSORegressor( const int n_models_store, const bool fix_intercept ): - SISSO_DI( + SISSOSolver( "regression", feat_space, prop_label, diff --git a/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp b/src/descriptor_identifier/solver/SISSORegressor.hpp similarity index 94% rename from src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp rename to src/descriptor_identifier/solver/SISSORegressor.hpp index 4a6ce8ee594948db08466a4d2271ec4db336cba0..9ac8edf2a6cc8e17b2e11817a92e82ded1ef37fa 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp +++ b/src/descriptor_identifier/solver/SISSORegressor.hpp @@ -11,19 +11,19 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file descriptor_identifier/SISSORegressor.hpp - * @brief Perform SISSO on a previously generated Feature Space - * - * Takes in a feature space and performs SISSO on it while storing the selected features in _models + * @brief Defines a class to solve regression problems with SISSO * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef SISSO_REGRESSOR #define SISSO_REGRESSOR -#include "descriptor_identifier/Model/ModelRegressor.hpp" -#include "descriptor_identifier/SISSO_DI/SISSO_DI.hpp" +#include "descriptor_identifier/model/ModelRegressor.hpp" +#include "descriptor_identifier/solver/SISSOSolver.hpp" #ifdef PY_BINDINGS namespace np = boost::python::numpy; @@ -35,7 +35,7 @@ * @brief SISSO Regressor class, performs the SISSO algorithm and stores all selected models * */ -class SISSORegressor: public SISSO_DI +class SISSORegressor: public SISSOSolver { private: std::vector<std::vector<ModelRegressor>> _models; //!< List of models diff --git a/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp b/src/descriptor_identifier/solver/SISSOSolver.cpp similarity index 95% rename from src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp rename to src/descriptor_identifier/solver/SISSOSolver.cpp index 1f8f4d04a9b3f379a31a90744574dc5d296e50f7..3cbadfca5ef9ddbf74062a182503499a30289ba4 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp +++ b/src/descriptor_identifier/solver/SISSOSolver.cpp @@ -11,9 +11,9 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSO_DI.hpp" +#include "descriptor_identifier/solver/SISSOSolver.hpp" -SISSO_DI::SISSO_DI( +SISSOSolver::SISSOSolver( const std::string loss_type, const std::shared_ptr<FeatureSpace> feat_space, const std::string prop_label, diff --git a/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp b/src/descriptor_identifier/solver/SISSOSolver.hpp similarity index 95% rename from src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp rename to src/descriptor_identifier/solver/SISSOSolver.hpp index a386f3384471e59374c6dc77287c195b742aabbf..03e581a54c10f6c524f53df778bb111c6244c57d 100644 --- a/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp +++ b/src/descriptor_identifier/solver/SISSOSolver.hpp @@ -11,19 +11,19 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -/** @file descriptor_identifier/SISSO_DI/SISSO_DI.hpp - * @brief Base class used to perform SISSO on a previously generated Feature Space - * - * Takes in a feature space and performs SISSO on it while storing the selected features in _models + +/** @file descriptor_identifier/solver/SISSOSolver.hpp + * @brief Defines the base class for creating solvers using SISSO * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef SISSO_DESCRIPTOR_ID #define SISSO_DESCRIPTOR_ID #include "feature_creation/feature_space/FeatureSpace.hpp" -#include "descriptor_identifier/Model/Model.hpp" +#include "descriptor_identifier/model/Model.hpp" #ifdef PY_BINDINGS namespace np = boost::python::numpy; @@ -35,7 +35,7 @@ * @brief SISSO Regressor class, performs the SISSO algorithm and stores all selected models * */ -class SISSO_DI +class SISSOSolver { protected: const std::vector<int> _task_sizes_train; //!< Number of training samples per task @@ -73,7 +73,7 @@ public: * @param n_models_store The number of models to output to files * @param fix_intrecept If true the bias term is fixed at 0 */ - SISSO_DI( + SISSOSolver( const std::string loss_type, const std::shared_ptr<FeatureSpace> feat_space, const std::string prop_label, @@ -165,7 +165,7 @@ public: * @param n_models_store The number of models to output to files * @param fix_intrecept If true the bias term is fixed at 0 */ - SISSO_DI( + SISSOSolver( std::string loss_type, std::shared_ptr<FeatureSpace> feat_space, std::string prop_label, @@ -198,7 +198,7 @@ public: * @param n_models_store The number of models to output to files * @param fix_intrecept If true the bias term is fixed at 0 */ - SISSO_DI( + SISSOSolver( std::string loss_type, std::shared_ptr<FeatureSpace> feat_space, std::string prop_label, diff --git a/src/feature_creation/feature_space/FeatureSpace.cpp b/src/feature_creation/feature_space/FeatureSpace.cpp index 535faf9a8e7627c8d0589aa70f2c39b46d5e4e31..663131c5641996c941be05001b13c40f87ca2fba 100644 --- a/src/feature_creation/feature_space/FeatureSpace.cpp +++ b/src/feature_creation/feature_space/FeatureSpace.cpp @@ -897,7 +897,7 @@ void FeatureSpace::generate_feature_space() std::vector<node_ptr> to_send(send_sizes[pp]); std::copy_n(next_phi.begin() + total_sent, send_sizes[pp], to_send.begin()); - _mpi_comm->send(pp, _mpi_comm->cantorTagGen(_mpi_comm->rank(), pp, 1, 0), to_send); + _mpi_comm->send(pp, _mpi_comm->cantor_tag_gen(_mpi_comm->rank(), pp, 1, 0), to_send); total_sent += send_sizes[pp]; } } @@ -932,7 +932,7 @@ void FeatureSpace::generate_feature_space() } std::vector<node_ptr> to_recv; - _mpi_comm->recv(pp, _mpi_comm->cantorTagGen(pp, _mpi_comm->rank(), 1, 0), to_recv); + _mpi_comm->recv(pp, _mpi_comm->cantor_tag_gen(pp, _mpi_comm->rank(), 1, 0), to_recv); for(auto& feat : to_recv) { _phi.push_back(feat); diff --git a/src/feature_creation/feature_space/FeatureSpace.hpp b/src/feature_creation/feature_space/FeatureSpace.hpp index 6048fa0d8631569be4d7878757b499d59d577980..b4dae509702d565a26dc629dc0270edb3ec61132 100644 --- a/src/feature_creation/feature_space/FeatureSpace.hpp +++ b/src/feature_creation/feature_space/FeatureSpace.hpp @@ -11,12 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/feature_space/FeatureSpace.hpp - * @brief Create a feature space from an initial set of features and algebraic operators - * - * Use an initial set of features and combine them to generate more complicated algebraical features. SIS is also performed here + * @brief Defines the class for creating/operating on a feature space in SISSO * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ @@ -30,7 +29,7 @@ #include "feature_creation/node/utils.hpp" #include "mpi_interface/MPI_Interface.hpp" -#include "mpi_interface/MPI_ops.hpp" +#include "mpi_interface/MPI_Ops.hpp" #include "mpi_interface/serialize_tuple.h" #include "utils/project.hpp" diff --git a/src/feature_creation/node/FeatureNode.hpp b/src/feature_creation/node/FeatureNode.hpp index f5cb3e900ca424efedc620273d57b0b4199a5a28..b54499e55c10a9ee8ea9c86d932564ec73567487 100644 --- a/src/feature_creation/node/FeatureNode.hpp +++ b/src/feature_creation/node/FeatureNode.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/FeatureNode.hpp - * @brief The class for describing the initial features - * - * This class represents the leaves of all of the binary expression trees. + * @brief Defines the class that represent the primary features in SISSO * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the leaves of all of the binary expression trees. */ + #ifndef FEATURE_NODE #define FEATURE_NODE diff --git a/src/feature_creation/node/ModelNode.hpp b/src/feature_creation/node/ModelNode.hpp index 212ec2632a7eb400c2919d99e5fb3e01dfe2882a..d335c3ee72cf11e8371f628e7ce467962c505f8d 100644 --- a/src/feature_creation/node/ModelNode.hpp +++ b/src/feature_creation/node/ModelNode.hpp @@ -11,14 +11,17 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/ModelNode.hpp - * @brief The base class for describing features selected in SISSO Models - * - * This is a standardized feature type for all features selected in SISSO Models. This is created to allow for easier I/O of the models + * @brief Defines the class used to transfer features (Nodes) to the Model objects * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This is the only Node object that does not use the central storage area defined in value_storage/node_value_containers + * All information that is normally calculated recursively is stored here directly. */ + #ifndef MODEL_NODE #define MODEL_NODE diff --git a/src/feature_creation/node/Node.hpp b/src/feature_creation/node/Node.hpp index cf160dbb32945cad4835f35ab85265466f464e1b..81040648207b246f6d8dc92d1e0afa078fb58dc4 100644 --- a/src/feature_creation/node/Node.hpp +++ b/src/feature_creation/node/Node.hpp @@ -11,16 +11,18 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/Node.hpp - * @brief The base class for describing features + * @brief Defines the base class for the objects that represent features + * + * @author Thomas A. R. Purcell (tpurcell90) + * @bug No known bugs. * * This package represents the features in SISSO as a binary expression tree and are accessible from the root node of that tree. * The node class are the vertices of the tree and represent initial features (FeatureNode) and all algebraic operators (OperatorNodes). - * The edges are the represented via the _feats member in OperatorNode that store the features the operation acts on. - * - * @author Thomas A. R. Purcell (tpurcell) - * @bug No known bugs. + * The edges are the represented via the _feats member in OperatorNode that store the features the operation acts on (its children). */ + #ifndef NODE #define NODE diff --git a/src/feature_creation/node/operator_nodes/OperatorNode.hpp b/src/feature_creation/node/operator_nodes/OperatorNode.hpp index 2a18036bb8e271ba49ed4ed00cb87d48a703b99f..08f398a2e739b55ceeffde493e0c411777d054e4 100644 --- a/src/feature_creation/node/operator_nodes/OperatorNode.hpp +++ b/src/feature_creation/node/operator_nodes/OperatorNode.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/OperatorNode.hpp - * @brief Base class for representing all algebraic operators in the binary expression tree - * - * This class represents the non-leaf verticies in the binary expression tree. This also stores all edges of the graph + * @brief Defines the base class that represent all of the analytical operators in the Binary Expression Tree * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the non-leaf verticies in the binary expression tree. This also stores all edges of the graph through _feats */ + #ifndef OPERATOR_NODE #define OPERATOR_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp index 26926db8d70a0616f6d526328d520d3441fdd33c..e75ab4318d2430c163fec5f6567bf8e9f0234f87 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/absolute_value.hpp - * @brief Class describing the absolute value operator - * - * This class represents the unary operator -> |A| + * @brief Defines a class for the absolute value operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> |A| */ + #ifndef ABS_VAL_NODE #define ABS_VAL_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp index 8ec5026b5908adaec593f52bbb68867b0021d3ce..44f8c1fde81d85bd478b0c6a90115da867a7e869 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp - * @brief Class describing the parameterized absolute value operator - * - * This class represents the parameterized unary operator -> |alpha * A + a| + * @brief Defines a class for the parameterized version of the absolute value operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> |A + a| */ + #ifndef PARAM_ABS_VAL_NODE #define PARAM_ABS_VAL_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp index 86533e75c3f903aec02bc8455fdcb1c2f08e015d..7f64ed0dc670a803424fd95847835d1e221f6d9f 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/absolute_difference.hpp - * @brief Class describing the absolute difference operator - * - * This class represents the binary operator -> |A - B| + * @brief Defines a class for the absolute difference operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the binary operator -> |A - B| */ + #ifndef ABS_DIFF_NODE #define ABS_DIFF_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp index 40a591792fa37b1a73c0964bc7acbe8795b9153d..eedf1ec017885ff84e6ba4e389fa40ee434e6457 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp - * @brief Class describing the parameterized absolute difference operator - * - * This class represents the parameterized unary operator -> |A - alpha * B + a| + * @brief Defines a class for the parameterized version of the absolute difference operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> |A - alpha * B + a| */ + #ifndef PARAM_ABS_DIFF_NODE #define PARAM_ABS_DIFF_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp index 5c521ecdbbc780542ebf654cacdc36802eede40d..a19352f677234ba32e5a59dc27e34ee65c2fa62f 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/add.hpp - * @brief Class describing the addition operator - * - * This class represents the binary operator -> A + B + * @brief Defines a class for the addition operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the binary operator -> A + B */ + #ifndef ADD_NODE #define ADD_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp index 27816574bdcdd9a213e5f76736627f815fc90744..9010d711e58d544c1424988c9dc144c97ae66327 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp - * @brief Class describing the parameterized addition operator - * - * This class represents the parameterized unary operator -> A + alpha * B + a + * @brief Defines a class for the parameterized version of the addition operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> A + alpha * B */ + #ifndef PARAM_ADD_NODE #define PARAM_ADD_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp index 1dc050d509c8c87616c4e41ba822dbb282b531c4..651a8a280728ebc68c66d8792afdb405b0f5d378 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cube.hpp - * @brief Class describing the cube operator - * - * This class represents the unary operator -> (A)^3 + * @brief Defines a class for the cube operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> (A)^3 */ + #ifndef CB_NODE #define CB_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp index ea095e25a6c4930bdd2dc625fe652f23db9b2de6..695354b5e985448c64498296e8be688895e2b745 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp - * @brief Class describing the parameterized cube operator - * - * This class represents the parameterized unary operator -> (alpha * A + a)^3 + * @brief Defines a class for the parameterized version of the cube operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> (A + a)^3 */ + #ifndef PARAM_CUBE_NODE #define PARAM_CUBE_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp index de6822569b0b763498538a17b7c58f548b607c5c..48d6d1eb4e89e819144ce1fcc0646c2e8151dca8 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cube_root.hpp - * @brief Class describing the cube root operator - * - * This class represents the unary operator -> (A)^(1/3) + * @brief Defines a class for the cube root operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> (A)^(1/3) */ + #ifndef CBRT_NODE #define CBRT_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp index e1dfa283615a60cecc49671367231f58a8d315e3..8eb647abe2a0e803f79f5f779d32879115549f6b 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp - * @brief Class describing the parameterized cube root operator - * - * This class represents the parameterized unary operator -> cbrt(alpha * A + a) + * @brief Defines a class for the parameterized version of the cube root operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> cbrt(A + a) */ + #ifndef PARAM_CBRT_NODE #define PARAM_CBRT_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp index 63a18150a00085a54ad3880c2fe919f07a0c5bc4..954248f0f6a1f17a671d558bfc92fdae1042b409 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cos.hpp - * @brief Class describing the cosine operator - * - * This class represents the unary operator -> cos(A) + * @brief Defines a class for the cosine operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> cos(A) */ + #ifndef COS_NODE #define COS_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp index aa5fe2b020bdc0d56f886281a0310329f9f21ee1..f6a5795a80ec0a480ae60035ccffb41c016a05e6 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp - * @brief Class describing the parameterized cos operator - * - * This class represents the parameterized unary operator -> cos(alpha * A + a) + * @brief Defines a class for the parameterized version of the cosine operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> cos(alpha * A + a) */ + #ifndef PARAM_COS_NODE #define PARAM_COS_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp index 7d819ba1efe530a2c39285e5c15b4a030adc7be9..cd41e0d6164aa83be686bc3c508745d7561f3617 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/divide.hpp - * @brief Class describing the division operator - * - * This class represents the binary operator -> A / B + * @brief Defines a class for the division operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the binary operator -> A / B */ + #ifndef DIV_NODE #define DIV_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp index 3953d9220f7609bf60051092e63e8862ca46b45c..728b31f6f8d4b16ad2823cd4bf9ffde096d73594 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp - * @brief Class describing the parameterized addition operator - * - * This class represents the parameterized unary operator -> A / (alpha * B + a) + * @brief Defines a class for the parameterized version of the division operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> A / (B + a) */ + #ifndef PARAM_DIV_NODE #define PARAM_DIV_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp index d0041b89599cde342f67c6ceb9badfd0bcfdea1c..ffe0eb25a75e77628ac77e1f6b4646f587e34d80 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/exponential.hpp - * @brief Class describing the exponential operator - * - * This class represents the unary operator -> exp(A) + * @brief Defines a class for the exponential operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> exp(A) */ + #ifndef EXP_NODE #define EXP_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp index f0f97602aa430059d1c051191f7c7cf22c82a75c..f1afbb19e2d94234c90d4050688570220df85cc5 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponetial.hpp - * @brief Class describing the parameterized exp operator - * - * This class represents the parameterized unary operator -> exp(alpha * A + a) + * @brief Defines a class for the parameterized version of the exponential operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> exp(alpha * A) */ + #ifndef PARAM_EXP_NODE #define PARAM_EXP_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp index 6ad2945db76adf07df4b2483521c7f0deec28cef..67008e79c97684811e3db3348c0449113ac687fd 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/inverse.hpp - * @brief Class describing the logarithm operator - * - * This class represents the unary operator -> 1 / A + * @brief Defines a class for the logarithm operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> 1 / A */ + #ifndef INV_NODE #define INV_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp index 1d56bf4be89f11cbb044fa7386da5a249a333f39..4b74a939b71420e18cc7fdca94637ee6875c4b9e 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp - * @brief Class describing the parameterized inverse operator - * - * This class represents the parameterized unary operator -> 1.0 / (alpha * A + a) + * @brief Defines a class for the parameterized version of the inverse operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> 1.0 / (A + a) */ + #ifndef PARAM_INV_NODE #define PARAM_INV_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp index 76a066bbc52b1417c234484cb67251e19f94c7ff..fe13c6de63fb927ca51056562ae692a7ac7b8fdd 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/log.hpp - * @brief Class describing the logarithm operator - * - * This class represents the unary operator -> log(A) + * @brief Defines a class for the logarithm operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> log(A) */ + #ifndef LOG_NODE #define LOG_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp index ee77b803f050e15c417b9fc50c2cd314a25d9092..45cc0444568a4b54bbc4e4dedd27f0213fbd94f1 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp - * @brief Class describing the parameterized log operator - * - * This class represents the parameterized unary operator -> log(alpha * A + a) + * @brief Defines a class for the parameterized version of the logarithm operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> log(A + a) */ + #ifndef PARAM_LOG_NODE #define PARAM_LOG_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp index a9d4592f746512339a2c105354897a08093585e7..07db01bc5a110d3c33b55a8b4aad3df6e17c487e 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/multiply.hpp - * @brief Class describing the multiplication operator - * - * This class represents the binary operator -> A * B + * @brief Defines a class for the multiplication operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the binary operator -> A * B */ + #ifndef MULT_NODE #define MULT_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp index 110134997b4f251bdd19cfa0f70fc8934a00527d..87ed744efbad965b4330fc9a6d4523c51112cc89 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_multiply.hpp - * @brief Class describing the parameterized addition operator - * - * This class represents the parameterized unary operator -> A * (alpha * B + a) + * @brief Defines a class for the parameterized version of the multiplication operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> A * (B + a) */ + #ifndef PARAM_MULT_NODE #define PARAM_MULT_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp index 0abea08159f4dce62d521829ace3f7b9fde79137..a61f3a3b2c1272c6738b62984cfd61ee159efa97 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/negative_exponential.hpp - * @brief Class describing the negative exponential operator - * - * This class represents the unary operator -> exp(-1 * A) + * @brief Defines a class for the negative exponential operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> exp(-1 * A) */ + #ifndef NEG_EXP_NODE #define NEG_EXP_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp index 830a49565d8bfc6a9e8da570e946de75a0c4a870..3c03a89f6f83204ad4d7b5e8ee30116abc3de9a2 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponetial.hpp - * @brief Class describing the parameterized neg_exp operator - * - * This class represents the parameterized unary operator -> exp(-alpha * A + a) + * @brief Defines a class for the parameterized version of the negative exponential operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> exp(-alpha * A) */ + #ifndef PARAM_NEG_EXP_NODE #define PARAM_NEG_EXP_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp index b2558cbaf1ae1a423dd7d81c2e06255975b92c7e..5d57c2d336a24ba71efe5f0663169f0130aba59d 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp - * @brief Class describing the parameterized sin operator - * - * This class represents the parameterized unary operator -> sin(alpha * A + a) + * @brief Defines a class for the parameterized version of the sine operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> sin(alpha * A + a) */ + #ifndef PARAM_SIN_NODE #define PARAM_SIN_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp index f790fd55159f3f8941fc875de63f27291e049923..bad70a78c2d218b2655a9c20937124981a81d1d0 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sin.hpp - * @brief Class describing the sine operator + * @brief Defines a class for the sine operator * * This class represents the unary operator -> sin(A) * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef SIN_NODE #define SIN_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp index 94228b00730aa7c17c05fdabae3b696d9170b882..1e65bf590247f30f7bdaa44c5c972813220f0aea 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_pow.hpp - * @brief Class describing the parameterized sixth power operator - * - * This class represents the parameterized unary operator -> (alpha * A + a)^6 + * @brief Defines a class for the parameterized version of the sixth power operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> (A + a)^6 */ + #ifndef PARAM_SIX_POW_NODE #define PARAM_SIX_POW_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp index c0d85f625c4f4e5b7b606eae3b5feffc86d29e6f..174fb760208c46b0f479abc94d29a42145eede01 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sixth_power.hpp - * @brief Class describing the sixth power operator - * - * This class represents the unary operator -> (A)^6 + * @brief Defines a class for the sixth power operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> (A)^6 */ + #ifndef SIXTH_POW_NODE #define SIXTH_POW_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp index ee609023ef10b048107b93528f5d280f3dd87f77..cd0bd01b987d15b61b95b5d45c10f59db6b1af2a 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp - * @brief Class describing the parameterized square operator - * - * This class represents the parameterized unary operator -> (alpha * A + a)^2 + * @brief Defines a class for the parameterized version of square operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> (A + a)^2 */ + #ifndef PARAM_SQ_NODE #define PARAM_SQ_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp index 011bea6fee17e50b851e4074fd3a941a7c5b4dbf..a1ef0cbf5836278aeb3bc1db13bae12400591945 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/square.hpp - * @brief Class describing the square operator - * - * This class represents the unary operator -> (A)^2 + * @brief Defines a class for the square operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> (A)^2 */ + #ifndef SQ_NODE #define SQ_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp index 429bdc24c8369d0b2cbfd7d5433007be1a41d60a..e5563c3a5f79091db4d05479573d6bd369969049 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp - * @brief Class describing the parameterized square root operator - * - * This class represents the parameterized unary operator -> sqrt(alpha * A + a) + * @brief Defines a class for the parameterized version of square root operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> sqrt(alpha * A + a) */ + #ifndef PARAM_SQRT_NODE #define PARAM_SQRT_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp index 10a747e329f2560f266af9ee7b31fbbce3af790d..e39d82a065abaf883d7021723a46d4681e527566 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/square_root.hpp - * @brief Class describing the square root operator - * - * This class represents the unary operator -> (A)^(1/2) + * @brief Defines a class for the square root operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the unary operator -> (A)^(1/2) */ + #ifndef SQRT_NODE #define SQRT_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp index 216cbac11ee8ba2e00030d80e7e5871926b1febd..778bdbbeb0d4a5413536dd9301c4d10a087312e6 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp - * @brief Class describing the parameterized addition operator - * - * This class represents the parameterized unary operator -> A - (alpha * B + a) + * @briefDefines a class for the parameterized version of subtraction operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the parameterized unary operator -> A - (alpha * B) */ + #ifndef PARAM_SUB_NODE #define PARAM_SUB_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp index 90315e047b55f8b430e4386740e692fa7c52a6ad..1e2e6f567f36cabc6f35fe413275a51bdf258d7e 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/subtract.hpp - * @brief Class describing the subtraction operator - * - * This class represents the binary operator -> A - B + * @brief Defines a class for the subtraction operator * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class represents the binary operator -> A - B */ + #ifndef SUB_NODE #define SUB_NODE diff --git a/src/feature_creation/node/operator_nodes/allowed_ops.hpp b/src/feature_creation/node/operator_nodes/allowed_ops.hpp index fab3fff6aa6c3c43866d82d8438aad3077ab6161..23dc26ce83cbc3612744ec51b883f9610c6b54df 100644 --- a/src/feature_creation/node/operator_nodes/allowed_ops.hpp +++ b/src/feature_creation/node/operator_nodes/allowed_ops.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/allowed_ops.hpp - * @brief Definition of the map that converts the string representation of an operation to the correct OperatorNode constructor + * @brief Defines the map that converts std::string descriptions of the operators into their generator functions * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef ALLOWED_OP_NODES #define ALLOWED_OP_NODES diff --git a/src/feature_creation/node/operator_nodes/functions.hpp b/src/feature_creation/node/operator_nodes/functions.hpp index 46a55d4064cc9f981eefcdc6f020271aaba6263d..3e0bfed1fff8eaeb4d76fc3fc408710a8d9f8718 100644 --- a/src/feature_creation/node/operator_nodes/functions.hpp +++ b/src/feature_creation/node/operator_nodes/functions.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/operator_nodes/functions.hpp - * @brief Definition of all allowed functions OperatorNodes can have + * @brief Defines all functions used to calculate the data for the features * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef OP_FUNCTIONS #define OP_FUNCTIONS diff --git a/src/feature_creation/node/utils.hpp b/src/feature_creation/node/utils.hpp index 032b56524e2dda1a0142d445c024ea9ea18d28ed..4e49ba34ecd7ddd575a0588b64af3db7513d0696 100644 --- a/src/feature_creation/node/utils.hpp +++ b/src/feature_creation/node/utils.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/utils.hpp - * @brief utility functions to build node_ptrs from strings + * @brief Defines utility functions for handling Features (Nodes) * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef NODE_UTILS #define NODE_UTILS diff --git a/src/feature_creation/node/value_storage/nodes_value_containers.hpp b/src/feature_creation/node/value_storage/nodes_value_containers.hpp index 31a3b990e5f159cf9d69ce083b7d6bd63f303b1c..3506984e01ed89cb01a5a4cc66c46f8e089e050d 100644 --- a/src/feature_creation/node/value_storage/nodes_value_containers.hpp +++ b/src/feature_creation/node/value_storage/nodes_value_containers.hpp @@ -11,15 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/node/value_storage/node_value_containers.hpp - * @brief Centeral storage area for all descriptor matrix data - * - * This file contains definitions where all descriptor/feature data is stored permanently or in temporary storage arrays - * All Nodes's (except ModelNodes) value_ptr/test_value_ptrs point to data here. + * @brief Creates a central storage area for the feature's input data and the descriptor matrix * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef NODE_VALUE_ARR #define NODE_VALUE_ARR diff --git a/src/feature_creation/units/Unit.hpp b/src/feature_creation/units/Unit.hpp index bae27a85893791b2e7046d25cedeca72c69b189d..def44f48b03161c15e85698055761fc83f169b8a 100644 --- a/src/feature_creation/units/Unit.hpp +++ b/src/feature_creation/units/Unit.hpp @@ -11,13 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/unit/Unit.hpp - * @brief A representation of the units for each feature - * - * A dictionary representation of the unit for a features (key = unit, value = power) + * @brief Defines a class that represents Units of of the features * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * A dictionary representation of the unit for a features (key = unit, value = power) */ #ifndef UNIT diff --git a/src/inputs/InputParser.cpp b/src/inputs/InputParser.cpp index 4d894742f81cbe54271b6162ae0aafe379421542..de383519223c28c58e9df29f61acd7e72e4018b8 100644 --- a/src/inputs/InputParser.cpp +++ b/src/inputs/InputParser.cpp @@ -13,31 +13,31 @@ // limitations under the License. #include "inputs/InputParser.hpp" -InputParser::InputParser(pt::ptree IP, std::string fn, std::shared_ptr<MPI_Interface> comm) : - _opset(as_vector<std::string>(IP, "opset")), - _param_opset(as_vector<std::string>(IP, "param_opset")), +InputParser::InputParser(pt::ptree ip, std::string fn, std::shared_ptr<MPI_Interface> comm) : + _opset(as_vector<std::string>(ip, "opset")), + _param_opset(as_vector<std::string>(ip, "param_opset")), _filename(fn), - _data_file(IP.get<std::string>("data_file", "data.csv")), - _prop_key(IP.get<std::string>("property_key", "prop")), - _task_key(IP.get<std::string>("task_key", "Task")), - _calc_type(IP.get<std::string>("calc_type", "regression")), - _leave_out_inds(as_vector<int>(IP, "leave_out_inds")), - _cross_cor_max(IP.get<double>("max_feat_cross_correlation", 1.0)), - _l_bound(IP.get<double>("min_abs_feat_val", 1e-50)), - _u_bound(IP.get<double>("max_abs_feat_val", 1e50)), - _n_dim(IP.get<int>("desc_dim")), - _n_sis_select(IP.get<int>("n_sis_select")), - _max_rung(IP.get<int>("max_rung")), - _n_rung_store(IP.get<int>("n_rung_store", _max_rung - 1)), - _n_rung_generate(IP.get<int>("n_rung_generate", 0)), + _data_file(ip.get<std::string>("data_file", "data.csv")), + _prop_key(ip.get<std::string>("property_key", "prop")), + _task_key(ip.get<std::string>("task_key", "Task")), + _calc_type(ip.get<std::string>("calc_type", "regression")), + _leave_out_inds(as_vector<int>(ip, "leave_out_inds")), + _cross_cor_max(ip.get<double>("max_feat_cross_correlation", 1.0)), + _l_bound(ip.get<double>("min_abs_feat_val", 1e-50)), + _u_bound(ip.get<double>("max_abs_feat_val", 1e50)), + _n_dim(ip.get<int>("desc_dim")), + _n_sis_select(ip.get<int>("n_sis_select")), + _max_rung(ip.get<int>("max_rung")), + _n_rung_store(ip.get<int>("n_rung_store", _max_rung - 1)), + _n_rung_generate(ip.get<int>("n_rung_generate", 0)), _n_samp(0), - _n_residuals(IP.get<int>("n_residual", 1)), - _n_models_store(IP.get<int>("n_models_store", _n_residuals)), - _max_param_depth(IP.get<int>("max_feat_param_depth", _max_rung)), - _nlopt_seed(IP.get<int>("nlopt_seed", 42)), - _fix_intercept(IP.get<bool>("fix_intercept", false)), - _global_param_opt(IP.get<bool>("global_param_opt", false)), - _reparam_residual(IP.get<bool>("reparam_residual", false)) + _n_residuals(ip.get<int>("n_residual", 1)), + _n_models_store(ip.get<int>("n_models_store", _n_residuals)), + _max_param_depth(ip.get<int>("max_feat_param_depth", _max_rung)), + _nlopt_seed(ip.get<int>("nlopt_seed", 42)), + _fix_intercept(ip.get<bool>("fix_intercept", false)), + _global_param_opt(ip.get<bool>("global_param_opt", false)), + _reparam_residual(ip.get<bool>("reparam_residual", false)) { // Check if param ops are passed without being build with parameterized features #ifndef PARAMETERIZE @@ -131,7 +131,7 @@ InputParser::InputParser(pt::ptree IP, std::string fn, std::shared_ptr<MPI_Inter } // Make the train-test split - double leave_out_frac = IP.get<double>("leave_out_frac", static_cast<double>(IP.get<int>("n_leave_out", 0)) / static_cast<double>(_n_samp) ); + double leave_out_frac = ip.get<double>("leave_out_frac", static_cast<double>(ip.get<int>("n_leave_out", 0)) / static_cast<double>(_n_samp) ); if((_leave_out_inds.size() == 0) && leave_out_frac > 0.0) { // If only fraction given create a test set that pull equally from all tasks @@ -442,7 +442,7 @@ void InputParser::generate_feature_space( #endif } -void stripComments(std::string& filename) +void strip_comments(std::string& filename) { //Open input and output file std::string newfn = "stripped_" + filename; diff --git a/src/inputs/InputParser.hpp b/src/inputs/InputParser.hpp index f24f08083e9afc23165bad722ef2f2e995d75fe0..5eacc33e74bb1221db6752c347d50d39a0487741 100644 --- a/src/inputs/InputParser.hpp +++ b/src/inputs/InputParser.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file inputs/InputParser.hpp - * @brief Define the class that parses the input file - * - * This class parses and stores the parameters in the input file + * @brief Define the class that parses the input file * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class parses and stores the parameters in the input file */ + #ifndef SISSO_INPUTS #define SISSO_INPUTS @@ -92,7 +94,7 @@ public: * @param fn filename for the input file * @param comm MPI communicator for the calculation */ - InputParser(pt::ptree IP, std::string fn, std::shared_ptr<MPI_Interface> comm); + InputParser(pt::ptree ip, std::string fn, std::shared_ptr<MPI_Interface> comm); /** * @brief The generated FeatureSpace @@ -121,7 +123,7 @@ public: * * @param filename The filename of the file to strip */ -void stripComments(std::string& filename); +void strip_comments(std::string& filename); /** * @brief boost json to std::vector<T> diff --git a/src/loss_function/LossFunction.hpp b/src/loss_function/LossFunction.hpp index 13f0a4034a1d25cb4d06b4c5812b94a6287d9cd1..71c21931057622508f203b738b93a92fedc7ebde 100644 --- a/src/loss_function/LossFunction.hpp +++ b/src/loss_function/LossFunction.hpp @@ -11,10 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file loss_function/LossFunction.hpp - * @brief A class used to calculate the projection score and l0-regularization error + * @brief Defines a base class used to calculate the projection score and l0-regularization objective function * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/loss_function/LossFunctionConvexHull.hpp b/src/loss_function/LossFunctionConvexHull.hpp index 061acfe609f21b0da53fa39beca9d7d4e7b5a871..88d663e4c58ee096585a71f45a334a8aae9614c1 100644 --- a/src/loss_function/LossFunctionConvexHull.hpp +++ b/src/loss_function/LossFunctionConvexHull.hpp @@ -11,10 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file loss_function/LossFunctionConvexHull.hpp - * @brief A class used to calculate the projection score and l0-regularization error + * @brief Defines the class that uses a convex hull projection operator and a convex hull based objective function * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/loss_function/LossFunctionLogPearsonRMSE.hpp b/src/loss_function/LossFunctionLogPearsonRMSE.hpp index 1d1d6f4cf59d1bba4dc97d04fed5f6d397d92bce..9db2a99e4d48f3ac5c2370b36d7f2cb415bfa5f7 100644 --- a/src/loss_function/LossFunctionLogPearsonRMSE.hpp +++ b/src/loss_function/LossFunctionLogPearsonRMSE.hpp @@ -11,10 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file loss_function/LossFunctionLogPearsonRMSE.hpp - * @brief A class used to calculate the projection score and l0-regularization error + * @brief Defines the class that uses a logarithmic Pearson correlation projection operator and a logarithmic least-squares regression objective function * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/loss_function/LossFunctionPearsonRMSE.hpp b/src/loss_function/LossFunctionPearsonRMSE.hpp index dc35023ca27d70492aa33ec635bcf6c6c8cf242b..40eb51eac033b49a2b859559b7e0baceafb78e3b 100644 --- a/src/loss_function/LossFunctionPearsonRMSE.hpp +++ b/src/loss_function/LossFunctionPearsonRMSE.hpp @@ -11,10 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file loss_function/LossFunctionPearsonRMSE.hpp - * @brief A class used to calculate the projection score and l0-regularization error + * @brief Defines the class that uses a Pearson correlation projection operator and a least-squares regression objective function * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/loss_function/utils.hpp b/src/loss_function/utils.hpp index 80da1d57edf93be100e426b6ab7506878b25a1fd..486d8c243dcefce6933a8cc539a5bdf197b6f12c 100644 --- a/src/loss_function/utils.hpp +++ b/src/loss_function/utils.hpp @@ -11,10 +11,11 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file loss_function/utils.hpp - * @brief utilities for generating loss_functions + * @brief Defines utilities for generating and copying LossFunctions * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ diff --git a/src/main.cpp b/src/main.cpp index ec10b6dc66d8de78d653a3ba13d749944970c56f..2152f897ee40f30d7a840b65789703127133e8da 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. #include "inputs/InputParser.hpp" -#include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp" -#include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp" +#include "descriptor_identifier/solver/SISSOLogRegressor.hpp" +#include "descriptor_identifier/solver/SISSOClassifier.hpp" int main(int argc, char const *argv[]) { @@ -36,7 +36,7 @@ int main(int argc, char const *argv[]) if(mpi_setup::comm->rank() == 0) { - stripComments(filename); + strip_comments(filename); } else { @@ -49,7 +49,7 @@ int main(int argc, char const *argv[]) boost::property_tree::json_parser::read_json(filename,propTree); double start = omp_get_wtime(); - InputParser IP(propTree, filename, mpi_setup::comm); + InputParser ip(propTree, filename, mpi_setup::comm); if(mpi_setup::comm->rank() == 0) { boost::filesystem::remove(filename); @@ -62,19 +62,19 @@ int main(int argc, char const *argv[]) } node_value_arrs::initialize_d_matrix_arr(); - if(IP._calc_type.compare("regression") == 0) + if(ip._calc_type.compare("regression") == 0) { - SISSORegressor sisso(IP._feat_space, IP._prop_label, IP._prop_unit, IP._prop_train, IP._prop_test, IP._task_sizes_train, IP._task_sizes_test, IP._leave_out_inds, IP._n_dim, IP._n_residuals, IP._n_models_store, IP._fix_intercept); + SISSORegressor sisso(ip._feat_space, ip._prop_label, ip._prop_unit, ip._prop_train, ip._prop_test, ip._task_sizes_train, ip._task_sizes_test, ip._leave_out_inds, ip._n_dim, ip._n_residuals, ip._n_models_store, ip._fix_intercept); sisso.fit(); if(mpi_setup::comm->rank() == 0) { for(int ii = 0; ii < sisso.models().size(); ++ii) { - std::cout << "Train RMSE: " << sisso.models()[ii][0].rmse() << " " << IP._prop_unit; - if(IP._prop_test.size() > 0) + std::cout << "Train RMSE: " << sisso.models()[ii][0].rmse() << " " << ip._prop_unit; + if(ip._prop_test.size() > 0) { - std::cout << "; Test RMSE: " << sisso.models()[ii][0].test_rmse() << " " << IP._prop_unit << std::endl; + std::cout << "; Test RMSE: " << sisso.models()[ii][0].test_rmse() << " " << ip._prop_unit << std::endl; } else { @@ -84,9 +84,9 @@ int main(int argc, char const *argv[]) } } } - else if(IP._calc_type.compare("log_regression") == 0) + else if(ip._calc_type.compare("log_regression") == 0) { - SISSOLogRegressor sisso(IP._feat_space, IP._prop_label, IP._prop_unit, IP._prop_train, IP._prop_test, IP._task_sizes_train, IP._task_sizes_test, IP._leave_out_inds, IP._n_dim, IP._n_residuals, IP._n_models_store, IP._fix_intercept); + SISSOLogRegressor sisso(ip._feat_space, ip._prop_label, ip._prop_unit, ip._prop_train, ip._prop_test, ip._task_sizes_train, ip._task_sizes_test, ip._leave_out_inds, ip._n_dim, ip._n_residuals, ip._n_models_store, ip._fix_intercept); sisso.fit(); if(mpi_setup::comm->rank() == 0) @@ -94,7 +94,7 @@ int main(int argc, char const *argv[]) for(int ii = 0; ii < sisso.models().size(); ++ii) { std::cout << "Train RMSE: " << sisso.models()[ii][0].rmse(); - if(IP._prop_test.size() > 0) + if(ip._prop_test.size() > 0) { std::cout << "; Test RMSE: " << sisso.models()[ii][0].test_rmse() << std::endl; } @@ -106,9 +106,9 @@ int main(int argc, char const *argv[]) } } } - else if(IP._calc_type.compare("classification") == 0) + else if(ip._calc_type.compare("classification") == 0) { - SISSOClassifier sisso(IP._feat_space, IP._prop_label, IP._prop_unit, IP._prop_train, IP._prop_test, IP._task_sizes_train, IP._task_sizes_test, IP._leave_out_inds, IP._n_dim, IP._n_residuals, IP._n_models_store); + SISSOClassifier sisso(ip._feat_space, ip._prop_label, ip._prop_unit, ip._prop_train, ip._prop_test, ip._task_sizes_train, ip._task_sizes_test, ip._leave_out_inds, ip._n_dim, ip._n_residuals, ip._n_models_store); sisso.fit(); if(mpi_setup::comm->rank() == 0) @@ -116,7 +116,7 @@ int main(int argc, char const *argv[]) for(int ii = 0; ii < sisso.models().size(); ++ii) { std::cout << "Percent of training data misclassified: " << sisso.models()[ii][0].percent_train_error() << "%"; - if(IP._prop_test.size() > 0) + if(ip._prop_test.size() > 0) { std::cout << "; Percent of test data misclassified: " << sisso.models()[ii][0].percent_test_error() << "%" << std::endl; } diff --git a/src/mpi_interface/MPI_Interface.hpp b/src/mpi_interface/MPI_Interface.hpp index 9f607f1a7eaec332a3947c06091fe8ca29d42f89..00046efdd78bc3a2618c32e74915dbf9c8b52277 100644 --- a/src/mpi_interface/MPI_Interface.hpp +++ b/src/mpi_interface/MPI_Interface.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file mpi_interface/MPI_Interface.hpp - * @brief Define MPI interface for the calculation - * - * This class modifies the boost mpi::communicator for easier communication + * @brief Define MPI interface for the calculations * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This class modifies the boost mpi::communicator for easier communication */ + #ifndef SISSO_MPI_INTERFACE #define SISSO_MPI_INTERFACE @@ -50,7 +52,7 @@ public: * * @return A unique tag to send information between two processes */ - int cantorTagGen(const unsigned int procSend, const unsigned int procRecv, const unsigned int maxOffest, const unsigned int offest) + int cantor_tag_gen(const unsigned int procSend, const unsigned int procRecv, const unsigned int maxOffest, const unsigned int offest) { return (int((procSend + procRecv) * (procSend + procSend +1) / 2) + procRecv) * maxOffest + offest; } diff --git a/src/mpi_interface/MPI_ops.cpp b/src/mpi_interface/MPI_Ops.cpp similarity index 98% rename from src/mpi_interface/MPI_ops.cpp rename to src/mpi_interface/MPI_Ops.cpp index 8793425e3a37f80ce6e2b0d9e164b8afdd9fc8d7..cdb20899d5dcf5b3081895d44bd132bb41c1cf4d 100644 --- a/src/mpi_interface/MPI_ops.cpp +++ b/src/mpi_interface/MPI_Ops.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "mpi_interface/MPI_ops.hpp" +#include "mpi_interface/MPI_Ops.hpp" // MPI_Op top_feats; std::function<bool(const double*, const int, const double, const std::vector<node_sc_pair>&, const double)> mpi_reduce_op::IS_VALID; diff --git a/src/mpi_interface/MPI_ops.hpp b/src/mpi_interface/MPI_Ops.hpp similarity index 95% rename from src/mpi_interface/MPI_ops.hpp rename to src/mpi_interface/MPI_Ops.hpp index d5fd50b4a44c4321507150776e40c428f21e0039..f0026b946b0fa7c3e4facaca7eae0bbf488dee4f 100644 --- a/src/mpi_interface/MPI_ops.hpp +++ b/src/mpi_interface/MPI_Ops.hpp @@ -11,14 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file mpi_interface/MPI_Ops.hpp - * @brief Define MPI reduce all operator to facilitate a distributed sorting algorithm - * - * This is based off of a project from Meisam Farzalipour Tabriz at the MPCDF (mpi_topk) + * @brief Define MPI reduce all operator to facilitate a distributed sorting algorithm * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. + * + * This is based off of a project from Meisam Farzalipour Tabriz at the MPCDF (mpi_topk) */ + #ifndef SISSO_MPI_OPS #define SISSO_MPI_OPS diff --git a/src/nl_opt/NLOptWrapper.hpp b/src/nl_opt/NLOptWrapper.hpp index 8a99a773933e2de00cefe2d2bd7cd4e5b495f4e7..bf4aceb101f3f4abb3825cfdf51c1e39c9c32667 100644 --- a/src/nl_opt/NLOptWrapper.hpp +++ b/src/nl_opt/NLOptWrapper.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file feature_creation/parameterization/NLOptWrapper.hpp - * @brief Wrapper and functions to use libnlopt to find parameterizations for features + * @brief Defines a wrapper for NLopt library functions and functions for using the library * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef NL_OPT_WRAPPER #define NL_OPT_WRAPPER diff --git a/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp b/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp index f65a77a8b7d66cef0ca5bfcfc7d86df0da71b727..ab9125e9bea0f78fc20677a8aad7868713dd8d42 100644 --- a/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp +++ b/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp @@ -21,7 +21,7 @@ void sisso::register_all() sisso::descriptor_identifier::registerModelRegressor(); sisso::descriptor_identifier::registerModelLogRegressor(); sisso::descriptor_identifier::registerModelClassifier(); - sisso::descriptor_identifier::registerSISSO_DI(); + sisso::descriptor_identifier::registerSISSOSolver(); sisso::descriptor_identifier::registerSISSORegressor(); sisso::descriptor_identifier::registerSISSOLogRegressor(); sisso::descriptor_identifier::registerSISSOClassifier(); @@ -1331,24 +1331,24 @@ void sisso::descriptor_identifier::registerModelClassifier() ; } -void sisso::descriptor_identifier::registerSISSO_DI() +void sisso::descriptor_identifier::registerSISSOSolver() { - class_<sisso::descriptor_identifier::SISSO_DI_Wrap, boost::noncopyable>("SISSO_DI", no_init) - .add_property("prop", &SISSO_DI::prop_py, "@DocString_sisso_di_prop_py@") - .add_property("prop_test", &SISSO_DI::prop_test_py, "@DocString_sisso_di_prop_test_py@") - .add_property("n_samp", &SISSO_DI::n_samp, "@DocString_sisso_di_n_samp@") - .add_property("n_dim", &SISSO_DI::n_dim, "@DocString_sisso_di_n_dim@") - .add_property("n_residual", &SISSO_DI::n_residual, "@DocString_sisso_di_n_residual@") - .add_property("n_models_store", &SISSO_DI::n_models_store, "@DocString_sisso_di_n_models_store@") - .add_property("feat_space", &SISSO_DI::feat_space, "@DocString_sisso_di_feat_space@") - .add_property("task_sizes_train", &SISSO_DI::task_sizes_train, "@DocString_sisso_di_task_sizes_train@") - .add_property("task_sizes_test", &SISSO_DI::task_sizes_test, "@DocString_sisso_di_task_sizes_test@") + class_<sisso::descriptor_identifier::SISSOSolver_Wrap, boost::noncopyable>("SISSOSolver", no_init) + .add_property("prop", &SISSOSolver::prop_py, "@DocString_sisso_di_prop_py@") + .add_property("prop_test", &SISSOSolver::prop_test_py, "@DocString_sisso_di_prop_test_py@") + .add_property("n_samp", &SISSOSolver::n_samp, "@DocString_sisso_di_n_samp@") + .add_property("n_dim", &SISSOSolver::n_dim, "@DocString_sisso_di_n_dim@") + .add_property("n_residual", &SISSOSolver::n_residual, "@DocString_sisso_di_n_residual@") + .add_property("n_models_store", &SISSOSolver::n_models_store, "@DocString_sisso_di_n_models_store@") + .add_property("feat_space", &SISSOSolver::feat_space, "@DocString_sisso_di_feat_space@") + .add_property("task_sizes_train", &SISSOSolver::task_sizes_train, "@DocString_sisso_di_task_sizes_train@") + .add_property("task_sizes_test", &SISSOSolver::task_sizes_test, "@DocString_sisso_di_task_sizes_test@") ; } void sisso::descriptor_identifier::registerSISSORegressor() { - class_<SISSORegressor, bases<SISSO_DI>>( + class_<SISSORegressor, bases<SISSOSolver>>( "SISSORegressor", init<std::shared_ptr<FeatureSpace>, std::string, Unit, np::ndarray, np::ndarray, py::list, py::list, py::list, int, int, int, optional<bool>>( (arg("self"), arg("feat_space"), arg("prop_label"), arg("prop_unit"), arg("prop"), arg("prop_test"), arg("task_sizes_train"), arg("task_sizes_test"), arg("leave_out_inds"), arg("n_dim"), arg("n_residual"), arg("n_models_store"), arg("fix_intercept")), @@ -1387,7 +1387,7 @@ void sisso::descriptor_identifier::registerSISSOLogRegressor() void sisso::descriptor_identifier::registerSISSOClassifier() { - class_<SISSOClassifier, bases<SISSO_DI>>( + class_<SISSOClassifier, bases<SISSOSolver>>( "SISSOClassifier", init<std::shared_ptr<FeatureSpace>, std::string, Unit, np::ndarray, np::ndarray, py::list, py::list, py::list, int, int, int>( (arg("self"), arg("feat_space"), arg("prop_label"), arg("prop_unit"), arg("prop"), arg("prop_test"), arg("task_sizes_train"), arg("task_sizes_test"), arg("leave_out_inds"), arg("n_dim"), arg("n_residual"), arg("n_models_store")), diff --git a/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp b/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp index a927e79778186d86aa14f01e1e335b6633f2aefa..afffbf501a3ae7c9894e761a7a34a92fae571b29 100644 --- a/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp +++ b/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp @@ -11,17 +11,19 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file python/bindings.hpp - * @brief Definitions to convert C++ classes into python classes + * @brief Definitions to convert C++ classes into python classes * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef PYTHON_BINDING #define PYTHON_BINDINGS -#include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp" -#include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp" +#include "descriptor_identifier/solver/SISSOLogRegressor.hpp" +#include "descriptor_identifier/solver/SISSOClassifier.hpp" #include "python/py_binding_cpp_def/feature_creation/node_utils.hpp" #ifdef PARAMETERIZE #include "nl_opt/NLOptWrapper.hpp" @@ -534,7 +536,7 @@ namespace sisso namespace descriptor_identifier { - struct SISSO_DI_Wrap : SISSO_DI, py::wrapper<SISSO_DI> + struct SISSOSolver_Wrap : SISSOSolver, py::wrapper<SISSOSolver> { inline void l0_regularization(){this->get_override("l0_regularization")();} inline void fit(){this->get_override("fit")();} @@ -568,7 +570,7 @@ namespace sisso /** * @brief Register the SISSORegressor object for conversion to a python object */ - static void registerSISSO_DI(); + static void registerSISSOSolver(); /** * @brief Register the SISSORegressor object for conversion to a python object diff --git a/src/python/py_binding_cpp_def/conversion_utils.hpp b/src/python/py_binding_cpp_def/conversion_utils.hpp index 68087c9a50c9543b40305a02ccb8085f0581d7e0..d810df315f72c75507cbd2291e76f09d6933b3db 100644 --- a/src/python/py_binding_cpp_def/conversion_utils.hpp +++ b/src/python/py_binding_cpp_def/conversion_utils.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file python/py_binding_cpp_def/conversion_utils.hpp - * @brief A set of functions to convert std::vectors to and from python objects + * @brief Define a set of functions to convert std::vectors to and from python objects * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef UTILS_CONVERSION #define UTILS_CONVERSION diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp index f71210f15db9bde7ca48fa93e841b83d5385043d..408d094b562b73649852dea26459948f498d030a 100644 --- a/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp +++ b/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/Model/Model.hpp" +#include "descriptor_identifier/model/Model.hpp" np::ndarray Model::eval_many_py(np::ndarray x_in) const { diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp index 462f276ced6f433066e5d83a78cfabcc30f5a687..59d876a2cf1d9caf135525a472f2b2ce9d60d82a 100644 --- a/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp +++ b/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/Model/ModelClassifier.hpp" +#include "descriptor_identifier/model/ModelClassifier.hpp" ModelClassifier::ModelClassifier(const ModelClassifier& o, py::list new_coefs, np::ndarray prop_train_est, np::ndarray prop_test_est) : Model(o), diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp index 192dd70784761a7f989a2765694be91acfce73c1..a96481c2e2ca5a906596ec8fe1f45b72aa59ce45 100644 --- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp +++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp" +#include "descriptor_identifier/solver/SISSOClassifier.hpp" SISSOClassifier::SISSOClassifier( std::shared_ptr<FeatureSpace> feat_space, @@ -26,7 +26,7 @@ SISSOClassifier::SISSOClassifier( int n_residual, int n_models_store ) : - SISSO_DI( + SISSOSolver( "classification", feat_space, prop_label, @@ -61,7 +61,7 @@ SISSOClassifier::SISSOClassifier( int n_residual, int n_models_store ) : - SISSO_DI( + SISSOSolver( "classification", feat_space, prop_label, diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp index 69efa7668700425936fb9c2e28f8386452269e3c..a4d3aea28eea5086dc0a4087d054163335f4f096 100644 --- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp +++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp" +#include "descriptor_identifier/solver/SISSOLogRegressor.hpp" SISSOLogRegressor::SISSOLogRegressor( std::shared_ptr<FeatureSpace> feat_space, diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp index 4bf1d60061a39b100df5b3bfeb21d9881f5c0729..31afce12163002ad9be20bc81929c083d8d9d327 100644 --- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp +++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSORegressor.hpp" +#include "descriptor_identifier/solver/SISSORegressor.hpp" SISSORegressor::SISSORegressor( std::shared_ptr<FeatureSpace> feat_space, @@ -27,7 +27,7 @@ SISSORegressor::SISSORegressor( int n_models_store, bool fix_intercept ) : - SISSO_DI( + SISSOSolver( "regression", feat_space, prop_label, @@ -58,7 +58,7 @@ SISSORegressor::SISSORegressor( int n_models_store, bool fix_intercept ) : - SISSO_DI( + SISSOSolver( "regression", feat_space, prop_label, diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOSolver.cpp similarity index 96% rename from src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp rename to src/python/py_binding_cpp_def/descriptor_identifier/SISSOSolver.cpp index b304e5bda77a77cff4c96722d0b59b02ea98f7e2..4df1d20f30849432dcc4036822ba2e843c3083f1 100644 --- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp +++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOSolver.cpp @@ -11,9 +11,9 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include "descriptor_identifier/SISSO_DI/SISSO_DI.hpp" +#include "descriptor_identifier/solver/SISSOSolver.hpp" -SISSO_DI::SISSO_DI( +SISSOSolver::SISSOSolver( std::string loss_type, std::shared_ptr<FeatureSpace> feat_space, std::string prop_label, @@ -54,7 +54,7 @@ SISSO_DI::SISSO_DI( ); } -SISSO_DI::SISSO_DI( +SISSOSolver::SISSOSolver( std::string loss_type, std::shared_ptr<FeatureSpace> feat_space, std::string prop_label, diff --git a/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp b/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp index bf78fc2afbbf68544180cc6190f703537b1e6899..8540d1ef3676395f73760ec3b315d546b20569a1 100644 --- a/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp +++ b/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file python/feature_creation/node_utils.hpp - * @brief python binding functions for node utilities + * @brief Defines a function to convert a file containing a list of postfix expressions of features into a list of Nodes * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef NODE_UTILS_PY #define NODE_UTILS_PY diff --git a/src/python/py_interface/__init__.py b/src/python/py_interface/__init__.py index 76e76f5e1ff4af01fe539823317dbabcb3b6b877..ddd97016f5424a9ea831439f1b60dae1fe77d5f4 100644 --- a/src/python/py_interface/__init__.py +++ b/src/python/py_interface/__init__.py @@ -13,19 +13,19 @@ # limitations under the License. """Provide a python interface to the SISSO++ Code -Create the relevant SISSO FeatureSpace and SISSO_DI classes from standard python objects. +Create the relevant SISSO FeatureSpace and SISSOSolver classes from standard python objects. Modules: estimate_feat_space_size: Provide functions to estimate the final feature space size given the input parameters used to generate the FeatureSpace object. -get_solver: Functions to get the FeatureSpace and SISSO_DI objects needed to run the code. +get_solver: Functions to get the FeatureSpace and SISSOSolver objects needed to run the code. import_dataframe: Functions used to convert a data.csv file into a primary feature space Functions: read_csv: Create initial feature set from a csv file get_fs: Generate a FeatureSpace for the calculation -get_fs_solver: Generate a FeatureSpace and SISSO_DI for the calculation +get_fs_solver: Generate a FeatureSpace and SISSOSolver for the calculation """ from sissopp.py_interface.import_dataframe import read_csv from sissopp.py_interface.get_solver import get_fs, get_fs_solver diff --git a/src/python/py_interface/get_solver.py b/src/python/py_interface/get_solver.py index 83329b237b90f25edc00a2e684be9b91c4117238..cf4848860a72936a8e502db4e2556733027b4408 100644 --- a/src/python/py_interface/get_solver.py +++ b/src/python/py_interface/get_solver.py @@ -11,12 +11,12 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -"""Functions to get the FeatureSpace and SISSO_DI objects needed to run the code. +"""Functions to get the FeatureSpace and SISSOSolver objects needed to run the code. Functions: get_fs: Generate a FeatureSpace for the calculation -get_fs_solver: Generate a FeatureSpace and SISSO_DI for the calculation +get_fs_solver: Generate a FeatureSpace and SISSOSolver for the calculation """ import numpy as np import pandas as pd @@ -119,7 +119,7 @@ def get_fs_solver( leave_out_frac=0.0, leave_out_inds=None, ): - """Generate a FeatureSpace and SISSO_DI for the calculation + """Generate a FeatureSpace and SISSOSolver for the calculation Args: df (str): The csv file containing all of the data for the calculation diff --git a/src/utils/compare_features.hpp b/src/utils/compare_features.hpp index 5672ad262385059e349283e5de438052a1a8e9e2..9e5a459a2b58731e4432b8939e05241425ded311 100644 --- a/src/utils/compare_features.hpp +++ b/src/utils/compare_features.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file utils/compare_features.hpp * @brief A set of functions to project features onto a second vector * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef UTILS_FEAT_COMP #define UTILS_FEAT_COMP diff --git a/src/utils/enum.hpp b/src/utils/enum.hpp index f158331c32b884071779c88f6cd8d2b195ecb1e6..f3f793d8e48b683b5cda7e07970b9570259a0197 100644 --- a/src/utils/enum.hpp +++ b/src/utils/enum.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file utils/enum.hpp * @brief Define node type enum * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef ENUMS #define ENUMS /** diff --git a/src/utils/math_funcs.hpp b/src/utils/math_funcs.hpp index b2c8346c7aafc837ac8c4d6bceeff3ca59f97790..8a0346fff9d8b9699155891fea2242bd8da9f122 100644 --- a/src/utils/math_funcs.hpp +++ b/src/utils/math_funcs.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file utils/math_funcs.hpp * @brief A set of functions to get standardized mathematical operations on * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef MATH_FXN #define MATH_FXN diff --git a/src/utils/mkl_interface.hpp b/src/utils/mkl_interface.hpp index 7248f1ddf037e488cd1581fcff75e4de4827ff3b..d7de6e53f5985d08fe8bd877fc70b46de733541e 100644 --- a/src/utils/mkl_interface.hpp +++ b/src/utils/mkl_interface.hpp @@ -11,6 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file utils/mkl_interface.hpp * @brief wrapper functions to a mkl blas functionality * diff --git a/src/utils/project.hpp b/src/utils/project.hpp index ba3cd752f4483c12539e1ba9dcf61b0adbdec6e8..27d569007877dfbbbe6b86a60f45e07d8ffd426f 100644 --- a/src/utils/project.hpp +++ b/src/utils/project.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file utils/project.hpp * @brief A set of functions to project features onto a second vector * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef UTILS_PROJECT #define UTILS_PROJECT diff --git a/src/utils/string_utils.hpp b/src/utils/string_utils.hpp index df48d193f9e0fbb57bb23a7c4a23e8949f4c97d7..ea1dca4c6d56b76724b89699ba8fbdeef76d0fa3 100644 --- a/src/utils/string_utils.hpp +++ b/src/utils/string_utils.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file utils/string_utils.hpp * @brief A set of functions to manipulate strings * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef STRING_UTILS #define STRING_UTILS diff --git a/src/utils/vector_utils.hpp b/src/utils/vector_utils.hpp index 7801e11df7e25599c134b44b43a95a2a347793fe..87b9345f84cfd351065fc50fc317c7852edd7eb7 100644 --- a/src/utils/vector_utils.hpp +++ b/src/utils/vector_utils.hpp @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + /** @file utils/vector_utils.hpp * @brief A set of functions to manipulate vectors * - * @author Thomas A. R. Purcell (tpurcell) + * @author Thomas A. R. Purcell (tpurcell90) * @bug No known bugs. */ + #ifndef VECTOR_UTILS #define VECTOR_UTILS diff --git a/tests/googletest/descriptor_identification/model/test_model_classifier.cc b/tests/googletest/descriptor_identification/model/test_model_classifier.cc index 9bc2b78e303bd898e741d5245a88e17afd151744..e0693e99d46fab157afba2459fbc0817159cb73b 100644 --- a/tests/googletest/descriptor_identification/model/test_model_classifier.cc +++ b/tests/googletest/descriptor_identification/model/test_model_classifier.cc @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include <descriptor_identifier/Model/ModelClassifier.hpp> +#include <descriptor_identifier/model/ModelClassifier.hpp> #include <boost/filesystem.hpp> #include "gtest/gtest.h" diff --git a/tests/googletest/descriptor_identification/model/test_model_log_regressor.cc b/tests/googletest/descriptor_identification/model/test_model_log_regressor.cc index a5df9f1fe22d521b37ae15c051e23eb48448efed..4c1e43ece3bbfc890e4878d37a8e0a7a00535e40 100644 --- a/tests/googletest/descriptor_identification/model/test_model_log_regressor.cc +++ b/tests/googletest/descriptor_identification/model/test_model_log_regressor.cc @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include <descriptor_identifier/Model/ModelLogRegressor.hpp> +#include <descriptor_identifier/model/ModelLogRegressor.hpp> #include <boost/filesystem.hpp> #include "gtest/gtest.h" diff --git a/tests/googletest/descriptor_identification/model/test_model_regressor.cc b/tests/googletest/descriptor_identification/model/test_model_regressor.cc index 7d86988f9ee91f498798e71e9e6693ad812c8d21..031ddd4dd2a3b9d789d59c700f341392aa701d16 100644 --- a/tests/googletest/descriptor_identification/model/test_model_regressor.cc +++ b/tests/googletest/descriptor_identification/model/test_model_regressor.cc @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include <descriptor_identifier/Model/ModelRegressor.hpp> +#include <descriptor_identifier/model/ModelRegressor.hpp> #include <boost/filesystem.hpp> #include "gtest/gtest.h" diff --git a/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_classifier.cc b/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_classifier.cc index 1bf203081102559b0b4735a6620c4ffc155dcb75..d45ee875fb3e6ef8ca74d4b3be5785a1bc6b68a5 100644 --- a/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_classifier.cc +++ b/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_classifier.cc @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include <descriptor_identifier/SISSO_DI/SISSOClassifier.hpp> +#include <descriptor_identifier/solver/SISSOClassifier.hpp> #include <boost/filesystem.hpp> #include "gtest/gtest.h" #include <random> diff --git a/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_log_regressor.cc b/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_log_regressor.cc index 81d9ef1880365da2ca86f02b81b9da5f10648419..da99f6e0cb324c6160e08cbcecf61452cb00eb4d 100644 --- a/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_log_regressor.cc +++ b/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_log_regressor.cc @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include <descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp> +#include <descriptor_identifier/solver/SISSOLogRegressor.hpp> #include <boost/filesystem.hpp> #include "gtest/gtest.h" #include <random> diff --git a/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_regressor.cc b/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_regressor.cc index 1d630a120041487ee085cabaf2a869ae6b64730c..65b6614e5fbbbc27424ab34c987cb610d24e088d 100644 --- a/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_regressor.cc +++ b/tests/googletest/descriptor_identification/sisso_regressor/test_sisso_regressor.cc @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -#include <descriptor_identifier/SISSO_DI/SISSORegressor.hpp> +#include <descriptor_identifier/solver/SISSORegressor.hpp> #include <boost/filesystem.hpp> #include "gtest/gtest.h" #include <random>