modelValveDiscrete

Valve for water/steam flows with linear pressure drop

Extends from TRANSFORM.Fluid.Valves.BaseClasses.PartialTwoPortTransport (Partial element transporting fluid between two ports without storage of mass or energy).

Information

This very simple model provides a (small) pressure drop which is proportional to the flowrate if the Boolean open signal is true. Otherwise, the mass flow rate is zero. If opening_min > 0, a small leakage mass flow rate occurs when open = false.

This model can be used for simplified modelling of on-off valves, when it is not important to accurately describe the pressure loss when the valve is open. Although the medium model is not used to determine the pressure loss, it must be nevertheless be specified, so that the fluid ports can be connected to other components using the same medium model.

The model is adiabatic (no heat losses to the ambient) and neglects changes in kinetic energy from the inlet to the outlet.

In a diagram animation, the valve is shown in "green", when it is open.

Parameters

TypeNameDefaultDescription
Medium.MassFlowRatem_flow_nominalNominal mass flowrate at full opening=1
Modelica.Fluid.Types.HydraulicConductancekm_flow_nominal/dp_nominalHydraulic conductance at full opening=1
Realopening_min0Remaining opening if closed, causing small leakage flow
Assumptions
BooleanallowFlowReversal (from PartialTwoPort)true= true to allow flow reversal, false restricts to design direction (port_a -> port_b)
Visualization
BooleanshowDesignFlowDirection (from PartialTwoPort)true= false to hide the flow direction arrow
BooleanshowName (from PartialTwoPort)true= false to hide component name
Advanced
Medium.AbsolutePressuredp_start (from PartialTwoPortTransport)1e-5Guess value of dp = port_a.p - port_b.p
Medium.MassFlowRatem_flow_start (from PartialTwoPortTransport)0Guess value of m_flow = port_a.m_flow
Medium.MassFlowRatem_flow_small (from PartialTwoPortTransport)1e-2Small mass flow rate for regularization of zero flow
Advanced › Diagnostics
Booleanshow_T (from PartialTwoPortTransport)true= true, if temperatures at port_a and port_b are computed
Booleanshow_V_flow (from PartialTwoPortTransport)true= true, if volume flow rate at inflowing port is computed
Nominal operating point
SI.AbsolutePressuredp_nominalNominal pressure drop at full opening=1

Connectors

TypeNameDefaultDescription
TRANSFORM.Fluid.Interfaces.FluidPort_Flowport_a (from PartialTwoPort)Fluid connector a (positive design flow direction is from port_a to port_b)
TRANSFORM.Fluid.Interfaces.FluidPort_Flowport_b (from PartialTwoPort)Fluid connector b (positive design flow direction is from port_a to port_b)
Modelica.Blocks.Interfaces.BooleanInputopen

Components

TypeNameDefaultDescription
Medium.MassFlowRatem_flow (from PartialTwoPortTransport)Mass flow rate in design flow direction
Modelica.SIunits.Pressuredp (from PartialTwoPortTransport)Pressure difference between port_a and port_b (= port_a.p - port_b.p)
Modelica.SIunits.VolumeFlowRateV_flow (from PartialTwoPortTransport)m_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_T (from PartialTwoPortTransport)Modelica.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_T (from PartialTwoPortTransport)Modelica.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

Revisions

  • Nov 2005 by Katja Poschlad (based on ValveLinear).