OGS
CreateEffectiveThermalConductivityPorosityMixing.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
8
10{
12 int const geometry_dimension,
13 BaseLib::ConfigTree const& config,
14 ParameterLib::CoordinateSystem const* const local_coordinate_system)
15{
17 config.checkConfigParameter("type",
18 "EffectiveThermalConductivityPorosityMixing");
19
20 // Second access for storage.
22 auto property_name = config.peekConfigParameter<std::string>("name");
23
24 DBUG(
25 "Create effective thermal_conductivity property from porosity mixing "
26 "{:s}.",
27 property_name);
28
29 if (geometry_dimension == 1)
30 {
31 return std::make_unique<
33 std::move(property_name), local_coordinate_system);
34 }
35
36 if (geometry_dimension == 2)
37 {
38 return std::make_unique<
40 std::move(property_name), local_coordinate_system);
41 }
43 return std::make_unique<
45 std::move(property_name), local_coordinate_system);
46}
47} // namespace MaterialPropertyLib
void DBUG(fmt::format_string< Args... > fmt, Args &&... args)
Definition Logging.h:22
T peekConfigParameter(std::string const &param) const
void checkConfigParameter(std::string const &param, std::string_view const value) const
std::unique_ptr< Property > createEffectiveThermalConductivityPorosityMixing(int const geometry_dimension, BaseLib::ConfigTree const &config, ParameterLib::CoordinateSystem const *const local_coordinate_system)
A local coordinate system used for tensor transformations.