Implementation of a hydraulic check valve. Note that the small reverse flows can still occur with this model.

Main equations

The basic flow function

m = sign(Δp) k √ Δp  ,

with regularization near the origin, is used to compute the pressure drop. The flow coefficient

k = m ⁄ √ Δp  

is increased from l*KV_Si to KV_Si, where KV_Si is equal to Kv but in SI units. Therefore, the flow coefficient k is set to a value close to zero for negative pressure differences, thereby restricting reverse flow to a small value. The flow coefficient k saturates to its maximum value at the pressure dpValve_closing. For larger pressure drops, the pressure drop is a quadratic function of the flow rate.

Typical use and important parameters

The parameters m_flow_nominal and dpValve_nominal determine the flow coefficient of the check valve when it is fully opened. A typical value for a nominal flow rate of 1 m/s is dpValve_nominal = 3400 Pa. 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.


Generated at 2021-12-01T01:32:23Z by OpenModelicaOpenModelica 1.19.0~dev-429-g962c211 using GenerateDoc.mos