diff --git a/ProcessLib/HT/CreateHTProcess.cpp b/ProcessLib/HT/CreateHTProcess.cpp index 0eb565cd3bb62a0f0b8328ea79f697adc5b64dd7..d62f564733d341a4225b3a8302a60a98f145583b 100644 --- a/ProcessLib/HT/CreateHTProcess.cpp +++ b/ProcessLib/HT/CreateHTProcess.cpp @@ -139,14 +139,10 @@ std::unique_ptr<Process> createHTProcess( auto media_map = MaterialPropertyLib::createMaterialSpatialDistributionMap(media, mesh); - std::unique_ptr<HTMaterialProperties> material_properties = - std::make_unique<HTMaterialProperties>( - std::move(media_map), - has_fluid_thermal_expansion, - *solid_thermal_expansion, - *biot_constant, - specific_body_force, - has_gravity); + HTMaterialProperties material_properties{ + std::move(media_map), has_fluid_thermal_expansion, + *solid_thermal_expansion, *biot_constant, + specific_body_force, has_gravity}; SecondaryVariableCollection secondary_variables; diff --git a/ProcessLib/HT/HTProcess.cpp b/ProcessLib/HT/HTProcess.cpp index 9616152224c53d659f96b12d36ab0f4c62a76d03..a9074a8bae53be0499aaec91746619c050531997 100644 --- a/ProcessLib/HT/HTProcess.cpp +++ b/ProcessLib/HT/HTProcess.cpp @@ -16,7 +16,6 @@ #include "ProcessLib/SurfaceFlux/SurfaceFluxData.h" #include "ProcessLib/Utils/CreateLocalAssemblers.h" -#include "HTMaterialProperties.h" #include "MonolithicHTFEM.h" #include "StaggeredHTFEM.h" @@ -32,7 +31,7 @@ HTProcess::HTProcess( unsigned const integration_order, std::vector<std::vector<std::reference_wrapper<ProcessVariable>>>&& process_variables, - std::unique_ptr<HTMaterialProperties>&& material_properties, + HTMaterialProperties&& material_properties, SecondaryVariableCollection&& secondary_variables, NumLib::NamedFunctionCaller&& named_function_caller, bool const use_monolithic_scheme, @@ -68,14 +67,14 @@ void HTProcess::initializeConcreteProcess( mesh.getDimension(), mesh.getElements(), dof_table, pv.getShapeFunctionOrder(), _local_assemblers, mesh.isAxiallySymmetric(), integration_order, - *_material_properties); + _material_properties); } else { ProcessLib::createLocalAssemblers<StaggeredHTFEM>( mesh.getDimension(), mesh.getElements(), dof_table, pv.getShapeFunctionOrder(), _local_assemblers, - mesh.isAxiallySymmetric(), integration_order, *_material_properties, + mesh.isAxiallySymmetric(), integration_order, _material_properties, _heat_transport_process_id, _hydraulic_process_id); } diff --git a/ProcessLib/HT/HTProcess.h b/ProcessLib/HT/HTProcess.h index 1d59a7bc4ed9eaaa3887f922c1105d020ad34574..b6dbe34253f9778c28b4b31de51ed98519758ec7 100644 --- a/ProcessLib/HT/HTProcess.h +++ b/ProcessLib/HT/HTProcess.h @@ -11,6 +11,7 @@ #include <array> +#include "HTMaterialProperties.h" #include "ProcessLib/Process.h" namespace NumLib @@ -25,7 +26,6 @@ struct SurfaceFluxData; namespace HT { class HTLocalAssemblerInterface; -struct HTMaterialProperties; /** * # HT process @@ -59,7 +59,7 @@ public: unsigned const integration_order, std::vector<std::vector<std::reference_wrapper<ProcessVariable>>>&& process_variables, - std::unique_ptr<HTMaterialProperties>&& material_properties, + HTMaterialProperties&& material_properties, SecondaryVariableCollection&& secondary_variables, NumLib::NamedFunctionCaller&& named_function_caller, bool const use_monolithic_scheme, @@ -116,7 +116,7 @@ private: std::tuple<NumLib::LocalToGlobalIndexMap*, bool> getDOFTableForExtrapolatorData() const override; - const std::unique_ptr<HTMaterialProperties> _material_properties; + HTMaterialProperties _material_properties; std::vector<std::unique_ptr<HTLocalAssemblerInterface>> _local_assemblers;