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;