OGS
CreateBHEUType.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 <Eigen/Core>
7#include <map>
8#include <memory>
9#include <string>
10#include <vector>
11
12#include "BHECommon.h"
15
16namespace BaseLib
17{
18class ConfigTree;
19}
20namespace MeshLib
21{
22class Node;
23}
24namespace ParameterLib
25{
26struct ParameterBase;
27}
28namespace ProcessLib
29{
30namespace HeatTransportBHE
31{
32namespace BHE
33{
34template <typename T_BHE>
35T_BHE createBHEUType(
36 BaseLib::ConfigTree const& config,
37 std::vector<std::unique_ptr<ParameterLib::ParameterBase>>& parameters,
38 std::map<std::string,
39 std::unique_ptr<MathLib::PiecewiseLinearInterpolation>> const&
40 curves,
41 std::vector<MeshLib::Node*> const& bhe_nodes);
42} // namespace BHE
43} // namespace HeatTransportBHE
44} // namespace ProcessLib
T_BHE createBHEUType(BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > &parameters, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation > > const &curves, std::vector< MeshLib::Node * > const &bhe_nodes)