OGS
ConstitutiveStressSaturation_StrainPressureTemperature/SolidCompressibilityModel.h
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#pragma once
5
9
11{
13{
14// TODO remove typename SolidMaterial
15template <int DisplacementDim, typename SolidMaterial>
17{
18 explicit SolidCompressibilityModel(SolidMaterial const& solid_material)
19 : solid_material_(solid_material)
20 {
21 }
22
23 void eval(SpaceTimeData const& x_t,
24 BiotData const& biot_data,
26 s_mech_data_stateless,
27 SolidCompressibilityData& out) const
28 {
29 out.beta_SR =
30 (1 - biot_data()) /
31 solid_material_.getBulkModulus(
32 x_t.t, x_t.x, &s_mech_data_stateless.stiffness_tensor);
33 }
34
35 static SolidCompressibilityModel create(SolidMaterial const& solid_material)
36 {
37 return SolidCompressibilityModel{solid_material};
38 }
39
40private:
41 SolidMaterial const& solid_material_;
42};
43} // namespace ConstitutiveStressSaturation_StrainPressureTemperature
44} // namespace ProcessLib::ThermoRichardsMechanics
BaseLib::StrongType< double, struct BiotTag > BiotData
void eval(SpaceTimeData const &x_t, BiotData const &biot_data, SolidMechanicsDataStateless< DisplacementDim > const &s_mech_data_stateless, SolidCompressibilityData &out) const