modelPartialHeatPumpTableData2DLoadDep
Extends from Buildings.Templates.Components.Interfaces.PartialHeatPump.
Information
This is the base class for heat pump models where the capacity and input
power are computed by interpolating manufacturer data along the condenser
entering or leaving temperature, the evaporator entering or leaving
temperature and the part load ratio. Toggling the Boolean parameter
typMod==Buildings.Templates.Components.Types.HeatPumpCapability.Reversible enables representing either a non-reversible
(heating-only) heat pump or a reversible heat pump.
This model is a wrapper for Buildings.Fluid.HeatPumps.ModularReversible.TableData2DLoadDep, which the user may refer to for the modeling assumptions.
Control points
The following input and output points are available.
-
Heat pump on/off command signal:
y1, DO signal, with a dimensionality of zero -
For reversible heat pumps only (
typMod==Buildings.Templates.Components.Types.HeatPumpCapability.Reversible), heat pump operating mode command signal:y1Hea, DO signal, with a dimensionality of zero
Sety1Hea=truefor heating mode,y1Hea=falsefor cooling mode. -
Heat pump HW supply temperature setpoint:
THeaWatSet, AO signal, with a dimensionality of zero - For reversible heat pumps only (
typMod==Buildings.Templates.Components.Types.HeatPumpCapability.Reversible), Heat pump CHW supply temperature setpoint:TChiWatSet, AO signal, with a dimensionality of zero -
Heat pump status:
y1_actual, DI signal, with a dimensionality of zero
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Templates.Components.Types.HeatPump | typ (from PartialHeatPump) | Heat pump source/sink type | |
| Buildings.Templates.Components.Types.HeatPumpCapability | typMod (from PartialHeatPump) | Heat pump operating mode capability | |
| Buildings.Templates.Components.Data.HeatPump | dat (from PartialHeatPump) | Design and operating parameters | |
| Modelica.Units.SI.MassFlowRate | mHeaWat_flow_nominal (from PartialHeatPump) | dat.mHeaWat_flow_nominal | Design HW mass flow rate |
| Modelica.Units.SI.HeatFlowRate | capHea_nominal (from PartialHeatPump) | dat.capHea_nominal | Design heating capacity |
| Modelica.Units.SI.HeatFlowRate | QHea_flow_nominal (from PartialHeatPump) | abs(capHea_nominal) | Design heating heat flow rate |
| Modelica.Units.SI.PressureDifference | dpHeaWat_nominal (from PartialHeatPump) | dat.dpHeaWat_nominal | Design HW pressure drop |
| Modelica.Units.SI.Temperature | THeaWatSup_nominal (from PartialHeatPump) | dat.THeaWatSup_nominal | Design HW supply temperature |
| Modelica.Units.SI.Temperature | THeaWatRet_nominal (from PartialHeatPump) | dat.THeaWatRet_nominal | Design HW return temperature |
| Modelica.Units.SI.PressureDifference | dpChiWat_nominal (from PartialHeatPump) | dat.dpChiWat_nominal | Design CHW pressure drop |
| Modelica.Units.SI.HeatFlowRate | capCoo_nominal (from PartialHeatPump) | dat.capCoo_nominal | Design cooling capacity |
| Modelica.Units.SI.HeatFlowRate | QCoo_flow_nominal (from PartialHeatPump) | -abs(capCoo_nominal) | Design cooling heat flow rate |
| Modelica.Units.SI.Temperature | TChiWatSup_nominal (from PartialHeatPump) | dat.TChiWatSup_nominal | Design CHW supply temperature |
| Modelica.Units.SI.Temperature | TChiWatRet_nominal (from PartialHeatPump) | dat.TChiWatRet_nominal | Design CHW return temperature |
| Modelica.Units.SI.MassFlowRate | mSouHea_flow_nominal (from PartialHeatPump) | dat.mSouHea_flow_nominal | Design source fluid mass flow rate in heating mode |
| Modelica.Units.SI.PressureDifference | dpSouHea_nominal (from PartialHeatPump) | dat.dpSouHea_nominal | Design source fluid pressure drop in heating mode |
| Modelica.Units.SI.MassFlowRate | mSouCoo_flow_nominal (from PartialHeatPump) | dat.mSouCoo_flow_nominal | Design source fluid mass flow rate in cooling mode |
| Modelica.Units.SI.PressureDifference | dpSouCoo_nominal (from PartialHeatPump) | dat.dpSouCoo_nominal | Designs source fluid pressure drop in cooling mode |
| Modelica.Units.SI.Temperature | TSouCoo_nominal (from PartialHeatPump) | dat.TSouCoo_nominal | Design OAT or source fluid supply temperature (condenser entering) in cooling mode |
| Modelica.Units.SI.Temperature | TSouHea_nominal (from PartialHeatPump) | dat.TSouHea_nominal | Design OAT or source fluid supply temperature (evaporator entering) in heating mode |
| MediumHeaWat.SpecificHeatCapacity | cpHeaWat_default (from PartialHeatPump) | MediumHeaWat.specificHeatCapacityCp(staHeaWat_default) | HW default specific heat capacity |
| MediumHeaWat.ThermodynamicState | staHeaWat_default (from PartialHeatPump) | MediumHeaWat.setState_pTX(T = THeaWatSup_nominal, p = MediumHeaWat.p_default, X = MediumHeaWat.X_default) | HW default state |
| MediumChiWat.SpecificHeatCapacity | cpChiWat_default (from PartialHeatPump) | MediumChiWat.specificHeatCapacityCp(staChiWat_default) | CHW default specific heat capacity |
| MediumChiWat.ThermodynamicState | staChiWat_default (from PartialHeatPump) | MediumChiWat.setState_pTX(T = TChiWatSup_nominal, p = MediumChiWat.p_default, X = MediumChiWat.X_default) | CHW default state |
| MediumSou.SpecificHeatCapacity | cpSou_default (from PartialHeatPump) | MediumSou.specificHeatCapacityCp(staSou_default) | Source fluid default specific heat capacity |
| MediumSou.ThermodynamicState | staSou_default (from PartialHeatPump) | MediumSou.setState_pTX(T = TSouHea_nominal, p = MediumSou.p_default, X = MediumSou.X_default) | Source fluid default state |
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialTwoPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
| Boolean | allowFlowReversalSou (from PartialHeatPump) | true | Source side flow reversal: false to simplify equations, assuming, but not enforcing, no flow reversal |
| Boolean | have_dpChiHeaWat (from PartialHeatPump) | true | Set to true for CHW/HW pressure drop computed by this model, false for external computation |
| Boolean | have_dpSou (from PartialHeatPump) | true | Set to true for source fluid pressure drop computed by this model, false for external computation |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal (from PartialTwoPortInterface) | Nominal mass flow rate | |
| Modelica.Units.SI.MassFlowRate | mChiWat_flow_nominal (from PartialHeatPump) | dat.mChiWat_flow_nominal | Design CHW mass flow rate |
| Advanced | |||
| Modelica.Units.SI.MassFlowRate | m_flow_small (from PartialTwoPortInterface) | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Advanced › Diagnostics | |||
| Boolean | show_T (from PartialTwoPortInterface) | false | = true, if actual temperature at port is computed |
| Dynamics › Conservation equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics (from PartialHeatPump) | Modelica.Fluid.Types.Dynamics.DynamicFreeInitial | Type of energy balance: dynamic (3 initialization options) or steady state |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a (from PartialTwoPort) | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b (from PartialTwoPort) | Fluid connector b (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_a | port_aChiWat (from PartialHeatPump) | CHW fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_bChiWat (from PartialHeatPump) | CHW fluid connector b (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_a | port_aSou (from PartialHeatPump) | Source fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_bSou (from PartialHeatPump) | Source fluid connector b (positive design flow direction is from port_a to port_b) | |
| Buildings.Templates.Components.Interfaces.Bus | bus (from PartialHeatPump) | Control bus | |
| Buildings.BoundaryConditions.WeatherData.Bus | busWea (from PartialHeatPump) | Weather bus |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | m_flow (from PartialTwoPortInterface) | port_a.m_flow | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) |
| Modelica.Units.SI.PressureDifference | dp (from PartialTwoPortInterface) | port_a.p - port_b.p | Pressure difference between port_a and port_b |
| Medium.ThermodynamicState | sta_a (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(inStream(port_a.h_outflow)), noEvent(inStream(port_a.Xi_outflow))) | Medium properties in port_a |
| Medium.ThermodynamicState | sta_b (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) else Medium.setState_phX(port_b.p, noEvent(port_b.h_outflow), noEvent(port_b.Xi_outflow)) | Medium properties in port_b |
| Fluid.Sources.Outside | air (from PartialHeatPump) | Outdoor air | |
| MediumSou.ThermodynamicState | sta_aSou (from PartialHeatPump) | MediumSou.setState_phX(port_aSou.p, noEvent(actualStream(port_aSou.h_outflow)), noEvent(actualStream(port_aSou.Xi_outflow))) | Source medium properties in port_aSou |
| MediumSou.ThermodynamicState | sta_bSou (from PartialHeatPump) | MediumSou.setState_phX(port_bSou.p, noEvent(actualStream(port_bSou.h_outflow)), noEvent(actualStream(port_bSou.Xi_outflow))) | Source medium properties in port_bSou |
| Controls.StatusEmulator | y1_actual | Compute heat pump status | |
| Fluid.Sensors.MassFlowRate | mHeaWat_flow | HW mass flow rate | |
| Fluid.Sensors.TemperatureTwoPort | THeaWatEnt | HW entering temperature | |
| Fluid.Sensors.TemperatureTwoPort | THeaWatLvg | HW leaving temperature | |
| Fluid.Sensors.TemperatureTwoPort | TSouEnt | Source fluid entering temperature | |
| Fluid.Sensors.TemperatureTwoPort | TSouLvg | Source fluid leaving temperature | |
| Buildings.Fluid.HeatPumps.ModularReversible.TableData2DLoadDep | hp | Heat pump | |
| Buildings.Fluid.HeatPumps.ModularReversible.TableData2DLoadDepSHC | php | Polyvalent heat pump | |
| Routing.PassThroughFluid | pas | Direct fluid pass through in case of air-source polyvalent HP | |
| Buildings.Controls.OBC.CDL.Logical.Or | onHeaOrCoo | Commanded on in cooling or heating mode |
Revisions
-
July 10, 2026, by Antoine Gautier:
Added polyvalent heat pump model and associated connectors.
This is for #4512. -
March 23, 2026, by Antoine Gautier:
Refactored with two separate connectors for HW and CHW temperature setpoints.
This is for #4507. -
March 21, 2025, by Antoine Gautier:
First implementation.