OGS
CreateSaturationVanGenuchtenWithVolumetricStrain.cpp
Go to the documentation of this file.
1
10#include "BaseLib/ConfigTree.h"
12
13namespace MaterialPropertyLib
14{
15std::unique_ptr<SaturationVanGenuchtenWithVolumetricStrain>
17 BaseLib::ConfigTree const& config)
18{
20 config.checkConfigParameter("type",
21 "SaturationVanGenuchtenWithVolumetricStrain");
22
23 // Second access for storage.
25 auto property_name = config.peekConfigParameter<std::string>("name");
26
27 DBUG(
28 "Create SaturationVanGenuchtenWithVolumetricStrain medium property "
29 "{:s}.",
30 property_name);
31
34 config.getConfigParameter<double>("residual_liquid_saturation");
35 auto const residual_gas_saturation =
37 config.getConfigParameter<double>("residual_gas_saturation");
38 auto const exponent =
40 config.getConfigParameter<double>("exponent");
42 auto const p_b = config.getConfigParameter<double>("p_b");
43 auto const e_0 =
45 config.getConfigParameter<double>("e_0");
46 auto const e_m =
48 config.getConfigParameter<double>("e_m");
49 auto const a =
51 config.getConfigParameter<double>("a");
52 auto const d_diff =
54 config.getConfigParameter<double>("d_diff");
55
56 return std::make_unique<SaturationVanGenuchtenWithVolumetricStrain>(
57 std::move(property_name), residual_liquid_saturation,
58 residual_gas_saturation, exponent, p_b, e_0, e_m, a, d_diff);
59}
60} // namespace MaterialPropertyLib
void DBUG(fmt::format_string< Args... > fmt, Args &&... args)
Definition Logging.h:30
T peekConfigParameter(std::string const &param) const
T getConfigParameter(std::string const &param) const
void checkConfigParameter(std::string const &param, std::string_view const value) const
std::unique_ptr< SaturationVanGenuchtenWithVolumetricStrain > createSaturationVanGenuchtenWithVolumetricStrain(BaseLib::ConfigTree const &config)