27 auto const gradxmWG = phase_transition_data.
dxmWG_dpGR * grad_p_GR() +
29 phase_transition_data.
dxmWG_dT * grad_T();
30 auto const gradxmCG = -gradxmWG;
32 auto const gradxmWL = phase_transition_data.
dxmWL_dpGR * grad_p_GR() +
34 phase_transition_data.
dxmWL_dT * grad_T();
35 auto const gradxmCL = -gradxmWL;
37 double const phi_L = S_L_data.
S_L * porosity_data.
phi;
38 double const phi_G = (1. - S_L_data.
S_L) * porosity_data.
phi;
40 double const phi_G_D_vapour =
42 double const phi_L_D_solute =
45 if (mass_mole_fractions_data.
xmCG == 0)
51 diffusion_velocity_data.
d_CG =
52 -phi_G_D_vapour / mass_mole_fractions_data.
xmCG * gradxmCG;
55 if (mass_mole_fractions_data.
xmCG == 1)
61 diffusion_velocity_data.
d_WG =
62 -phi_G_D_vapour / (1 - mass_mole_fractions_data.
xmCG) * gradxmWG;
65 if (mass_mole_fractions_data.
xmWL == 1)
72 diffusion_velocity_data.
d_CL =
73 -phi_L_D_solute / (1. - mass_mole_fractions_data.
xmWL) * gradxmCL;
76 if (mass_mole_fractions_data.
xmWL == 0)
82 diffusion_velocity_data.
d_WL =
83 -phi_L_D_solute / mass_mole_fractions_data.
xmWL * gradxmWL;
void eval(CapillaryPressureGradientData< DisplacementDim > const &grad_p_cap, GasPressureGradientData< DisplacementDim > const &grad_p_GR, MassMoleFractionsData const &mass_mole_fractions_data, PhaseTransitionData const &phase_transition_data, PorosityData const &porosity_data, SaturationData const &S_L_data, TemperatureGradientData< DisplacementDim > const &grad_T, DiffusionVelocityData< DisplacementDim > &diffusion_velocity_data) const