From 3dfd80ea823f968fef17b738439e83f34e66bf84 Mon Sep 17 00:00:00 2001 From: Wenqing Wang <wenqing.wang@ufz.de> Date: Tue, 27 Jul 2021 12:56:26 +0200 Subject: [PATCH] [Process] Moved BoudaryCondition and SourceTerms to one directory. --- Applications/CLI/CMakeLists.txt | 3 +- Applications/CLI/ogs_embedded_python.cpp | 6 +-- .../BoundaryCondition.h | 2 +- .../BoundaryConditionCollection.cpp | 0 .../BoundaryConditionCollection.h | 9 ++-- .../BoundaryConditionConfig.h | 0 .../ConstraintDirichletBoundaryCondition.cpp | 54 +++++++++---------- .../ConstraintDirichletBoundaryCondition.h | 3 +- ...DirichletBoundaryConditionLocalAssembler.h | 6 +-- .../CreateBoundaryCondition.cpp | 0 .../CreateBoundaryCondition.h | 0 ...letBoundaryConditionWithinTimeInterval.cpp | 0 ...chletBoundaryConditionWithinTimeInterval.h | 0 .../CreateNodalSourceTerm.cpp | 0 .../CreateNodalSourceTerm.h | 2 +- .../CreateSourceTerm.cpp | 0 .../CreateSourceTerm.h | 2 +- .../CreateVolumetricSourceTerm.cpp | 0 .../CreateVolumetricSourceTerm.h | 2 +- .../DeactivatedSubdomainDirichlet.cpp | 18 ++++--- .../DeactivatedSubdomainDirichlet.h | 0 .../DirichletBoundaryCondition.cpp | 0 .../DirichletBoundaryCondition.h | 0 ...letBoundaryConditionAuxiliaryFunctions.cpp | 0 ...chletBoundaryConditionAuxiliaryFunctions.h | 5 +- ...letBoundaryConditionWithinTimeInterval.cpp | 0 ...chletBoundaryConditionWithinTimeInterval.h | 2 +- .../GenericNaturalBoundaryCondition-impl.h | 4 +- .../GenericNaturalBoundaryCondition.h | 0 ...icNaturalBoundaryConditionLocalAssembler.h | 0 ...tiveFreeComponentFlowBoundaryCondition.cpp | 0 ...ectiveFreeComponentFlowBoundaryCondition.h | 0 ...onentFlowBoundaryConditionLocalAssembler.h | 0 .../NeumannBoundaryCondition.cpp | 0 .../NeumannBoundaryCondition.h | 0 .../NeumannBoundaryConditionLocalAssembler.h | 0 .../NodalSourceTerm.cpp | 0 .../NodalSourceTerm.h | 0 .../NormalTractionBoundaryCondition-impl.h | 4 +- .../NormalTractionBoundaryCondition.h | 0 ...lTractionBoundaryConditionLocalAssembler.h | 4 +- ...eversibleDamageOracleBoundaryCondition.cpp | 0 ...rreversibleDamageOracleBoundaryCondition.h | 0 ...leConstraintDirichletBoundaryCondition.cpp | 0 ...ableConstraintDirichletBoundaryCondition.h | 0 .../Python/BHEInflowPythonBoundaryCondition.h | 4 +- ...BHEInflowPythonBoundaryConditionModule.cpp | 0 .../BHEInflowPythonBoundaryConditionModule.h | 0 ...thonBoundaryConditionPythonSideInterface.h | 10 ++-- .../Python/CMakeLists.txt | 22 +++++--- .../Python/CreatePythonSourceTerm.cpp | 2 +- .../Python/CreatePythonSourceTerm.h | 0 .../Python/PythonBoundaryCondition.cpp | 4 +- .../Python/PythonBoundaryCondition.h | 5 +- .../PythonBoundaryConditionLocalAssembler.h | 6 +-- .../Python/PythonBoundaryConditionModule.cpp | 0 .../Python/PythonBoundaryConditionModule.h | 1 + ...thonBoundaryConditionPythonSideInterface.h | 0 .../Python/PythonSourceTerm.cpp | 4 +- .../Python/PythonSourceTerm.h | 2 +- .../Python/PythonSourceTermLocalAssembler.h | 2 +- .../PythonSourceTermLocalAssemblerInterface.h | 1 - .../Python/PythonSourceTermModule.cpp | 0 .../Python/PythonSourceTermModule.h | 1 + .../PythonSourceTermPythonSideInterface.h | 0 .../RobinBoundaryCondition.cpp | 0 .../RobinBoundaryCondition.h | 0 .../RobinBoundaryConditionLocalAssembler.h | 0 ...ionDependentDirichletBoundaryCondition.cpp | 0 ...utionDependentDirichletBoundaryCondition.h | 0 .../SourceTerm.h | 0 .../SourceTermCollection.cpp | 0 .../SourceTermCollection.h | 2 +- .../SourceTermConfig.h | 0 .../SourceTermIntegrationPointData.h | 3 +- .../Utils}/CreateLocalAssemblers.h | 4 +- .../Utils}/LocalDataInitializer.h | 4 +- ...iableDependentNeumannBoundaryCondition.cpp | 0 ...ariableDependentNeumannBoundaryCondition.h | 0 ...ntNeumannBoundaryConditionLocalAssembler.h | 3 +- .../VolumetricSourceTerm.cpp | 4 +- .../VolumetricSourceTerm.h | 0 .../VolumetricSourceTermFEM.h | 0 ProcessLib/CMakeLists.txt | 11 ++-- .../BHEBottomDirichletBoundaryCondition.h | 2 +- .../BHEInflowDirichletBoundaryCondition.h | 2 +- .../HeatTransportBHEProcess.cpp | 2 +- .../HeatTransportBHEProcessData.h | 2 +- ProcessLib/Process.h | 4 +- ProcessLib/ProcessVariable.cpp | 13 +++-- ProcessLib/ProcessVariable.h | 5 +- ProcessLib/SourceTerms/Python/CMakeLists.txt | 38 ------------- 92 files changed, 125 insertions(+), 164 deletions(-) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/BoundaryCondition.h (98%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/BoundaryConditionCollection.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/BoundaryConditionCollection.h (96%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/BoundaryConditionConfig.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/ConstraintDirichletBoundaryCondition.cpp (89%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/ConstraintDirichletBoundaryCondition.h (99%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/ConstraintDirichletBoundaryConditionLocalAssembler.h (97%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/CreateBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/CreateBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/CreateDirichletBoundaryConditionWithinTimeInterval.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/CreateDirichletBoundaryConditionWithinTimeInterval.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/CreateNodalSourceTerm.cpp (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/CreateNodalSourceTerm.h (97%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/CreateSourceTerm.cpp (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/CreateSourceTerm.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/CreateVolumetricSourceTerm.cpp (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/CreateVolumetricSourceTerm.h (97%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DeactivatedSubdomainDirichlet.cpp (89%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DeactivatedSubdomainDirichlet.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DirichletBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DirichletBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DirichletBoundaryConditionAuxiliaryFunctions.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DirichletBoundaryConditionAuxiliaryFunctions.h (96%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DirichletBoundaryConditionWithinTimeInterval.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/DirichletBoundaryConditionWithinTimeInterval.h (98%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/GenericNaturalBoundaryCondition-impl.h (96%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/GenericNaturalBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/GenericNaturalBoundaryConditionLocalAssembler.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/HCNonAdvectiveFreeComponentFlowBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/HCNonAdvectiveFreeComponentFlowBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/HCNonAdvectiveFreeComponentFlowBoundaryConditionLocalAssembler.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/NeumannBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/NeumannBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/NeumannBoundaryConditionLocalAssembler.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/NodalSourceTerm.cpp (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/NodalSourceTerm.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/NormalTractionBoundaryCondition-impl.h (96%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/NormalTractionBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/NormalTractionBoundaryConditionLocalAssembler.h (99%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/PrimaryVariableConstraintDirichletBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/PrimaryVariableConstraintDirichletBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/BHEInflowPythonBoundaryCondition.h (96%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/BHEInflowPythonBoundaryConditionModule.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/BHEInflowPythonBoundaryConditionModule.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h (94%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/CMakeLists.txt (58%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/CreatePythonSourceTerm.cpp (97%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/CreatePythonSourceTerm.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/PythonBoundaryCondition.cpp (98%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/PythonBoundaryCondition.h (94%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/PythonBoundaryConditionLocalAssembler.h (98%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/PythonBoundaryConditionModule.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/PythonBoundaryConditionModule.h (99%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/Python/PythonBoundaryConditionPythonSideInterface.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/PythonSourceTerm.cpp (94%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/PythonSourceTerm.h (97%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/PythonSourceTermLocalAssembler.h (99%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/PythonSourceTermLocalAssemblerInterface.h (99%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/PythonSourceTermModule.cpp (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/PythonSourceTermModule.h (99%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/Python/PythonSourceTermPythonSideInterface.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/RobinBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/RobinBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/RobinBoundaryConditionLocalAssembler.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/SolutionDependentDirichletBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/SolutionDependentDirichletBoundaryCondition.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/SourceTerm.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/SourceTermCollection.cpp (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/SourceTermCollection.h (96%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/SourceTermConfig.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/SourceTermIntegrationPointData.h (99%) rename ProcessLib/{Utils/ForBoundaryConditionOrSourceTerm => BoundaryConditionAndSourceTerm/Utils}/CreateLocalAssemblers.h (97%) rename ProcessLib/{Utils/ForBoundaryConditionOrSourceTerm => BoundaryConditionAndSourceTerm/Utils}/LocalDataInitializer.h (99%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/VariableDependentNeumannBoundaryCondition.cpp (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/VariableDependentNeumannBoundaryCondition.h (100%) rename ProcessLib/{BoundaryCondition => BoundaryConditionAndSourceTerm}/VariableDependentNeumannBoundaryConditionLocalAssembler.h (99%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/VolumetricSourceTerm.cpp (91%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/VolumetricSourceTerm.h (100%) rename ProcessLib/{SourceTerms => BoundaryConditionAndSourceTerm}/VolumetricSourceTermFEM.h (100%) delete mode 100644 ProcessLib/SourceTerms/Python/CMakeLists.txt diff --git a/Applications/CLI/CMakeLists.txt b/Applications/CLI/CMakeLists.txt index 0bbbf41a4ed..462610a1eaf 100644 --- a/Applications/CLI/CMakeLists.txt +++ b/Applications/CLI/CMakeLists.txt @@ -34,8 +34,7 @@ if(OGS_USE_PYTHON) # this is up to you). TODO: Enable further compiler/linker flags. target_link_libraries( ogs_embedded_python PUBLIC pybind11::embed - PRIVATE ProcessLibBoundaryConditionPythonModule - ProcessLibSourceTermPythonModule + PRIVATE ProcessLibBoundaryConditionAndSourceTermPythonModule ) target_compile_definitions( ogs_embedded_python diff --git a/Applications/CLI/ogs_embedded_python.cpp b/Applications/CLI/ogs_embedded_python.cpp index e41db52527d..604466d5f02 100644 --- a/Applications/CLI/ogs_embedded_python.cpp +++ b/Applications/CLI/ogs_embedded_python.cpp @@ -12,9 +12,9 @@ #include <pybind11/embed.h> #include "BaseLib/Logging.h" -#include "ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionModule.h" -#include "ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionModule.h" -#include "ProcessLib/SourceTerms/Python/PythonSourceTermModule.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionModule.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionModule.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermModule.h" PYBIND11_EMBEDDED_MODULE(OpenGeoSys, m) { diff --git a/ProcessLib/BoundaryCondition/BoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h similarity index 98% rename from ProcessLib/BoundaryCondition/BoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h index 3b65d2d9eaa..488b5d3d64e 100644 --- a/ProcessLib/BoundaryCondition/BoundaryCondition.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h @@ -22,7 +22,7 @@ namespace NumLib class LocalToGlobalIndexMap; template <typename> struct IndexValueVector; -} +} // namespace NumLib namespace ParameterLib { struct ParameterBase; diff --git a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionCollection.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/BoundaryConditionCollection.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionCollection.cpp diff --git a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h b/ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionCollection.h similarity index 96% rename from ProcessLib/BoundaryCondition/BoundaryConditionCollection.h rename to ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionCollection.h index 06e9a425a8e..3a28d9eb58b 100644 --- a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionCollection.h @@ -10,11 +10,10 @@ #pragma once +#include "BoundaryCondition.h" #include "NumLib/IndexValueVector.h" #include "ProcessLib/ProcessVariable.h" -#include "BoundaryCondition.h" - namespace ProcessLib { class BoundaryConditionCollection final @@ -35,7 +34,8 @@ public: getKnownSolutions(double const t, GlobalVector const& x) const { auto const n_bcs = _boundary_conditions.size(); - for (std::size_t i=0; i<n_bcs; ++i) { + for (std::size_t i = 0; i < n_bcs; ++i) + { auto const& bc = *_boundary_conditions[i]; auto& dirichlet_storage = _dirichlet_bcs[i]; bc.getEssentialBCValues(t, x, dirichlet_storage); @@ -73,7 +73,8 @@ public: } private: - mutable std::vector<NumLib::IndexValueVector<GlobalIndexType>> _dirichlet_bcs; + mutable std::vector<NumLib::IndexValueVector<GlobalIndexType>> + _dirichlet_bcs; std::vector<std::unique_ptr<BoundaryCondition>> _boundary_conditions; std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& _parameters; diff --git a/ProcessLib/BoundaryCondition/BoundaryConditionConfig.h b/ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionConfig.h similarity index 100% rename from ProcessLib/BoundaryCondition/BoundaryConditionConfig.h rename to ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionConfig.h diff --git a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryCondition.cpp similarity index 89% rename from ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryCondition.cpp index 8f18986a8a9..d6ab011c9d3 100644 --- a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.cpp +++ b/ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryCondition.cpp @@ -17,7 +17,7 @@ #include "MeshLib/MeshSearch/NodeSearch.h" // for getUniqueNodes #include "MeshLib/Node.h" #include "ParameterLib/Utils.h" -#include "ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h" namespace ProcessLib { @@ -78,8 +78,9 @@ ConstraintDirichletBoundaryCondition::ConstraintDirichletBoundaryCondition( "bulk_node_ids", MeshLib::MeshItemType::Node, 1); auto const& bulk_nodes = bulk_mesh.getNodes(); - auto get_bulk_element_face_id = [&](auto const bulk_element_id, - MeshLib::Element const* bc_elem) { + auto get_bulk_element_face_id = + [&](auto const bulk_element_id, MeshLib::Element const* bc_elem) + { auto const* bulk_elem = _bulk_mesh.getElement(bulk_element_id); std::array<MeshLib::Node*, 3> nodes{ {bulk_nodes[(*bulk_node_ids)[bc_elem->getNode(0)->getID()]], @@ -89,18 +90,20 @@ ConstraintDirichletBoundaryCondition::ConstraintDirichletBoundaryCondition( }; _bulk_ids.reserve(bc_elements.size()); - std::transform(begin(bc_elements), end(bc_elements), - std::back_inserter(_bulk_ids), [&](auto const* bc_element) { - auto const bulk_element_id = - (*bulk_element_ids)[bc_element->getID()]; - return std::make_pair(bulk_element_id, - get_bulk_element_face_id( - bulk_element_id, bc_element)); - }); + std::transform( + begin(bc_elements), end(bc_elements), std::back_inserter(_bulk_ids), + [&](auto const* bc_element) + { + auto const bulk_element_id = + (*bulk_element_ids)[bc_element->getID()]; + return std::make_pair( + bulk_element_id, + get_bulk_element_face_id(bulk_element_id, bc_element)); + }); const int shape_function_order = 1; - BoundaryConditionOrSourceTerm::createLocalAssemblers< + BoundaryConditionAndSourceTerm::createLocalAssemblers< ConstraintDirichletBoundaryConditionLocalAssembler>( _bulk_mesh.getDimension(), _bc_mesh.getElements(), *_dof_table_boundary, shape_function_order, _local_assemblers, _bc_mesh.isAxiallySymmetric(), @@ -121,9 +124,8 @@ void ConstraintDirichletBoundaryCondition::preTimestep( x, t, [this](std::size_t const element_id, MathLib::Point3d const& pnt, double const t, - std::vector<GlobalVector*> const& x) { - return _getFlux(element_id, pnt, t, x); - }); + std::vector<GlobalVector*> const& x) + { return _getFlux(element_id, pnt, t, x); }); } } @@ -138,7 +140,8 @@ void ConstraintDirichletBoundaryCondition::getEssentialBCValues( std::vector<std::pair<GlobalIndexType, double>> tmp_bc_values; - auto isFlux = [&](const std::size_t element_id) { + auto isFlux = [&](const std::size_t element_id) + { return _lower ? _flux_values[element_id] < _constraint_threshold : _flux_values[element_id] > _constraint_threshold; }; @@ -193,9 +196,8 @@ void ConstraintDirichletBoundaryCondition::getEssentialBCValues( // first: sort the (node id, value) pairs according to the node id std::sort(tmp_bc_values.begin(), tmp_bc_values.end(), [](std::pair<GlobalIndexType, double> const& a, - std::pair<GlobalIndexType, double> const& b) { - return a.first < b.first; - }); + std::pair<GlobalIndexType, double> const& b) + { return a.first < b.first; }); // second: average the values over equal node id ranges unsigned cnt = 1; GlobalIndexType current_id = tmp_bc_values.begin()->first; @@ -259,11 +261,10 @@ createConstraintDirichletBoundaryCondition( const int process_id = 0; auto process_variables = constraining_process.getProcessVariables(process_id); - auto constraining_pv = std::find_if( - process_variables.cbegin(), process_variables.cend(), - [&constraining_process_variable](ProcessVariable const& pv) { - return pv.getName() == constraining_process_variable; - }); + auto constraining_pv = + std::find_if(process_variables.cbegin(), process_variables.cend(), + [&constraining_process_variable](ProcessVariable const& pv) + { return pv.getName() == constraining_process_variable; }); if (constraining_pv == std::end(process_variables)) { auto const& constraining_process_variable_name = @@ -320,9 +321,8 @@ createConstraintDirichletBoundaryCondition( lower, [&constraining_process](std::size_t const element_id, MathLib::Point3d const& pnt, double const t, - std::vector<GlobalVector*> const& x) { - return constraining_process.getFlux(element_id, pnt, t, x); - }); + std::vector<GlobalVector*> const& x) + { return constraining_process.getFlux(element_id, pnt, t, x); }); } } // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryCondition.h similarity index 99% rename from ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryCondition.h index 1f0cd564321..d8d0d2e8a4d 100644 --- a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryCondition.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryCondition.h @@ -11,12 +11,11 @@ #pragma once #include "BoundaryCondition.h" +#include "ConstraintDirichletBoundaryConditionLocalAssembler.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" #include "NumLib/IndexValueVector.h" #include "ParameterLib/Parameter.h" -#include "ConstraintDirichletBoundaryConditionLocalAssembler.h" - namespace ProcessLib { /// The ConstraintDirichletBoundaryCondition class describes a Dirichlet-type diff --git a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryConditionLocalAssembler.h similarity index 97% rename from ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryConditionLocalAssembler.h index 3cdf60405a9..0d3d8e44e75 100644 --- a/ProcessLib/BoundaryCondition/ConstraintDirichletBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/ConstraintDirichletBoundaryConditionLocalAssembler.h @@ -21,7 +21,6 @@ namespace ProcessLib { - struct IntegrationPointData final { IntegrationPointData(double const& detJ, @@ -72,9 +71,8 @@ public: /// @param bulk_ids Pairs of bulk element ids and bulk element face ids. ConstraintDirichletBoundaryConditionLocalAssembler( MeshLib::Element const& surface_element, - std::size_t /* local_matrix_size */, - bool const is_axially_symmetric, unsigned const integration_order, - MeshLib::Mesh const& bulk_mesh, + std::size_t /* local_matrix_size */, bool const is_axially_symmetric, + unsigned const integration_order, MeshLib::Mesh const& bulk_mesh, std::vector<std::pair<std::size_t, unsigned>> bulk_ids) : _surface_element(surface_element), _integration_method(integration_order), diff --git a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/CreateBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/CreateBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/CreateBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/CreateDirichletBoundaryConditionWithinTimeInterval.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/CreateDirichletBoundaryConditionWithinTimeInterval.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/CreateDirichletBoundaryConditionWithinTimeInterval.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateDirichletBoundaryConditionWithinTimeInterval.cpp diff --git a/ProcessLib/BoundaryCondition/CreateDirichletBoundaryConditionWithinTimeInterval.h b/ProcessLib/BoundaryConditionAndSourceTerm/CreateDirichletBoundaryConditionWithinTimeInterval.h similarity index 100% rename from ProcessLib/BoundaryCondition/CreateDirichletBoundaryConditionWithinTimeInterval.h rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateDirichletBoundaryConditionWithinTimeInterval.h diff --git a/ProcessLib/SourceTerms/CreateNodalSourceTerm.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/CreateNodalSourceTerm.cpp similarity index 100% rename from ProcessLib/SourceTerms/CreateNodalSourceTerm.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateNodalSourceTerm.cpp diff --git a/ProcessLib/SourceTerms/CreateNodalSourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/CreateNodalSourceTerm.h similarity index 97% rename from ProcessLib/SourceTerms/CreateNodalSourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateNodalSourceTerm.h index 27c48c12046..f88f940d8fb 100644 --- a/ProcessLib/SourceTerms/CreateNodalSourceTerm.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/CreateNodalSourceTerm.h @@ -43,4 +43,4 @@ std::unique_ptr<SourceTerm> createNodalSourceTerm( std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters); -} // namespace ProcessLib +} // namespace ProcessLib diff --git a/ProcessLib/SourceTerms/CreateSourceTerm.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/CreateSourceTerm.cpp similarity index 100% rename from ProcessLib/SourceTerms/CreateSourceTerm.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateSourceTerm.cpp diff --git a/ProcessLib/SourceTerms/CreateSourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/CreateSourceTerm.h similarity index 100% rename from ProcessLib/SourceTerms/CreateSourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateSourceTerm.h index 013fe9c95ec..b8ca68e3fa1 100644 --- a/ProcessLib/SourceTerms/CreateSourceTerm.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/CreateSourceTerm.h @@ -10,8 +10,8 @@ #pragma once -#include <vector> #include <memory> +#include <vector> #include "ParameterLib/Parameter.h" diff --git a/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/CreateVolumetricSourceTerm.cpp similarity index 100% rename from ProcessLib/SourceTerms/CreateVolumetricSourceTerm.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateVolumetricSourceTerm.cpp diff --git a/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/CreateVolumetricSourceTerm.h similarity index 97% rename from ProcessLib/SourceTerms/CreateVolumetricSourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/CreateVolumetricSourceTerm.h index f5a632eea09..99cf10ac861 100644 --- a/ProcessLib/SourceTerms/CreateVolumetricSourceTerm.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/CreateVolumetricSourceTerm.h @@ -44,4 +44,4 @@ std::unique_ptr<SourceTerm> createVolumetricSourceTerm( std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters, unsigned const integration_order, unsigned const shapefunction_order); -} // namespace ProcessLib +} // namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/DeactivatedSubdomainDirichlet.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/DeactivatedSubdomainDirichlet.cpp similarity index 89% rename from ProcessLib/BoundaryCondition/DeactivatedSubdomainDirichlet.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/DeactivatedSubdomainDirichlet.cpp index 2090ec8e7f0..d75678fd330 100644 --- a/ProcessLib/BoundaryCondition/DeactivatedSubdomainDirichlet.cpp +++ b/ProcessLib/BoundaryConditionAndSourceTerm/DeactivatedSubdomainDirichlet.cpp @@ -60,16 +60,18 @@ void DeactivatedSubdomainDirichlet::getEssentialBCValues( .template getPropertyVector<std::size_t>( "bulk_element_ids", MeshLib::MeshItemType::Cell, 1); - auto is_inactive = [&](MeshLib::Element const* const e) { - return none_of( - begin(*_active_element_ids), end(*_active_element_ids), - [&](auto const id) { return id == bulk_element_ids[e->getID()]; }); + auto is_inactive = [&](MeshLib::Element const* const e) + { + return none_of(begin(*_active_element_ids), end(*_active_element_ids), + [&](auto const id) + { return id == bulk_element_ids[e->getID()]; }); }; std::vector<MeshLib::Node*> inactive_nodes_in_bc_mesh; std::copy_if(begin(_subdomain.inner_nodes), end(_subdomain.inner_nodes), back_inserter(inactive_nodes_in_bc_mesh), - [&](MeshLib::Node* const n) { + [&](MeshLib::Node* const n) + { const auto& connected_elements = n->getElements(); return std::all_of(begin(connected_elements), @@ -80,7 +82,8 @@ void DeactivatedSubdomainDirichlet::getEssentialBCValues( { std::copy_if(begin(_subdomain.outer_nodes), end(_subdomain.outer_nodes), back_inserter(inactive_nodes_in_bc_mesh), - [&](MeshLib::Node* const n) { + [&](MeshLib::Node* const n) + { const auto& connected_elements = n->getElements(); return std::all_of(begin(connected_elements), @@ -89,7 +92,8 @@ void DeactivatedSubdomainDirichlet::getEssentialBCValues( }); } - auto time_interval_contains = [&](double const t) { + auto time_interval_contains = [&](double const t) + { return _time_interval.getSupportMin() <= t && t <= _time_interval.getSupportMax(); }; diff --git a/ProcessLib/BoundaryCondition/DeactivatedSubdomainDirichlet.h b/ProcessLib/BoundaryConditionAndSourceTerm/DeactivatedSubdomainDirichlet.h similarity index 100% rename from ProcessLib/BoundaryCondition/DeactivatedSubdomainDirichlet.h rename to ProcessLib/BoundaryConditionAndSourceTerm/DeactivatedSubdomainDirichlet.h diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionAuxiliaryFunctions.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionAuxiliaryFunctions.cpp diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.h b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionAuxiliaryFunctions.h similarity index 96% rename from ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.h rename to ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionAuxiliaryFunctions.h index 6d20027d48a..062173de945 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionAuxiliaryFunctions.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionAuxiliaryFunctions.h @@ -18,20 +18,21 @@ #pragma once #include <vector> + #include "MathLib/LinAlg/GlobalMatrixVectorTypes.h" namespace MeshLib { class Mesh; class Node; -} +} // namespace MeshLib namespace NumLib { class LocalToGlobalIndexMap; template <typename> struct IndexValueVector; -} +} // namespace NumLib namespace ParameterLib { diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionWithinTimeInterval.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionWithinTimeInterval.cpp diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.h b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionWithinTimeInterval.h similarity index 98% rename from ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.h rename to ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionWithinTimeInterval.h index c6e07e8efb6..f3f850d8a1b 100644 --- a/ProcessLib/BoundaryCondition/DirichletBoundaryConditionWithinTimeInterval.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/DirichletBoundaryConditionWithinTimeInterval.h @@ -22,7 +22,7 @@ namespace BaseLib { class ConfigTree; struct TimeInterval; -} +} // namespace BaseLib namespace MeshLib { diff --git a/ProcessLib/BoundaryCondition/GenericNaturalBoundaryCondition-impl.h b/ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryCondition-impl.h similarity index 96% rename from ProcessLib/BoundaryCondition/GenericNaturalBoundaryCondition-impl.h rename to ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryCondition-impl.h index dfd07225c6f..1d997e15f31 100644 --- a/ProcessLib/BoundaryCondition/GenericNaturalBoundaryCondition-impl.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryCondition-impl.h @@ -9,7 +9,7 @@ */ #include "GenericNaturalBoundaryConditionLocalAssembler.h" -#include "ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h" namespace ProcessLib { @@ -65,7 +65,7 @@ GenericNaturalBoundaryCondition<BoundaryConditionData, _dof_table_boundary.reset(dof_table_bulk.deriveBoundaryConstrainedMap( variable_id, {component_id}, std::move(bc_mesh_subset))); - BoundaryConditionOrSourceTerm::createLocalAssemblers< + BoundaryConditionAndSourceTerm::createLocalAssemblers< LocalAssemblerImplementation>( global_dim, _bc_mesh.getElements(), *_dof_table_boundary, shapefunction_order, _local_assemblers, _bc_mesh.isAxiallySymmetric(), diff --git a/ProcessLib/BoundaryCondition/GenericNaturalBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/GenericNaturalBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/GenericNaturalBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryConditionLocalAssembler.h similarity index 100% rename from ProcessLib/BoundaryCondition/GenericNaturalBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryConditionLocalAssembler.h diff --git a/ProcessLib/BoundaryCondition/HCNonAdvectiveFreeComponentFlowBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/HCNonAdvectiveFreeComponentFlowBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/HCNonAdvectiveFreeComponentFlowBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/HCNonAdvectiveFreeComponentFlowBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/HCNonAdvectiveFreeComponentFlowBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/HCNonAdvectiveFreeComponentFlowBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/HCNonAdvectiveFreeComponentFlowBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/HCNonAdvectiveFreeComponentFlowBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/HCNonAdvectiveFreeComponentFlowBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/HCNonAdvectiveFreeComponentFlowBoundaryConditionLocalAssembler.h similarity index 100% rename from ProcessLib/BoundaryCondition/HCNonAdvectiveFreeComponentFlowBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/HCNonAdvectiveFreeComponentFlowBoundaryConditionLocalAssembler.h diff --git a/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/NeumannBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/NeumannBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/NeumannBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/NeumannBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/NeumannBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/NeumannBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/NeumannBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/NeumannBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/NeumannBoundaryConditionLocalAssembler.h similarity index 100% rename from ProcessLib/BoundaryCondition/NeumannBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/NeumannBoundaryConditionLocalAssembler.h diff --git a/ProcessLib/SourceTerms/NodalSourceTerm.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/NodalSourceTerm.cpp similarity index 100% rename from ProcessLib/SourceTerms/NodalSourceTerm.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/NodalSourceTerm.cpp diff --git a/ProcessLib/SourceTerms/NodalSourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/NodalSourceTerm.h similarity index 100% rename from ProcessLib/SourceTerms/NodalSourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/NodalSourceTerm.h diff --git a/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition-impl.h b/ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryCondition-impl.h similarity index 96% rename from ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition-impl.h rename to ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryCondition-impl.h index 460fdc8d2f7..f74824c975e 100644 --- a/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition-impl.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryCondition-impl.h @@ -15,7 +15,7 @@ #include "MeshLib/MeshSearch/NodeSearch.h" #include "NormalTractionBoundaryConditionLocalAssembler.h" #include "ParameterLib/Utils.h" -#include "ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h" namespace ProcessLib { @@ -51,7 +51,7 @@ NormalTractionBoundaryCondition<GlobalDim, LocalAssemblerImplementation>:: _dof_table_boundary.reset(dof_table_bulk.deriveBoundaryConstrainedMap( variable_id, component_ids, std::move(bc_mesh_subset))); - BoundaryConditionOrSourceTerm::detail::createLocalAssemblers< + BoundaryConditionAndSourceTerm::detail::createLocalAssemblers< GlobalDim, LocalAssemblerImplementation>( *_dof_table_boundary, shapefunction_order, _bc_mesh.getElements(), _local_assemblers, _bc_mesh.isAxiallySymmetric(), _integration_order, diff --git a/ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/NormalTractionBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/NormalTractionBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryConditionLocalAssembler.h similarity index 99% rename from ProcessLib/BoundaryCondition/NormalTractionBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryConditionLocalAssembler.h index 321cfed06b9..66533ee18a1 100644 --- a/ProcessLib/BoundaryCondition/NormalTractionBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/NormalTractionBoundaryConditionLocalAssembler.h @@ -10,13 +10,12 @@ #pragma once +#include "GenericNaturalBoundaryConditionLocalAssembler.h" #include "MathLib/LinAlg/Eigen/EigenMapTools.h" #include "MeshLib/Elements/FaceRule.h" #include "NumLib/DOF/DOFTableUtil.h" #include "ParameterLib/Parameter.h" -#include "GenericNaturalBoundaryConditionLocalAssembler.h" - namespace ProcessLib { namespace NormalTractionBoundaryCondition @@ -104,7 +103,6 @@ public: for (unsigned ip = 0; ip < n_integration_points; ip++) { - double const integration_weight = _integration_method.getWeightedPoint(ip).getWeight() * shape_matrices_u[ip].integralMeasure * diff --git a/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/PrimaryVariableConstraintDirichletBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/PrimaryVariableConstraintDirichletBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/PrimaryVariableConstraintDirichletBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/PrimaryVariableConstraintDirichletBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/PrimaryVariableConstraintDirichletBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/PrimaryVariableConstraintDirichletBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/PrimaryVariableConstraintDirichletBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/PrimaryVariableConstraintDirichletBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryCondition.h similarity index 96% rename from ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryCondition.h index 330a051afe6..874ad28aded 100644 --- a/ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryCondition.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryCondition.h @@ -19,8 +19,8 @@ #include "BHEInflowPythonBoundaryConditionPythonSideInterface.h" #include "BaseLib/Error.h" #include "NumLib/IndexValueVector.h" -#include "ProcessLib/BoundaryCondition/BoundaryCondition.h" -#include "ProcessLib/BoundaryCondition/GenericNaturalBoundaryConditionLocalAssembler.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryConditionLocalAssembler.h" #include "ProcessLib/HeatTransportBHE/BHE/BHETypes.h" #include "ProcessLib/Utils/CreateLocalAssemblers.h" #include "ProcessLib/Utils/ProcessUtils.h" diff --git a/ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionModule.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionModule.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionModule.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionModule.cpp diff --git a/ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionModule.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionModule.h similarity index 100% rename from ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionModule.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionModule.h diff --git a/ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h similarity index 94% rename from ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h index 150aa5d7582..46be109f499 100644 --- a/ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h @@ -41,7 +41,8 @@ public: } /*! - * transfer BHE network dataframe to TESPy and get Tin and flow rate from TESPy + * transfer BHE network dataframe to TESPy and get Tin and flow rate from + * TESPy * * \return a tuple (if use tespyThermalSolver, if convergence achieved * in tespy, BHE Tin value, BHE flow rate from TESPy) @@ -50,10 +51,9 @@ public: * inflow temperature and flow rate for all BHEs. */ virtual std::tuple<bool, bool, std::vector<double>, std::vector<double>> - tespySolver( - double /*t*/, - std::vector<double> const& /*Tin_val*/, - std::vector<double> const& /*Tout_val*/) const + tespySolver(double /*t*/, + std::vector<double> const& /*Tin_val*/, + std::vector<double> const& /*Tout_val*/) const { _overridden_tespy = false; return std::tuple<bool, bool, std::vector<double>, std::vector<double>>{ diff --git a/ProcessLib/BoundaryCondition/Python/CMakeLists.txt b/ProcessLib/BoundaryConditionAndSourceTerm/Python/CMakeLists.txt similarity index 58% rename from ProcessLib/BoundaryCondition/Python/CMakeLists.txt rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/CMakeLists.txt index 1e4dc304374..00320b44c7c 100644 --- a/ProcessLib/BoundaryCondition/Python/CMakeLists.txt +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/CMakeLists.txt @@ -1,15 +1,21 @@ ogs_add_library( - ProcessLibBoundaryConditionPython + ProcessLibBoundaryConditionAndSourceTermPython PythonBoundaryCondition.cpp PythonBoundaryCondition.h PythonBoundaryConditionLocalAssembler.h PythonBoundaryConditionPythonSideInterface.h BHEInflowPythonBoundaryCondition.h BHEInflowPythonBoundaryConditionPythonSideInterface.h + CreatePythonSourceTerm.cpp + CreatePythonSourceTerm.h + PythonSourceTerm.cpp + PythonSourceTerm.h + PythonSourceTermLocalAssembler.h + PythonSourceTermPythonSideInterface.h ) target_compile_definitions( - ProcessLibBoundaryConditionPython + ProcessLibBoundaryConditionAndSourceTermPython PUBLIC OGS_USE_PYTHON # Enabled elements OGS_MAX_ELEMENT_DIM=${OGS_MAX_ELEMENT_DIM} @@ -21,19 +27,21 @@ target_compile_definitions( ) target_link_libraries( - ProcessLibBoundaryConditionPython PUBLIC BaseLib MathLib MeshLib NumLib - ${Python3_LIBRARIES} + ProcessLibBoundaryConditionAndSourceTermPython PUBLIC BaseLib MathLib MeshLib NumLib + ${Python3_LIBRARIES} PRIVATE pybind11::pybind11 ) # For the embedded Python module ogs_add_library( - ProcessLibBoundaryConditionPythonModule PythonBoundaryConditionModule.cpp + ProcessLibBoundaryConditionAndSourceTermPythonModule PythonBoundaryConditionModule.cpp PythonBoundaryConditionModule.h BHEInflowPythonBoundaryConditionModule.cpp BHEInflowPythonBoundaryConditionModule.h + PythonSourceTermModule.cpp + PythonSourceTermModule.h ) target_link_libraries( - ProcessLibBoundaryConditionPythonModule - PUBLIC ProcessLibBoundaryConditionPython pybind11::pybind11 + ProcessLibBoundaryConditionAndSourceTermPythonModule + PUBLIC ProcessLibBoundaryConditionAndSourceTermPython pybind11::pybind11 ) diff --git a/ProcessLib/SourceTerms/Python/CreatePythonSourceTerm.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/Python/CreatePythonSourceTerm.cpp similarity index 97% rename from ProcessLib/SourceTerms/Python/CreatePythonSourceTerm.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/CreatePythonSourceTerm.cpp index b795463fb09..3e05f7bc10d 100644 --- a/ProcessLib/SourceTerms/Python/CreatePythonSourceTerm.cpp +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/CreatePythonSourceTerm.cpp @@ -15,7 +15,7 @@ #include "BaseLib/ConfigTree.h" #include "MeshLib/Mesh.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" -#include "ProcessLib/SourceTerms/SourceTerm.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h" #include "PythonSourceTerm.h" namespace ProcessLib diff --git a/ProcessLib/SourceTerms/Python/CreatePythonSourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/CreatePythonSourceTerm.h similarity index 100% rename from ProcessLib/SourceTerms/Python/CreatePythonSourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/CreatePythonSourceTerm.h diff --git a/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryCondition.cpp similarity index 98% rename from ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryCondition.cpp index deed7068845..15d6f05f0df 100644 --- a/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.cpp +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryCondition.cpp @@ -16,7 +16,7 @@ #include "BaseLib/ConfigTree.h" #include "MeshLib/MeshSearch/NodeSearch.h" -#include "ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h" #include "PythonBoundaryConditionLocalAssembler.h" namespace @@ -75,7 +75,7 @@ PythonBoundaryCondition::PythonBoundaryCondition( _dof_table_boundary = _bc_data.dof_table_bulk.deriveBoundaryConstrainedMap( std::move(bc_mesh_subset)); - BoundaryConditionOrSourceTerm::createLocalAssemblers< + BoundaryConditionAndSourceTerm::createLocalAssemblers< PythonBoundaryConditionLocalAssembler>( global_dim, _bc_data.boundary_mesh.getElements(), *_dof_table_boundary, shapefunction_order, _local_assemblers, diff --git a/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryCondition.h similarity index 94% rename from ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryCondition.h index bb2f2a94ef3..6bd8a8c1de9 100644 --- a/ProcessLib/BoundaryCondition/Python/PythonBoundaryCondition.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryCondition.h @@ -12,9 +12,8 @@ #include "NumLib/DOF/LocalToGlobalIndexMap.h" #include "NumLib/IndexValueVector.h" -#include "ProcessLib/BoundaryCondition/BoundaryCondition.h" -#include "ProcessLib/BoundaryCondition/GenericNaturalBoundaryConditionLocalAssembler.h" - +#include "ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryConditionLocalAssembler.h" #include "PythonBoundaryConditionPythonSideInterface.h" namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionLocalAssembler.h similarity index 98% rename from ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionLocalAssembler.h index 9bbcf0b68ee..44aecfb0c5a 100644 --- a/ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionLocalAssembler.h @@ -10,12 +10,10 @@ #pragma once -#include "PythonBoundaryCondition.h" - #include "MathLib/LinAlg/Eigen/EigenMapTools.h" #include "NumLib/DOF/DOFTableUtil.h" -#include "ProcessLib/BoundaryCondition/GenericNaturalBoundaryConditionLocalAssembler.h" - +#include "ProcessLib/BoundaryConditionAndSourceTerm/GenericNaturalBoundaryConditionLocalAssembler.h" +#include "PythonBoundaryCondition.h" #include "PythonBoundaryConditionPythonSideInterface.h" namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionModule.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionModule.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionModule.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionModule.cpp diff --git a/ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionModule.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionModule.h similarity index 99% rename from ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionModule.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionModule.h index 3d2daf036a6..2534a2bc8da 100644 --- a/ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionModule.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionModule.h @@ -11,6 +11,7 @@ #pragma once #include <pybind11/pybind11.h> + #include "BaseLib/ExportSymbol.h" namespace ProcessLib diff --git a/ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionPythonSideInterface.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionPythonSideInterface.h similarity index 100% rename from ProcessLib/BoundaryCondition/Python/PythonBoundaryConditionPythonSideInterface.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonBoundaryConditionPythonSideInterface.h diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTerm.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTerm.cpp similarity index 94% rename from ProcessLib/SourceTerms/Python/PythonSourceTerm.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTerm.cpp index 12cb687bd20..91c145ebafb 100644 --- a/ProcessLib/SourceTerms/Python/PythonSourceTerm.cpp +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTerm.cpp @@ -16,7 +16,7 @@ #include "MeshLib/MeshSearch/NodeSearch.h" #include "NumLib/DOF/LocalToGlobalIndexMap.h" -#include "ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h" #include "PythonSourceTermLocalAssembler.h" namespace @@ -71,7 +71,7 @@ PythonSourceTerm::PythonSourceTerm( _source_term_data(std::move(source_term_data)), _flush_stdout(flush_stdout) { - BoundaryConditionOrSourceTerm::createLocalAssemblers< + BoundaryConditionAndSourceTerm::createLocalAssemblers< PythonSourceTermLocalAssembler>( global_dim, _source_term_data.source_term_mesh.getElements(), *_source_term_dof_table, shapefunction_order, _local_assemblers, diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTerm.h similarity index 97% rename from ProcessLib/SourceTerms/Python/PythonSourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTerm.h index 44e0492196e..3890ef76cc2 100644 --- a/ProcessLib/SourceTerms/Python/PythonSourceTerm.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTerm.h @@ -10,7 +10,7 @@ #pragma once -#include "ProcessLib/SourceTerms/SourceTerm.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h" #include "PythonSourceTermLocalAssemblerInterface.h" #include "PythonSourceTermPythonSideInterface.h" diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTermLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermLocalAssembler.h similarity index 99% rename from ProcessLib/SourceTerms/Python/PythonSourceTermLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermLocalAssembler.h index 6626ce7e1cc..e642ffd27ea 100644 --- a/ProcessLib/SourceTerms/Python/PythonSourceTermLocalAssembler.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermLocalAssembler.h @@ -103,7 +103,7 @@ public: // gather primary variables typename ShapeMatricesType::template MatrixType<ShapeFunction::NPOINTS, - Eigen::Dynamic> + Eigen::Dynamic> primary_variables_mat(num_nodes, num_comp_total); for (int var = 0; var < num_var; ++var) { diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTermLocalAssemblerInterface.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermLocalAssemblerInterface.h similarity index 99% rename from ProcessLib/SourceTerms/Python/PythonSourceTermLocalAssemblerInterface.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermLocalAssemblerInterface.h index 6be906d23c0..8b9120d8ba4 100644 --- a/ProcessLib/SourceTerms/Python/PythonSourceTermLocalAssemblerInterface.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermLocalAssemblerInterface.h @@ -16,7 +16,6 @@ namespace SourceTerms { namespace Python { - class PythonSourceTermLocalAssemblerInterface { public: diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTermModule.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermModule.cpp similarity index 100% rename from ProcessLib/SourceTerms/Python/PythonSourceTermModule.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermModule.cpp diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTermModule.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermModule.h similarity index 99% rename from ProcessLib/SourceTerms/Python/PythonSourceTermModule.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermModule.h index e574a783326..7079ec165cd 100644 --- a/ProcessLib/SourceTerms/Python/PythonSourceTermModule.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermModule.h @@ -11,6 +11,7 @@ #pragma once #include <pybind11/pybind11.h> + #include "BaseLib/ExportSymbol.h" namespace ProcessLib diff --git a/ProcessLib/SourceTerms/Python/PythonSourceTermPythonSideInterface.h b/ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermPythonSideInterface.h similarity index 100% rename from ProcessLib/SourceTerms/Python/PythonSourceTermPythonSideInterface.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Python/PythonSourceTermPythonSideInterface.h diff --git a/ProcessLib/BoundaryCondition/RobinBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/RobinBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/RobinBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/RobinBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/RobinBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/RobinBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/RobinBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/RobinBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/RobinBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/RobinBoundaryConditionLocalAssembler.h similarity index 100% rename from ProcessLib/BoundaryCondition/RobinBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/RobinBoundaryConditionLocalAssembler.h diff --git a/ProcessLib/BoundaryCondition/SolutionDependentDirichletBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/SolutionDependentDirichletBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/SolutionDependentDirichletBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/SolutionDependentDirichletBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/SolutionDependentDirichletBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/SolutionDependentDirichletBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/SolutionDependentDirichletBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/SolutionDependentDirichletBoundaryCondition.h diff --git a/ProcessLib/SourceTerms/SourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h similarity index 100% rename from ProcessLib/SourceTerms/SourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h diff --git a/ProcessLib/SourceTerms/SourceTermCollection.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/SourceTermCollection.cpp similarity index 100% rename from ProcessLib/SourceTerms/SourceTermCollection.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/SourceTermCollection.cpp diff --git a/ProcessLib/SourceTerms/SourceTermCollection.h b/ProcessLib/BoundaryConditionAndSourceTerm/SourceTermCollection.h similarity index 96% rename from ProcessLib/SourceTerms/SourceTermCollection.h rename to ProcessLib/BoundaryConditionAndSourceTerm/SourceTermCollection.h index af922046283..19e5c19bcd9 100644 --- a/ProcessLib/SourceTerms/SourceTermCollection.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/SourceTermCollection.h @@ -11,7 +11,7 @@ #pragma once #include "ProcessLib/ProcessVariable.h" -#include "ProcessLib/SourceTerms/SourceTerm.h" +#include "SourceTerm.h" namespace ProcessLib { diff --git a/ProcessLib/SourceTerms/SourceTermConfig.h b/ProcessLib/BoundaryConditionAndSourceTerm/SourceTermConfig.h similarity index 100% rename from ProcessLib/SourceTerms/SourceTermConfig.h rename to ProcessLib/BoundaryConditionAndSourceTerm/SourceTermConfig.h diff --git a/ProcessLib/SourceTerms/SourceTermIntegrationPointData.h b/ProcessLib/BoundaryConditionAndSourceTerm/SourceTermIntegrationPointData.h similarity index 99% rename from ProcessLib/SourceTerms/SourceTermIntegrationPointData.h rename to ProcessLib/BoundaryConditionAndSourceTerm/SourceTermIntegrationPointData.h index b5002ca982d..9fb7e18e19b 100644 --- a/ProcessLib/SourceTerms/SourceTermIntegrationPointData.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/SourceTermIntegrationPointData.h @@ -10,14 +10,13 @@ #pragma once +#include "MathLib/LinAlg/Eigen/EigenMapTools.h" #include "NumLib/Extrapolation/ExtrapolatableElement.h" #include "NumLib/Function/Interpolation.h" #include "ProcessLib/LocalAssemblerInterface.h" -#include "MathLib/LinAlg/Eigen/EigenMapTools.h" namespace ProcessLib { - template <typename NodalRowVectorType> struct SourceTermIntegrationPointData final { diff --git a/ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h b/ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h similarity index 97% rename from ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h index b12f7808662..d6299bbfea2 100644 --- a/ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h @@ -17,7 +17,7 @@ namespace ProcessLib { -namespace BoundaryConditionOrSourceTerm +namespace BoundaryConditionAndSourceTerm { namespace detail { @@ -97,5 +97,5 @@ void createLocalAssemblers( "Meshes with dimension greater than three are not supported."); } } -} // namespace BoundaryConditionOrSourceTerm +} // namespace BoundaryConditionAndSourceTerm } // namespace ProcessLib diff --git a/ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/LocalDataInitializer.h b/ProcessLib/BoundaryConditionAndSourceTerm/Utils/LocalDataInitializer.h similarity index 99% rename from ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/LocalDataInitializer.h rename to ProcessLib/BoundaryConditionAndSourceTerm/Utils/LocalDataInitializer.h index 032af2890b6..8ab6dd77725 100644 --- a/ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/LocalDataInitializer.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/Utils/LocalDataInitializer.h @@ -114,7 +114,7 @@ static_assert(false, "The macro OGS_MAX_ELEMENT_ORDER is undefined."); namespace ProcessLib { -namespace BoundaryConditionOrSourceTerm +namespace BoundaryConditionAndSourceTerm { /// The LocalDataInitializer is a functor creating a local assembler data with /// corresponding to the mesh element type shape functions and calling @@ -389,7 +389,7 @@ private: } }; -} // namespace BoundaryConditionOrSourceTerm +} // namespace BoundaryConditionAndSourceTerm } // namespace ProcessLib #undef ENABLED_ELEMENT_TYPE_SIMPLEX #undef ENABLED_ELEMENT_TYPE_CUBOID diff --git a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/VariableDependentNeumannBoundaryCondition.cpp similarity index 100% rename from ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/VariableDependentNeumannBoundaryCondition.cpp diff --git a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.h b/ProcessLib/BoundaryConditionAndSourceTerm/VariableDependentNeumannBoundaryCondition.h similarity index 100% rename from ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryCondition.h rename to ProcessLib/BoundaryConditionAndSourceTerm/VariableDependentNeumannBoundaryCondition.h diff --git a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryConditionAndSourceTerm/VariableDependentNeumannBoundaryConditionLocalAssembler.h similarity index 99% rename from ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryConditionLocalAssembler.h rename to ProcessLib/BoundaryConditionAndSourceTerm/VariableDependentNeumannBoundaryConditionLocalAssembler.h index 0f7d9c6c73b..88668260901 100644 --- a/ProcessLib/BoundaryCondition/VariableDependentNeumannBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryConditionAndSourceTerm/VariableDependentNeumannBoundaryConditionLocalAssembler.h @@ -10,13 +10,12 @@ #pragma once +#include "GenericNaturalBoundaryConditionLocalAssembler.h" #include "MeshLib/PropertyVector.h" #include "NumLib/DOF/DOFTableUtil.h" #include "NumLib/Function/Interpolation.h" #include "ParameterLib/MeshNodeParameter.h" -#include "GenericNaturalBoundaryConditionLocalAssembler.h" - namespace ProcessLib { struct VariableDependentNeumannBoundaryConditionData diff --git a/ProcessLib/SourceTerms/VolumetricSourceTerm.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/VolumetricSourceTerm.cpp similarity index 91% rename from ProcessLib/SourceTerms/VolumetricSourceTerm.cpp rename to ProcessLib/BoundaryConditionAndSourceTerm/VolumetricSourceTerm.cpp index 62be8d56432..e8ec38890c8 100644 --- a/ProcessLib/SourceTerms/VolumetricSourceTerm.cpp +++ b/ProcessLib/BoundaryConditionAndSourceTerm/VolumetricSourceTerm.cpp @@ -10,7 +10,7 @@ #include "VolumetricSourceTerm.h" -#include "ProcessLib/Utils/ForBoundaryConditionOrSourceTerm/CreateLocalAssemblers.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Utils/CreateLocalAssemblers.h" namespace ProcessLib { @@ -22,7 +22,7 @@ VolumetricSourceTerm::VolumetricSourceTerm( : SourceTerm(std::move(source_term_dof_table)), _source_term_parameter(source_term_parameter) { - BoundaryConditionOrSourceTerm::createLocalAssemblers< + BoundaryConditionAndSourceTerm::createLocalAssemblers< VolumetricSourceTermLocalAssembler>( bulk_mesh_dimension, source_term_mesh.getElements(), *_source_term_dof_table, shapefunction_order, _local_assemblers, diff --git a/ProcessLib/SourceTerms/VolumetricSourceTerm.h b/ProcessLib/BoundaryConditionAndSourceTerm/VolumetricSourceTerm.h similarity index 100% rename from ProcessLib/SourceTerms/VolumetricSourceTerm.h rename to ProcessLib/BoundaryConditionAndSourceTerm/VolumetricSourceTerm.h diff --git a/ProcessLib/SourceTerms/VolumetricSourceTermFEM.h b/ProcessLib/BoundaryConditionAndSourceTerm/VolumetricSourceTermFEM.h similarity index 100% rename from ProcessLib/SourceTerms/VolumetricSourceTermFEM.h rename to ProcessLib/BoundaryConditionAndSourceTerm/VolumetricSourceTermFEM.h diff --git a/ProcessLib/CMakeLists.txt b/ProcessLib/CMakeLists.txt index f1b2e308d5d..2ca5eb57038 100644 --- a/ProcessLib/CMakeLists.txt +++ b/ProcessLib/CMakeLists.txt @@ -12,18 +12,16 @@ foreach(process ${_processes_list}) endforeach() get_source_files(SOURCES) -append_source_files(SOURCES BoundaryCondition) +append_source_files(SOURCES BoundaryConditionAndSourceTerm) +append_source_files(SOURCES BoundaryConditionAndSourceTerm/Utils) append_source_files(SOURCES SurfaceFlux) append_source_files(SOURCES Output) -append_source_files(SOURCES SourceTerms) append_source_files(SOURCES Utils) -append_source_files(SOURCES Utils/ForBoundaryConditionOrSourceTerm) ogs_add_library(ProcessLib ${SOURCES}) if(OGS_USE_PYTHON) - add_subdirectory(BoundaryCondition/Python) - add_subdirectory(SourceTerms/Python) + add_subdirectory(BoundaryConditionAndSourceTerm/Python) endif() target_link_libraries( @@ -35,8 +33,7 @@ target_link_libraries( MeshGeoToolsLib MeshLib NumLib - $<$<TARGET_EXISTS:ProcessLibBoundaryConditionPython>:ProcessLibBoundaryConditionPython> - $<$<TARGET_EXISTS:ProcessLibSourceTermPython>:ProcessLibSourceTermPython> + $<$<TARGET_EXISTS:ProcessLibBoundaryConditionAndSourceTermPython>:ProcessLibBoundaryConditionAndSourceTermPython> $<$<TARGET_EXISTS:petsc>:petsc> nlohmann_json PRIVATE ParameterLib GitInfoLib $<$<TARGET_EXISTS:InSituLib>:InSituLib> diff --git a/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEBottomDirichletBoundaryCondition.h b/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEBottomDirichletBoundaryCondition.h index 56dd63dfc6e..d14a2364f02 100644 --- a/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEBottomDirichletBoundaryCondition.h +++ b/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEBottomDirichletBoundaryCondition.h @@ -11,7 +11,7 @@ #pragma once #include "NumLib/IndexValueVector.h" -#include "ProcessLib/BoundaryCondition/BoundaryCondition.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h" namespace ProcessLib::HeatTransportBHE { diff --git a/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEInflowDirichletBoundaryCondition.h b/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEInflowDirichletBoundaryCondition.h index ecbee2727c2..227ecf327a8 100644 --- a/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEInflowDirichletBoundaryCondition.h +++ b/ProcessLib/HeatTransportBHE/BoundaryConditions/BHEInflowDirichletBoundaryCondition.h @@ -11,7 +11,7 @@ #pragma once #include "NumLib/IndexValueVector.h" -#include "ProcessLib/BoundaryCondition/BoundaryCondition.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h" namespace ProcessLib::HeatTransportBHE { diff --git a/ProcessLib/HeatTransportBHE/HeatTransportBHEProcess.cpp b/ProcessLib/HeatTransportBHE/HeatTransportBHEProcess.cpp index 7df77b4228a..64eadb6851f 100644 --- a/ProcessLib/HeatTransportBHE/HeatTransportBHEProcess.cpp +++ b/ProcessLib/HeatTransportBHE/HeatTransportBHEProcess.cpp @@ -14,7 +14,7 @@ #include "BoundaryConditions/BHEBottomDirichletBoundaryCondition.h" #include "BoundaryConditions/BHEInflowDirichletBoundaryCondition.h" -#include "ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryCondition.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryCondition.h" #include "ProcessLib/HeatTransportBHE/BHE/MeshUtils.h" #include "ProcessLib/HeatTransportBHE/LocalAssemblers/CreateLocalAssemblers.h" #include "ProcessLib/HeatTransportBHE/LocalAssemblers/HeatTransportBHELocalAssemblerBHE.h" diff --git a/ProcessLib/HeatTransportBHE/HeatTransportBHEProcessData.h b/ProcessLib/HeatTransportBHE/HeatTransportBHEProcessData.h index ef86e9fb918..aaf2c65d99d 100644 --- a/ProcessLib/HeatTransportBHE/HeatTransportBHEProcessData.h +++ b/ProcessLib/HeatTransportBHE/HeatTransportBHEProcessData.h @@ -14,7 +14,7 @@ #include "MaterialLib/MPL/MaterialSpatialDistributionMap.h" #include "MeshLib/PropertyVector.h" -#include "ProcessLib/BoundaryCondition/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/Python/BHEInflowPythonBoundaryConditionPythonSideInterface.h" #include "ProcessLib/HeatTransportBHE/BHE/BHETypes.h" namespace MeshLib { diff --git a/ProcessLib/Process.h b/ProcessLib/Process.h index ed08de5d985..47d8e78795d 100644 --- a/ProcessLib/Process.h +++ b/ProcessLib/Process.h @@ -18,11 +18,11 @@ #include "NumLib/ODESolver/ODESystem.h" #include "NumLib/ODESolver/TimeDiscretization.h" #include "ParameterLib/Parameter.h" -#include "ProcessLib/BoundaryCondition/BoundaryConditionCollection.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionCollection.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/SourceTermCollection.h" #include "ProcessLib/Output/ExtrapolatorData.h" #include "ProcessLib/Output/IntegrationPointWriter.h" #include "ProcessLib/Output/SecondaryVariable.h" -#include "ProcessLib/SourceTerms/SourceTermCollection.h" #include "ProcessVariable.h" #include "VectorMatrixAssembler.h" diff --git a/ProcessLib/ProcessVariable.cpp b/ProcessLib/ProcessVariable.cpp index d76d16ddfe3..c1b5b0ef1b3 100644 --- a/ProcessLib/ProcessVariable.cpp +++ b/ProcessLib/ProcessVariable.cpp @@ -19,12 +19,12 @@ #include "MeshLib/Mesh.h" #include "MeshLib/Node.h" #include "ParameterLib/Utils.h" -#include "ProcessLib/BoundaryCondition/BoundaryCondition.h" -#include "ProcessLib/BoundaryCondition/CreateBoundaryCondition.h" -#include "ProcessLib/BoundaryCondition/DeactivatedSubdomainDirichlet.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/BoundaryCondition.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/CreateBoundaryCondition.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/CreateSourceTerm.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/DeactivatedSubdomainDirichlet.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h" #include "ProcessLib/CreateDeactivatedSubdomain.h" -#include "ProcessLib/SourceTerms/CreateSourceTerm.h" -#include "ProcessLib/SourceTerms/SourceTerm.h" namespace { @@ -305,8 +305,7 @@ void ProcessVariable::updateDeactivatedSubdomains(double const time) return true; } - auto const& deactivated_materialIDs = - ds.materialIDs; + auto const& deactivated_materialIDs = ds.materialIDs; auto const& element_center = getCenterOfGravity(*_mesh.getElement(i)); if (std::binary_search(deactivated_materialIDs.begin(), diff --git a/ProcessLib/ProcessVariable.h b/ProcessLib/ProcessVariable.h index 01edb1583f0..ffc0eda0289 100644 --- a/ProcessLib/ProcessVariable.h +++ b/ProcessLib/ProcessVariable.h @@ -11,10 +11,9 @@ #pragma once #include "MathLib/LinAlg/GlobalMatrixVectorTypes.h" - #include "ParameterLib/Parameter.h" -#include "ProcessLib/BoundaryCondition/BoundaryConditionConfig.h" -#include "ProcessLib/SourceTerms/SourceTermConfig.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/BoundaryConditionConfig.h" +#include "ProcessLib/BoundaryConditionAndSourceTerm/SourceTermConfig.h" // DeactivatedSubdomain cannot be forwardly declared because that // std::unique_ptr<DeactivatedSubdomain> type member requires its full diff --git a/ProcessLib/SourceTerms/Python/CMakeLists.txt b/ProcessLib/SourceTerms/Python/CMakeLists.txt deleted file mode 100644 index 7d320026cb1..00000000000 --- a/ProcessLib/SourceTerms/Python/CMakeLists.txt +++ /dev/null @@ -1,38 +0,0 @@ -ogs_add_library( - ProcessLibSourceTermPython - CreatePythonSourceTerm.cpp - CreatePythonSourceTerm.h - PythonSourceTerm.cpp - PythonSourceTerm.h - PythonSourceTermLocalAssembler.h - PythonSourceTermPythonSideInterface.h -) - -target_compile_definitions( - ProcessLibSourceTermPython - PUBLIC OGS_USE_PYTHON - # Enabled elements - OGS_MAX_ELEMENT_DIM=${OGS_MAX_ELEMENT_DIM} - OGS_MAX_ELEMENT_ORDER=${OGS_MAX_ELEMENT_ORDER} - $<$<BOOL:${OGS_ENABLE_ELEMENT_SIMPLEX}>:OGS_ENABLE_ELEMENT_SIMPLEX> - $<$<BOOL:${OGS_ENABLE_ELEMENT_CUBOID}>:OGS_ENABLE_ELEMENT_CUBOID> - $<$<BOOL:${OGS_ENABLE_ELEMENT_PRISM}>:OGS_ENABLE_ELEMENT_PRISM> - $<$<BOOL:${OGS_ENABLE_ELEMENT_PYRAMID}>:OGS_ENABLE_ELEMENT_PYRAMID> -) - -target_link_libraries( - ProcessLibSourceTermPython PUBLIC BaseLib MathLib MeshLib NumLib - ${Python3_LIBRARIES} - PRIVATE pybind11::pybind11 -) - -# For the embedded Python module -ogs_add_library( - ProcessLibSourceTermPythonModule PythonSourceTermModule.cpp - PythonSourceTermModule.h -) - -target_link_libraries( - ProcessLibSourceTermPythonModule PUBLIC ProcessLibSourceTermPython - pybind11::pybind11 -) -- GitLab