OGS
CreateMedium.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <map>
7#include <memory>
8#include <string>
9#include <vector>
10
11namespace BaseLib
12{
13class ConfigTree;
14}
15namespace MaterialPropertyLib
16{
17class Medium;
18}
19namespace ParameterLib
20{
21struct ParameterBase;
22struct CoordinateSystem;
23} // namespace ParameterLib
24namespace MathLib
25{
27}
28
29namespace MaterialPropertyLib
30{
35std::unique_ptr<Medium> createMedium(
36 int const material_id,
37 int const geometry_dimension,
38 BaseLib::ConfigTree const& config,
39 std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& parameters,
40 ParameterLib::CoordinateSystem const* const local_coordinate_system,
41 std::map<std::string,
42 std::unique_ptr<MathLib::PiecewiseLinearInterpolation>> const&
43 curves);
44} // 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 > > &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.