OGS
ThermoRichardsMechanics/ConstitutiveCommon/Saturation.cpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#include "Saturation.h"
5
7{
8template <int DisplacementDim>
10 SpaceTimeData const& x_t, MediaData const& media_data,
12 SaturationData& S_L_data, SaturationDataDeriv& dS_L_data) const
13{
14 namespace MPL = MaterialPropertyLib;
15 MPL::VariableArray variables;
16 variables.capillary_pressure = p_cap_data.p_cap;
17
18 auto const& medium = media_data.medium;
19
20 S_L_data.S_L = medium.property(MPL::PropertyType::saturation)
21 .template value<double>(variables, x_t.x, x_t.t, x_t.dt);
22
23 dS_L_data.dS_L_dp_cap =
24 medium.property(MPL::PropertyType::saturation)
25 .template dValue<double>(variables,
27 x_t.t, x_t.dt);
28}
29
30template struct SaturationModel<2>;
31template struct SaturationModel<3>;
32} // namespace ProcessLib::ThermoRichardsMechanics
void eval(SpaceTimeData const &x_t, MediaData const &media_data, CapillaryPressureData< DisplacementDim > const &p_cap_data, SaturationData &S_L_data, SaturationDataDeriv &dS_L_data) const