diff --git a/ProcessLib/RichardsFlow/CreateRichardsFlowProcess.cpp b/ProcessLib/RichardsFlow/CreateRichardsFlowProcess.cpp index 7e05e24eca3073e41c9cb97ce1b8c76bb2e05e83..1d844b3334fe06f7791d81390c310bffd097aee3 100644 --- a/ProcessLib/RichardsFlow/CreateRichardsFlowProcess.cpp +++ b/ProcessLib/RichardsFlow/CreateRichardsFlowProcess.cpp @@ -107,7 +107,8 @@ std::unique_ptr<Process> createRichardsFlowProcess( specific_body_force, has_gravity, mass_lump, - curves}; + *curves.at("curve_PC_S"), + *curves.at("curve_S_Krel")}; SecondaryVariableCollection secondary_variables; NumLib::NamedFunctionCaller named_function_caller( diff --git a/ProcessLib/RichardsFlow/RichardsFlowFEM.h b/ProcessLib/RichardsFlow/RichardsFlowFEM.h index 3c70ae641d6ef7428874c0e7f04f8bb2b3e1eda4..a30379f94f4cd857f62aab780833567786878b1c 100644 --- a/ProcessLib/RichardsFlow/RichardsFlowFEM.h +++ b/ProcessLib/RichardsFlow/RichardsFlowFEM.h @@ -82,9 +82,9 @@ public: assert(local_matrix_size == ShapeFunction::NPOINTS * NUM_NODAL_DOF); MathLib::PiecewiseLinearInterpolation const& interpolated_Pc = - *_process_data.curves.at("curve_PC_S"); + _process_data.interpolated_Pc; MathLib::PiecewiseLinearInterpolation const& interpolated_Kr = - *_process_data.curves.at("curve_S_Krel"); + _process_data.interpolated_Kr; auto local_M = MathLib::createZeroedMatrix<NodalMatrixType>( local_M_data, local_matrix_size, local_matrix_size); diff --git a/ProcessLib/RichardsFlow/RichardsFlowProcessData.h b/ProcessLib/RichardsFlow/RichardsFlowProcessData.h index 1b4ce009eaf96d70e94b9b784f1f8c7b271dd327..ae9a076a4f48f9ca42cd5820ae9d9c0c8053c365 100644 --- a/ProcessLib/RichardsFlow/RichardsFlowProcessData.h +++ b/ProcessLib/RichardsFlow/RichardsFlowProcessData.h @@ -33,9 +33,8 @@ struct RichardsFlowProcessData Parameter<double> const& specific_body_force_, bool const has_gravity_, bool const has_mass_lumping_, - std::map<std::string, - std::unique_ptr<MathLib::PiecewiseLinearInterpolation>> const& - curves_) + MathLib::PiecewiseLinearInterpolation const& interpolated_Pc_, + MathLib::PiecewiseLinearInterpolation const& interpolated_Kr_) : intrinsic_permeability(intrinsic_permeability_), porosity(porosity_), viscosity(viscosity_), @@ -44,7 +43,8 @@ struct RichardsFlowProcessData specific_body_force(specific_body_force_), has_gravity(has_gravity_), has_mass_lumping(has_mass_lumping_), - curves(curves_) + interpolated_Pc(interpolated_Pc_), + interpolated_Kr(interpolated_Kr_) { } @@ -57,7 +57,8 @@ struct RichardsFlowProcessData specific_body_force(other.specific_body_force), has_gravity(other.has_gravity), has_mass_lumping(other.has_mass_lumping), - curves(other.curves) + interpolated_Pc(other.interpolated_Pc), + interpolated_Kr(other.interpolated_Kr) { } @@ -78,9 +79,8 @@ struct RichardsFlowProcessData Parameter<double> const& specific_body_force; bool const has_gravity; bool const has_mass_lumping; - std::map<std::string, - std::unique_ptr<MathLib::PiecewiseLinearInterpolation>> const& - curves; + MathLib::PiecewiseLinearInterpolation const& interpolated_Pc; + MathLib::PiecewiseLinearInterpolation const& interpolated_Kr; }; } // namespace RichardsFlow