OGS
CreateConstitutiveRelation.h
Go to the documentation of this file.
1
12#pragma once
13
14#include <map>
15#include <memory>
16#include <optional>
17#include <vector>
18
19namespace BaseLib
20{
21class ConfigTree;
22}
23
24namespace ParameterLib
25{
26struct ParameterBase;
27struct CoordinateSystem;
28}
29
30namespace MaterialLib
31{
32namespace Solids
33{
34template <int DisplacementDim>
35struct MechanicsBase;
36
37template <int DisplacementDim>
38std::map<int,
39 std::unique_ptr<MaterialLib::Solids::MechanicsBase<DisplacementDim>>>
41 std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
42 std::optional<ParameterLib::CoordinateSystem> const&
43 local_coordinate_system,
44 BaseLib::ConfigTree const& config);
45
46extern template std::map<int,
47 std::unique_ptr<MaterialLib::Solids::MechanicsBase<2>>>
49 std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
50 std::optional<ParameterLib::CoordinateSystem> const&
51 local_coordinate_system,
52 BaseLib::ConfigTree const& config);
53
54extern template std::map<int,
55 std::unique_ptr<MaterialLib::Solids::MechanicsBase<3>>>
57 std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
58 std::optional<ParameterLib::CoordinateSystem> const&
59 local_coordinate_system,
60 BaseLib::ConfigTree const& config);
61} // namespace Solids
62} // namespace MaterialLib
std::map< int, std::unique_ptr< MaterialLib::Solids::MechanicsBase< DisplacementDim > > > createConstitutiveRelations(std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const &parameters, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system, BaseLib::ConfigTree const &config)
template std::map< int, std::unique_ptr< MaterialLib::Solids::MechanicsBase< 2 > > > createConstitutiveRelations< 2 >(std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const &parameters, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system, BaseLib::ConfigTree const &config)
template std::map< int, std::unique_ptr< MaterialLib::Solids::MechanicsBase< 3 > > > createConstitutiveRelations< 3 >(std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const &parameters, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system, BaseLib::ConfigTree const &config)