Implementation of a hydraulic check valve. Note that small reverse flows can still occur with this model.
The basic flow function
ṁ = sign(Δp) k √ Δp ,
with regularization near the origin, is used to compute the mass flow rate
through the fully closed and fully open valve, respectively.
The valve is considered fully closed when subjected to a negative pressure drop,
and its flow coefficient k is then equal to l * Kv_SI
,
where Kv_SI
is equal to Kv
but in SI units.
The valve is considered fully open when the pressure drop exceeds
dpValve_closing
,
and its flow coefficient k is then equal to Kv_SI
.
For valve positions between these two extremes, a quintic spline interpolation
is applied to determine the mass flow rate as a function of
the pressure drop across the valve.
The parameters m_flow_nominal
and dpValve_nominal
determine the flow coefficient of the check valve when it is fully open.
The leakage ratio l
determines the minimum flow coefficient,
for negative pressure differences.
The parameter dpFixed_nominal
allows to include a series
pressure drop with a fixed flow coefficient into the model.
The parameter dpValve_closing
determines when the
flow coefficient starts to increase,
which is typically in the order of dpValve_nominal
.
The check valve implementation approximates the physics
where a forward pressure difference opens the valve such that
the valve opening increases, causing a growing orifice area
and thus increasing the flow coefficient.
Near dp=dpValve_closing
, the valve is fully open and the flow coefficient saturates
to the flow coefficient value determined by dpValve_nominal
and m_flow_nominal
.
For typical valve diameters, the check valve is only fully open
near nominal mass flow rate. Therefore, the model sets dpValve_closing=dpValve_nominal/2
by default.