OGS
ProcessLib::ThermoRichardsMechanics::EqPModel< DisplacementDim > Struct Template Reference

Detailed Description

template<int DisplacementDim>
struct ProcessLib::ThermoRichardsMechanics::EqPModel< DisplacementDim >

Definition at line 42 of file EqP.h.

#include <EqP.h>

Public Member Functions

 EqPModel (Eigen::Vector< double, DisplacementDim > const &specific_body_force)
 
void eval (CapillaryPressureData< DisplacementDim > const &p_cap_data, TemperatureData< DisplacementDim > const &T_data, SaturationData const &S_L_data, SaturationDataDeriv const &dS_L_data, BiotData const &biot_data, LiquidDensityData const &rho_L_data, LiquidViscosityData const &mu_L_data, PermeabilityData< DisplacementDim > const &perm_data, FluidThermalExpansionData const &f_therm_exp_data, TRMVaporDiffusionData< DisplacementDim > const &vap_data, TRMStorageData const &storage_data, EqPData< DisplacementDim > &out) const
 

Static Public Member Functions

static EqPModel create (SpecificBodyForceData< DisplacementDim > const &specific_body_force_data)
 

Private Attributes

Eigen::Vector< double, DisplacementDim > const b_
 Gravity vector (specific body force).
 

Constructor & Destructor Documentation

◆ EqPModel()

template<int DisplacementDim>
ProcessLib::ThermoRichardsMechanics::EqPModel< DisplacementDim >::EqPModel ( Eigen::Vector< double, DisplacementDim > const & specific_body_force)
inlineexplicit

Definition at line 44 of file EqP.h.

46 : b_(specific_body_force)
47 {
48 }
Eigen::Vector< double, DisplacementDim > const b_
Gravity vector (specific body force).
Definition EqP.h:71

Member Function Documentation

◆ create()

template<int DisplacementDim>
static EqPModel ProcessLib::ThermoRichardsMechanics::EqPModel< DisplacementDim >::create ( SpecificBodyForceData< DisplacementDim > const & specific_body_force_data)
inlinestatic

Definition at line 63 of file EqP.h.

65 {
66 return EqPModel{specific_body_force_data.specific_body_force};
67 }
EqPModel(Eigen::Vector< double, DisplacementDim > const &specific_body_force)
Definition EqP.h:44

References ProcessLib::ThermoRichardsMechanics::SpecificBodyForceData< DisplacementDim >::specific_body_force.

◆ eval()

template<int DisplacementDim>
void ProcessLib::ThermoRichardsMechanics::EqPModel< DisplacementDim >::eval ( CapillaryPressureData< DisplacementDim > const & p_cap_data,
TemperatureData< DisplacementDim > const & T_data,
SaturationData const & S_L_data,
SaturationDataDeriv const & dS_L_data,
BiotData const & biot_data,
LiquidDensityData const & rho_L_data,
LiquidViscosityData const & mu_L_data,
PermeabilityData< DisplacementDim > const & perm_data,
FluidThermalExpansionData const & f_therm_exp_data,
TRMVaporDiffusionData< DisplacementDim > const & vap_data,
TRMStorageData const & storage_data,
EqPData< DisplacementDim > & out ) const

Definition at line 16 of file EqP.cpp.

29{
30 out.M_pu_X_BTI2N = S_L_data.S_L * rho_L_data.rho_LR * biot_data();
31
32 out.K_pp_Laplace =
33 perm_data.k_rel * rho_L_data.rho_LR * perm_data.Ki / mu_L_data();
34
35 out.J_pp_X_BTI2NT_u_dot_N =
36 -rho_L_data.rho_LR * dS_L_data.dS_L_dp_cap * biot_data();
37
38 out.J_pp_dNT_V_N =
39 perm_data.Ki / mu_L_data() *
40 (rho_L_data.rho_LR * perm_data.dk_rel_dS_L * dS_L_data.dS_L_dp_cap *
41 (p_cap_data.grad_p_cap + rho_L_data.rho_LR * b_));
42
43 out.M_pT_X_NTN = -S_L_data.S_L * rho_L_data.rho_LR *
44 f_therm_exp_data.eff_thermal_expansion +
45 vap_data.M_pT_X_NTN;
46
47 out.storage_p_a_p_X_NTN = storage_data.storage_p_a_p +
48 vap_data.storage_coefficient_by_water_vapor;
49
50 out.rhs_p_dNT_V = -rho_L_data.rho_LR * (out.K_pp_Laplace * b_) +
51 vap_data.J_pT_X_dNTdN * T_data.grad_T;
52}

References ProcessLib::ThermoRichardsMechanics::PermeabilityData< DisplacementDim >::dk_rel_dS_L, ProcessLib::ThermoRichardsMechanics::SaturationDataDeriv::dS_L_dp_cap, ProcessLib::ThermoRichardsMechanics::FluidThermalExpansionData::eff_thermal_expansion, ProcessLib::ThermoRichardsMechanics::CapillaryPressureData< DisplacementDim >::grad_p_cap, ProcessLib::ThermoRichardsMechanics::TemperatureData< DisplacementDim >::grad_T, ProcessLib::ThermoRichardsMechanics::EqPData< DisplacementDim >::J_pp_dNT_V_N, ProcessLib::ThermoRichardsMechanics::EqPData< DisplacementDim >::J_pp_X_BTI2NT_u_dot_N, ProcessLib::ThermoRichardsMechanics::TRMVaporDiffusionData< DisplacementDim >::J_pT_X_dNTdN, ProcessLib::ThermoRichardsMechanics::EqPData< DisplacementDim >::K_pp_Laplace, ProcessLib::ThermoRichardsMechanics::PermeabilityData< DisplacementDim >::k_rel, ProcessLib::ThermoRichardsMechanics::PermeabilityData< DisplacementDim >::Ki, ProcessLib::ThermoRichardsMechanics::EqPData< DisplacementDim >::M_pT_X_NTN, ProcessLib::ThermoRichardsMechanics::TRMVaporDiffusionData< DisplacementDim >::M_pT_X_NTN, ProcessLib::ThermoRichardsMechanics::EqPData< DisplacementDim >::M_pu_X_BTI2N, ProcessLib::ThermoRichardsMechanics::LiquidDensityData::rho_LR, ProcessLib::ThermoRichardsMechanics::EqPData< DisplacementDim >::rhs_p_dNT_V, ProcessLib::ThermoRichardsMechanics::SaturationData::S_L, ProcessLib::ThermoRichardsMechanics::TRMVaporDiffusionData< DisplacementDim >::storage_coefficient_by_water_vapor, ProcessLib::ThermoRichardsMechanics::TRMStorageData::storage_p_a_p, and ProcessLib::ThermoRichardsMechanics::EqPData< DisplacementDim >::storage_p_a_p_X_NTN.

Member Data Documentation

◆ b_

template<int DisplacementDim>
Eigen::Vector<double, DisplacementDim> const ProcessLib::ThermoRichardsMechanics::EqPModel< DisplacementDim >::b_
private

Gravity vector (specific body force).

Definition at line 71 of file EqP.h.


The documentation for this struct was generated from the following files: