21 namespace HeatTransportBHE
28 std::unique_ptr<MathLib::PiecewiseLinearInterpolation>>
const&
34 if (type ==
"TemperatureCurveConstantFlow")
43 "Required temperature curve not found.");
47 if (type ==
"TemperatureCurveFlowCurve")
53 "Required flow curve not found.");
59 "Required temperature curve not found.");
63 if (type ==
"FixedPowerConstantFlow")
75 if (type ==
"FixedPowerFlowCurve")
81 "Required flow rate curve not found.");
91 if (type ==
"PowerCurveConstantFlow")
97 "Required power curve not found.");
107 if (type ==
"BuildingPowerCurveConstantFlow")
113 "Required power curve not found.");
119 "Required power curve not found.");
128 building_power_curves, flow_rate,
131 OGS_FATAL(
"FlowAndTemperatureControl type '{:s}' is not implemented.",
Definition of the PiecewiseLinearInterpolation class.
T getConfigParameter(std::string const ¶m) const
Map::mapped_type & getOrError(Map &map, Key const &key, std::string const &error_message)
FlowAndTemperatureControl createFlowAndTemperatureControl(BaseLib::ConfigTree const &config, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation >> const &curves, RefrigerantProperties const &refrigerant)
std::variant< TemperatureCurveConstantFlow, TemperatureCurveFlowCurve, FixedPowerConstantFlow, FixedPowerFlowCurve, PowerCurveConstantFlow, BuildingPowerCurveConstantFlow > FlowAndTemperatureControl
double const specific_heat_capacity