Buildings.DHC.BaseClasses.Steam
Package for steam systems using the split-medium approach.
Information
This package contains base class models for steam systems. These models use the split-medium approach to allow various water/steam models to be coupled with a numerically-efficient liquid water model. This can greatly improve the computing performance by decoupling the energy and mass balance equations.
Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).
Package Content
Name | Description |
---|---|
PartialSaturatedControlVolume | Partial control volume for evaporation/condensation processes |
PartialTwoPortTwoMedium | Partial model with two ports with two separate medium models without storing mass or energy |
Buildings.DHC.BaseClasses.Steam.PartialSaturatedControlVolume
Partial control volume for evaporation/condensation processes
Information
This model represents a partial control volume for either condensation or
evaporation processes of water with liquid and vapor phases in equilibrium
and at a saturated state.
Models that extend this base class need to assign the mass flow rate at
each port and the enthlapy at each port, as exemplifed in the evaporation
and condensation models listed below.
The volume can exchange heat through
its heatPort
when configured with dynamic mass and
energy balances. In steady state, the heat port is conditionally removed
in order to maintain a consistent set of equations.
This model is similar to Modelica.Fluid.Examples.DrumBoiler.BaseClasses.EquilibriumDrumBoiler with the following exceptions:
-
Rather than a two-phase medium, fluid mediums are modeled as two
single-state fluids, with liquid water at the up-stream port
(port_a)
, and steam vapor at the downstream port(port_b)
for instances of this base class that model evaporation (the opposite for condensation); - The metal drum is excluded from the mass and energy balances;
Implementation
This model is configured to allow both steady state and dynamic mass
and energy balances. The heat transfer through the
heatPort
is disabled in steady state balance.
This is required because the fluid is restricted to a saturated state;
thus, the heat transfer rate is a function of mass flow rate only
if the volume is steady. The fluid mass m in the volume is
calculated as
m = ρsVs + ρwVw
where ρ is density,V is volume, and subscripts represent the steam and liquid water components, respectively. The total internal energy U is
U = ρsVshs + ρwVw − pV
where h is specific enthalpy, p is pressure, and the total volume of fluid V=Vs+Vw.
The steady state mass balance is given as
ṁs + ṁw = 0,
while no additional equation is given for the steady state energy balance, since the heat flow rate into the water must be removed from the system in which the control volume is used.
The dynamic mass and energy balances are given as
dm/dt = ṁs + ṁw
dU/dt = Q̇ + ṁs hs + ṁ
w hw
where ̇ṁs and ṁw
are the mass flow rates of steam and liquid water
respectively; Q̇ is the heat flow rate
into the control volume;
hs and hw are the specific
enthalpies of steam and liquid water, respectively.
Note that with an evaporation process, the liquid
phase (water) is always assigned at the port_a
(inlet),
while the vapor phase (steam) is always at the port_b
(outlet).
The opposite holds for a condensation process.
Assumptions
Three principal assumptions are made with this model:
- The fluid within the volume is wet steam.
- Liquid and vapor subcomponents are at equilibrium; and
- Fluid is discharged from the volume as ei ther saturated liquid or saturated vapor.
Models that extend this base class include Buildings.DHC.Plants.Steam.BaseClasses.ControlVolumeEvaporation and Buildings.DHC.Loads.Steam.BaseClasses.ControlVolumeCondensation.
Reference
Hinkelman, Kathryn, Saranya Anbarasu, Michael Wetter, Antoine Gautier, and Wangda Zuo. 2022. “A Fast and Accurate Modeling Approach for Water and Steam Thermodynamics with Practical Applications in District Heating System Simulation.” Preprint. February 24. doi:10.13140/RG.2.2.20710.29762.
Extends from Buildings.BaseClasses.BaseIcon (Base icon), Buildings.DHC.BaseClasses.Steam.PartialTwoPortTwoMedium (Partial model with two ports with two separate medium models without storing mass or energy).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium_a | PartialMedium | Medium model for port_a (inlet) | |
replaceable package Medium_b | PartialMedium | Medium model for port_b (outlet) | |
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
replaceable package MediumWat | Buildings.Media.Specialized.... | Liquid water medium | |
replaceable package MediumSte | Buildings.Media.Steam | Steam medium | |
Volume | V | Total volume [m3] | |
Nominal condition | |||
MassFlowRate | m_flow_nominal | Nominal mass flow rate [kg/s] | |
Advanced | |||
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal. Used only if model has two ports. |
Dynamics | |||
Equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Dynamics | massDynamics | energyDynamics | Type of mass balance: dynamic (3 initialization options) or steady state |
Initialization | |||
AbsolutePressure | p_start | MediumSte.p_default | Start value of pressure [Pa] |
Temperature | T_start | MediumSte.saturationTemperat... | Start value of temperature [K] |
Volume | VWat_start | V/2 | Start value of liquid volume [m3] |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
replaceable package MediumWat | Liquid water medium | |
replaceable package MediumSte | Steam medium | |
HeatPort_a | heatPort | Heat port |
output RealOutput | VLiq | Liquid volume [m3] |
Modelica definition
Buildings.DHC.BaseClasses.Steam.PartialTwoPortTwoMedium
Partial model with two ports with two separate medium models without storing mass or energy
Information
This partial model defines an interface for components
with two ports and separate medium definitions at each port.
The component transports fluid between two ports
without storing mass or energy. The treatment of the
design flow direction and of flow reversal are
predefined based on the parameter allowFlowReversal
.
This model is intended for steam heating applications, where phase change is inherently present. The split-medium approach enables a numerically-efficient liquid water model (i.e., Buildings.Media.Specialized.Water.TemperatureDependentDensity) to be implemented alongside various water/steam models for other phases. For most applications, an efficient model (i.e., Modelica.Media.Water.StandardWater is suitable as it covers the largest range of pressure-temperature conditions through its implementation of the IAPWS-IF97 water/steam formulation. If a reduce pressure-temperature range is applicable, Buildings.Media.Steam) provides a more efficient implementation. Through the split-medium approach, pressure and density calculations are decoupled, eliminating costly nonlinear systems of equations. This interface model also includes parameters for mass and energy dynamics as well as initialization.
Reference
Hinkelman, Kathryn, Saranya Anbarasu, Michael Wetter, Antoine Gautier, and Wangda Zuo. 2022. “A Fast and Accurate Modeling Approach for Water and Steam Thermodynamics with Practical Applications in District Heating System Simulation.” Preprint. February 24. doi:10.13140/RG.2.2.20710.29762.
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium_a | Modelica.Media.Interfaces.Pa... | Medium model for port_a (inlet) | |
replaceable package Medium_b | Modelica.Media.Interfaces.Pa... | Medium model for port_b (outlet) | |
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Nominal condition | |||
MassFlowRate | m_flow_nominal | Nominal mass flow rate [kg/s] | |
Advanced | |||
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal. Used only if model has two ports. |
Dynamics | |||
Equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Dynamics | massDynamics | energyDynamics | Type of mass balance: dynamic (3 initialization options) or steady state |
Initialization | |||
AbsolutePressure | p_start | Medium_b.p_default | Start value of pressure [Pa] |
Temperature | T_start | Medium_b.T_default | Start value of temperature [K] |
Connectors
Type | Name | Description |
---|---|---|
replaceable package Medium_a | Medium model for port_a (inlet) | |
replaceable package Medium_b | Medium model for port_b (outlet) | |
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |