OGS
TH2M/ConstitutiveRelations/Bishops.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 "Bishops.h"
5
6namespace ProcessLib::TH2M
7{
9{
10static void bishopsModelEvalImpl(SpaceTimeData const& x_t,
11 MediaData const& media_data,
12 SaturationData const& S_L_data,
13 BishopsData& out)
14{
15 namespace MPL = MaterialPropertyLib;
16 MPL::VariableArray variables;
17 variables.liquid_saturation = S_L_data.S_L;
18
19 out.chi_S_L =
20 media_data.bishops_effective_stress_prop.template value<double>(
21 variables, x_t.x, x_t.t, x_t.dt);
22
23 out.dchi_dS_L =
24 media_data.bishops_effective_stress_prop.template dValue<double>(
25 variables, MPL::Variable::liquid_saturation, x_t.x, x_t.t, x_t.dt);
26}
27
28void BishopsModel::eval(SpaceTimeData const& x_t, MediaData const& media_data,
29 SaturationData const& S_L_data, BishopsData& out) const
30{
31 bishopsModelEvalImpl(x_t, media_data, S_L_data, out);
32}
34 MediaData const& media_data,
35 PrevState<SaturationData> const& S_L_data,
36 PrevState<BishopsData>& out) const
37{
38 bishopsModelEvalImpl(x_t, media_data, *S_L_data, *out);
39}
40
41} // namespace ConstitutiveRelations
42} // namespace ProcessLib::TH2M
static void bishopsModelEvalImpl(SpaceTimeData const &x_t, MediaData const &media_data, SaturationData const &S_L_data, BishopsData &out)
void eval(SpaceTimeData const &x_t, MediaData const &media_data, SaturationData const &S_L_data, BishopsData &out) const
void eval(SpaceTimeData const &x_t, MediaData const &media_data, PrevState< SaturationData > const &S_L_data, PrevState< BishopsData > &out) const
MaterialPropertyLib::Property const & bishops_effective_stress_prop