OGS
CreateEffectiveThermalConductivityPorosityMixing.cpp
Go to the documentation of this file.
1 
10 #include "BaseLib/ConfigTree.h"
14 
15 namespace MaterialPropertyLib
16 {
18  int const geometry_dimension,
19  BaseLib::ConfigTree const& config,
20  ParameterLib::CoordinateSystem const* const local_coordinate_system)
21 {
23  config.checkConfigParameter("type",
24  "EffectiveThermalConductivityPorosityMixing");
25 
26  // Second access for storage.
28  auto property_name = config.peekConfigParameter<std::string>("name");
29 
30  DBUG(
31  "Create effective thermal_conductivity property from porosity mixing "
32  "{:s}.",
33  property_name);
34 
35  if (geometry_dimension == 1)
36  {
37  return std::make_unique<
39  std::move(property_name), local_coordinate_system);
40  }
41 
42  if (geometry_dimension == 2)
43  {
44  return std::make_unique<
46  std::move(property_name), local_coordinate_system);
47  }
49  return std::make_unique<
51  std::move(property_name), local_coordinate_system);
52 }
53 } // namespace MaterialPropertyLib
void DBUG(char const *fmt, Args const &... args)
Definition: Logging.h:27
T peekConfigParameter(std::string const &param) const
void checkConfigParameter(std::string const &param, T const &value) const
std::unique_ptr< Property > createEffectiveThermalConductivityPorosityMixing(int const geometry_dimension, BaseLib::ConfigTree const &config, ParameterLib::CoordinateSystem const *const local_coordinate_system)