# Fixed-Displacement Pump (2P)

**Libraries:**

Simscape /
Fluids /
Two-Phase Fluid /
Fluid Machines

## Description

The Fixed-Displacement Pump (2P) block represents a pump that extracts
power from a mechanical rotational network and delivers it to a two-phase fluid network. The
pump displacement is fixed at a constant value that you specify through the
**Displacement** parameter.

Ports **A** and **B** represent the pump inlets. Ports
**R** and **C** represent the drive shaft and case. During
normal operation, the pressure gain from port **A** to port
**B** is positive if the angular velocity at port **R**
relative to port **C** is positive.

The Fixed-Displacement Pump (2P) block assumes that liquid
enters the pump inlet. You can use the **Report when fluid is not fully
liquid** parameter to choose what the block does when the fluid does not meet
liquid conditions. To move vapor in a two-phase fluid network, use a compressor.

### Operating Modes

The block has four modes of operation, as shown by this image.

The working mode depends on the pressure gain from port **A** to port
**B**, *Δp = p*_{B} –
*p*_{A} and the angular velocity, *ω =
ω*_{R} – *ω*_{C}:

The quadrant labeled

**1**represents the forward pump mode. In this mode, the positive shaft angular velocity causes a pressure increase from port**A**to port**B**and flow from port**A**to port**B**The quadrant labeled

**2**represents the reverse motor mode. In this mode, the flow from port**B**to port**A**causes a pressure decrease from**B**to**A**and negative shaft angular velocity.The quadrant labeled

**3**represents the reverse pump mode. In this mode, the negative shaft angular velocity causes a pressure increase from port**B**to port**A**and flow from port**B**to port**A**The quadrant labeled

**4**represents the forward motor mode. In this mode, the flow from port**A**to port**B**causes a pressure decrease from**A**to**B**and positive shaft angular velocity.

The response time of the pump is negligible in comparison with the system response time. The pump reaches steady state nearly instantaneously and is treated as a quasi-steady component.

### Energy Balance

The block associates the mechanical work done by the pump with an energy exchange. The governing energy balance equation is

$${\varphi}_{A}+{\varphi}_{B}+{P}_{hydro}=0,$$

where:

*Φ*_{A}and*Φ*_{B}are the energy flow rates at ports**A**and**B**, respectively.*P*_{hydro}is the pump hydraulic power, which is a function of the pressure difference between the pump ports: $${P}_{hydro}=\Delta p\frac{\dot{m}}{\rho}$$.

The block generates mechanical power due to torque, *τ*,
and angular velocity, *ω*:

$${P}_{mech}=\tau \omega .$$

### Flow Rate and Driving Torque

The mass flow rate generated at the pump is

$$\dot{m}={\dot{m}}_{\text{Ideal}}-{\dot{m}}_{\text{Leak}},$$

where:

$$\dot{m}$$ is the actual mass flow rate.

$${\dot{m}}_{\text{Ideal}}$$ is the ideal mass flow rate.

$${\dot{m}}_{\text{Leak}}$$ is the internal leakage mas flow rate.

The driving torque required to power the pump is

$$\tau ={\tau}_{\text{Ideal}}+{\tau}_{\text{Friction}},$$

where:

*τ*is the actual driving torque.*τ*_{Ideal}is the ideal driving torque.*τ*_{Friction}is the friction torque.

**Ideal Flow Rate and Ideal Torque**

The ideal mass flow rate is

$${\dot{m}}_{\text{Ideal}}=\rho D\omega ,$$

and the ideal required torque is

$${\tau}_{\text{Ideal}}=D\Delta p,$$

where:

*ρ*is the average of the fluid densities at ports**A**and**B**.*D*is the**Displacement**parameter.*ω*is the shaft angular velocity.*Δp*is the pressure gain from inlet to outlet.

### Leakage and Friction Parameterization

You can parameterize leakage and friction analytically, by using tabulated efficiencies or losses, or by using input efficiencies or input losses.

**Analytical**

When you set the **Leakage and friction parameterization** parameter
to `Analytical`

, the leakage flow rate is

$${\dot{m}}_{\text{Leak}}=\frac{{K}_{\text{HP}}{\rho}_{\text{Avg}}\Delta p}{{\mu}_{\text{Avg}}},$$

and the friction torque is

$${\tau}_{\text{Friction}}=\left({\tau}_{0}+{K}_{\text{TP}}\left|\Delta p\right|\text{tanh}\frac{4\omega}{\left(5\cdot {10}^{-5}\right){\omega}_{\text{Nom}}}\right),$$

where:

*K*_{HP}is the Hagen-Poiseuille coefficient for laminar pipe flows. The block computes this coefficient from the specified nominal parameters.*μ*is the dynamic viscosity of the fluid, which is the average of the values at the ports.*K*_{TP}is the friction torque vs. pressure gain coefficient at nominal displacement, which the block determines from the**Mechanical efficiency at nominal conditions**parameter,*η*:_{m}$$k=\frac{{\tau}_{fr,nom}-{\tau}_{0}}{\Delta {p}_{nom}}.$$

