diff --git a/ProcessLib/BoundaryCondition/BoundaryCondition.h b/ProcessLib/BoundaryCondition/BoundaryCondition.h index 127bbe49f24b29399f5fcbcec10980692e95e8a5..c9f201807c71a13a8c8c93d8883b209cbe13d4c6 100644 --- a/ProcessLib/BoundaryCondition/BoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/BoundaryCondition.h @@ -22,11 +22,13 @@ class LocalToGlobalIndexMap; template <typename> struct IndexValueVector; } - +namespace ParameterLib +{ +struct ParameterBase; +} namespace ProcessLib { struct BoundaryConditionConfig; -struct ParameterBase; class Process; class BoundaryCondition diff --git a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h b/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h index b6bebef421be6022d3a1e7b8d146e77e8e86a873..8db720690fb145e70328b47fdb24dffbecc5ddf0 100644 --- a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h +++ b/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h @@ -20,7 +20,8 @@ class BoundaryConditionCollection final { public: explicit BoundaryConditionCollection( - std::vector<std::unique_ptr<ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters) : _parameters(parameters) { } @@ -62,7 +63,8 @@ public: private: mutable std::vector<NumLib::IndexValueVector<GlobalIndexType>> _dirichlet_bcs; std::vector<std::unique_ptr<BoundaryCondition>> _boundary_conditions; - std::vector<std::unique_ptr<ParameterBase>> const& _parameters; + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + _parameters; }; } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.cpp index 51e87faf7f4151c20bb5298abeef28fdad698510..1000972862ed17a5a96f825ddd3ca8bf9a4ad328 100644 --- a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.cpp @@ -13,15 +13,15 @@ #include <vector> #include <logog/include/logog.hpp> -#include "MeshLib/Node.h" #include "MeshLib/MeshSearch/NodeSearch.h" // for getUniqueNodes +#include "MeshLib/Node.h" +#include "ParameterLib/Utils.h" #include "ProcessLib/Utils/CreateLocalAssemblers.h" -#include "ProcessLib/Utils/ProcessUtils.h" namespace ProcessLib { ConstraintDirichletBoundaryCondition::ConstraintDirichletBoundaryCondition( - Parameter<double> const& parameter, + ParameterLib::Parameter<double> const& parameter, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id, MeshLib::Mesh const& bc_mesh, unsigned const integration_order, MeshLib::Mesh const& bulk_mesh, @@ -128,7 +128,7 @@ void ConstraintDirichletBoundaryCondition::getEssentialBCValues( const double t, const GlobalVector& /*x*/, NumLib::IndexValueVector<GlobalIndexType>& bc_values) const { - SpatialPosition pos; + ParameterLib::SpatialPosition pos; bc_values.ids.clear(); bc_values.values.clear(); @@ -228,7 +228,7 @@ createConstraintDirichletBoundaryCondition( BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, unsigned const integration_order, int const component_id, - std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters, + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters, Process const& constraining_process) { DBUG("Constructing ConstraintDirichletBoundaryCondition from config."); @@ -298,7 +298,8 @@ createConstraintDirichletBoundaryCondition( auto const param_name = config.getConfigParameter<std::string>("parameter"); DBUG("Using parameter %s", param_name.c_str()); - auto& param = findParameter<double>(param_name, parameters, 1); + auto& param = + ParameterLib::findParameter<double>(param_name, parameters, 1); // In case of partitioned mesh the boundary could be empty, i.e. there is no // boundary condition. diff --git a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.h b/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.h index 5d05b6e4bfd0567ee288b3ff5fb26978646bdd21..186542d89d26ab7a847db2dfe73ef1efc6f8a977 100644 --- a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.h @@ -9,10 +9,10 @@ #pragma once +#include "BoundaryCondition.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" #include "NumLib/IndexValueVector.h" -#include "ProcessLib/Parameter/Parameter.h" -#include "BoundaryCondition.h" +#include "ParameterLib/Parameter.h" #include "ConstraintDirichletBoundaryConditionLocalAssembler.h" @@ -49,7 +49,7 @@ public: /// @note The function has to be stored by value, else the process value is /// not captured properly. ConstraintDirichletBoundaryCondition( - Parameter<double> const& parameter, + ParameterLib::Parameter<double> const& parameter, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id, MeshLib::Mesh const& bc_mesh, unsigned const integration_order, @@ -67,7 +67,7 @@ public: NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override; private: - Parameter<double> const& _parameter; + ParameterLib::Parameter<double> const& _parameter; /// Local dof table, a subset of the global one restricted to the /// participating number of elements of the boundary condition. @@ -123,6 +123,6 @@ createConstraintDirichletBoundaryCondition( BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, unsigned const integration_order, int const component_id, - std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters, + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters, Process const& constraining_process); } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryConditionLocalAssembler.h index 87a351ca4aa3d9a9836d55ee97a63196bf4f5544..9c214e163e3e389e931bc09db99f37e8dd7330c4 100644 --- a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryConditionLocalAssembler.h @@ -13,8 +13,8 @@ #include "NumLib/DOF/DOFTableUtil.h" +#include "ParameterLib/Parameter.h" #include "ProcessLib/Process.h" -#include "ProcessLib/Parameter/Parameter.h" #include "ProcessLib/Utils/InitShapeMatrices.h" #include "MeshLib/Elements/MapBulkElementPoint.h" diff --git a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp index 4efc1805feff70ab82ca80a24de38952e3bf9bdd..844d1e4586ac4d84c04ee34df94de447cb12f17e 100644 --- a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp @@ -33,7 +33,7 @@ std::unique_ptr<BoundaryCondition> createBoundaryCondition( const NumLib::LocalToGlobalIndexMap& dof_table, const MeshLib::Mesh& bulk_mesh, const int variable_id, const unsigned integration_order, const unsigned shapefunction_order, - const std::vector<std::unique_ptr<ProcessLib::ParameterBase>>& parameters, + const std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& parameters, const Process& process) { // Surface mesh and bulk mesh must have equal axial symmetry flags! diff --git a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.h b/ProcessLib/BoundaryCondition/CreateBoundaryCondition.h index 752d7a574a7014cac17f50dc3352ba9b03a0f070..7c36f45fab971b8bfd99f40be235d237e8e57c54 100644 --- a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/CreateBoundaryCondition.h @@ -20,13 +20,15 @@ class Mesh; namespace NumLib { class LocalToGlobalIndexMap; -} // namespace NumLib - +} +namespace ParameterLib +{ +struct ParameterBase; +} namespace ProcessLib { class BoundaryCondition; struct BoundaryConditionConfig; -struct ParameterBase; class Process; std::unique_ptr<BoundaryCondition> createBoundaryCondition( @@ -34,7 +36,7 @@ std::unique_ptr<BoundaryCondition> createBoundaryCondition( const NumLib::LocalToGlobalIndexMap& dof_table, const MeshLib::Mesh& bulk_mesh, const int variable_id, const unsigned integration_order, const unsigned shapefunction_order, - const std::vector<std::unique_ptr<ProcessLib::ParameterBase>>& parameters, + const std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& parameters, const Process& process); } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp index c714a531dec83f6ec4c75e076bfd18b546aa4d0d..1385562e9bdaf627c51da32595c14df5196661ca 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp @@ -16,15 +16,16 @@ #include "DirichletBoundaryConditionAuxiliaryFunctions.h" #include "BaseLib/ConfigTree.h" -#include "NumLib/IndexValueVector.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" -#include "ProcessLib/Parameter/Parameter.h" -#include "ProcessLib/Utils/ProcessUtils.h" +#include "NumLib/IndexValueVector.h" +#include "ParameterLib/Parameter.h" +#include "ParameterLib/Utils.h" namespace ProcessLib { DirichletBoundaryCondition::DirichletBoundaryCondition( - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id) : _parameter(parameter), @@ -57,7 +58,7 @@ std::unique_ptr<DirichletBoundaryCondition> createDirichletBoundaryCondition( BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id, - const std::vector<std::unique_ptr<ProcessLib::ParameterBase>>& parameters) + const std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& parameters) { DBUG("Constructing DirichletBoundaryCondition from config."); //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} @@ -67,7 +68,8 @@ std::unique_ptr<DirichletBoundaryCondition> createDirichletBoundaryCondition( auto const param_name = config.getConfigParameter<std::string>("parameter"); DBUG("Using parameter %s", param_name.c_str()); - auto& parameter = findParameter<double>(param_name, parameters, 1); + auto& parameter = + ParameterLib::findParameter<double>(param_name, parameters, 1); if (parameter.mesh() && *parameter.mesh() != bc_mesh) { diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h index 123ef2924cd4b52c503e4ac65169d78825ffa40a..1f3681199e0bf4e7c90685a44374be79f65a56e8 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h @@ -15,12 +15,14 @@ namespace BaseLib { class ConfigTree; } - -namespace ProcessLib +namespace ParameterLib { template <typename T> struct Parameter; +} +namespace ProcessLib +{ // TODO docu /// The DirichletBoundaryCondition class describes a constant in space /// and time Dirichlet boundary condition. @@ -30,7 +32,8 @@ class DirichletBoundaryCondition final : public BoundaryCondition { public: DirichletBoundaryCondition( - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id); @@ -39,7 +42,7 @@ public: NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override; private: - Parameter<double> const& _parameter; + ParameterLib::Parameter<double> const& _parameter; MeshLib::Mesh const& _bc_mesh; std::unique_ptr<NumLib::LocalToGlobalIndexMap const> _dof_table_boundary; @@ -51,6 +54,7 @@ std::unique_ptr<DirichletBoundaryCondition> createDirichletBoundaryCondition( BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id, - const std::vector<std::unique_ptr<ProcessLib::ParameterBase>>& parameters); + const std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& + parameters); } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.cpp b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.cpp index 58f9714b057c4008a2969dbff16a060679bf70b3..05ff01e5848b5b0de41912cdabcebf84503d9cbd 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.cpp +++ b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.cpp @@ -15,9 +15,9 @@ #include "MeshLib/Mesh.h" #include "MeshLib/Node.h" -#include "NumLib/IndexValueVector.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" -#include "ProcessLib/Parameter/Parameter.h" +#include "NumLib/IndexValueVector.h" +#include "ParameterLib/Parameter.h" namespace ProcessLib { @@ -56,14 +56,15 @@ void checkParametersOfDirichletBoundaryCondition( } void getEssentialBCValuesLocal( - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, std::vector<MeshLib::Node*> const& nodes_in_bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_boundary, int const variable_id, int const component_id, const double t, GlobalVector const& /*x*/, NumLib::IndexValueVector<GlobalIndexType>& bc_values) { - SpatialPosition pos; + ParameterLib::SpatialPosition pos; bc_values.ids.clear(); bc_values.values.clear(); diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.h b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.h index db69d1b76a40fcd8c842f20655d30b5b07fd0ab0..8de251719ce58e37d51229d155a0930cd14fb4b6 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.h +++ b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.h @@ -33,11 +33,14 @@ template <typename> struct IndexValueVector; } -namespace ProcessLib +namespace ParameterLib { template <typename T> struct Parameter; +} +namespace ProcessLib +{ void checkParametersOfDirichletBoundaryCondition( MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, @@ -45,7 +48,8 @@ void checkParametersOfDirichletBoundaryCondition( int const component_id); void getEssentialBCValuesLocal( - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, std::vector<MeshLib::Node*> const& nodes_in_bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_boundary, int const variable_id, int const component_id, const double t, diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.cpp b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.cpp index 2392094e8bc2da30cc36ec71b2104822584a2220..1631031eada59b4492bf7247d45eae7a46dc1191 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.cpp +++ b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.cpp @@ -21,15 +21,16 @@ #include "NumLib/DOF/LocalToGlobalIndexMap.h" #include "NumLib/IndexValueVector.h" -#include "ProcessLib/Parameter/Parameter.h" -#include "ProcessLib/Utils/ProcessUtils.h" +#include "ParameterLib/Parameter.h" +#include "ParameterLib/Utils.h" namespace ProcessLib { DirichletBoundaryConditionWithinTimeInterval:: DirichletBoundaryConditionWithinTimeInterval( std::unique_ptr<BaseLib::TimeInterval> time_interval, - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id) : _parameter(parameter), @@ -45,7 +46,8 @@ DirichletBoundaryConditionWithinTimeInterval:: DirichletBoundaryConditionWithinTimeInterval:: DirichletBoundaryConditionWithinTimeInterval( std::unique_ptr<BaseLib::TimeInterval> time_interval, - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, std::vector<MeshLib::Node*> const& nodes_in_bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id) @@ -95,7 +97,7 @@ createDirichletBoundaryConditionWithinTimeInterval( BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id, - const std::vector<std::unique_ptr<ProcessLib::ParameterBase>>& parameters) + const std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& parameters) { DBUG( "Constructing DirichletBoundaryConditionWithinTimeInterval from " @@ -108,7 +110,8 @@ createDirichletBoundaryConditionWithinTimeInterval( auto const param_name = config.getConfigParameter<std::string>("parameter"); DBUG("Using parameter %s", param_name.c_str()); - auto& param = findParameter<double>(param_name, parameters, 1); + auto& param = + ParameterLib::findParameter<double>(param_name, parameters, 1); // In case of partitioned mesh the boundary could be empty, i.e. there is no // boundary condition. diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.h b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.h index f5e9c2a70f1cfefc6b68ae5620d4c34f8ce6b915..89a4cc61233c0c8acd60be7ed1f7e3da7d042756 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.h +++ b/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.h @@ -28,24 +28,29 @@ namespace MeshLib class Node; } -namespace ProcessLib +namespace ParameterLib { template <typename T> struct Parameter; +} +namespace ProcessLib +{ class DirichletBoundaryConditionWithinTimeInterval final : public BoundaryCondition { public: DirichletBoundaryConditionWithinTimeInterval( std::unique_ptr<BaseLib::TimeInterval> time_interval, - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id); DirichletBoundaryConditionWithinTimeInterval( std::unique_ptr<BaseLib::TimeInterval> time_interval, - Parameter<double> const& parameter, MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& parameter, + MeshLib::Mesh const& bc_mesh, std::vector<MeshLib::Node*> const& nodes_in_bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id); @@ -55,7 +60,7 @@ public: NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override; private: - Parameter<double> const& _parameter; + ParameterLib::Parameter<double> const& _parameter; MeshLib::Mesh const& _bc_mesh; /// Some nodes in _bc_mesh @@ -75,6 +80,7 @@ createDirichletBoundaryConditionWithinTimeInterval( BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, int const component_id, - const std::vector<std::unique_ptr<ProcessLib::ParameterBase>>& parameters); + const std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& + parameters); } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.cpp index a94d1f6588b788fa866e895fded3ff5413846df4..7f5d8b791941e7d8d765e826bedd33e14bbf2620 100644 --- a/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.cpp @@ -8,7 +8,7 @@ */ #include "NeumannBoundaryCondition.h" -#include "ProcessLib/Utils/ProcessUtils.h" +#include "ParameterLib/Utils.h" namespace ProcessLib { @@ -17,7 +17,7 @@ std::unique_ptr<NeumannBoundaryCondition> createNeumannBoundaryCondition( NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters) { DBUG("Constructing Neumann BC from config."); //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} @@ -27,7 +27,8 @@ std::unique_ptr<NeumannBoundaryCondition> createNeumannBoundaryCondition( auto const param_name = config.getConfigParameter<std::string>("parameter"); DBUG("Using parameter %s", param_name.c_str()); - auto const& param = findParameter<double>(param_name, parameters, 1); + auto const& param = + ParameterLib::findParameter<double>(param_name, parameters, 1); // In case of partitioned mesh the boundary could be empty, i.e. there is no // boundary condition. diff --git a/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.h b/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.h index e9dd44035d2921d2f9c8ff96cd8ff55f31697146..3b67bd65e79125afda7dfdf3eb53e7fbf0542987 100644 --- a/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.h @@ -9,20 +9,22 @@ #pragma once -#include "ProcessLib/Parameter/Parameter.h" #include "GenericNaturalBoundaryCondition.h" #include "NeumannBoundaryConditionLocalAssembler.h" +#include "ParameterLib/Parameter.h" namespace ProcessLib { -using NeumannBoundaryCondition = GenericNaturalBoundaryCondition< - Parameter<double> const&, NeumannBoundaryConditionLocalAssembler>; +using NeumannBoundaryCondition = + GenericNaturalBoundaryCondition<ParameterLib::Parameter<double> const&, + NeumannBoundaryConditionLocalAssembler>; std::unique_ptr<NeumannBoundaryCondition> createNeumannBoundaryCondition( BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh, NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters); + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters); } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/NeumannBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryCondition/NeumannBoundaryConditionLocalAssembler.h index 0f09c01d8a8d7d5be1a4ee471ef20da288defdfd..9296b1db422cc6ec61926127cc29a5d50856d309 100644 --- a/ProcessLib/BoundaryCondition/NeumannBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryCondition/NeumannBoundaryConditionLocalAssembler.h @@ -12,7 +12,7 @@ #include "GenericNaturalBoundaryConditionLocalAssembler.h" #include "NumLib/DOF/DOFTableUtil.h" #include "NumLib/Fem/ShapeMatrixPolicy.h" -#include "ProcessLib/Parameter/Parameter.h" +#include "ParameterLib/Parameter.h" #include "ProcessLib/Utils/InitShapeMatrices.h" namespace ProcessLib @@ -36,7 +36,7 @@ public: std::size_t const local_matrix_size, bool const is_axially_symmetric, unsigned const integration_order, - Parameter<double> const& neumann_bc_parameter) + ParameterLib::Parameter<double> const& neumann_bc_parameter) : Base(e, is_axially_symmetric, integration_order), _neumann_bc_parameter(neumann_bc_parameter), _local_rhs(local_matrix_size) @@ -73,7 +73,7 @@ public: } private: - Parameter<double> const& _neumann_bc_parameter; + ParameterLib::Parameter<double> const& _neumann_bc_parameter; NodalVectorType _local_rhs; public: diff --git a/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition-impl.h b/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition-impl.h index 68faa079cc93c47cb2f039f122d67f9d4ce26c1d..d02bff937f6e9d65d9b08a59b1bcfcd13b6b3f5e 100644 --- a/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition-impl.h +++ b/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition-impl.h @@ -13,8 +13,8 @@ #include <numeric> #include "MeshLib/MeshSearch/NodeSearch.h" +#include "ParameterLib/Utils.h" #include "ProcessLib/Utils/CreateLocalAssemblers.h" -#include "ProcessLib/Utils/ProcessUtils.h" #include "NormalTractionBoundaryConditionLocalAssembler.h" @@ -29,7 +29,8 @@ NormalTractionBoundaryCondition<LocalAssemblerImplementation>:: unsigned const integration_order, unsigned const shapefunction_order, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, unsigned const global_dim, - MeshLib::Mesh const& bc_mesh, Parameter<double> const& pressure) + MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& pressure) : _bc_mesh(bc_mesh), _integration_order(integration_order), _pressure(pressure) @@ -79,7 +80,7 @@ createNormalTractionBoundaryCondition( NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters) { DBUG("Constructing NormalTractionBoundaryCondition from config."); //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} @@ -90,7 +91,8 @@ createNormalTractionBoundaryCondition( config.getConfigParameter<std::string>("parameter"); DBUG("Using parameter %s", parameter_name.c_str()); - auto const& pressure = findParameter<double>(parameter_name, parameters, 1); + auto const& pressure = + ParameterLib::findParameter<double>(parameter_name, parameters, 1); return std::make_unique<NormalTractionBoundaryCondition< NormalTractionBoundaryConditionLocalAssembler>>( integration_order, shapefunction_order, dof_table, variable_id, diff --git a/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition.h b/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition.h index 9caeea9009dbc39ef61d8eb75b96cd1f48ce92ae..b13faa3dbffc2ea795c71a8c8d96970b93588791 100644 --- a/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition.h @@ -39,7 +39,8 @@ public: unsigned const integration_order, unsigned const shapefunction_order, NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id, unsigned const global_dim, - MeshLib::Mesh const& bc_mesh, Parameter<double> const& pressure); + MeshLib::Mesh const& bc_mesh, + ParameterLib::Parameter<double> const& pressure); /// Calls local assemblers which calculate their contributions to the global /// matrix and the right-hand-side. @@ -67,7 +68,7 @@ private: std::unique_ptr<NormalTractionBoundaryConditionLocalAssemblerInterface>> _local_assemblers; - Parameter<double> const& _pressure; + ParameterLib::Parameter<double> const& _pressure; }; std::unique_ptr<NormalTractionBoundaryCondition< @@ -77,7 +78,8 @@ createNormalTractionBoundaryCondition( NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters); + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters); } // namespace NormalTractionBoundaryCondition } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/NormalTractionBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryCondition/NormalTractionBoundaryConditionLocalAssembler.h index 368a45ef2e88a1f4ac8025411eb383f054109a61..b6365f249751d04dbdb0f6488e0edc0166379bfa 100644 --- a/ProcessLib/BoundaryCondition/NormalTractionBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryCondition/NormalTractionBoundaryConditionLocalAssembler.h @@ -13,7 +13,7 @@ #include "MathLib/LinAlg/Eigen/EigenMapTools.h" #include "MeshLib/Elements/FaceRule.h" #include "NumLib/DOF/DOFTableUtil.h" -#include "ProcessLib/Parameter/Parameter.h" +#include "ParameterLib/Parameter.h" #include "GenericNaturalBoundaryConditionLocalAssembler.h" @@ -64,7 +64,7 @@ public: std::size_t const local_matrix_size, bool const is_axially_symmetric, unsigned const integration_order, - Parameter<double> const& pressure) + ParameterLib::Parameter<double> const& pressure) : _integration_method(integration_order), _pressure(pressure), _element(e) @@ -154,7 +154,7 @@ public: private: IntegrationMethod const _integration_method; - Parameter<double> const& _pressure; + ParameterLib::Parameter<double> const& _pressure; static const int displacement_size = ShapeFunctionDisplacement::NPOINTS * GlobalDim; diff --git a/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp index 2de4055ed37c67e3ec5c12635018c217f088b1a3..8e2d1e336ef3d72ce4ffd81ddb8c26c587113c82 100644 --- a/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp @@ -12,7 +12,6 @@ #include <algorithm> #include <logog/include/logog.hpp> #include <vector> -#include "ProcessLib/Utils/ProcessUtils.h" namespace ProcessLib { @@ -20,7 +19,7 @@ void PhaseFieldIrreversibleDamageOracleBoundaryCondition::getEssentialBCValues( const double /*t*/, GlobalVector const& /*x*/, NumLib::IndexValueVector<GlobalIndexType>& bc_values) const { - SpatialPosition pos; + ParameterLib::SpatialPosition pos; bc_values.ids.clear(); bc_values.values.clear(); diff --git a/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h b/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h index 47f0fd0c2f081b5df6b62bb68d9300ab352ca8c1..10fe3f2bd932ea55c2f5a1fdc96b74f50d43a4c5 100644 --- a/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h @@ -12,7 +12,7 @@ #include "BoundaryCondition.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" #include "NumLib/IndexValueVector.h" -#include "ProcessLib/Parameter/Parameter.h" +#include "ParameterLib/Parameter.h" namespace ProcessLib { diff --git a/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.cpp index 83764467e52dffd9adb14443ec14be7d0bdad9bf..6797cfb6fff1ee63d34623c4bf75f327c34e8625 100644 --- a/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.cpp @@ -14,7 +14,6 @@ #include "MeshLib/MeshSearch/NodeSearch.h" #include "ProcessLib/Utils/CreateLocalAssemblers.h" -#include "ProcessLib/Utils/ProcessUtils.h" #include "PythonBoundaryConditionLocalAssembler.h" namespace diff --git a/ProcessLib/BoundaryCondition/RobinBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/RobinBoundaryCondition.cpp index 3f7870f9dbd4cb6af58022b840d0ac0da75f37c0..8d2d0331e7fa3db8365110502eb9144291c8c3c4 100644 --- a/ProcessLib/BoundaryCondition/RobinBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/RobinBoundaryCondition.cpp @@ -8,7 +8,7 @@ */ #include "RobinBoundaryCondition.h" -#include "ProcessLib/Utils/ProcessUtils.h" +#include "ParameterLib/Utils.h" namespace ProcessLib { @@ -17,7 +17,7 @@ std::unique_ptr<RobinBoundaryCondition> createRobinBoundaryCondition( NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters) { DBUG("Constructing RobinBcConfig from config."); //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} @@ -28,8 +28,10 @@ std::unique_ptr<RobinBoundaryCondition> createRobinBoundaryCondition( //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__Robin__u_0} auto const u_0_name = config.getConfigParameter<std::string>("u_0"); - auto const& alpha = findParameter<double>(alpha_name, parameters, 1); - auto const& u_0 = findParameter<double>(u_0_name, parameters, 1); + auto const& alpha = + ParameterLib::findParameter<double>(alpha_name, parameters, 1); + auto const& u_0 = + ParameterLib::findParameter<double>(u_0_name, parameters, 1); // In case of partitioned mesh the boundary could be empty, i.e. there is no // boundary condition. diff --git a/ProcessLib/BoundaryCondition/RobinBoundaryCondition.h b/ProcessLib/BoundaryCondition/RobinBoundaryCondition.h index 30b8c941df7ddde65665e5b4a52c2e60109f459b..1f91cf1f497292c423bf86fb73e1ebe8824bd698 100644 --- a/ProcessLib/BoundaryCondition/RobinBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/RobinBoundaryCondition.h @@ -34,6 +34,7 @@ std::unique_ptr<RobinBoundaryCondition> createRobinBoundaryCondition( NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters); + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters); } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/RobinBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryCondition/RobinBoundaryConditionLocalAssembler.h index 434afb14b34402374a9f42c87d7d92cb350d0779..762f6470493cf6fbae3b85ef63bb9526640b0c36 100644 --- a/ProcessLib/BoundaryCondition/RobinBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryCondition/RobinBoundaryConditionLocalAssembler.h @@ -9,15 +9,15 @@ #pragma once -#include "NumLib/DOF/DOFTableUtil.h" -#include "ProcessLib/Parameter/Parameter.h" #include "GenericNaturalBoundaryConditionLocalAssembler.h" +#include "NumLib/DOF/DOFTableUtil.h" +#include "ParameterLib/Parameter.h" namespace ProcessLib { struct RobinBoundaryConditionData final { - Parameter<double> const& alpha; - Parameter<double> const& u_0; + ParameterLib::Parameter<double> const& alpha; + ParameterLib::Parameter<double> const& u_0; }; template <typename ShapeFunction, typename IntegrationMethod, diff --git a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.cpp index 36f30cd6753d1f4b4eb6fdeb092b11cd4dacbf9c..58ca3b6e1859cca4cfeb3b128d7c5a977f7407f9 100644 --- a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.cpp @@ -9,7 +9,7 @@ #include "VariableDependentNeumannBoundaryCondition.h" -#include "ProcessLib/Utils/ProcessUtils.h" +#include "ParameterLib/Utils.h" namespace ProcessLib { @@ -19,7 +19,7 @@ createVariableDependentNeumannBoundaryCondition( NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters) { DBUG("Constructing VariableDependentNeumann BC from config."); //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} @@ -35,28 +35,32 @@ createVariableDependentNeumannBoundaryCondition( auto const constant_name = //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__VariableDependentNeumann__constant_name} config.getConfigParameter<std::string>("constant_name"); - auto const& constant = findParameter<double>(constant_name, parameters, 1); + auto const& constant = + ParameterLib::findParameter<double>(constant_name, parameters, 1); auto const coefficient_current_variable_name = //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__VariableDependentNeumann__coefficient_current_variable_name} config.getConfigParameter<std::string>( "coefficient_current_variable_name"); auto const& coefficient_current_variable = - findParameter<double>(coefficient_current_variable_name, parameters, 1); + ParameterLib::findParameter<double>(coefficient_current_variable_name, + parameters, 1); auto const coefficient_other_variable_name = //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__VariableDependentNeumann__coefficient_other_variable_name} config.getConfigParameter<std::string>( "coefficient_other_variable_name"); auto const& coefficient_other_variable = - findParameter<double>(coefficient_other_variable_name, parameters, 1); + ParameterLib::findParameter<double>(coefficient_other_variable_name, + parameters, 1); auto const coefficient_mixed_variables_name = //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__VariableDependentNeumann__coefficient_mixed_variables_name} config.getConfigParameter<std::string>( "coefficient_mixed_variables_name"); auto const& coefficient_mixed_variables = - findParameter<double>(coefficient_mixed_variables_name, parameters, 1); + ParameterLib::findParameter<double>(coefficient_mixed_variables_name, + parameters, 1); std::vector<MeshLib::Node*> const& bc_nodes = bc_mesh.getNodes(); MeshLib::MeshSubset bc_mesh_subset(bc_mesh, bc_nodes); diff --git a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.h b/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.h index 82f1170ff5c824b5cad03e4ddfcabb119c3e8e42..0b3606cfcba0cf1cb27a97862e542b7694def3e0 100644 --- a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.h @@ -26,6 +26,7 @@ createVariableDependentNeumannBoundaryCondition( NumLib::LocalToGlobalIndexMap const& dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, - std::vector<std::unique_ptr<ParameterBase>> const& parameters); + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters); } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryConditionLocalAssembler.h index b5e0b0112f1c4c736d1796e82f0e301e1e46cc16..471c2974b50eeb9ec9e1cfff5bce43318163394c 100644 --- a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryConditionLocalAssembler.h @@ -12,7 +12,7 @@ #include "MeshLib/PropertyVector.h" #include "NumLib/DOF/DOFTableUtil.h" #include "NumLib/Function/Interpolation.h" -#include "ProcessLib/Parameter/MeshNodeParameter.h" +#include "ParameterLib/MeshNodeParameter.h" #include "GenericNaturalBoundaryConditionLocalAssembler.h" @@ -20,10 +20,10 @@ namespace ProcessLib { struct VariableDependentNeumannBoundaryConditionData { - Parameter<double> const& constant; - Parameter<double> const& coefficient_current_variable; - Parameter<double> const& coefficient_other_variable; - Parameter<double> const& coefficient_mixed_variables; + ParameterLib::Parameter<double> const& constant; + ParameterLib::Parameter<double> const& coefficient_current_variable; + ParameterLib::Parameter<double> const& coefficient_other_variable; + ParameterLib::Parameter<double> const& coefficient_mixed_variables; // Used for mapping boundary nodes to bulk nodes. NumLib::LocalToGlobalIndexMap const& dof_table_boundary_other_variable; }; diff --git a/ProcessLib/SourceTerms/CreateNodalSourceTerm.cpp b/ProcessLib/SourceTerms/CreateNodalSourceTerm.cpp index 2c8c5d3e14b278d851966a193b3b64077d4a3815..5e9e2afcab05374b1711ea5b451f9239d73f6be3 100644 --- a/ProcessLib/SourceTerms/CreateNodalSourceTerm.cpp +++ b/ProcessLib/SourceTerms/CreateNodalSourceTerm.cpp @@ -12,7 +12,7 @@ #include <logog/include/logog.hpp> #include "BaseLib/ConfigTree.h" -#include "ProcessLib/Utils/ProcessUtils.h" +#include "ParameterLib/Utils.h" #include "NodalSourceTerm.h" @@ -23,7 +23,7 @@ std::unique_ptr<SourceTerm> createNodalSourceTerm( std::unique_ptr<NumLib::LocalToGlobalIndexMap> dof_table, std::size_t const source_term_mesh_id, const int variable_id, const int component_id, - std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters) { DBUG("Constructing NodalSourceTerm from config."); //! \ogs_file_param{prj__process_variables__process_variable__source_terms__source_term__type} @@ -33,7 +33,8 @@ std::unique_ptr<SourceTerm> createNodalSourceTerm( auto const param_name = config.getConfigParameter<std::string>("parameter"); DBUG("Using parameter %s as nodal source term.", param_name.c_str()); - auto& param = findParameter<double>(param_name, parameters, 1); + auto& param = + ParameterLib::findParameter<double>(param_name, parameters, 1); return std::make_unique<NodalSourceTerm>(std::move(dof_table), source_term_mesh_id, st_mesh, diff --git a/ProcessLib/SourceTerms/CreateNodalSourceTerm.h b/ProcessLib/SourceTerms/CreateNodalSourceTerm.h index 7d56a0a1b680595454dbed81e282e77432620bb4..31413ceddca6b1685db75bc78b99b9dd3c177f67 100644 --- a/ProcessLib/SourceTerms/CreateNodalSourceTerm.h +++ b/ProcessLib/SourceTerms/CreateNodalSourceTerm.h @@ -24,11 +24,14 @@ namespace NumLib { class LocalToGlobalIndexMap; } +namespace ParameterLib +{ +struct ParameterBase; +} namespace ProcessLib { class SourceTerm; -struct ParameterBase; -} // namespace ProcessLib +} namespace ProcessLib { @@ -36,6 +39,7 @@ std::unique_ptr<SourceTerm> createNodalSourceTerm( BaseLib::ConfigTree const& config, MeshLib::Mesh const& st_mesh, std::unique_ptr<NumLib::LocalToGlobalIndexMap> dof_table, std::size_t mesh_id, const int variable_id, const int component_id, - std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters); + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters); } // namespace ProcessLib diff --git a/ProcessLib/SourceTerms/CreateSourceTerm.cpp b/ProcessLib/SourceTerms/CreateSourceTerm.cpp index 2649720dd71efe2a999aa4bf2ba79dda72bca661..93e148daed4f0e623dfad2821842d3bcda7d1bb1 100644 --- a/ProcessLib/SourceTerms/CreateSourceTerm.cpp +++ b/ProcessLib/SourceTerms/CreateSourceTerm.cpp @@ -24,7 +24,7 @@ std::unique_ptr<SourceTerm> createSourceTerm( const NumLib::LocalToGlobalIndexMap& dof_table_bulk, const MeshLib::Mesh& source_term_mesh, const int variable_id, const unsigned integration_order, const unsigned shapefunction_order, - std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters) { //! \ogs_file_param{prj__process_variables__process_variable__source_terms__source_term__type} auto const type = config.config.peekConfigParameter<std::string>("type"); diff --git a/ProcessLib/SourceTerms/CreateSourceTerm.h b/ProcessLib/SourceTerms/CreateSourceTerm.h index e6a60639b1a808ba8a154322e116903884e13e45..0d0939294ca4516ed1ef2a85568eff81b48772ed 100644 --- a/ProcessLib/SourceTerms/CreateSourceTerm.h +++ b/ProcessLib/SourceTerms/CreateSourceTerm.h @@ -12,7 +12,7 @@ #include <vector> #include <memory> -#include "ProcessLib/Parameter/Parameter.h" +#include "ParameterLib/Parameter.h" namespace MeshLib { @@ -38,6 +38,7 @@ std::unique_ptr<SourceTerm> createSourceTerm( const NumLib::LocalToGlobalIndexMap& dof_table, const MeshLib::Mesh& mesh, const int variable_id, const unsigned integration_order, const unsigned shapefunction_order, - std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters); + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters); } // namespace ProcessLib diff --git a/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.cpp b/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.cpp index 8f59ff3b262549730ebfff95b4735da632fdc2a7..bcb98b017cad4bffdc70fa81ed9f9f6318e4c220 100644 --- a/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.cpp +++ b/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.cpp @@ -13,16 +13,15 @@ #include "BaseLib/FileTools.h" #include "MeshLib/Mesh.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" -#include "ProcessLib/Utils/ProcessUtils.h" +#include "ParameterLib/Utils.h" #include "VolumetricSourceTerm.h" namespace ProcessLib { std::unique_ptr<SourceTerm> createVolumetricSourceTerm( - BaseLib::ConfigTree const& config, - MeshLib::Mesh const& source_term_mesh, + BaseLib::ConfigTree const& config, MeshLib::Mesh const& source_term_mesh, std::unique_ptr<NumLib::LocalToGlobalIndexMap> source_term_dof_table, - std::vector<std::unique_ptr<ParameterBase>> const& parameters, + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters, unsigned const integration_order, unsigned const shapefunction_order) { //! \ogs_file_param{prj__process_variables__process_variable__source_terms__source_term__type} @@ -34,7 +33,7 @@ std::unique_ptr<SourceTerm> createVolumetricSourceTerm( auto const& volumetric_source_term_parameter_name = //! \ogs_file_param{prj__process_variables__process_variable__source_terms__source_term__Volumetric__parameter} config.getConfigParameter<std::string>("parameter"); - auto& volumetric_source_term = findParameter<double>( + auto& volumetric_source_term = ParameterLib::findParameter<double>( volumetric_source_term_parameter_name, parameters, 1); DBUG("Using '%s` as volumetric source term parameter.", diff --git a/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.h b/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.h index 18d2568388a98e55a33759c27b8264b13a2b3509..f60fa69cc51a6a722b01bbf4630276e3d94a0441 100644 --- a/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.h +++ b/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.h @@ -27,16 +27,19 @@ namespace NumLib class LocalToGlobalIndexMap; } -namespace ProcessLib +namespace ParameterLib { struct ParameterBase; +} + +namespace ProcessLib +{ class SourceTerm; std::unique_ptr<SourceTerm> createVolumetricSourceTerm( - BaseLib::ConfigTree const& config, - MeshLib::Mesh const& source_term_mesh, + BaseLib::ConfigTree const& config, MeshLib::Mesh const& source_term_mesh, std::unique_ptr<NumLib::LocalToGlobalIndexMap> source_term_dof_table, - std::vector<std::unique_ptr<ParameterBase>> const& parameters, + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters, unsigned const integration_order, unsigned const shapefunction_order); } // namespace ProcessLib diff --git a/ProcessLib/SourceTerms/NodalSourceTerm.cpp b/ProcessLib/SourceTerms/NodalSourceTerm.cpp index e32cd1a2a1971891faefa1c3106a270fcba71612..93ba965e2cb81e75b73bf4ca9c90f5ca1660b45d 100644 --- a/ProcessLib/SourceTerms/NodalSourceTerm.cpp +++ b/ProcessLib/SourceTerms/NodalSourceTerm.cpp @@ -19,7 +19,7 @@ NodalSourceTerm::NodalSourceTerm( MeshLib::Mesh const& st_mesh, const int variable_id, const int component_id, - Parameter<double> const& parameter) + ParameterLib::Parameter<double> const& parameter) : SourceTerm(std::move(source_term_dof_table)), _source_term_mesh_id(source_term_mesh_id), _st_mesh(st_mesh), @@ -43,7 +43,7 @@ void NodalSourceTerm::integrate(const double t, GlobalVector const& /*x*/, auto const index = _source_term_dof_table->getGlobalIndex( l, _variable_id, _component_id); - SpatialPosition pos; + ParameterLib::SpatialPosition pos; pos.setNodeID(node_id); b.add(index, _parameter(t, pos).front()); diff --git a/ProcessLib/SourceTerms/NodalSourceTerm.h b/ProcessLib/SourceTerms/NodalSourceTerm.h index 78f74842b97be3924cf8aa12819f336192972120..931577ec6e97a9367814dc0ba56a4027a4990567 100644 --- a/ProcessLib/SourceTerms/NodalSourceTerm.h +++ b/ProcessLib/SourceTerms/NodalSourceTerm.h @@ -20,7 +20,7 @@ public: std::unique_ptr<NumLib::LocalToGlobalIndexMap> dof_table, std::size_t const source_term_mesh_id, MeshLib::Mesh const& st_mesh, const int variable_id, const int component_id, - Parameter<double> const& parameter); + ParameterLib::Parameter<double> const& parameter); void integrate(const double t, GlobalVector const& x, GlobalVector& b, GlobalMatrix* jac) const override; @@ -30,7 +30,7 @@ private: MeshLib::Mesh const& _st_mesh; int const _variable_id; int const _component_id; - Parameter<double> const& _parameter; + ParameterLib::Parameter<double> const& _parameter; }; } // namespace ProcessLib diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTerm.cpp b/ProcessLib/SourceTerms/Python/PythonSourceTerm.cpp index ae85a23db8c3b7caef6b9de5a7313ae42fe6f8be..06401a8660b3742c65e8ed6b39f9c8897dfe9e76 100644 --- a/ProcessLib/SourceTerms/Python/PythonSourceTerm.cpp +++ b/ProcessLib/SourceTerms/Python/PythonSourceTerm.cpp @@ -15,7 +15,6 @@ #include "MeshLib/MeshSearch/NodeSearch.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" #include "ProcessLib/Utils/CreateLocalAssemblers.h" -#include "ProcessLib/Utils/ProcessUtils.h" #include "PythonSourceTermLocalAssembler.h" namespace diff --git a/ProcessLib/SourceTerms/SourceTerm.h b/ProcessLib/SourceTerms/SourceTerm.h index 9ae1248df7872c92b11604b1579a17e9b23eebf1..1174e24f38dc4d375882a46b2ad39f75a9fd19af 100644 --- a/ProcessLib/SourceTerms/SourceTerm.h +++ b/ProcessLib/SourceTerms/SourceTerm.h @@ -12,7 +12,7 @@ #include <memory> #include "NumLib/DOF/LocalToGlobalIndexMap.h" -#include "ProcessLib/Parameter/Parameter.h" +#include "ParameterLib/Parameter.h" namespace ProcessLib { diff --git a/ProcessLib/SourceTerms/SourceTermCollection.h b/ProcessLib/SourceTerms/SourceTermCollection.h index b27a51e878868f7458f1d4305867847ab2bf20a2..5351feb1c3dd9e42c2b5f903ab5bf482f3864faa 100644 --- a/ProcessLib/SourceTerms/SourceTermCollection.h +++ b/ProcessLib/SourceTerms/SourceTermCollection.h @@ -18,7 +18,8 @@ class SourceTermCollection final { public: explicit SourceTermCollection( - std::vector<std::unique_ptr<ParameterBase>> const& parameters) + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + parameters) : _parameters(parameters) { } @@ -34,7 +35,8 @@ public: private: std::vector<std::unique_ptr<SourceTerm>> _source_terms; - std::vector<std::unique_ptr<ParameterBase>> const& _parameters; + std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& + _parameters; }; } // namespace ProcessLib diff --git a/ProcessLib/SourceTerms/VolumetricSourceTerm.cpp b/ProcessLib/SourceTerms/VolumetricSourceTerm.cpp index 55db90e52df9c820a1c64ea55866cbcd925bf32e..a973196058c9aeac84de5678ced50f1aaa15a703 100644 --- a/ProcessLib/SourceTerms/VolumetricSourceTerm.cpp +++ b/ProcessLib/SourceTerms/VolumetricSourceTerm.cpp @@ -17,7 +17,7 @@ VolumetricSourceTerm::VolumetricSourceTerm( MeshLib::Mesh const& source_term_mesh, std::unique_ptr<NumLib::LocalToGlobalIndexMap> source_term_dof_table, unsigned const integration_order, unsigned const shapefunction_order, - Parameter<double> const& volumetric_source_term) + ParameterLib::Parameter<double> const& volumetric_source_term) : SourceTerm(std::move(source_term_dof_table)), _volumetric_source_term(volumetric_source_term) { diff --git a/ProcessLib/SourceTerms/VolumetricSourceTerm.h b/ProcessLib/SourceTerms/VolumetricSourceTerm.h index 92e3bb7c74079ea036a03231ecc9ce8ad8cd788f..dcf3e55ae811d757e8a65dc2e44743bcd5866f0d 100644 --- a/ProcessLib/SourceTerms/VolumetricSourceTerm.h +++ b/ProcessLib/SourceTerms/VolumetricSourceTerm.h @@ -24,13 +24,13 @@ public: MeshLib::Mesh const& source_term_mesh, std::unique_ptr<NumLib::LocalToGlobalIndexMap> source_term_dof_table, unsigned const integration_order, unsigned const shapefunction_order, - Parameter<double> const& volumetric_source_term); + ParameterLib::Parameter<double> const& volumetric_source_term); void integrate(const double t, GlobalVector const& x, GlobalVector& b, GlobalMatrix* jac) const override; private: - Parameter<double> const& _volumetric_source_term; + ParameterLib::Parameter<double> const& _volumetric_source_term; std::vector<std::unique_ptr<VolumetricSourceTermLocalAssemblerInterface>> _local_assemblers; }; diff --git a/ProcessLib/SourceTerms/VolumetricSourceTermFEM.h b/ProcessLib/SourceTerms/VolumetricSourceTermFEM.h index 9e3d91ed3944145ca60884860e4c1cd214afaf09..b369b7f02c130a60461d74975416df68e32ca40d 100644 --- a/ProcessLib/SourceTerms/VolumetricSourceTermFEM.h +++ b/ProcessLib/SourceTerms/VolumetricSourceTermFEM.h @@ -14,8 +14,8 @@ #include "MathLib/LinAlg/Eigen/EigenMapTools.h" #include "NumLib/DOF/DOFTableUtil.h" #include "NumLib/Fem/FiniteElement/TemplateIsoparametric.h" +#include "ParameterLib/Parameter.h" #include "ProcessLib/LocalAssemblerTraits.h" -#include "ProcessLib/Parameter/Parameter.h" #include "ProcessLib/Utils/InitShapeMatrices.h" namespace ProcessLib @@ -65,7 +65,7 @@ public: std::size_t const local_matrix_size, bool is_axially_symmetric, unsigned const integration_order, - Parameter<double> const& volumetric_source_term) + ParameterLib::Parameter<double> const& volumetric_source_term) : _volumetric_source_term(volumetric_source_term), _integration_method(integration_order), _local_rhs(local_matrix_size) @@ -97,7 +97,7 @@ public: unsigned const n_integration_points = _integration_method.getNumberOfPoints(); - SpatialPosition pos; + ParameterLib::SpatialPosition pos; pos.setElementID(id); for (unsigned ip = 0; ip < n_integration_points; ip++) @@ -113,7 +113,7 @@ public: } private: - Parameter<double> const& _volumetric_source_term; + ParameterLib::Parameter<double> const& _volumetric_source_term; IntegrationMethod const _integration_method; std::vector<