diff --git a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/DarcyLaw.cpp b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/DarcyLaw.cpp index 5bc1527620d22b7f9bd9524e9b731c691de67937..8bceb6e795141549abb11b95a5730372e9581860 100644 --- a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/DarcyLaw.cpp +++ b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/DarcyLaw.cpp @@ -21,7 +21,7 @@ void DarcyLawModel<DisplacementDim>::eval( ThermoOsmosisData<DisplacementDim> const& th_osmosis_data, DarcyLawData<DisplacementDim>& out) const { - *out = perm_data.Ki / mu_L_data.viscosity * + *out = perm_data.Ki / mu_L_data() * (perm_data.k_rel * (p_cap_data.grad_p_cap + rho_L_data.rho_LR * b_)) + th_osmosis_data.seepage_velocity_contribution; diff --git a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/EqP.cpp b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/EqP.cpp index b8d7a09315fb22f1d6b9fa7efa09adb1085d789b..0b79275aebe24bcf843084e1938dd627d99970f7 100644 --- a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/EqP.cpp +++ b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/EqP.cpp @@ -29,14 +29,14 @@ void EqPModel<DisplacementDim>::eval( { out.M_pu_X_BTI2N = S_L_data.S_L * rho_L_data.rho_LR * biot_data(); - out.K_pp_Laplace = perm_data.k_rel * rho_L_data.rho_LR * perm_data.Ki / - mu_L_data.viscosity; + out.K_pp_Laplace = + perm_data.k_rel * rho_L_data.rho_LR * perm_data.Ki / mu_L_data(); out.J_pp_X_BTI2NT_u_dot_N = -rho_L_data.rho_LR * dS_L_data.dS_L_dp_cap * biot_data(); out.J_pp_dNT_V_N = - perm_data.Ki / mu_L_data.viscosity * + perm_data.Ki / mu_L_data() * (rho_L_data.rho_LR * perm_data.dk_rel_dS_L * dS_L_data.dS_L_dp_cap * (p_cap_data.grad_p_cap + rho_L_data.rho_LR * b_)); diff --git a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.cpp b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.cpp index bc4d2a88d9294fc9179763591a92cc4b8bc8625a..337df896229a9562eabfde091a03d3538f5be6f9 100644 --- a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.cpp +++ b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.cpp @@ -24,9 +24,8 @@ void LiquidViscosityModel<DisplacementDim>::eval( variables.temperature = T_data.T; variables.density = rho_L_data.rho_LR; - out.viscosity = - media_data.liquid.property(MPL::PropertyType::viscosity) - .template value<double>(variables, x_t.x, x_t.t, x_t.dt); + *out = media_data.liquid.property(MPL::PropertyType::viscosity) + .template value<double>(variables, x_t.x, x_t.t, x_t.dt); } template struct LiquidViscosityModel<2>; diff --git a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.h b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.h index 6b65e4da3e76c18929f4b56adc469dae864b9b4d..53ab7f941ab55b740888836f8f6efe3ca0889f70 100644 --- a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.h +++ b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/LiquidViscosity.h @@ -11,20 +11,18 @@ #pragma once #include "Base.h" +#include "BaseLib/StrongType.h" #include "LiquidDensity.h" namespace ProcessLib::ThermoRichardsMechanics { -struct LiquidViscosityData -{ - double viscosity; +using LiquidViscosityData = + BaseLib::StrongType<double, struct LiquidViscosityDataTag>; - static auto reflect() - { - return ProcessLib::Reflection::reflectWithName( - "viscosity", &LiquidViscosityData::viscosity); - } -}; +constexpr std::string_view ioName(struct LiquidViscosityDataTag*) +{ + return "viscosity"; +} template <int DisplacementDim> struct LiquidViscosityModel diff --git a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/TRMHeatStorageAndFlux.cpp b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/TRMHeatStorageAndFlux.cpp index c94735a61dd2f49f6e51c603ead93caeff82c91a..a2e4a8bf9843887d08d8ba43dde5e6724735856b 100644 --- a/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/TRMHeatStorageAndFlux.cpp +++ b/ProcessLib/ThermoRichardsMechanics/ConstitutiveCommon/TRMHeatStorageAndFlux.cpp @@ -69,8 +69,7 @@ void TRMHeatStorageAndFluxModel<DisplacementDim>::eval( // temperature equation, pressure part // out.K_Tp_NT_V_dN = -volumetric_heat_capacity_liquid * perm.k_rel / - mu_L_data.viscosity * - (perm.Ki.transpose() * T_data.grad_T); + mu_L_data() * (perm.Ki.transpose() * T_data.grad_T); out.K_Tp_X_NTN = -volumetric_heat_capacity_liquid * darcy_data().dot(T_data.grad_T) / perm.k_rel * perm.dk_rel_dS_L * dS_L_data.dS_L_dp_cap;