*τ*is the friction torque at nominal conditions:_{fr,nom}$${\tau}_{fr,nom}=\left(\frac{1-{\eta}_{m,nom}}{{\eta}_{m,nom}}\right)D\Delta {p}_{nom}.$$

*Δp*_{Nom}is the value of the**Nominal pressure gain**parameter. This value is the pressure gain at which the nominal volumetric efficiency is specified.*τ*_{0}is the value of the**No-load torque**parameter.*ω*_{Nom}is the value of the**Nominal shaft angular velocity**parameter.

The block determines the Hagen-Poiseuille coefficient from the nominal fluid and component parameters

$${K}_{\text{HP}}=\frac{D{\omega}_{\text{Nom}}{\mu}_{\text{Nom}}\left(1-{\eta}_{\text{v,Nom}}\right)}{\Delta {p}_{\text{Nom}}},$$

where:

*ω*_{Nom}is the value of the**Nominal shaft angular velocity**parameter. This value is the angular velocity at which the block specifies the nominal volumetric efficiency.*μ*_{Nom}is the value of the**Nominal Dynamic viscosity**parameter. This value is the dynamic viscosity at which the block specifies the nominal volumetric efficiency.*η*_{v,Nom}is the value of the**Volumetric efficiency at nominal conditions**parameter. This is the volumetric efficiency that corresponds to the specified nominal conditions.

**Tabulated Efficiencies**

When you set the **Leakage and friction parameterization** parameter
to `Tabulated data - volumetric and mechanical efficiencies`

, the
leakage flow rate is

$${\dot{m}}_{\text{Leak}}={\dot{m}}_{\text{Leak,Pump}}\frac{\left(1+\alpha \right)}{2}+{\dot{m}}_{\text{Leak,Motor}}\frac{\left(1-\alpha \right)}{2},$$

and the friction torque is

$${\tau}_{\text{Friction}}={\tau}_{\text{Friction,Pump}}\frac{1+\alpha}{2}+{\tau}_{\text{Friction,Motor}}\frac{1-\alpha}{2},$$

where:

*α*is a numerical smoothing parameter for the motor-pump transition.$${\dot{m}}_{\text{Leak,Motor}}$$ is the leakage flow rate in motor mode.

$${\dot{m}}_{\text{Leak,Pump}}$$ is the leakage flow rate in pump mode.

*τ*_{Friction,Motor}is the friction torque in motor mode.*τ*_{Friction,Pump}is the friction torque in pump mode.

This hyperbolic function describes the smoothing parameter *α*

$$\alpha =\text{tanh}\left(\frac{4\Delta p}{\Delta {p}_{\text{Threshold}}}\right)\xb7\text{tanh}\left(\frac{4\omega}{{\omega}_{\text{Threshold}}}\right),$$

where:

*Δp*_{Threshold}is the value of the**Pressure gain threshold for motor-pump transition**parameter.*ω*_{Threshold}is the value of the**Angular velocity threshold for motor-pump transition**parameter.

The block calculates the leakage flow rate from the volumetric efficiency, which the
** Volumetric efficiency table** parameter specifies over the
*Δp*–*ɷ* domain. When operating in pump mode, the
leakage flow rate is:

$${\dot{m}}_{\text{Leak,Pump}}=\left(1-{\eta}_{\text{v}}\right){\dot{m}}_{\text{Ideal}},$$

where *η*_{v} is the volumetric
efficiency, which the block obtains either by interpolation or extrapolation of the
tabulated data. Similarly, when operating in motor mode, the leakage flow rate is:

$${\dot{m}}_{\text{Leak,Motor}}=-\left(1-{\eta}_{\text{v}}\right)\dot{m}.$$

The block calculates the friction torque from the mechanical efficiency, which the
**Mechanical efficiency table** parameter specifies over the
*Δp*–*ɷ* domain. When operating in pump mode, the
friction torque is

$${\tau}_{\text{Friction,Pump}}=\left(1-{\eta}_{\text{m}}\right)\tau ,$$

where *η*_{m} is the mechanical
efficiency, which the block obtains either by interpolation or extrapolation of the
tabulated data. Similarly, when operating in motor mode, the friction torque is

$${\tau}_{\text{Friction,Motor}}=-\left(1-{\eta}_{\text{m}}\right){\tau}_{\text{Ideal}}.$$

**Tabulated Losses**

When you set the **Leakage and friction parameterization** parameter
to `Tabulated data - volumetric and mechanical losses`

, the block
specifies the leakage volumetric flow rate in tabulated form over the
*Δp*–*ɷ* domain:

$${q}_{\text{Leak}}={q}_{\text{Leak}}\left(\Delta p,\omega \right).$$

