Skip to content
Snippets Groups Projects
Commit 454d2b47 authored by Dmitri Naumov's avatar Dmitri Naumov
Browse files

[PL/TH2M] Extract solid enthalpy model and data

This requires separation of enthalpies into FluidEnthalpyData
and SolidEnthalpyData, hence the many changes.
parent 97efc61d
No related branches found
No related tags found
No related merge requests found
Showing
with 115 additions and 78 deletions
......@@ -104,7 +104,8 @@ struct OutputData
{
ProcessLib::ConstitutiveRelations::StrainData<DisplacementDim> eps_data;
PermeabilityData<DisplacementDim> permeability_data;
EnthalpyData enthalpy_data;
FluidEnthalpyData fluid_enthalpy_data;
SolidEnthalpyData solid_enthalpy_data;
MassMoleFractionsData mass_mole_fractions_data;
FluidDensityData fluid_density_data;
VapourPartialPressureData vapour_pressure_data;
......@@ -119,7 +120,8 @@ struct OutputData
return Reflection::reflectWithoutName(&Self::eps_data,
&Self::permeability_data,
&Self::enthalpy_data,
&Self::fluid_enthalpy_data,
&Self::solid_enthalpy_data,
&Self::mass_mole_fractions_data,
&Self::fluid_density_data,
&Self::vapour_pressure_data,
......
......@@ -87,6 +87,7 @@ struct ConstitutiveModels
EffectiveVolumetricEnthalpyModel effective_volumetric_enthalpy_model;
GravityModel<DisplacementDim> gravity_model;
DiffusionVelocityModel<DisplacementDim> diffusion_velocity_model;
SolidEnthalpyModel solid_enthalpy_model;
DarcyVelocityModel<DisplacementDim> darcy_velocity_model;
FC1Model<DisplacementDim> fC_1_model;
FC2aModel fC_2a_model;
......
......@@ -14,11 +14,12 @@ namespace ProcessLib::TH2M
namespace ConstitutiveRelations
{
void EffectiveVolumetricEnthalpyModel::eval(
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
PorosityData const& porosity_data,
SaturationData const& S_L_data,
SolidDensityData const& solid_density_data,
SolidEnthalpyData const& solid_enthalpy_data,
EffectiveVolumetricEnthalpy& effective_volumetric_enthalpy_data) const
{
auto const phi_L = S_L_data.S_L * porosity_data.phi;
......@@ -26,14 +27,14 @@ void EffectiveVolumetricEnthalpyModel::eval(
double const phi_S = 1. - porosity_data.phi;
effective_volumetric_enthalpy_data.rho_h_eff =
phi_G * fluid_density_data.rho_GR * enthalpy_data.h_G +
phi_L * fluid_density_data.rho_LR * enthalpy_data.h_L +
phi_S * solid_density_data.rho_SR * enthalpy_data.h_S;
phi_G * fluid_density_data.rho_GR * fluid_enthalpy_data.h_G +
phi_L * fluid_density_data.rho_LR * fluid_enthalpy_data.h_L +
phi_S * solid_density_data.rho_SR * solid_enthalpy_data.h_S;
}
void EffectiveVolumetricEnthalpyModel::dEval(
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
PhaseTransitionData const& phase_transition_data,
PorosityData const& porosity_data,
PorosityDerivativeData const& porosity_d_data,
......@@ -41,6 +42,7 @@ void EffectiveVolumetricEnthalpyModel::dEval(
SaturationDataDeriv const& dS_L_dp_cap,
SolidDensityData const& solid_density_data,
SolidDensityDerivativeData const& solid_density_d_data,
SolidEnthalpyData const& solid_enthalpy_data,
SolidHeatCapacityData const& solid_heat_capacity_data,
EffectiveVolumetricEnthalpyDerivatives&
effective_volumetric_enthalpy_d_data) const
......@@ -64,32 +66,40 @@ void EffectiveVolumetricEnthalpyModel::dEval(
effective_volumetric_enthalpy_d_data.drho_h_eff_dp_GR =
/*(dphi_G_dp_GR = 0) * fluid_density_data.rho_GR *
enthalpy_data.h_G +*/
phi_G * phase_transition_data.drho_GR_dp_GR * enthalpy_data.h_G +
fluid_enthalpy_data.h_G +*/
phi_G * phase_transition_data.drho_GR_dp_GR * fluid_enthalpy_data.h_G +
/*(dphi_L_dp_GR = 0) * fluid_density_data.rho_LR *
enthalpy_data.h_L +*/
phi_L * drho_LR_dp_GR * enthalpy_data.h_L;
fluid_enthalpy_data.h_L +*/
phi_L * drho_LR_dp_GR * fluid_enthalpy_data.h_L;
effective_volumetric_enthalpy_d_data.drho_h_eff_dp_cap =
dphi_G_dp_cap * fluid_density_data.rho_GR * enthalpy_data.h_G +
/*phi_G * (drho_GR_dp_cap = 0) * enthalpy_data.h_G +*/
dphi_L_dp_cap * fluid_density_data.rho_LR * enthalpy_data.h_L +
phi_L * drho_LR_dp_cap * enthalpy_data.h_L;
dphi_G_dp_cap * fluid_density_data.rho_GR * fluid_enthalpy_data.h_G +
/*phi_G * (drho_GR_dp_cap = 0) * fluid_enthalpy_data.h_G +*/
dphi_L_dp_cap * fluid_density_data.rho_LR * fluid_enthalpy_data.h_L +
phi_L * drho_LR_dp_cap * fluid_enthalpy_data.h_L;
// TODO (naumov) Extend for temperature dependent porosities.
constexpr double dphi_G_dT = 0;
constexpr double dphi_L_dT = 0;
effective_volumetric_enthalpy_d_data.drho_h_eff_dT =
dphi_G_dT * fluid_density_data.rho_GR * enthalpy_data.h_G +
phi_G * phase_transition_data.drho_GR_dT * enthalpy_data.h_G +
dphi_G_dT * fluid_density_data.rho_GR * fluid_enthalpy_data.h_G +
phi_G * phase_transition_data.drho_GR_dT * fluid_enthalpy_data.h_G +
phi_G * fluid_density_data.rho_GR * phase_transition_data.dh_G_dT +
dphi_L_dT * fluid_density_data.rho_LR * enthalpy_data.h_L +
phi_L * phase_transition_data.drho_LR_dT * enthalpy_data.h_L +
dphi_L_dT * fluid_density_data.rho_LR * fluid_enthalpy_data.h_L +
phi_L * phase_transition_data.drho_LR_dT * fluid_enthalpy_data.h_L +
phi_L * fluid_density_data.rho_LR * phase_transition_data.dh_L_dT -
porosity_d_data.dphi_dT * solid_density_data.rho_SR *
enthalpy_data.h_S +
phi_S * solid_density_d_data.drho_SR_dT * enthalpy_data.h_S +
solid_enthalpy_data.h_S +
phi_S * solid_density_d_data.drho_SR_dT * solid_enthalpy_data.h_S +
phi_S * solid_density_data.rho_SR * solid_heat_capacity_data();
}
void SolidEnthalpyModel::eval(
SolidHeatCapacityData const& solid_heat_capacity_data,
TemperatureData const& T_data,
SolidEnthalpyData& solid_enthalpy_data) const
{
solid_enthalpy_data.h_S = solid_heat_capacity_data() * T_data.T;
}
} // namespace ConstitutiveRelations
} // namespace ProcessLib::TH2M
......@@ -23,20 +23,31 @@ namespace ProcessLib::TH2M
{
namespace ConstitutiveRelations
{
struct EnthalpyData
struct FluidEnthalpyData
{
double h_G = nan;
double h_L = nan;
double h_S = nan;
static auto reflect()
{
using Self = EnthalpyData;
using Self = FluidEnthalpyData;
namespace R = ProcessLib::Reflection;
return std::tuple{R::makeReflectionData("enthalpy_gas", &Self::h_G),
R::makeReflectionData("enthalpy_liquid", &Self::h_L),
R::makeReflectionData("enthalpy_solid", &Self::h_S)};
R::makeReflectionData("enthalpy_liquid", &Self::h_L)};
}
};
struct SolidEnthalpyData
{
double h_S = nan;
static auto reflect()
{
using Self = SolidEnthalpyData;
namespace R = ProcessLib::Reflection;
return std::tuple{R::makeReflectionData("enthalpy_solid", &Self::h_S)};
}
};
......@@ -55,15 +66,16 @@ struct EffectiveVolumetricEnthalpyDerivatives
struct EffectiveVolumetricEnthalpyModel
{
void eval(
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
PorosityData const& porosity_data,
SaturationData const& S_L_data,
SolidDensityData const& solid_density_data,
SolidEnthalpyData const& solid_enthalpy_data,
EffectiveVolumetricEnthalpy& effective_volumetric_enthalpy_data) const;
void dEval(EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
void dEval(FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
PhaseTransitionData const& phase_transition_data,
PorosityData const& porosity_data,
PorosityDerivativeData const& porosity_d_data,
......@@ -71,9 +83,17 @@ struct EffectiveVolumetricEnthalpyModel
SaturationDataDeriv const& dS_L_dp_cap,
SolidDensityData const& solid_density_data,
SolidDensityDerivativeData const& solid_density_d_data,
SolidEnthalpyData const& solid_enthalpy_data,
SolidHeatCapacityData const& solid_heat_capacity_data,
EffectiveVolumetricEnthalpyDerivatives&
effective_volumetric_enthalpy_d_data) const;
};
struct SolidEnthalpyModel
{
void eval(SolidHeatCapacityData const& solid_heat_capacity_data,
TemperatureData const& T_data,
SolidEnthalpyData& solid_enthalpy_data) const;
};
} // namespace ConstitutiveRelations
} // namespace ProcessLib::TH2M
......@@ -13,19 +13,19 @@ namespace ProcessLib::TH2M
{
namespace ConstitutiveRelations
{
void InternalEnergyModel::eval(EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
void InternalEnergyModel::eval(FluidDensityData const& fluid_density_data,
PhaseTransitionData const& phase_transition_data,
PorosityData const& porosity_data,
SaturationData const& S_L_data,
SolidDensityData const& solid_density_data,
SolidEnthalpyData const& solid_enthalpy_data,
InternalEnergyData& internal_energy_data) const
{
auto const phi_L = S_L_data.S_L * porosity_data.phi;
auto const phi_G = (1. - S_L_data.S_L) * porosity_data.phi;
double const phi_S = 1. - porosity_data.phi;
auto const u_S = enthalpy_data.h_S;
auto const u_S = solid_enthalpy_data.h_S;
internal_energy_data() =
phi_G * fluid_density_data.rho_GR * phase_transition_data.uG +
......@@ -34,7 +34,6 @@ void InternalEnergyModel::eval(EnthalpyData const& enthalpy_data,
}
void InternalEnergyModel::dEval(
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
PhaseTransitionData const& phase_transition_data,
PorosityData const& porosity_data,
......@@ -43,6 +42,7 @@ void InternalEnergyModel::dEval(
SaturationDataDeriv const& dS_L_dp_cap,
SolidDensityData const& solid_density_data,
SolidDensityDerivativeData const& solid_density_d_data,
SolidEnthalpyData const& solid_enthalpy_data,
SolidHeatCapacityData const& solid_heat_capacity_data,
EffectiveVolumetricInternalEnergyDerivatives&
effective_volumetric_internal_energy_d_data) const
......@@ -51,7 +51,7 @@ void InternalEnergyModel::dEval(
auto const phi_G = (1. - S_L_data.S_L) * porosity_data.phi;
double const phi_S = 1. - porosity_data.phi;
auto const u_S = enthalpy_data.h_S;
auto const u_S = solid_enthalpy_data.h_S;
effective_volumetric_internal_energy_d_data.drho_u_eff_dT =
phi_G * phase_transition_data.drho_GR_dT * phase_transition_data.uG +
phi_G * fluid_density_data.rho_GR * phase_transition_data.du_G_dT +
......
......@@ -35,16 +35,15 @@ struct EffectiveVolumetricInternalEnergyDerivatives
struct InternalEnergyModel
{
void eval(EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
void eval(FluidDensityData const& fluid_density_data,
PhaseTransitionData const& phase_transition_data,
PorosityData const& porosity_data,
SaturationData const& S_L_data,
SolidDensityData const& solid_density_data,
SolidEnthalpyData const& solid_enthalpy_data,
InternalEnergyData& internal_energy_data) const;
void dEval(EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
void dEval(FluidDensityData const& fluid_density_data,
PhaseTransitionData const& phase_transition_data,
PorosityData const& porosity_data,
PorosityDerivativeData const& porosity_d_data,
......@@ -52,6 +51,7 @@ struct InternalEnergyModel
SaturationDataDeriv const& dS_L_dp_cap,
SolidDensityData const& solid_density_data,
SolidDensityDerivativeData const& solid_density_d_data,
SolidEnthalpyData const& solid_enthalpy_data,
SolidHeatCapacityData const& solid_heat_capacity_data,
EffectiveVolumetricInternalEnergyDerivatives&
effective_volumetric_internal_energy_d_data) const;
......
......@@ -43,7 +43,7 @@ void NoPhaseTransition::eval(SpaceTimeData const& x_t,
CapillaryPressureData const& p_cap,
TemperatureData const& T_data,
PureLiquidDensityData const& rho_W_LR,
EnthalpyData& enthalpy_data,
FluidEnthalpyData& fluid_enthalpy_data,
MassMoleFractionsData& mass_mole_fractions_data,
FluidDensityData& fluid_density_data,
VapourPartialPressureData& vapour_pressure_data,
......@@ -108,14 +108,14 @@ void NoPhaseTransition::eval(SpaceTimeData const& x_t,
.template value<double>(variables, x_t.x, x_t.t, x_t.dt);
// specific phase enthalpies
enthalpy_data.h_G = cpG * T;
enthalpy_data.h_L = cpL * T;
fluid_enthalpy_data.h_G = cpG * T;
fluid_enthalpy_data.h_L = cpL * T;
cv.dh_G_dT = cpG;
cv.dh_L_dT = cpL;
// specific inner energies
cv.uG = enthalpy_data.h_G - pGR / fluid_density_data.rho_GR;
cv.uL = enthalpy_data.h_L;
cv.uG = fluid_enthalpy_data.h_G - pGR / fluid_density_data.rho_GR;
cv.uL = fluid_enthalpy_data.h_L;
cv.drho_GR_dT =
gas_phase[MaterialPropertyLib::PropertyType::density]
......
......@@ -28,7 +28,7 @@ struct NoPhaseTransition : PhaseTransitionModel
GasPressureData const& p_GR, CapillaryPressureData const& p_cap,
TemperatureData const& T_data,
PureLiquidDensityData const& rho_W_LR,
EnthalpyData& enthalpy_data,
FluidEnthalpyData& fluid_enthalpy_data,
MassMoleFractionsData& mass_mole_fractions_data,
FluidDensityData& fluid_density_data,
VapourPartialPressureData& vapour_pressure_data,
......
......@@ -139,7 +139,7 @@ void PhaseTransition::eval(SpaceTimeData const& x_t,
CapillaryPressureData const& p_cap,
TemperatureData const& T_data,
PureLiquidDensityData const& rho_W_LR,
EnthalpyData& enthalpy_data,
FluidEnthalpyData& fluid_enthalpy_data,
MassMoleFractionsData& mass_mole_fractions_data,
FluidDensityData& fluid_density_data,
VapourPartialPressureData& vapour_pressure_data,
......@@ -333,11 +333,12 @@ void PhaseTransition::eval(SpaceTimeData const& x_t,
cv.hWG = cpWG * T + dh_evap;
// specific enthalpy of gas phase
enthalpy_data.h_G = mass_mole_fractions_data.xmCG * cv.hCG + xmWG * cv.hWG;
fluid_enthalpy_data.h_G =
mass_mole_fractions_data.xmCG * cv.hCG + xmWG * cv.hWG;
cv.dh_G_dT = 0;
// specific inner energies of gas phase
cv.uG = enthalpy_data.h_G - pGR / fluid_density_data.rho_GR;
cv.uG = fluid_enthalpy_data.h_G - pGR / fluid_density_data.rho_GR;
cv.du_G_dT = 0;
cv.du_G_dp_GR = 0;
......@@ -505,11 +506,11 @@ void PhaseTransition::eval(SpaceTimeData const& x_t,
// specific enthalpy of liquid phase and its components
double const hCL = cpCL * T + dh_sol;
double const hWL = cpWL * T;
enthalpy_data.h_L = xmCL * hCL + mass_mole_fractions_data.xmWL * hWL;
fluid_enthalpy_data.h_L = xmCL * hCL + mass_mole_fractions_data.xmWL * hWL;
cv.dh_L_dT = 0;
// specific inner energies of liquid phase
cv.uL = enthalpy_data.h_L;
cv.uL = fluid_enthalpy_data.h_L;
cv.du_L_dT = 0;
// diffusion
......
......@@ -28,7 +28,7 @@ struct PhaseTransition : PhaseTransitionModel
GasPressureData const& p_GR, CapillaryPressureData const& p_cap,
TemperatureData const& T_data,
PureLiquidDensityData const& rho_W_LR,
EnthalpyData& enthalpy_data,
FluidEnthalpyData& fluid_enthalpy_data,
MassMoleFractionsData& mass_mole_fractions_data,
FluidDensityData& fluid_density_data,
VapourPartialPressureData& vapour_pressure_data,
......
......@@ -52,7 +52,7 @@ struct PhaseTransitionModel
CapillaryPressureData const& p_cap,
TemperatureData const& T_data,
PureLiquidDensityData const& rho_W_LR,
EnthalpyData& enthalpy_data,
FluidEnthalpyData& fluid_enthalpy_data,
MassMoleFractionsData& mass_mole_fractions_data,
FluidDensityData& fluid_density_data,
VapourPartialPressureData& vapour_pressure_data,
......
......@@ -55,21 +55,21 @@ void FT1Model::dEval(double const dt,
template <int DisplacementDim>
void FT2Model<DisplacementDim>::eval(
DarcyVelocityData<DisplacementDim> const& darcy_velocity_data,
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
FT2Data<DisplacementDim>& fT_2) const
{
fT_2.A.noalias() = fluid_density_data.rho_GR * enthalpy_data.h_G *
fT_2.A.noalias() = fluid_density_data.rho_GR * fluid_enthalpy_data.h_G *
darcy_velocity_data.w_GS +
fluid_density_data.rho_LR * enthalpy_data.h_L *
fluid_density_data.rho_LR * fluid_enthalpy_data.h_L *
darcy_velocity_data.w_LS;
}
template <int DisplacementDim>
void FT2Model<DisplacementDim>::dEval(
DarcyVelocityData<DisplacementDim> const& darcy_velocity_data,
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
PermeabilityData<DisplacementDim> const& permeability_data,
PhaseTransitionData const& phase_transition_data,
SpecificBodyForceData<DisplacementDim> const& specific_body_force,
......@@ -82,13 +82,13 @@ void FT2Model<DisplacementDim>::dEval(
permeability_data.Ki * permeability_data.k_rel_L / viscosity_data.mu_LR;
dfT_2.dp_GR_Npart = phase_transition_data.drho_GR_dp_GR *
enthalpy_data.h_G * darcy_velocity_data.w_GS +
fluid_density_data.rho_GR * enthalpy_data.h_G *
fluid_enthalpy_data.h_G * darcy_velocity_data.w_GS +
fluid_density_data.rho_GR * fluid_enthalpy_data.h_G *
k_over_mu_G * phase_transition_data.drho_GR_dp_GR *
specific_body_force();
dfT_2.dp_GR_gradNpart =
fluid_density_data.rho_GR * enthalpy_data.h_G * k_over_mu_G -
fluid_density_data.rho_LR * enthalpy_data.h_L * k_over_mu_L;
fluid_density_data.rho_GR * fluid_enthalpy_data.h_G * k_over_mu_G -
fluid_density_data.rho_LR * fluid_enthalpy_data.h_L * k_over_mu_L;
// From p_LR = p_GR - p_cap it follows for
// drho_LR/dp_GR = drho_LR/dp_LR * dp_LR/dp_GR
......@@ -97,17 +97,17 @@ void FT2Model<DisplacementDim>::dEval(
double const drho_LR_dp_cap = -phase_transition_data.drho_LR_dp_LR;
dfT_2.dp_cap_Npart =
-drho_LR_dp_cap * enthalpy_data.h_L * darcy_velocity_data.w_LS -
fluid_density_data.rho_LR * enthalpy_data.h_L * k_over_mu_L *
-drho_LR_dp_cap * fluid_enthalpy_data.h_L * darcy_velocity_data.w_LS -
fluid_density_data.rho_LR * fluid_enthalpy_data.h_L * k_over_mu_L *
drho_LR_dp_cap * specific_body_force();
dfT_2.dp_cap_gradNpart =
fluid_density_data.rho_LR * enthalpy_data.h_L * k_over_mu_L;
fluid_density_data.rho_LR * fluid_enthalpy_data.h_L * k_over_mu_L;
dfT_2.dT = phase_transition_data.drho_GR_dT * enthalpy_data.h_G *
dfT_2.dT = phase_transition_data.drho_GR_dT * fluid_enthalpy_data.h_G *
darcy_velocity_data.w_GS +
fluid_density_data.rho_GR * phase_transition_data.dh_G_dT *
darcy_velocity_data.w_GS +
phase_transition_data.drho_LR_dT * enthalpy_data.h_L *
phase_transition_data.drho_LR_dT * fluid_enthalpy_data.h_L *
darcy_velocity_data.w_LS +
fluid_density_data.rho_LR * phase_transition_data.dh_L_dT *
darcy_velocity_data.w_LS;
......
......@@ -68,14 +68,14 @@ template <int DisplacementDim>
struct FT2Model
{
void eval(DarcyVelocityData<DisplacementDim> const& darcy_velocity_data,
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
FT2Data<DisplacementDim>& fT_2) const;
void dEval(
DarcyVelocityData<DisplacementDim> const& darcy_velocity_data,
EnthalpyData const& enthalpy_data,
FluidDensityData const& fluid_density_data,
FluidEnthalpyData const& fluid_enthalpy_data,
PermeabilityData<DisplacementDim> const& permeability_data,
PhaseTransitionData const& phase_transition_data,
SpecificBodyForceData<DisplacementDim> const& specific_body_force,
......
......@@ -225,7 +225,7 @@ TH2MLocalAssembler<ShapeFunctionDisplacement, ShapeFunctionPressure,
models.phase_transition_model.eval(
{pos, t, dt}, media_data, pGR_data, pCap_data, T_data,
current_state.rho_W_LR, ip_out.enthalpy_data,
current_state.rho_W_LR, ip_out.fluid_enthalpy_data,
ip_out.mass_mole_fractions_data, ip_out.fluid_density_data,
ip_out.vapour_pressure_data, current_state.constituent_density_data,
ip_cv.phase_transition_data);
......@@ -279,22 +279,24 @@ TH2MLocalAssembler<ShapeFunctionDisplacement, ShapeFunctionPressure,
grad_T,
ip_out.diffusion_velocity_data);
ip_out.enthalpy_data.h_S = ip_cv.solid_heat_capacity_data() * T;
models.solid_enthalpy_model.eval(ip_cv.solid_heat_capacity_data, T_data,
ip_out.solid_enthalpy_data);
models.internal_energy_model.eval(ip_out.enthalpy_data,
ip_out.fluid_density_data,
models.internal_energy_model.eval(ip_out.fluid_density_data,
ip_cv.phase_transition_data,
ip_out.porosity_data,
current_state.S_L_data,
ip_out.solid_density_data,
ip_out.solid_enthalpy_data,
current_state.internal_energy_data);
models.effective_volumetric_enthalpy_model.eval(
ip_out.enthalpy_data,
ip_out.fluid_density_data,
ip_out.fluid_enthalpy_data,
ip_out.porosity_data,
current_state.S_L_data,
ip_out.solid_density_data,
ip_out.solid_enthalpy_data,
ip_cv.effective_volumetric_enthalpy_data);
models.fC_1_model.eval(ip_cv.advection_data, ip_out.fluid_density_data,
......@@ -458,8 +460,8 @@ TH2MLocalAssembler<ShapeFunctionDisplacement, ShapeFunctionPressure,
ip_out.darcy_velocity_data);
models.fT_2_model.eval(ip_out.darcy_velocity_data,
ip_out.enthalpy_data,
ip_out.fluid_density_data,
ip_out.fluid_enthalpy_data,
ip_cv.fT_2);
models.fT_3_model.eval(
......@@ -561,7 +563,6 @@ TH2MLocalAssembler<ShapeFunctionDisplacement, ShapeFunctionPressure,
ip_dd.solid_density_d_data);
models.internal_energy_model.dEval(
ip_out.enthalpy_data,
ip_out.fluid_density_data,
ip_cv.phase_transition_data,
ip_out.porosity_data,
......@@ -570,12 +571,13 @@ TH2MLocalAssembler<ShapeFunctionDisplacement, ShapeFunctionPressure,
ip_cv.dS_L_dp_cap,
ip_out.solid_density_data,
ip_dd.solid_density_d_data,
ip_out.solid_enthalpy_data,
ip_cv.solid_heat_capacity_data,
ip_dd.effective_volumetric_internal_energy_d_data);
models.effective_volumetric_enthalpy_model.dEval(
ip_out.enthalpy_data,
ip_out.fluid_density_data,
ip_out.fluid_enthalpy_data,
ip_cv.phase_transition_data,
ip_out.porosity_data,
ip_cv.porosity_d_data,
......@@ -583,6 +585,7 @@ TH2MLocalAssembler<ShapeFunctionDisplacement, ShapeFunctionPressure,
ip_cv.dS_L_dp_cap,
ip_out.solid_density_data,
ip_dd.solid_density_d_data,
ip_out.solid_enthalpy_data,
ip_cv.solid_heat_capacity_data,
ip_dd.effective_volumetric_enthalpy_d_data);
if (!this->process_data_.apply_mass_lumping)
......@@ -691,8 +694,8 @@ TH2MLocalAssembler<ShapeFunctionDisplacement, ShapeFunctionPressure,
models.fT_2_model.dEval(
ip_out.darcy_velocity_data,
ip_out.enthalpy_data,
ip_out.fluid_density_data,
ip_out.fluid_enthalpy_data,
ip_out.permeability_data,
ip_cv.phase_transition_data,
ConstitutiveRelations::SpecificBodyForceData<DisplacementDim>{
......
......@@ -108,7 +108,7 @@ TEST(ProcessLib, TH2MNoPhaseTransition)
rhoWLR);
ASSERT_NEAR(density_water, rhoWLR(), 1e-10);
CR::EnthalpyData enthalpy;
CR::FluidEnthalpyData enthalpy;
CR::MassMoleFractionsData mass_mole_fractions;
CR::FluidDensityData fluid_density;
CR::VapourPartialPressureData vapour_pressure;
......
......@@ -218,7 +218,7 @@ TEST(ProcessLib, TH2MPhaseTransition)
CR::PureLiquidDensityData rhoWLR;
CR::PureLiquidDensityModel rhoWLR_model;
CR::EnthalpyData enthalpy;
CR::FluidEnthalpyData enthalpy;
CR::MassMoleFractionsData mass_mole_fractions;
CR::FluidDensityData fluid_density;
CR::VapourPartialPressureData vapour_pressure;
......@@ -480,7 +480,7 @@ TEST(ProcessLib, TH2MPhaseTransitionConstRho)
CR::PureLiquidDensityData rhoWLR;
CR::PureLiquidDensityModel rhoWLR_model;
CR::EnthalpyData enthalpy;
CR::FluidEnthalpyData enthalpy;
CR::MassMoleFractionsData mass_mole_fractions;
CR::FluidDensityData fluid_density;
CR::VapourPartialPressureData vapour_pressure;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment