43 auto const& medium = media_data.
medium;
46 medium.hasPhase(
"Gas") ? &medium.phase(
"Gas") :
nullptr;
50 if (gas_phase && S_L_data.
S_L < 1.0)
54 .template value<double>(variables, x_t.
x, x_t.
t, x_t.
dt);
56 double const drho_wv_dT =
59 x_t.
x, x_t.
t, x_t.
dt);
60 double const drho_wv_dp =
62 .template dValue<double>(variables,
64 x_t.
x, x_t.
t, x_t.
dt);
69 .template value<double>(variables, x_t.
x, x_t.
t, x_t.
dt);
71 double const phi = poro_data.
phi;
74 double const S_g = 1.0 - S_L_data.
S_L;
75 double const tortuosity =
77 .template value<double>(variables, x_t.
x, x_t.
t, x_t.
dt);
79 phi * S_g * tortuosity *
81 .template value<double>(variables, x_t.
x, x_t.
t, x_t.
dt);
92 .template value<double>(variables, x_t.
x, x_t.
t, x_t.
dt);
97 phi * (rho_wv * dS_L_data.
dS_L_dp_cap + S_g * drho_wv_dp);
106 double const factor = phi * S_g / rho_L_data.
rho_LR;
110 .template value<double>(variables, x_t.
x, x_t.
t, x_t.
dt) *
113 double const rho_wv_over_rho_L = rho_wv / rho_L_data.
rho_LR;
117 (drho_wv_dT - rho_wv_over_rho_L * rho_L_data.
drho_LR_dT);
120 (drho_wv_dp - rho_wv_over_rho_L * rho_L_data.
drho_LR_dp) +
121 L0 * phi * rho_wv_over_rho_L * dS_L_data.
dS_L_dp_cap);
void eval(SpaceTimeData const &x_t, MediaData const &media_data, LiquidDensityData const &rho_L_data, SaturationData const &S_L_data, SaturationDataDeriv const &dS_L_data, PorosityData const &poro_data, CapillaryPressureData< DisplacementDim > const &p_cap_data, TemperatureData< DisplacementDim > const &T_data, TRMVaporDiffusionData< DisplacementDim > &out) const