27 namespace PorousMedium
31 std::vector<std::unique_ptr<ProcessLib::ParameterBase>>
const& parameters)
36 if (type ==
"Constant")
38 auto const& permeability_parameter = ProcessLib::findParameter<double>(
41 "permeability_tensor_entries", parameters, 0);
43 int dimension =
static_cast<int>(
44 std::sqrt(permeability_parameter.getNumberOfComponents()));
45 if (permeability_parameter.getNumberOfComponents() !=
46 dimension * dimension)
49 "The given parameter has %d components, but the permeability " 50 "tensor is defined for a %d dimensional problem.",
51 permeability_parameter.getNumberOfComponents(), dimension);
54 return std::make_unique<Permeability>(
55 permeability_parameter, dimension);
57 OGS_FATAL(
"The permeability type '%s' is unavailable.\n",
58 "The available types are \n\tConstant.",
T getConfigParameter(std::string const ¶m) const
std::unique_ptr< Permeability > createPermeabilityModel(BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< ProcessLib::ParameterBase >> const ¶meters)
#define OGS_FATAL(fmt,...)