OGS
CreateSmallDeformationProcess.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <memory>
14#include <optional>
15#include <string>
16#include <vector>
17
18namespace BaseLib
19{
20class ConfigTree;
21}
22namespace MeshLib
23{
24class Mesh;
25}
26namespace ParameterLib
27{
28struct CoordinateSystem;
29struct ParameterBase;
30} // namespace ParameterLib
31namespace ProcessLib
32{
33class AbstractJacobianAssembler;
34class Process;
35class ProcessVariable;
36} // namespace ProcessLib
37
38namespace ProcessLib
39{
40namespace LIE
41{
42namespace SmallDeformation
43{
44template <int DisplacementDim>
45std::unique_ptr<Process> createSmallDeformationProcess(
46 std::string const& name,
47 MeshLib::Mesh& mesh,
48 std::unique_ptr<ProcessLib::AbstractJacobianAssembler>&& jacobian_assembler,
49 std::vector<ProcessVariable> const& variables,
50 std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
51 std::optional<ParameterLib::CoordinateSystem> const&
52 local_coordinate_system,
53 unsigned const integration_order,
54 BaseLib::ConfigTree const& config);
55
56} // namespace SmallDeformation
57} // namespace LIE
58} // namespace ProcessLib
std::unique_ptr< Process > createSmallDeformationProcess(std::string const &name, MeshLib::Mesh &mesh, std::unique_ptr< ProcessLib::AbstractJacobianAssembler > &&jacobian_assembler, std::vector< ProcessVariable > const &variables, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const &parameters, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system, unsigned const integration_order, BaseLib::ConfigTree const &config)