OGS
CreatePhase.h
Go to the documentation of this file.
1
13#pragma once
14
15#include <map>
16#include <memory>
17#include <optional>
18#include <string>
19#include <vector>
20
21namespace BaseLib
22{
23class ConfigTree;
24}
25namespace ParameterLib
26{
27struct ParameterBase;
28struct CoordinateSystem;
29} // namespace ParameterLib
30namespace MaterialPropertyLib
31{
32class Phase;
33}
34namespace MathLib
35{
36class PiecewiseLinearInterpolation;
37}
38
39namespace MaterialPropertyLib
40{
51std::vector<std::unique_ptr<Phase>> createPhases(
52 int const geometry_dimension,
53 std::optional<BaseLib::ConfigTree> const& config,
54 std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
55 ParameterLib::CoordinateSystem const* const local_coordinate_system,
56 std::map<std::string,
57 std::unique_ptr<MathLib::PiecewiseLinearInterpolation>> const&
58 curves);
59} // namespace MaterialPropertyLib
std::vector< std::unique_ptr< Phase > > createPhases(int const geometry_dimension, std::optional< 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.