# Check Valve (IL)

**Libraries:**

Simscape /
Fluids /
Isothermal Liquid /
Valves & Orifices /
Directional Control Valves

## Description

The Check Valve (IL) block represents a check valve
with free flow from port **A** to port **B** and
restricted flow from port **B** to port **A**. When
the pressure at port **A** or the pressure differential meets or
exceeds the set pressure threshold, the valve begins to open.

### Opening Parameterization

When **Opening parameterization** is set to ```
Linear -
Area vs. pressure
```

, the valve open area is linearly related to the
opening pressure differential.

**Opening Pressure**

There are two options for valve control:

When

**Opening pressure differential**is set to`Pressure differential`

, the control pressure is the pressure differential between ports**A**and**B**. The valve begins to open when*P*_{control}meets or exceeds the**Cracking pressure differential**.When

**Opening pressure differential**is set to`Pressure at port A`

, the control pressure is the pressure difference between port**A**and atmospheric pressure. When*P*_{control}meets or exceeds the**Cracking pressure (gauge)**, the valve begins to open.

**Opening Area and Pressure**

The linear parameterization of the valve area is

$${A}_{valve}=\widehat{p}\left({A}_{\mathrm{max}}-{A}_{leak}\right)+{A}_{leak},$$

where the normalized pressure, $$\widehat{p}$$, is

$$\widehat{p}=\frac{{p}_{control}-{p}_{cracking}}{{p}_{\mathrm{max}}-{p}_{cracking}}.$$

When the valve is in a near-open or
near-closed position in the linear parameterization, you can maintain numerical
robustness in your simulation by adjusting the **Smoothing
factor** parameter. If the **Smoothing factor**
parameter is nonzero, the block smoothly saturates the control pressure between
*p _{cracking}* and

*p*. For more information, see Numerical Smoothing.

_{max}When you set **Opening parameterization** to
```
Tabulated data - Volumetric flow rate vs.
pressure
```

, *A _{valve}* is
the linearly interpolated value of the

**Opening area vector**parameter versus

**Pressure differential vector**parameter curve for a simulated pressure differential.

**Mass Flow Rate Equation**

Mass is conserved through the valve:

$${\dot{m}}_{A}+{\dot{m}}_{B}=0.$$

The mass flow rate through the valve is calculated as:

$$\dot{m}=\frac{{C}_{d}{A}_{valve}\sqrt{2\overline{\rho}}}{\sqrt{P{R}_{loss}\left(1-{\left(\frac{{A}_{valve}}{{A}_{port}}\right)}^{2}\right)}}\frac{\Delta p}{{\left[\Delta {p}^{2}+\Delta {p}_{crit}^{2}\right]}^{1/4}},$$

where:

*C*_{d}is the**Discharge coefficient**.*A*_{valve}is the instantaneous valve open area.*A*_{port}is the**Cross-sectional area at ports A and B**.$$\overline{\rho}$$ is the average fluid density.

*Δp*is the valve pressure difference*p*_{A}–*p*_{B}.

The critical pressure difference,
*Δp*_{crit}, is the pressure
differential associated with the **Critical Reynolds number**,
*Re*_{crit}, the flow regime transition
point between laminar and turbulent flow:

$$\Delta {p}_{crit}=\frac{\pi \overline{\rho}}{8{A}_{valve}}{\left(\frac{\nu {\mathrm{Re}}_{crit}}{{C}_{d}}\right)}^{2}.$$

*Pressure loss* describes the reduction of pressure in the
valve due to a decrease in area.
*PR*_{loss} is calculated as:

$$P{R}_{loss}=\frac{\sqrt{1-{\left(\frac{{A}_{valve}}{{A}_{port}}\right)}^{2}\left(1-{C}_{d}^{2}\right)}-{C}_{d}\frac{{A}_{valve}}{{A}_{port}}}{\sqrt{1-{\left(\frac{{A}_{valve}}{{A}_{port}}\right)}^{2}\left(1-{C}_{d}^{2}\right)}+{C}_{d}\frac{{A}_{valve}}{{A}_{port}}}.$$

*Pressure recovery* describes the positive pressure change
in the valve due to an increase in area. If you do not wish to capture this
increase in pressure, clear the **Pressure recovery** check
box. In this case, *PR*_{loss} is 1.

### Tabulated Volumetric Flow Rate Parameterization

When **Opening parameterization** is set to
`Tabulated data - Volumetric flow rate vs. pressure`

,
the valve opens according to the user-provided tabulated data of volumetric flow
rate and pressure differential between ports **A** and
**B**.

The mass flow rate is

$$\dot{m}=\overline{\rho}K\frac{\Delta p}{{\left(\Delta {p}^{2}+\Delta {p}_{crit}{}^{2}\right)}^{1/4}},$$

where:

$$\overline{\rho}$$ is the average fluid density.

$$\Delta p={p}_{A}-{p}_{B}.$$

$$\Delta {p}_{crit}=\frac{\pi \sqrt{2\overline{\rho}}}{8{C}_{d}K}{\left({\mathrm{Re}}_{crit}v\right)}^{2},$$ where