The block calculates the mass flow rate due to leakage from the volumetric flow rate:

$${\dot{m}}_{\text{Leak}}=\rho {q}_{\text{Leak}}.$$

The block calculates the friction torque in tabulated form:

$${\tau}_{\text{Friction}}={\tau}_{\text{Loss}}\left(\Delta p,\omega \right)\mathrm{tanh}\left(\frac{4\omega}{{\omega}_{threshold}}\right),$$

where *q*_{Leak}(*Δp*,*ω*) and *τ*_{Loss}(*Δp*,*ω*) are the volumetric and mechanical losses, specified through
interpolation or extrapolation of the tabulated data in the **Volumetric loss
table** and **Mechanical loss table** parameters.

**Input Efficiencies**

When you set the **Leakage and friction parameterization** parameter
to `Input signal - volumetric and mechanical efficiencies`

, the
leakage flow rate and friction torque calculations are identical to the
`Tabulated data - volumetric and mechanical efficiencies`

setting. The block replaces the volumetric and mechanical efficiency lookup tables with
the physical signal input ports **EV** and
**EM**.

The efficiencies are positive quantities with values between `0`

and
`1`

.The block sets input values outside of these bounds to
`0`

for inputs smaller than `0`

or
`1`

for inputs greater than `1`

. The block saturates
the efficiency signals at the value of the **Minimum volumetric
efficiency** or **Minimum mechanical efficiency ** parameter
and the **Maximum volumetric efficiency** or **Maximum mechanical
efficiency** parameter.

**Input Losses**

When you set the **Leakage and friction parameterization** parameter
to `Input signal - volumetric and mechanical losses`

, the leakage
flow rate and friction torque calculations are identical to the ```
Tabulated
data - volumetric and mechanical efficiencies
```

setting. The block replaces
the volumetric and mechanical loss lookup tables with the physical signal input ports
**LV** and **LM**.

The block expects the inputs to be positive and sets the signs automatically from the
*Δp*–*ɷ* quadrant where the component is operating. If
you provide a negative signal, the block returns zero losses.

### 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.

You can model a displacement fault, leakage, or a shaft friction torque fault.

When you enable the **Displacement fault** parameter, the block scales the
displacement by the value of the **Faulted displacement factor** parameter
when the fault triggers,

$${\text{D}}_{Fault}={f}_{D}D,$$

where *f _{D}* is the value of the

**Faulted displacement factor**parameter. When the

**Leakage and friction parameterization**parameter is

`Analytical`

, the
block does not use the faulted displacement value to calculate the Hagen-Poiseuille
coefficient or the friction torque at nominal conditions.When you enable the **Leakage fault** parameter and **Leakage and
friction parameterization** is `Analytical`

,
`Tabulated data - volumetric and mechanical efficiencies`

, or
`Input signal - volumetric and mechanical efficiencies`

, the
faulted volumetric efficiency is

$${\eta}_{v,Fault}=\frac{{\eta}_{v}}{{f}_{Leak}},$$

where *f _{Leak}* is the value of the

**Faulted leakage factor**parameter and

*η*is the volumetric efficiency. When

_{v}**Leakage and friction parameterization**is

`Analytical`

, the block uses the faulted volumetric efficiency
to calculate the Hagen-Poiseuille coefficient.When **Leakage and friction parameterization** is ```
Tabulated data
- volumetric and mechanical losses
```

or ```
Input signal -
volumetric and mechanical losses
```

, the faulted leakage volumetric flow rate
is

$${q}_{Leak,Fault}={f}_{Leak}{q}_{Leak}.$$

When you enable the **Shaft friction torque fault** parameter and
**Leakage and friction parameterization** is
`Analytical`

, ```
Tabulated data - volumetric and
mechanical efficiencies
```

, or ```
Input signal - volumetric and
mechanical efficiencies
```

, the faulted mechanical efficiency is

$${\eta}_{m,Fault}=\frac{{\eta}_{m}}{{f}_{Friction}},$$

where *f _{Friction}* is the value
of the

**Faulted shaft friction torque factor**parameter and

*η*is the mechanical efficiency. When

_{m}**Leakage and friction parameterization**is

`Analytical`

, the block uses the faulted mechanical efficiency
to calculate the friction torque at nominal conditions.When **Leakage and friction parameterization** is ```
Tabulated data
- volumetric and mechanical losses
```

or ```
Input signal -
volumetric and mechanical losses
```

, the faulted friction torque is

$${\tau}_{Friction,Fault}={f}_{Friction}{\tau}_{Friction}.$$

### Assumptions and Limitations

The block treats the pump as a quasi-steady component.

The block ignores the effects of fluid inertia and elevation.

The pump wall is rigid.

The block ignores external leakage.

## Ports

### Input

### Conserving

## Parameters

## Extended Capabilities

## Version History

**Introduced in R2022b**