From 1f9d9eb3b7c14dce1e8b8072b3529b71672a1cb9 Mon Sep 17 00:00:00 2001 From: Thomas Fischer <thomas.fischer@ufz.de> Date: Mon, 19 Aug 2019 13:59:56 +0200 Subject: [PATCH] [PL/HT] Use object directly instead of unique_ptr. --- ProcessLib/HT/CreateHTProcess.cpp | 12 ++++-------- ProcessLib/HT/HTProcess.cpp | 7 +++---- ProcessLib/HT/HTProcess.h | 6 +++--- 3 files changed, 10 insertions(+), 15 deletions(-) diff --git a/ProcessLib/HT/CreateHTProcess.cpp b/ProcessLib/HT/CreateHTProcess.cpp index 0eb565cd3bb..d62f564733d 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 9616152224c..a9074a8bae5 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 1d59a7bc4ed..b6dbe34253f 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; -- GitLab