OGS
ThermoOsmosis.cpp
Go to the documentation of this file.
1
11
#include "
ThermoOsmosis.h
"
12
13
#include "
MaterialLib/MPL/Utils/FormEigenTensor.h
"
14
15
namespace
ProcessLib::ThermoRichardsMechanics
16
{
17
template
<
int
DisplacementDim>
18
void
ThermoOsmosisModel<DisplacementDim>::eval
(
19
SpaceTimeData
const
& x_t,
MediaData
const
& media_data,
20
TemperatureData<DisplacementDim>
const
& T_data,
21
LiquidDensityData
const
& rho_L_data,
22
ThermoOsmosisData<DisplacementDim>
& out)
const
23
{
24
namespace
MPL
=
MaterialPropertyLib
;
25
MPL::VariableArray
variables;
26
27
auto
const
& solid_phase = media_data.
solid
;
28
29
auto
const
K_pT_thermal_osmosis =
30
(solid_phase.hasProperty(
31
MaterialPropertyLib::PropertyType::thermal_osmosis_coefficient
)
32
?
MaterialPropertyLib::formEigenTensor<DisplacementDim>
(
33
solid_phase[MPL::PropertyType::thermal_osmosis_coefficient]
34
.value(variables, x_t.
x
, x_t.
t
, x_t.
dt
))
35
: Eigen::MatrixXd::Zero(DisplacementDim, DisplacementDim));
36
37
out.
K_pT_Laplace
= rho_L_data.
rho_LR
* K_pT_thermal_osmosis;
38
39
out.
K_Tp_Laplace
= T_data.
T
* K_pT_thermal_osmosis;
40
41
out.
seepage_velocity_contribution
= -K_pT_thermal_osmosis * T_data.
grad_T
;
42
}
43
44
template
struct
ThermoOsmosisModel<2>
;
45
template
struct
ThermoOsmosisModel<3>
;
46
}
// namespace ProcessLib::ThermoRichardsMechanics
FormEigenTensor.h
ThermoOsmosis.h
MaterialPropertyLib::VariableArray
Definition
VariableType.h:97
MaterialPropertyLib
Definition
ChemicalSolverInterface.h:21
MaterialPropertyLib::formEigenTensor
Eigen::Matrix< double, GlobalDim, GlobalDim > formEigenTensor(MaterialPropertyLib::PropertyDataType const &values)
Definition
FormEigenTensor.cpp:115
MaterialPropertyLib::thermal_osmosis_coefficient
@ thermal_osmosis_coefficient
Definition
PropertyType.h:105
ProcessLib::ThermoRichardsMechanics
Definition
Base.h:20
ProcessLib::ConstitutiveRelations::SpaceTimeData
Definition
Base.h:73
ProcessLib::ConstitutiveRelations::SpaceTimeData::x
ParameterLib::SpatialPosition x
Definition
Base.h:74
ProcessLib::ConstitutiveRelations::SpaceTimeData::t
double t
Definition
Base.h:75
ProcessLib::ConstitutiveRelations::SpaceTimeData::dt
double dt
Definition
Base.h:76
ProcessLib::ThermoRichardsMechanics::LiquidDensityData
Definition
LiquidDensity.h:18
ProcessLib::ThermoRichardsMechanics::LiquidDensityData::rho_LR
double rho_LR
Definition
LiquidDensity.h:19
ProcessLib::ThermoRichardsMechanics::MediaData
Definition
Base.h:53
ProcessLib::ThermoRichardsMechanics::MediaData::solid
MaterialPropertyLib::Phase const & solid
Definition
Base.h:63
ProcessLib::ThermoRichardsMechanics::TemperatureData
Definition
Base.h:68
ProcessLib::ThermoRichardsMechanics::TemperatureData::T
double T
Definition
Base.h:69
ProcessLib::ThermoRichardsMechanics::TemperatureData::grad_T
Eigen::Vector< double, DisplacementDim > grad_T
Definition
Base.h:71
ProcessLib::ThermoRichardsMechanics::ThermoOsmosisData
Definition
ThermoOsmosis.h:20
ProcessLib::ThermoRichardsMechanics::ThermoOsmosisData::K_Tp_Laplace
GlobalDimMatrix< DisplacementDim > K_Tp_Laplace
Definition
ThermoOsmosis.h:22
ProcessLib::ThermoRichardsMechanics::ThermoOsmosisData::K_pT_Laplace
GlobalDimMatrix< DisplacementDim > K_pT_Laplace
Definition
ThermoOsmosis.h:21
ProcessLib::ThermoRichardsMechanics::ThermoOsmosisData::seepage_velocity_contribution
GlobalDimVector< DisplacementDim > seepage_velocity_contribution
Definition
ThermoOsmosis.h:23
ProcessLib::ThermoRichardsMechanics::ThermoOsmosisModel
Definition
ThermoOsmosis.h:28
ProcessLib::ThermoRichardsMechanics::ThermoOsmosisModel::eval
void eval(SpaceTimeData const &x_t, MediaData const &media_data, TemperatureData< DisplacementDim > const &T_data, LiquidDensityData const &rho_L_data, ThermoOsmosisData< DisplacementDim > &out) const
Definition
ThermoOsmosis.cpp:18
ProcessLib
ThermoRichardsMechanics
ConstitutiveCommon
ThermoOsmosis.cpp
Generated by
1.12.0