*C*is the discharge coefficient,_{d}*Re*is the critical Reynolds number, and_{crit}*ν*is the kinematic viscosity. In this parameterization,*C*and_{d}*Re*are fixed at_{crit}`0.64`

and`150`

, respectively.

When the block operates in the limits of the tabulated data,

$$K=tablelookup\left(\Delta {p}_{TLU},{K}_{TLU},\Delta p,interpolation=linear,extrapolation=nearest\right),$$

where:

*Δp*is the_{TLU}**Pressure drop vector**parameter.$${\text{K}}_{TLU}=\frac{{\dot{V}}_{TLU}}{\sqrt{\Delta {p}_{TLU}}},$$ where

*$$\dot{V}$$*is the_{TLU}**Volumetric flow rate vector**parameter.

When the simulation pressure falls below the first element of the **Pressure drop
vector** parameter,
*K*`=`

*K _{Leak}* ,

$${K}_{Leak}=\frac{{\dot{V}}_{TLU}(1)}{\sqrt{\left|\Delta {p}_{TLU}(1)\right|}},$$

where *$$\dot{V}$$ _{TLU}(1)* is the first element
of the

**Volumetric flow rate vector**parameter.

When the simulation pressure rises above the last element of the **Pressure drop
vector** parameter,
*K*`=`

*K _{Max}*,

$${K}_{Max}=\frac{{\dot{V}}_{TLU}(end)}{\sqrt{\left|\Delta {p}_{TLU}(end)\right|}},$$

where *$$\dot{V}$$ _{TLU}(end)* is the last
element of the

**Volumetric flow rate vector**parameter.

### Opening Dynamics

The linear parameterization supports valve opening and closing dynamics. If
opening dynamics are modeled, a lag is introduced to the flow response to the
modeled control pressure. *p*_{control} becomes
the dynamic control pressure, *p*_{dyn};
otherwise, *p*_{control} is the steady-state
pressure. The instantaneous change in dynamic control pressure is calculated based
on the **Opening time constant**, *τ*:

$${\dot{p}}_{dyn}=\frac{{p}_{control}-{p}_{dyn}}{\tau}.$$

By default, the block clears the **Opening
dynamics** check box.

### Faults

To model a fault, in the **Faults** section,
click the **Add fault** hyperlink next to the fault that you want to model. Use
the fault parameters to specify the fault properties. For more information about fault modeling,
see Introduction to Simscape Faults.

The **Opening area when faulted** parameter has three options:

`Closed`

`Open`

`Maintain at last value`

After the fault triggers, the valve remains at the faulted area for the rest of the simulation.

**Faulting in the Linear Parameterization**

In the linear parameterization, the fault options are defined by the valve area:

`Closed`

— The valve area freezes at the**Leakage area**.`Open`

— The valve area freezes at the**Maximum opening area**.`Maintain at last value`

— The valve freezes at the open area when the trigger occurs.

**Faulting in the Tabulated Data Parameterization**

In the tabulated parameterization, the fault options are defined by the mass flow rate through the valve:

`Closed`

— The valve freezes at the mass flow rate associated with the first elements of the**Volumetric flow rate vector**and the**Pressure drop vector**$$\dot{m}={K}_{Leak}\overline{\rho}\sqrt{\Delta p}.$$

`Open`

— The valve freezes at the mass flow rate associated with the last elements of the**Volumetric flow rate vector**and the**Pressure drop vector**$$\dot{m}={K}_{Max}\overline{\rho}\sqrt{\Delta p}$$

`Maintain at last value`

— The valve freezes at the mass flow rate and pressure differential when the trigger occurs$$\dot{m}={K}_{Last}\overline{\rho}\sqrt{\Delta p},$$

where

$${K}_{Last}=\frac{\left|\dot{m}\right|}{\overline{\rho}\sqrt{\left|\Delta p\right|}}.$$

### Predefined Parameterization

You can populate the block with pre-parameterized manufacturing data, which allows you to model a specific supplier component.

To load a predefined parameterization:

In the block dialog box, next to

**Selected part**, click the "<click to select>" hyperlink next to**Selected part**in the block dialogue box settings.The Block Parameterization Manager window opens. Select a part from the menu and click

**Apply all**. You can narrow the choices using the**Manufacturer**drop down menu.You can close the

**Block Parameterization Manager**menu. The block now has the parameterization that you specified.You can compare current parameter settings with a specific supplier component in the Block Parameterization Manager window by selecting a part and viewing the data in the

**Compare selected part with block**section.

**Note**

Predefined block parameterizations use available data sources to supply parameter values. The block substitutes engineering judgement and simplifying assumptions for missing data. As a result, expect some deviation between simulated and actual physical behavior. To ensure accuracy, validate the simulated behavior against experimental data and refine your component models as necessary.

To learn more, see List of Pre-Parameterized Components.

## Examples

## Ports

### Conserving

## Parameters

## Extended Capabilities

## Version History

**Introduced in R2020a**