From 58987a625babb595afb59f41ad869944914ad3f2 Mon Sep 17 00:00:00 2001
From: Thomas <purcell@fhi-berlin.mpg.de>
Date: Thu, 12 Aug 2021 07:07:10 +0200
Subject: [PATCH] Add Apache licence boilerplate to all source/header files

---
 src/classification/ConvexHull1D.cpp                 | 13 +++++++++++++
 src/classification/ConvexHull1D.hpp                 | 13 +++++++++++++
 src/classification/LPWrapper.cpp                    | 13 +++++++++++++
 src/classification/LPWrapper.hpp                    | 13 +++++++++++++
 src/classification/SVMWrapper.cpp                   | 13 +++++++++++++
 src/classification/SVMWrapper.hpp                   | 13 +++++++++++++
 src/classification/prop_sorted_d_mat.cpp            | 13 +++++++++++++
 src/classification/prop_sorted_d_mat.hpp            | 13 +++++++++++++
 src/descriptor_identifier/Model/Model.cpp           | 13 +++++++++++++
 src/descriptor_identifier/Model/Model.hpp           | 13 +++++++++++++
 src/descriptor_identifier/Model/ModelClassifier.cpp | 13 +++++++++++++
 src/descriptor_identifier/Model/ModelClassifier.hpp | 13 +++++++++++++
 .../Model/ModelLogRegressor.cpp                     | 13 +++++++++++++
 .../Model/ModelLogRegressor.hpp                     | 13 +++++++++++++
 src/descriptor_identifier/Model/ModelRegressor.cpp  | 13 +++++++++++++
 src/descriptor_identifier/Model/ModelRegressor.hpp  | 13 +++++++++++++
 .../SISSO_DI/SISSOClassifier.cpp                    | 13 +++++++++++++
 .../SISSO_DI/SISSOClassifier.hpp                    | 13 +++++++++++++
 .../SISSO_DI/SISSOLogRegressor.cpp                  | 13 +++++++++++++
 .../SISSO_DI/SISSOLogRegressor.hpp                  | 13 +++++++++++++
 .../SISSO_DI/SISSORegressor.cpp                     | 13 +++++++++++++
 .../SISSO_DI/SISSORegressor.hpp                     | 13 +++++++++++++
 src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp     | 13 +++++++++++++
 src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp     | 13 +++++++++++++
 src/feature_creation/feature_space/FeatureSpace.cpp | 13 +++++++++++++
 src/feature_creation/feature_space/FeatureSpace.hpp | 13 +++++++++++++
 src/feature_creation/node/FeatureNode.cpp           | 13 +++++++++++++
 src/feature_creation/node/FeatureNode.hpp           | 13 +++++++++++++
 src/feature_creation/node/ModelNode.cpp             | 13 +++++++++++++
 src/feature_creation/node/ModelNode.hpp             | 13 +++++++++++++
 src/feature_creation/node/Node.cpp                  | 13 +++++++++++++
 src/feature_creation/node/Node.hpp                  | 13 +++++++++++++
 .../node/operator_nodes/OperatorNode.cpp            | 13 +++++++++++++
 .../node/operator_nodes/OperatorNode.hpp            | 13 +++++++++++++
 .../allowed_operator_nodes/abs/absolute_value.cpp   | 13 +++++++++++++
 .../allowed_operator_nodes/abs/absolute_value.hpp   | 13 +++++++++++++
 .../abs/parameterized_absolute_value.cpp            | 13 +++++++++++++
 .../abs/parameterized_absolute_value.hpp            | 13 +++++++++++++
 .../abs_diff/absolute_difference.cpp                | 13 +++++++++++++
 .../abs_diff/absolute_difference.hpp                | 13 +++++++++++++
 .../abs_diff/parameterized_absolute_difference.cpp  | 13 +++++++++++++
 .../abs_diff/parameterized_absolute_difference.hpp  | 13 +++++++++++++
 .../allowed_operator_nodes/add/add.cpp              | 13 +++++++++++++
 .../allowed_operator_nodes/add/add.hpp              | 13 +++++++++++++
 .../add/parameterized_add.cpp                       | 13 +++++++++++++
 .../add/parameterized_add.hpp                       | 13 +++++++++++++
 .../allowed_operator_nodes/cb/cube.cpp              | 13 +++++++++++++
 .../allowed_operator_nodes/cb/cube.hpp              | 13 +++++++++++++
 .../cb/parameterized_cube.cpp                       | 13 +++++++++++++
 .../cb/parameterized_cube.hpp                       | 13 +++++++++++++
 .../allowed_operator_nodes/cbrt/cube_root.cpp       | 13 +++++++++++++
 .../allowed_operator_nodes/cbrt/cube_root.hpp       | 13 +++++++++++++
 .../cbrt/parameterized_cube_root.cpp                | 13 +++++++++++++
 .../cbrt/parameterized_cube_root.hpp                | 13 +++++++++++++
 .../allowed_operator_nodes/cos/cos.cpp              | 13 +++++++++++++
 .../allowed_operator_nodes/cos/cos.hpp              | 13 +++++++++++++
 .../cos/parameterized_cos.cpp                       | 13 +++++++++++++
 .../cos/parameterized_cos.hpp                       | 13 +++++++++++++
 .../allowed_operator_nodes/div/divide.cpp           | 13 +++++++++++++
 .../allowed_operator_nodes/div/divide.hpp           | 13 +++++++++++++
 .../div/parameterized_divide.cpp                    | 13 +++++++++++++
 .../div/parameterized_divide.hpp                    | 13 +++++++++++++
 .../allowed_operator_nodes/exp/exponential.cpp      | 13 +++++++++++++
 .../allowed_operator_nodes/exp/exponential.hpp      | 13 +++++++++++++
 .../exp/parameterized_exponential.cpp               | 13 +++++++++++++
 .../exp/parameterized_exponential.hpp               | 13 +++++++++++++
 .../allowed_operator_nodes/inv/inverse.cpp          | 13 +++++++++++++
 .../allowed_operator_nodes/inv/inverse.hpp          | 13 +++++++++++++
 .../inv/parameterized_inverse.cpp                   | 13 +++++++++++++
 .../inv/parameterized_inverse.hpp                   | 13 +++++++++++++
 .../allowed_operator_nodes/log/log.cpp              | 13 +++++++++++++
 .../allowed_operator_nodes/log/log.hpp              | 13 +++++++++++++
 .../log/parameterized_log.cpp                       | 13 +++++++++++++
 .../log/parameterized_log.hpp                       | 13 +++++++++++++
 .../allowed_operator_nodes/mult/multiply.cpp        | 13 +++++++++++++
 .../allowed_operator_nodes/mult/multiply.hpp        | 13 +++++++++++++
 .../mult/parameterized_multiply.cpp                 | 13 +++++++++++++
 .../mult/parameterized_multiply.hpp                 | 13 +++++++++++++
 .../neg_exp/negative_exponential.cpp                | 13 +++++++++++++
 .../neg_exp/negative_exponential.hpp                | 13 +++++++++++++
 .../neg_exp/parameterized_negative_exponential.cpp  | 13 +++++++++++++
 .../neg_exp/parameterized_negative_exponential.hpp  | 13 +++++++++++++
 .../sin/parameterized_sin.cpp                       | 13 +++++++++++++
 .../sin/parameterized_sin.hpp                       | 13 +++++++++++++
 .../allowed_operator_nodes/sin/sin.cpp              | 13 +++++++++++++
 .../allowed_operator_nodes/sin/sin.hpp              | 13 +++++++++++++
 .../six_pow/parameterized_sixth_power.cpp           | 13 +++++++++++++
 .../six_pow/parameterized_sixth_power.hpp           | 13 +++++++++++++
 .../allowed_operator_nodes/six_pow/sixth_power.cpp  | 13 +++++++++++++
 .../allowed_operator_nodes/six_pow/sixth_power.hpp  | 13 +++++++++++++
 .../sq/parameterized_square.cpp                     | 13 +++++++++++++
 .../sq/parameterized_square.hpp                     | 13 +++++++++++++
 .../allowed_operator_nodes/sq/square.cpp            | 13 +++++++++++++
 .../allowed_operator_nodes/sq/square.hpp            | 13 +++++++++++++
 .../sqrt/parameterized_square_root.cpp              | 13 +++++++++++++
 .../sqrt/parameterized_square_root.hpp              | 13 +++++++++++++
 .../allowed_operator_nodes/sqrt/square_root.cpp     | 13 +++++++++++++
 .../allowed_operator_nodes/sqrt/square_root.hpp     | 13 +++++++++++++
 .../sub/parameterized_subtract.cpp                  | 13 +++++++++++++
 .../sub/parameterized_subtract.hpp                  | 13 +++++++++++++
 .../allowed_operator_nodes/sub/subtract.cpp         | 13 +++++++++++++
 .../allowed_operator_nodes/sub/subtract.hpp         | 13 +++++++++++++
 .../node/operator_nodes/allowed_ops.cpp             | 13 +++++++++++++
 .../node/operator_nodes/allowed_ops.hpp             | 13 +++++++++++++
 .../node/operator_nodes/allowed_parameter_ops.cpp   | 13 +++++++++++++
 .../node/operator_nodes/functions.hpp               | 13 +++++++++++++
 src/feature_creation/node/utils.cpp                 | 13 +++++++++++++
 src/feature_creation/node/utils.hpp                 | 13 +++++++++++++
 .../node/value_storage/nodes_value_containers.cpp   | 13 +++++++++++++
 .../node/value_storage/nodes_value_containers.hpp   | 13 +++++++++++++
 src/feature_creation/units/Unit.cpp                 | 13 +++++++++++++
 src/feature_creation/units/Unit.hpp                 | 13 +++++++++++++
 src/inputs/InputParser.cpp                          | 13 +++++++++++++
 src/inputs/InputParser.hpp                          | 13 +++++++++++++
 src/loss_function/LossFunction.cpp                  | 13 +++++++++++++
 src/loss_function/LossFunction.hpp                  | 13 +++++++++++++
 src/loss_function/LossFunctionConvexHull.cpp        | 13 +++++++++++++
 src/loss_function/LossFunctionConvexHull.hpp        | 13 +++++++++++++
 src/loss_function/LossFunctionLogPearsonRMSE.cpp    | 13 +++++++++++++
 src/loss_function/LossFunctionLogPearsonRMSE.hpp    | 13 +++++++++++++
 src/loss_function/LossFunctionPearsonRMSE.cpp       | 13 +++++++++++++
 src/loss_function/LossFunctionPearsonRMSE.hpp       | 13 +++++++++++++
 src/loss_function/utils.cpp                         | 13 +++++++++++++
 src/loss_function/utils.hpp                         | 13 +++++++++++++
 src/main.cpp                                        | 13 +++++++++++++
 src/mpi_interface/MPI_Interface.cpp                 | 13 +++++++++++++
 src/mpi_interface/MPI_Interface.hpp                 | 13 +++++++++++++
 src/mpi_interface/MPI_ops.cpp                       | 13 +++++++++++++
 src/mpi_interface/MPI_ops.hpp                       | 13 +++++++++++++
 src/mpi_interface/serialize_tuple.h                 | 13 +++++++++++++
 src/nl_opt/NLOptWrapper.cpp                         | 13 +++++++++++++
 src/nl_opt/NLOptWrapper.hpp                         | 13 +++++++++++++
 src/python/py_binding_cpp_def/_sisso.cpp            | 13 +++++++++++++
 .../py_binding_cpp_def/bindings_docstring_keyed.cpp | 13 +++++++++++++
 .../py_binding_cpp_def/bindings_docstring_keyed.hpp | 13 +++++++++++++
 src/python/py_binding_cpp_def/conversion_utils.hpp  | 13 +++++++++++++
 .../descriptor_identifier/Model.cpp                 | 13 +++++++++++++
 .../descriptor_identifier/ModelClassifier.cpp       | 13 +++++++++++++
 .../descriptor_identifier/SISSOClassifier.cpp       | 13 +++++++++++++
 .../descriptor_identifier/SISSOLogRegressor.cpp     | 13 +++++++++++++
 .../descriptor_identifier/SISSORegressor.cpp        | 13 +++++++++++++
 .../descriptor_identifier/SISSO_DI.cpp              | 13 +++++++++++++
 .../feature_creation/FeatureNode.cpp                | 13 +++++++++++++
 .../feature_creation/FeatureSpace.cpp               | 13 +++++++++++++
 .../feature_creation/ModelNode.cpp                  | 13 +++++++++++++
 .../feature_creation/node_utils.cpp                 | 13 +++++++++++++
 .../feature_creation/node_utils.hpp                 | 13 +++++++++++++
 src/utils/compare_features.cpp                      | 13 +++++++++++++
 src/utils/compare_features.hpp                      | 13 +++++++++++++
 src/utils/enum.hpp                                  | 13 +++++++++++++
 src/utils/math_funcs.cpp                            | 13 +++++++++++++
 src/utils/math_funcs.hpp                            | 13 +++++++++++++
 src/utils/mkl_interface.hpp                         | 13 +++++++++++++
 src/utils/project.cpp                               | 13 +++++++++++++
 src/utils/project.hpp                               | 13 +++++++++++++
 src/utils/string_utils.cpp                          | 13 +++++++++++++
 src/utils/string_utils.hpp                          | 13 +++++++++++++
 src/utils/vector_utils.hpp                          | 13 +++++++++++++
 158 files changed, 2054 insertions(+)

