OGS
CreateMedium.h
Go to the documentation of this file.
1
13#pragma once
14
15#include <map>
16#include <memory>
17#include <string>
18#include <vector>
19
20namespace BaseLib
21{
22class ConfigTree;
23}
24namespace MaterialPropertyLib
25{
26class Medium;
27}
28namespace ParameterLib
29{
30struct ParameterBase;
31struct CoordinateSystem;
32} // namespace ParameterLib
33namespace MathLib
34{
35class PiecewiseLinearInterpolation;
36}
37
38namespace MaterialPropertyLib
39{
44std::unique_ptr<Medium> createMedium(
45 int const material_id,
46 int const geometry_dimension,
47 BaseLib::ConfigTree const& config,
48 std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
49 ParameterLib::CoordinateSystem const* const local_coordinate_system,
50 std::map<std::string,
51 std::unique_ptr<MathLib::PiecewiseLinearInterpolation>> const&
52 curves);
53} // namespace MaterialPropertyLib
std::unique_ptr< Medium > createMedium(int const material_id, int const geometry_dimension, BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const &parameters, ParameterLib::CoordinateSystem const *const local_coordinate_system, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation > > const &curves)
A local coordinate system used for tensor transformations.