OGS
CreateCapillaryPressureVanGenuchten.cpp
Go to the documentation of this file.
1
13
14#include "BaseLib/ConfigTree.h"
17
18namespace MaterialPropertyLib
19{
20std::unique_ptr<Property> createCapillaryPressureVanGenuchten(
21 BaseLib::ConfigTree const& config)
22{
24 config.checkConfigParameter("type", "CapillaryPressureVanGenuchten");
25
26 // Second access for storage.
28 auto property_name = config.peekConfigParameter<std::string>("name");
29
30 DBUG("Create CapillaryPressureVanGenuchten medium property {:s}.",
31 property_name);
32
35 config.getConfigParameter<double>("residual_liquid_saturation");
36 auto const residual_gas_saturation =
38 config.getConfigParameter<double>("residual_gas_saturation");
39 auto const exponent =
41 config.getConfigParameter<double>("exponent");
42 auto const p_b =
44 config.getConfigParameter<double>("p_b");
45 auto const maximum_capillary_pressure =
47 config.getConfigParameter<double>("maximum_capillary_pressure");
48
49 return std::make_unique<CapillaryPressureVanGenuchten>(
50 std::move(property_name), residual_liquid_saturation,
51 residual_gas_saturation, exponent, p_b, maximum_capillary_pressure);
52}
53} // 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< Property > createCapillaryPressureVanGenuchten(BaseLib::ConfigTree const &config)