diff --git a/src/classification/ConvexHull1D.cpp b/src/classification/ConvexHull1D.cpp
index 404197ab..2915d945 100644
--- a/src/classification/ConvexHull1D.cpp
+++ b/src/classification/ConvexHull1D.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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/ConvexHull1D.hpp"
 
 ConvexHull1D::ConvexHull1D() :
diff --git a/src/classification/ConvexHull1D.hpp b/src/classification/ConvexHull1D.hpp
index 8cad64f5..e93b7732 100644
--- a/src/classification/ConvexHull1D.hpp
+++ b/src/classification/ConvexHull1D.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 classificationutils.hpp
  *  @brief A set of functions to create convex hulls, and compare overlap/distance
  *
diff --git a/src/classification/LPWrapper.cpp b/src/classification/LPWrapper.cpp
index 02a46ca8..746e941e 100644
--- a/src/classification/LPWrapper.cpp
+++ b/src/classification/LPWrapper.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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/LPWrapper.hpp"
 #include <iomanip>
 LPWrapper::LPWrapper(
diff --git a/src/classification/LPWrapper.hpp b/src/classification/LPWrapper.hpp
index aadfbd59..c8035ac4 100644
--- a/src/classification/LPWrapper.hpp
+++ b/src/classification/LPWrapper.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/classification/SVMWrapper.cpp b/src/classification/SVMWrapper.cpp
index b70d5017..a5fb4908 100644
--- a/src/classification/SVMWrapper.cpp
+++ b/src/classification/SVMWrapper.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 fbdba8f2..7e17c312 100644
--- a/src/classification/SVMWrapper.hpp
+++ b/src/classification/SVMWrapper.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/classification/prop_sorted_d_mat.cpp b/src/classification/prop_sorted_d_mat.cpp
index 500e6733..bc3fe757 100644
--- a/src/classification/prop_sorted_d_mat.cpp
+++ b/src/classification/prop_sorted_d_mat.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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/prop_sorted_d_mat.hpp"
 
 std::vector<double> prop_sorted_d_mat::SORTED_D_MATRIX;
diff --git a/src/classification/prop_sorted_d_mat.hpp b/src/classification/prop_sorted_d_mat.hpp
index 3043d41f..48b4a33e 100644
--- a/src/classification/prop_sorted_d_mat.hpp
+++ b/src/classification/prop_sorted_d_mat.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
 
diff --git a/src/descriptor_identifier/Model/Model.cpp b/src/descriptor_identifier/Model/Model.cpp
index c1eed724..c5360296 100644
--- a/src/descriptor_identifier/Model/Model.cpp
+++ b/src/descriptor_identifier/Model/Model.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 Model::Model(
diff --git a/src/descriptor_identifier/Model/Model.hpp b/src/descriptor_identifier/Model/Model.hpp
index 0bcf9ea7..c122c725 100644
--- a/src/descriptor_identifier/Model/Model.hpp
+++ b/src/descriptor_identifier/Model/Model.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/descriptor_identifier/Model/ModelClassifier.cpp b/src/descriptor_identifier/Model/ModelClassifier.cpp
index 8bc4e42d..b0e1816d 100644
--- a/src/descriptor_identifier/Model/ModelClassifier.cpp
+++ b/src/descriptor_identifier/Model/ModelClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 ModelClassifier::ModelClassifier(
diff --git a/src/descriptor_identifier/Model/ModelClassifier.hpp b/src/descriptor_identifier/Model/ModelClassifier.hpp
index b235a5e0..4f1559da 100644
--- a/src/descriptor_identifier/Model/ModelClassifier.hpp
+++ b/src/descriptor_identifier/Model/ModelClassifier.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/descriptor_identifier/Model/ModelLogRegressor.cpp b/src/descriptor_identifier/Model/ModelLogRegressor.cpp
index 80083089..4fa33df2 100644
--- a/src/descriptor_identifier/Model/ModelLogRegressor.cpp
+++ b/src/descriptor_identifier/Model/ModelLogRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 ModelLogRegressor::ModelLogRegressor()
diff --git a/src/descriptor_identifier/Model/ModelLogRegressor.hpp b/src/descriptor_identifier/Model/ModelLogRegressor.hpp
index a417d7ba..7ab21409 100644
--- a/src/descriptor_identifier/Model/ModelLogRegressor.hpp
+++ b/src/descriptor_identifier/Model/ModelLogRegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/descriptor_identifier/Model/ModelRegressor.cpp b/src/descriptor_identifier/Model/ModelRegressor.cpp
index 630bfd04..b56f66eb 100644
--- a/src/descriptor_identifier/Model/ModelRegressor.cpp
+++ b/src/descriptor_identifier/Model/ModelRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 ModelRegressor::ModelRegressor()
diff --git a/src/descriptor_identifier/Model/ModelRegressor.hpp b/src/descriptor_identifier/Model/ModelRegressor.hpp
index 8a83e261..a9008abf 100644
--- a/src/descriptor_identifier/Model/ModelRegressor.hpp
+++ b/src/descriptor_identifier/Model/ModelRegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp
index cc836995..a65eac8f 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSOClassifier::SISSOClassifier(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp
index 077074ab..f3d84b5c 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp
index 5431246f..59e15d6a 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSOLogRegressor::SISSOLogRegressor(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp
index 398dc729..99f7502e 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp b/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp
index 467287d1..71a4066f 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSORegressor::SISSORegressor(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp b/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp
index 74e79494..1d91de73 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp b/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp
index 13869ebf..cab94c6c 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSO_DI::SISSO_DI(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp b/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp
index 95cc49a0..e69e3f6d 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/feature_space/FeatureSpace.cpp b/src/feature_creation/feature_space/FeatureSpace.cpp
index 676bcf74..ea0cbe25 100644
--- a/src/feature_creation/feature_space/FeatureSpace.cpp
+++ b/src/feature_creation/feature_space/FeatureSpace.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/feature_space/FeatureSpace.hpp"
 
 BOOST_CLASS_EXPORT_GUID(FeatureNode, "FeatureNode")
diff --git a/src/feature_creation/feature_space/FeatureSpace.hpp b/src/feature_creation/feature_space/FeatureSpace.hpp
index d1d3ae67..8320ffb0 100644
--- a/src/feature_creation/feature_space/FeatureSpace.hpp
+++ b/src/feature_creation/feature_space/FeatureSpace.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/FeatureNode.cpp b/src/feature_creation/node/FeatureNode.cpp
index a5944607..eeeb36f4 100644
--- a/src/feature_creation/node/FeatureNode.cpp
+++ b/src/feature_creation/node/FeatureNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/FeatureNode.hpp"
 
 FeatureNode::FeatureNode()
diff --git a/src/feature_creation/node/FeatureNode.hpp b/src/feature_creation/node/FeatureNode.hpp
index cd62424f..0ae91d85 100644
--- a/src/feature_creation/node/FeatureNode.hpp
+++ b/src/feature_creation/node/FeatureNode.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/ModelNode.cpp b/src/feature_creation/node/ModelNode.cpp
index 92f07cee..70272f01 100644
--- a/src/feature_creation/node/ModelNode.cpp
+++ b/src/feature_creation/node/ModelNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/ModelNode.hpp"
 
 ModelNode::ModelNode()
diff --git a/src/feature_creation/node/ModelNode.hpp b/src/feature_creation/node/ModelNode.hpp
index 33419865..9fd42961 100644
--- a/src/feature_creation/node/ModelNode.hpp
+++ b/src/feature_creation/node/ModelNode.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/Node.cpp b/src/feature_creation/node/Node.cpp
index 58c6735e..1860e910 100644
--- a/src/feature_creation/node/Node.cpp
+++ b/src/feature_creation/node/Node.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/Node.hpp"
 
 Node::Node()
diff --git a/src/feature_creation/node/Node.hpp b/src/feature_creation/node/Node.hpp
index 037b3d31..4d2079ec 100644
--- a/src/feature_creation/node/Node.hpp
+++ b/src/feature_creation/node/Node.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/OperatorNode.cpp b/src/feature_creation/node/operator_nodes/OperatorNode.cpp
index 67690c94..a274f712 100644
--- a/src/feature_creation/node/operator_nodes/OperatorNode.cpp
+++ b/src/feature_creation/node/operator_nodes/OperatorNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/OperatorNode.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(OperatorNode)
diff --git a/src/feature_creation/node/operator_nodes/OperatorNode.hpp b/src/feature_creation/node/operator_nodes/OperatorNode.hpp
index 8df52f86..00a7f5be 100644
--- a/src/feature_creation/node/operator_nodes/OperatorNode.hpp
+++ b/src/feature_creation/node/operator_nodes/OperatorNode.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp
index 48cc8992..f388e966 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp"
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AbsNode)
 
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 5fb6af8f..351a7e85 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp
index 2c166a95..64d35f78 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AbsParamNode)
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 c16a8503..ad57c33c 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp
index b92ed490..b9b166a3 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp"
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp"
 
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 b125a367..11e97a4e 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp
index 970bdddb..00202f83 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AbsDiffParamNode)
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 adfc9b25..cf57e806 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp
index 6d832484..26cbac55 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp"
 
 void generateAddNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
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 7e1096f4..f6607fde 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp
index 9352a534..17f1416a 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AddParamNode)
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 36b46315..f5c55079 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp
index 394c6e0c..accb7af0 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp"
 
 void generateCbNode(
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 132a8259..723352c4 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp
index 2aeb18d0..b87b83ca 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(CbParamNode)
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 1ce23ece..3a359eb3 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp
index 420dc6c8..6f31375a 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp"
 
 void generateCbrtNode(
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 bf6e419f..4b99727a 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp
index e4762873..c6d43bd7 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(CbrtParamNode)
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 b9c4c411..1591315d 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp
index a7a9d70e..f8e18fff 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp"
 
 void generateCosNode(
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 b5ff54cd..2c28fef0 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp
index 57b4d8ae..bd32784b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(CosParamNode)
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 46f2115c..0af15870 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp
index 5fd36ead..bbc0e16f 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp"
 
 void generateDivNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
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 93d78546..12e7bd06 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp
index 2d6d45fe..af5bb922 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(DivParamNode)
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 56387c9c..cf39a991 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp
index 7a071ebc..27b39430 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp"
 
 void generateExpNode(
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 6a220215..ec559886 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp
index bda77447..c4bfd7a2 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(ExpParamNode)
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 f53fc3fb..251f354f 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp
index 7d52017f..08f6cc34 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp"
 
 void generateInvNode(
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 d3445f6c..719ca95d 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp
index 9126df9a..b5b5213b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(InvParamNode)
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 f98d7fed..4736b9be 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp
index f11e1c7e..fafd589c 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp"
 
 void generateLogNode(
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 6456f4f9..746e9f52 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp
index 0e331371..85a052b3 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(LogParamNode)
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 cc3b1bad..343f349e 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp
index a3433c36..956b1a0c 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp"
 
 void generateMultNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
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 e799f8eb..a42d3384 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp
index a3c83818..4779f677 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(MultParamNode)
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 14254b68..4c4fe9c6 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp
index d704e9ca..dca7dd72 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp"
 
 void generateNegExpNode(
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 a959996d..8b76ec60 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp
index 039b3e90..ddb14e04 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(NegExpParamNode)
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 24211df7..3be3ff80 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp
index 0d480eaf..b63e6a0e 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SinParamNode)
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 8cd929be..aa9b7f5d 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp
index 8d99ebc5..c28335a7 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp"
 
 void generateSinNode(
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 4a0a4508..db9205ed 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp
index 54fa1ce3..f20b6f95 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SixPowParamNode)
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 b99c5e6b..065e4614 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp
index b6f0999e..e7fca0fd 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp"
 
 void generateSixPowNode(
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 f1b4fd75..3acfb519 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp
index a967cd98..bbb9bf62 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SqParamNode)
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 1a66c53c..5dc864d7 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp
index a4f8a045..bd71819b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp"
 
 void generateSqNode(
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 e02e0920..a9ece0d4 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp
index 6a20267a..d3a91c08 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SqrtParamNode)
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 f3e4e22e..c431bf64 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp
index ddfbc9ee..36206adb 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp"
 
 void generateSqrtNode(
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 fcbe0e76..6f2e29b8 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp
index 2ee7ed05..b04171ff 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SubParamNode)
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 075b18ab..4eba4206 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp
index 4fe55753..66c2992b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp"
 
 void generateSubNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
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 982c81d9..f61ad247 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_ops.cpp b/src/feature_creation/node/operator_nodes/allowed_ops.cpp
index 2fea7d7d..e3bb5825 100644
--- a/src/feature_creation/node/operator_nodes/allowed_ops.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_ops.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_ops.hpp"
 
 std::map<std::string, un_op_node_gen> allowed_op_maps::unary_operator_map;
diff --git a/src/feature_creation/node/operator_nodes/allowed_ops.hpp b/src/feature_creation/node/operator_nodes/allowed_ops.hpp
index f98a5f57..0bc0b1db 100644
--- a/src/feature_creation/node/operator_nodes/allowed_ops.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_ops.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp b/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp
index 719d6318..efae75cd 100644
--- a/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/operator_nodes/allowed_ops.hpp"
 
 std::map<std::string, un_param_op_node_gen> allowed_op_maps::unary_param_operator_map;
diff --git a/src/feature_creation/node/operator_nodes/functions.hpp b/src/feature_creation/node/operator_nodes/functions.hpp
index 64446a54..bd087f4d 100644
--- a/src/feature_creation/node/operator_nodes/functions.hpp
+++ b/src/feature_creation/node/operator_nodes/functions.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/utils.cpp b/src/feature_creation/node/utils.cpp
index 05cab976..35b539b3 100644
--- a/src/feature_creation/node/utils.cpp
+++ b/src/feature_creation/node/utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/utils.hpp"
 
 #ifdef PARAMETERIZE
diff --git a/src/feature_creation/node/utils.hpp b/src/feature_creation/node/utils.hpp
index b807a778..4ea80518 100644
--- a/src/feature_creation/node/utils.hpp
+++ b/src/feature_creation/node/utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/node/value_storage/nodes_value_containers.cpp b/src/feature_creation/node/value_storage/nodes_value_containers.cpp
index cd903ff7..3f410cea 100644
--- a/src/feature_creation/node/value_storage/nodes_value_containers.cpp
+++ b/src/feature_creation/node/value_storage/nodes_value_containers.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/value_storage/nodes_value_containers.hpp"
 
 int node_value_arrs::N_SELECTED = 0;
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 d05d6737..2376700c 100644
--- a/src/feature_creation/node/value_storage/nodes_value_containers.hpp
+++ b/src/feature_creation/node/value_storage/nodes_value_containers.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/feature_creation/units/Unit.cpp b/src/feature_creation/units/Unit.cpp
index 72a822e0..4eaeee98 100644
--- a/src/feature_creation/units/Unit.cpp
+++ b/src/feature_creation/units/Unit.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/units/Unit.hpp"
 
 Unit::Unit() :
diff --git a/src/feature_creation/units/Unit.hpp b/src/feature_creation/units/Unit.hpp
index 852a2853..aa8e50cd 100644
--- a/src/feature_creation/units/Unit.hpp
+++ b/src/feature_creation/units/Unit.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/inputs/InputParser.cpp b/src/inputs/InputParser.cpp
index bfe1e331..f2768ed5 100644
--- a/src/inputs/InputParser.cpp
+++ b/src/inputs/InputParser.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "inputs/InputParser.hpp"
 
 InputParser::InputParser(pt::ptree IP, std::string fn, std::shared_ptr<MPI_Interface> comm) :
diff --git a/src/inputs/InputParser.hpp b/src/inputs/InputParser.hpp
index b2eafb41..78a22d77 100644
--- a/src/inputs/InputParser.hpp
+++ b/src/inputs/InputParser.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/loss_function/LossFunction.cpp b/src/loss_function/LossFunction.cpp
index 46e31697..aa71442a 100644
--- a/src/loss_function/LossFunction.cpp
+++ b/src/loss_function/LossFunction.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "loss_function/LossFunction.hpp"
 
 LossFunction::LossFunction(
diff --git a/src/loss_function/LossFunction.hpp b/src/loss_function/LossFunction.hpp
index 4d569fb2..6417e2fb 100644
--- a/src/loss_function/LossFunction.hpp
+++ b/src/loss_function/LossFunction.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/loss_function/LossFunctionConvexHull.cpp b/src/loss_function/LossFunctionConvexHull.cpp
index 8240c928..83ea26a4 100644
--- a/src/loss_function/LossFunctionConvexHull.cpp
+++ b/src/loss_function/LossFunctionConvexHull.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "loss_function/LossFunctionConvexHull.hpp"
 
 LossFunctionConvexHull::LossFunctionConvexHull(
diff --git a/src/loss_function/LossFunctionConvexHull.hpp b/src/loss_function/LossFunctionConvexHull.hpp
index 6024987c..ab816f30 100644
--- a/src/loss_function/LossFunctionConvexHull.hpp
+++ b/src/loss_function/LossFunctionConvexHull.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/loss_function/LossFunctionLogPearsonRMSE.cpp b/src/loss_function/LossFunctionLogPearsonRMSE.cpp
index cc2e933d..72911c2e 100644
--- a/src/loss_function/LossFunctionLogPearsonRMSE.cpp
+++ b/src/loss_function/LossFunctionLogPearsonRMSE.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "loss_function/LossFunctionLogPearsonRMSE.hpp"
 
 LossFunctionLogPearsonRMSE::LossFunctionLogPearsonRMSE(
diff --git a/src/loss_function/LossFunctionLogPearsonRMSE.hpp b/src/loss_function/LossFunctionLogPearsonRMSE.hpp
index bfb6225c..cd99613d 100644
--- a/src/loss_function/LossFunctionLogPearsonRMSE.hpp
+++ b/src/loss_function/LossFunctionLogPearsonRMSE.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/loss_function/LossFunctionPearsonRMSE.cpp b/src/loss_function/LossFunctionPearsonRMSE.cpp
index a9442432..d8da1384 100644
--- a/src/loss_function/LossFunctionPearsonRMSE.cpp
+++ b/src/loss_function/LossFunctionPearsonRMSE.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "loss_function/LossFunctionPearsonRMSE.hpp"
 
 LossFunctionPearsonRMSE::LossFunctionPearsonRMSE(
diff --git a/src/loss_function/LossFunctionPearsonRMSE.hpp b/src/loss_function/LossFunctionPearsonRMSE.hpp
index 76035fbd..1a9140ed 100644
--- a/src/loss_function/LossFunctionPearsonRMSE.hpp
+++ b/src/loss_function/LossFunctionPearsonRMSE.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/loss_function/utils.cpp b/src/loss_function/utils.cpp
index c17fb3b0..32349851 100644
--- a/src/loss_function/utils.cpp
+++ b/src/loss_function/utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "loss_function/utils.hpp"
 std::shared_ptr<LossFunction> loss_function_util::get_loss_function(
     std::string type,
diff --git a/src/loss_function/utils.hpp b/src/loss_function/utils.hpp
index 34e72f3f..524637f0 100644
--- a/src/loss_function/utils.hpp
+++ b/src/loss_function/utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/main.cpp b/src/main.cpp
index 8cee6abd..6224468d 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "inputs/InputParser.hpp"
 #include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp"
 #include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp"
diff --git a/src/mpi_interface/MPI_Interface.cpp b/src/mpi_interface/MPI_Interface.cpp
index 96b7b3af..afe607dc 100644
--- a/src/mpi_interface/MPI_Interface.cpp
+++ b/src/mpi_interface/MPI_Interface.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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_Interface.hpp"
 
 MPI_Interface::MPI_Interface() : boost::mpi::communicator()
diff --git a/src/mpi_interface/MPI_Interface.hpp b/src/mpi_interface/MPI_Interface.hpp
index 1fd61694..ce1f3889 100644
--- a/src/mpi_interface/MPI_Interface.hpp
+++ b/src/mpi_interface/MPI_Interface.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/mpi_interface/MPI_ops.cpp b/src/mpi_interface/MPI_ops.cpp
index 543cbc48..f2584746 100644
--- a/src/mpi_interface/MPI_ops.cpp
+++ b/src/mpi_interface/MPI_ops.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 // MPI_Op top_feats;
diff --git a/src/mpi_interface/MPI_ops.hpp b/src/mpi_interface/MPI_ops.hpp
index 8ddc9d26..801747b5 100644
--- a/src/mpi_interface/MPI_ops.hpp
+++ b/src/mpi_interface/MPI_ops.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/mpi_interface/serialize_tuple.h b/src/mpi_interface/serialize_tuple.h
index cc3cfe74..8645f40f 100644
--- a/src/mpi_interface/serialize_tuple.h
+++ b/src/mpi_interface/serialize_tuple.h
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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.
 /*
 Copyright 2011 Christopher Allen Ogden. All rights reserved.
 Redistribution and use in source and binary forms, with or without modification, are
diff --git a/src/nl_opt/NLOptWrapper.cpp b/src/nl_opt/NLOptWrapper.cpp
index 3850ffd7..78a87953 100644
--- a/src/nl_opt/NLOptWrapper.cpp
+++ b/src/nl_opt/NLOptWrapper.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "nl_opt/NLOptWrapper.hpp"
 
 int nlopt_wrapper::MAX_PARAM_DEPTH = -1;
diff --git a/src/nl_opt/NLOptWrapper.hpp b/src/nl_opt/NLOptWrapper.hpp
index 2cb24653..41d71dd8 100644
--- a/src/nl_opt/NLOptWrapper.hpp
+++ b/src/nl_opt/NLOptWrapper.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/python/py_binding_cpp_def/_sisso.cpp b/src/python/py_binding_cpp_def/_sisso.cpp
index 1fb8a925..e26653d2 100644
--- a/src/python/py_binding_cpp_def/_sisso.cpp
+++ b/src/python/py_binding_cpp_def/_sisso.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 <boost/python/suite/indexing/map_indexing_suite.hpp>
 #include <boost/python/numpy.hpp>
 
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 070cb73f..45930efd 100644
--- a/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp
+++ b/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "python/py_binding_cpp_def/bindings.hpp"
 
 using namespace boost::python;
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 c1aa6c98..ac94035b 100644
--- a/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp
+++ b/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/python/py_binding_cpp_def/conversion_utils.hpp b/src/python/py_binding_cpp_def/conversion_utils.hpp
index afd6a5f5..28699c5b 100644
--- a/src/python/py_binding_cpp_def/conversion_utils.hpp
+++ b/src/python/py_binding_cpp_def/conversion_utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
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 d1778521..0bce0176 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 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 e10ea34c..e467b410 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 ModelClassifier::ModelClassifier(const ModelClassifier& o, py::list new_coefs, np::ndarray prop_train_est, np::ndarray prop_test_est) :
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 09d94560..1263dacd 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSOClassifier::SISSOClassifier(
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 056989da..52ddb012 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSOLogRegressor::SISSOLogRegressor(
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 530af82b..49362e68 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSORegressor::SISSORegressor(
diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp
index 4c55ba91..9a0b3d58 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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"
 
 SISSO_DI::SISSO_DI(
diff --git a/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp b/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp
index f11a8c0c..27a2861f 100644
--- a/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/FeatureNode.hpp"
 
 FeatureNode::FeatureNode(unsigned long int feat_ind, std::string expr, np::ndarray value, np::ndarray test_value, Unit unit) :
diff --git a/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp b/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp
index c0e9b7e7..4946e6f1 100644
--- a/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/feature_space/FeatureSpace.hpp"
 
 #ifdef PARAMETERIZE
diff --git a/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp b/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp
index 561ce00b..258323fa 100644
--- a/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "feature_creation/node/ModelNode.hpp"
 
 ModelNode::ModelNode(
diff --git a/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp b/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp
index aa712686..798d1f4b 100644
--- a/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "python/py_binding_cpp_def/feature_creation/node_utils.hpp"
 
 py::list str2node::phi_selected_from_file_py(std::string filename, py::list phi_0)
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 1adb9ec3..25b8a205 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
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/utils/compare_features.cpp b/src/utils/compare_features.cpp
index 3418e547..1a556924 100644
--- a/src/utils/compare_features.cpp
+++ b/src/utils/compare_features.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "utils/compare_features.hpp"
 #include <iomanip>
 std::vector<double> comp_feats::CORR_CHECK;
diff --git a/src/utils/compare_features.hpp b/src/utils/compare_features.hpp
index 955fa397..a20946dc 100644
--- a/src/utils/compare_features.hpp
+++ b/src/utils/compare_features.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/utils/enum.hpp b/src/utils/enum.hpp
index cc24940a..f11fe02b 100644
--- a/src/utils/enum.hpp
+++ b/src/utils/enum.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/utils/math_funcs.cpp b/src/utils/math_funcs.cpp
index 1efd66c1..976ffe39 100644
--- a/src/utils/math_funcs.cpp
+++ b/src/utils/math_funcs.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "utils/math_funcs.hpp"
 
 bool util_funcs::iterate(std::vector<int>& inds, int size, int incriment)
diff --git a/src/utils/math_funcs.hpp b/src/utils/math_funcs.hpp
index f89feeed..2f4b5064 100644
--- a/src/utils/math_funcs.hpp
+++ b/src/utils/math_funcs.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/utils/mkl_interface.hpp b/src/utils/mkl_interface.hpp
index 0ce0dcb7..5164ff65 100644
--- a/src/utils/mkl_interface.hpp
+++ b/src/utils/mkl_interface.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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.cpp b/src/utils/project.cpp
index 96b48335..497d2d72 100644
--- a/src/utils/project.cpp
+++ b/src/utils/project.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "utils/project.hpp"
 
 void project_funcs::project_r(
diff --git a/src/utils/project.hpp b/src/utils/project.hpp
index a12b4408..32b951bf 100644
--- a/src/utils/project.hpp
+++ b/src/utils/project.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/utils/string_utils.cpp b/src/utils/string_utils.cpp
index 366c250c..288d8cd3 100644
--- a/src/utils/string_utils.cpp
+++ b/src/utils/string_utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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 "utils/string_utils.hpp"
 
 std::vector<std::string> str_utils::split_string_trim(const std::string str, const std::string split_tokens)
diff --git a/src/utils/string_utils.hpp b/src/utils/string_utils.hpp
index 5a3b4583..66f80132 100644
--- a/src/utils/string_utils.hpp
+++ b/src/utils/string_utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
diff --git a/src/utils/vector_utils.hpp b/src/utils/vector_utils.hpp
index c60771e2..9d4ba87f 100644
--- a/src/utils/vector_utils.hpp
+++ b/src/utils/vector_utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// 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
  *
-- 
GitLab