OGS
BHECommon.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
19
20#pragma once
21
22#include "BaseLib/Error.h"
23#include "BoreholeGeometry.h"
25#include "GroutParameters.h"
27
28namespace ProcessLib
29{
30namespace HeatTransportBHE
31{
32namespace BHE
33{
35{
36public:
37 BHECommon(BoreholeGeometry const& borehole_geometry_,
38 RefrigerantProperties const& refrigerant_,
39 GroutParameters const& grout_,
40 FlowAndTemperatureControl const& flowAndTemperatureControl_,
41 bool const use_python_bcs_)
42 : borehole_geometry(borehole_geometry_),
43 refrigerant(refrigerant_),
44 grout(grout_),
45 flowAndTemperatureControl(flowAndTemperatureControl_),
46 use_python_bcs(use_python_bcs_)
47 {
48 }
49
54 bool const use_python_bcs;
55 constexpr bool isPowerBC() const
56 {
57 return std::visit([](auto const& ftc) { return ftc.is_power_bc; },
59 }
60};
61} // end of namespace BHE
62} // end of namespace HeatTransportBHE
63} // end of namespace ProcessLib
RefrigerantProperties const refrigerant
Definition BHECommon.h:51
BHECommon(BoreholeGeometry const &borehole_geometry_, RefrigerantProperties const &refrigerant_, GroutParameters const &grout_, FlowAndTemperatureControl const &flowAndTemperatureControl_, bool const use_python_bcs_)
Definition BHECommon.h:37
FlowAndTemperatureControl const flowAndTemperatureControl
Definition BHECommon.h:53
std::variant< InflowTemperature, Power, BuildingPower, BuildingPowerHotWaterActiveCooling, BuildingPowerHotWaterPassiveCooling, BuildingPowerHotWater, BuildingPowerActiveCooling, BuildingPowerPassiveCooling, ActiveCooling > FlowAndTemperatureControl