OGS
HeatTransportBHEProcessData.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 <unordered_map>
7
12namespace MeshLib
13{
14class Element;
15}
16
18{
20{
22
23 const double _weighting_factor;
24};
25
27{
30 std::vector<BHE::BHETypes>&& vec_BHEs_,
32 nullptr,
33 const bool use_tespy = false,
34 const bool use_server_communication = false,
35 const bool mass_lumping = false,
36 AlgebraicBCSetting algebraicBCSetting = {false, 100.0},
37 const bool is_linear = false)
38 : media_map(media_map_),
39 _vec_BHE_property(std::move(vec_BHEs_)),
40 py_bc_object(py_bc_object_),
41 _use_tespy(use_tespy),
42 _use_server_communication(use_server_communication),
43 _mass_lumping(mass_lumping),
44 _algebraic_BC_Setting(algebraicBCSetting),
45 _is_linear(is_linear)
46 {
47 }
49
50 std::vector<BHE::BHETypes> _vec_BHE_property;
51
53 std::unordered_map<int, int> _map_materialID_to_BHE_ID{};
54
57
58 const bool _use_tespy;
59
61
62 const bool _mass_lumping;
63
64 std::vector<bool> mass_lumping_soil_elements;
65
67
68 const bool _is_linear;
69};
70} // namespace ProcessLib::HeatTransportBHE
MaterialPropertyLib::MaterialSpatialDistributionMap media_map
BHEInflowPythonBoundaryConditionPythonSideInterface * py_bc_object
Python object computing BC values.
HeatTransportBHEProcessData(MaterialPropertyLib::MaterialSpatialDistributionMap media_map_, std::vector< BHE::BHETypes > &&vec_BHEs_, BHEInflowPythonBoundaryConditionPythonSideInterface *py_bc_object_=nullptr, const bool use_tespy=false, const bool use_server_communication=false, const bool mass_lumping=false, AlgebraicBCSetting algebraicBCSetting={false, 100.0}, const bool is_linear=false)