modelParallelCircuitsSlab
Extends from Buildings.Fluid.Interfaces.PartialTwoPort, Buildings.Fluid.HeatExchangers.RadiantSlabs.BaseClasses.Slab, Buildings.Fluid.Interfaces.LumpedVolumeDeclarations, Buildings.Fluid.Interfaces.TwoPortFlowResistanceParameters.
Information
This is a model of a radiant slab with pipes or a capillary heat exchanger embedded in the construction. The model is a composition of multiple models of Buildings.Fluid.HeatExchangers.RadiantSlabs.SingleCircuitSlab that are arranged in a parallel.
The parameter nCir declares the number of parallel flow circuits.
Each circuit will have the same mass flow rate, and it is exposed to the same
port variables for the heat port at the two surfaces, and for the flow inlet and outlet.
A typical model application is as follows: Suppose a large room has a radiant slab with two parallel circuits with the same pipe spacing and pipe length. Then, rather than using two instances of Buildings.Fluid.HeatExchangers.RadiantSlabs.SingleCircuitSlab, this system can be modeled using one instance of this model in order to reduce computing effort. See Buildings.Fluid.HeatExchangers.RadiantSlabs.Examples.SingleCircuitMultipleCircuitEpsilonNTU for an example that shows that the models give identical results.
Since this model is a parallel arrangment of nCir models of
Buildings.Fluid.HeatExchangers.RadiantSlabs.SingleCircuitSlab,
we refer to
Buildings.Fluid.HeatExchangers.RadiantSlabs.SingleCircuitSlab
for the model documentation.
See the user's guide for more information.
Implementation
To allow a better comment for the nominal mass flow rate, i.e., to specify that its value is for all circuits combined, this model does not inherit Buildings.Fluid.Interfaces.PartialTwoPortInterface.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | homotopyInitialization | true | = true, use homotopy method |
| Integer | nCir | 1 | Number of parallel circuits |
| Integer | nSeg | if heatTransfer == Types.HeatTransfer.EpsilonNTU then 1 else 5 | Number of volume segments in each circuit (along flow path) |
| Modelica.Units.SI.Length | length | A/disPip/nCir | Length of the pipe of a single circuit |
| Modelica.Units.SI.Velocity | v_nominal | 4*m_flow_nominal/pipe.dIn^2/Modelica.Constants.pi/rho_default/nCir | Velocity at m_flow_nominal |
| Buildings.Fluid.HeatExchangers.RadiantSlabs.Types.HeatTransfer | heatTransfer | Types.HeatTransfer.EpsilonNTU | Model for heat transfer between fluid and slab |
| Construction | |||
| Modelica.Units.SI.Area | A | Surface area of radiant slab (all circuits combined) | |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal | Nominal mass flow rate of all circuits combined | |
| Advanced | |||
| Modelica.Units.SI.MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate of all circuits combined for regularization of zero flow |
| Advanced › Diagnostics | |||
| Boolean | show_T | false | = true, if actual temperature at port is computed |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | m_flow | port_a.m_flow | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) for all circuits combined |
| Modelica.Units.SI.PressureDifference | dp | port_a.p - port_b.p | Pressure difference between port_a and port_b |
| Medium.ThermodynamicState | sta_a | if homotopyInitialization then Medium.setState_phX(port_a.p, homotopy(actual = noEvent(actualStream(port_a.h_outflow)), simplified = inStream(port_a.h_outflow)), homotopy(actual = noEvent(actualStream(port_a.Xi_outflow)), simplified = inStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) | Medium properties in port_a |
| Medium.ThermodynamicState | sta_b | if homotopyInitialization then Medium.setState_phX(port_b.p, homotopy(actual = noEvent(actualStream(port_b.h_outflow)), simplified = port_b.h_outflow), homotopy(actual = noEvent(actualStream(port_b.Xi_outflow)), simplified = port_b.Xi_outflow)) else Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) | Medium properties in port_b |
| Buildings.Fluid.HeatExchangers.RadiantSlabs.SingleCircuitSlab | sla | Single parallel circuit of the radiant slab |
Revisions
-
April 14, 2020, by Michael Wetter:
ChangedhomotopyInitializationto a constant.
This is for IBPSA, #1341. -
January 22, 2016, by Michael Wetter:
Corrected type declaration of pressure difference. This is for #404. -
June 9, 2015 by Michael Wetter:
Changed base class from Modelica.Fluid.Interfaces.PartialTwoPort to Buildings.Fluid.Interfaces.PartialTwoPort. -
October 10, 2013 by Michael Wetter:
AddednoEventto the computation of the states at the port. This is correct, because the states are only used for reporting, but not to compute any other variable. Use of the states to compute other variables would violate the Modelica language, as conditionally removed variables must not be used in any equation. -
October 8, 2013, by Michael Wetter:
Removed parametershow_V_flow. -
September 14, 2013, by Michael Wetter:
Corrected assignment of start value for pressure atport_aandport_b, which usedMedium.p_defaultinstead of the parameterp_start. -
June 27, 2012, by Michael Wetter:
First implementation.