OGS
CreateThermoRichardsFlowProcess.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 MeshLib
16{
17class Mesh;
18}
19namespace MaterialPropertyLib
20{
21class Medium;
22}
23namespace ParameterLib
24{
25struct ParameterBase;
26} // namespace ParameterLib
27namespace ProcessLib
28{
30class Process;
31class ProcessVariable;
32} // namespace ProcessLib
33
34namespace ProcessLib
35{
36namespace ThermoRichardsFlow
37{
38std::unique_ptr<Process> createThermoRichardsFlowProcess(
39 std::string const& name,
40 MeshLib::Mesh& mesh,
41 std::unique_ptr<ProcessLib::AbstractJacobianAssembler>&& jacobian_assembler,
42 std::vector<ProcessVariable> const& variables,
43 std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
44 unsigned const integration_order,
45 BaseLib::ConfigTree const& config,
46 std::map<int, std::shared_ptr<MaterialPropertyLib::Medium>> const& media);
47} // namespace ThermoRichardsFlow
48} // namespace ProcessLib
Base class for Jacobian assemblers.
std::unique_ptr< Process > createThermoRichardsFlowProcess(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, unsigned const integration_order, BaseLib::ConfigTree const &config, std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media)