modelDoorDiscretized
Door model using discretization along height coordinate
Extends from IDEAS.Airflow.Multizone.BaseClasses.TwoWayFlowElementBuoyancy (Flow resistance that uses the power law).
Information
This is a partial model for the bi-directional air flow through a door.
To compute the bi-directional flow, the door is discretize along the height coordinate, and uses an orifice equation to compute the flow for each compartment.
The compartment area dA is a variable, which allows
using the model for a door that can be open or closed.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.Velocity | vZer (from TwoWayFlowElement) | 0.001 | Minimum velocity to prevent zero flow. Recommended: 0.001 |
| Integer | nCom | 10 | Number of compartments for the discretization |
| Modelica.Units.SI.PressureDifference | dp_turbulent | 0.01 | Pressure difference where laminar and turbulent flow relation coincide. Recommended: 0.01 |
| Assumptions | |||
| Boolean | allowFlowReversal1 (from PartialFourPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for medium 1 |
| Boolean | allowFlowReversal2 (from PartialFourPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for medium 2 |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m1_flow_nominal (from PartialFourPortInterface) | Nominal mass flow rate | |
| Modelica.Units.SI.MassFlowRate | m2_flow_nominal (from PartialFourPortInterface) | Nominal mass flow rate | |
| Advanced | |||
| Medium1.MassFlowRate | m1_flow_small (from PartialFourPortInterface) | 1E-4*abs(m1_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Medium2.MassFlowRate | m2_flow_small (from PartialFourPortInterface) | 1E-4*abs(m2_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Boolean | forceErrorControlOnFlow (from ErrorControl) | true | Flag to force error control on m_flow. Set to true if interested in flow rate |
| Advanced › Diagnostics | |||
| Boolean | show_T (from PartialFourPortInterface) | false | = true, if actual temperature at port is computed |
| Geometry | |||
| Modelica.Units.SI.Length | wOpe (from TwoWayFlowElementBuoyancy) | 0.9 | Width of opening |
| Modelica.Units.SI.Length | hOpe (from TwoWayFlowElementBuoyancy) | 2.1 | Height of opening |
| Modelica.Units.SI.Length | hA (from TwoWayFlowElementBuoyancy) | 2.7/2 | Height of reference pressure zone A |
| Modelica.Units.SI.Length | hB (from TwoWayFlowElementBuoyancy) | 2.7/2 | Height of reference pressure zone B |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a1 (from PartialFourPort) | Fluid connector a1 (positive design flow direction is from port_a1 to port_b1) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b1 (from PartialFourPort) | Fluid connector b1 (positive design flow direction is from port_a1 to port_b1) | |
| Modelica.Fluid.Interfaces.FluidPort_a | port_a2 (from PartialFourPort) | Fluid connector a2 (positive design flow direction is from port_a2 to port_b2) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b2 (from PartialFourPort) | Fluid connector b2 (positive design flow direction is from port_a2 to port_b2) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Medium1.MassFlowRate | m1_flow (from PartialFourPortInterface) | port_a1.m_flow | Mass flow rate from port_a1 to port_b1 (m1_flow > 0 is design flow direction) |
| Modelica.Units.SI.PressureDifference | dp1 (from PartialFourPortInterface) | port_a1.p - port_b1.p | Pressure difference between port_a1 and port_b1 |
| Medium2.MassFlowRate | m2_flow (from PartialFourPortInterface) | port_a2.m_flow | Mass flow rate from port_a2 to port_b2 (m2_flow > 0 is design flow direction) |
| Modelica.Units.SI.PressureDifference | dp2 (from PartialFourPortInterface) | port_a2.p - port_b2.p | Pressure difference between port_a2 and port_b2 |
| Medium1.ThermodynamicState | sta_a1 (from PartialFourPortInterface) | if allowFlowReversal1 then Medium1.setState_phX(port_a1.p, noEvent(actualStream(port_a1.h_outflow)), noEvent(actualStream(port_a1.Xi_outflow))) else Medium1.setState_phX(port_a1.p, inStream(port_a1.h_outflow), inStream(port_a1.Xi_outflow)) | Medium properties in port_a1 |
| Medium1.ThermodynamicState | sta_b1 (from PartialFourPortInterface) | if allowFlowReversal1 then Medium1.setState_phX(port_b1.p, noEvent(actualStream(port_b1.h_outflow)), noEvent(actualStream(port_b1.Xi_outflow))) else Medium1.setState_phX(port_b1.p, port_b1.h_outflow, port_b1.Xi_outflow) | Medium properties in port_b1 |
| Medium2.ThermodynamicState | sta_a2 (from PartialFourPortInterface) | if allowFlowReversal2 then Medium2.setState_phX(port_a2.p, noEvent(actualStream(port_a2.h_outflow)), noEvent(actualStream(port_a2.Xi_outflow))) else Medium2.setState_phX(port_a2.p, inStream(port_a2.h_outflow), inStream(port_a2.Xi_outflow)) | Medium properties in port_a2 |
| Medium2.ThermodynamicState | sta_b2 (from PartialFourPortInterface) | if allowFlowReversal2 then Medium2.setState_phX(port_b2.p, noEvent(actualStream(port_b2.h_outflow)), noEvent(actualStream(port_b2.Xi_outflow))) else Medium2.setState_phX(port_b2.p, port_b2.h_outflow, port_b2.Xi_outflow) | Medium properties in port_b2 |
| Modelica.Units.SI.VolumeFlowRate | VAB_flow (from TwoWayFlowElement) | Volume flow rate from A to B if positive | |
| Modelica.Units.SI.VolumeFlowRate | VBA_flow (from TwoWayFlowElement) | Volume flow rate from B to A if positive | |
| Modelica.Units.SI.MassFlowRate | mAB_flow (from TwoWayFlowElement) | Mass flow rate from A to B if positive | |
| Modelica.Units.SI.MassFlowRate | mBA_flow (from TwoWayFlowElement) | Mass flow rate from B to A if positive | |
| Modelica.Units.SI.Velocity | vAB (from TwoWayFlowElement) | Average velocity from A to B | |
| Modelica.Units.SI.Velocity | vBA (from TwoWayFlowElement) | Average velocity from B to A | |
| Modelica.Units.SI.Density | rho_a1_inflow (from TwoWayFlowElement) | Density of air flowing in from port_a1 | |
| Modelica.Units.SI.Density | rho_a2_inflow (from TwoWayFlowElement) | Density of air flowing in from port_a2 | |
| Modelica.Units.SI.Area | A (from TwoWayFlowElement) | Face area | |
| Modelica.Units.SI.PressureDifference[nCom] | dpAB | Pressure difference between compartments | |
| Modelica.Units.SI.Velocity[nCom] | v | Velocity in compartment from A to B | |
| Modelica.Units.SI.Velocity | vTop | Velocity at top of opening from A to B | |
| Modelica.Units.SI.Velocity | vBot | Velocity at bottom of opening from A to B | |
| Modelica.Units.SI.Length | dh | hOpe/nCom | Height of each compartment |
Revisions
-
October 29, 2024, by Klaas De Jonge:
Unprotecteddhand changed prefixes ofdh,hAgandhBgtoinput.
This is for #1935. -
January 8, 2019, by Michael Wetter:
Moved parameterCDfrom IDEAS.Airflow.Multizone.BaseClasses.DoorDiscretized to IDEAS.Airflow.Multizone.DoorDiscretizedOpen.
This is for #971. -
June 27, 2018, by Michael Wetter:
Corrected old parameter annotation. -
June 6, 2018, by Michael Wetter:
Removed term that assures non-zero flow rate in each path, and reformulated flow balance to ensure that model is symmetric. This is for #937. -
January 22, 2016, by Michael Wetter:
Corrected type declaration of pressure difference. This is for #404. -
September 26, 2013 by Michael Wetter:
Added missingeachkeyword. -
December 14, 2012 by Michael Wetter:
Renamed protected parameters for consistency with the naming conventions. - December 6, 2011 by Michael Wetter:
Removed protected variablerhoAve. - August 12, 2011 by Michael Wetter:
Changed model to use the new function IDEAS.Airflow.Multizone.BaseClasses.powerLawFixedM. - July 20, 2010 by Michael Wetter:
Migrated model to Modelica 3.1 and integrated it into the Buildings library. - February 8, 2005 by Michael Wetter:
Released first version.