modelPartialDamper

Base model for dampers

Information

This is the base model for Damper_parallelBlades and Damper_opposedBlades strongly inspired from the PartialValve of Modelica Standard Library (MSL). The model is based on the IEC 534 / ISA-75.01.01-2007 standard for valve sizing.

The model optionally supports reverse flow conditions (assuming symmetrical behaviour) or check valve operation, and has been suitably regularized, compared to the equations in the standard, in order to avoid numerical singularities around zero pressure drop operating conditions.

The model assumes adiabatic operation (no heat losses to the ambient); changes in kinetic energy from inlet to outlet are neglected in the energy balance.

Modelling options

The following options are available to specify the valve flow coefficient in fully open conditions:

  • CvData = Modelica.Fluid.Types.CvTypes.Av: The cross section surface area is given by the metric A coefficient (m^2).
  • CvData = Modelica.Fluid.Types.CvTypes.Kv: the flow coefficient is given by the metric Kv coefficient (m^3/h).
  • CvData = Modelica.Fluid.Types.CvTypes.Cv: the flow coefficient is given by the US Cv coefficient (USG/min).
  • CvData = Modelica.Fluid.Types.CvTypes.OpPoint: the flow is computed from the nominal operating point specified by p_nominal, dp_nominal, m_flow_nominal, rho_nominal, opening_nominal.

The nominal conditions (mainly pressure drop dp_nominal and mass flow rate m_flow_nominal) must always be specified;

  • To avoid numerical singularities, the flow characteristic is modified for pressure drops less than dp_small. The default value for dp_small is 1% of the nominal pressure drop dp_nominal. Increase dp_small if numerical problems occur in dampers with very low pressure drops
  • To be used a guess values. Moreover the homotopy operator used dp_nominal and m_flow_nominal to compute the flow with the 'simplified' solution.

If checkValve is true, then the flow is stopped when the outlet pressure is higher than the inlet pressure; otherwise, reverse flow takes place. Use this option only when needed, as it increases the numerical complexity of the problem.

The valve opening characteristic valveCharacteristic, linear by default, can be replaced by any user-defined function available in the ValveCharacteristics package. Functions provides by the Modelica Standard Library (MSL) are compatible. The characteristics for constant port_a.p and port_b.p pressures with continuously changing opening are shown in the next two figures:

ValveCharacteristics.png

The treatment of parameters Kv and Cv slightly differs from the explaination detailled in the User's Guide and derives more from the standard.


In the above equation, m_flow and p unit are respectively in m3/h and bar.




Where:

  • m_flow is the mass flow rate in m3/h
  • Y is the expansion factor as defined in the standard
  • x is the ratio of pressure differential to upstream absolute pressure (dp /p)
  • Fγ is the Specific heat ratio factor (γ/1.4)
  • d is the upstream density
  • N6 is a constant depending of the chosen coefficient Kv or Cv

Parameters

TypeNameDefaultDescription
Assumptions
BooleanallowFlowReversaltrue= true to allow flow reversal, false restricts to design direction (port_a -> port_b)
BooleancheckValvefalseReverse flow stopped
Advanced
Medium.AbsolutePressuredp_startdp_nominalGuess value of dp = port_a.p - port_b.p
Medium.MassFlowRatem_flow_startm_flow_nominalGuess value of m_flow = port_a.m_flow
SI.Pressuredp_small0.01*dp_nominalRegularisation of zero flow
Medium.MassFlowRatem_flow_small0.0Small mass flow rate for regularization of zero flow
Advanced › Diagnostics
Booleanshow_Ttrue= true, if temperatures at port_a and port_b are computed
Booleanshow_V_flowtrue= true, if volume flow rate at inflowing port is computed
Flow Coefficient
Modelica.Fluid.Types.CvTypesCvDataModelica.Fluid.Types.CvTypes.OpPointSelection of flow coefficient
SI.AreaA0Damper cross section surface area
RealKv0Kv (metric) flow coefficient [m3/h]
RealCv0Cv (US) flow coefficient [USG/min]
Nominal operating point
SI.Pressuredp_nominalNominal pressure drop
Medium.MassFlowRatem_flow_nominalNominal mass flow rate
Medium.Densityrho_nominalMedium.density_pTX(Medium.p_default, Medium.T_default, Medium.X_default)Nominal inlet density
Realopening_nominal1Nominal opening

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_aFluid connector a (positive design flow direction is from port_a to port_b)
Modelica.Fluid.Interfaces.FluidPort_bport_bFluid connector b (positive design flow direction is from port_a to port_b)
Modelica.Blocks.Interfaces.RealInputopeningValve position in the range 0..1

Components

TypeNameDefaultDescription
Medium.MassFlowRatem_flowMass flow rate in design flow direction
Modelica.SIunits.PressuredpPressure difference between port_a and port_b (= port_a.p - port_b.p)
Modelica.SIunits.VolumeFlowRateV_flowm_flow/Modelica.Fluid.Utilities.regStep(m_flow, Medium.density(state_a), Medium.density(state_b), m_flow_small)Volume flow rate at inflowing port (positive when flow from port_a to port_b)
Medium.Temperatureport_a_TModelica.Fluid.Utilities.regStep(port_a.m_flow, Medium.temperature(state_a), Medium.temperature(Medium.setState_phX(port_a.p, port_a.h_outflow, port_a.Xi_outflow)), m_flow_small)Temperature close to port_a, if show_T = true
Medium.Temperatureport_b_TModelica.Fluid.Utilities.regStep(port_b.m_flow, Medium.temperature(state_b), Medium.temperature(Medium.setState_phX(port_b.p, port_b.h_outflow, port_b.Xi_outflow)), m_flow_small)Temperature close to port_b, if show_T = true

Contents

NameDescription
valveCharacteristic
MediumMedium in the component