# Aerodynamic Propeller

**Libraries:**

Simscape /
Driveline /
Engines & Motors

## Description

The Aerodynamic Propeller block represents a propeller that converts a rotational mechanical motion into thrust for aerodynamic applications. You can parameterize the propeller by using constants, polynomials, or tabulated data to characterize the thrust and power or coefficients. You can provide tabulated advance velocity data, tabulated advance angle data, or tabulated airfoil lift and drag coefficient data. When you model inertia, the default block parameters represent a 10 kg, two-blade propeller with a 1.5 m diameter.

You can use a physical signal to control the blade pitch.

This terminology is helpful for understanding the block:

*Advance velocity*is the speed of the flow through the propeller,*V*._{a}*Advance ratio*is the speed of the flow through the propeller with respect to the propeller tip angular speed expressed as a ratio. The block uses this to determine*k*and_{T}*k*when you set_{P}**Parameterization**to`Polynomial fit`

or`Tabulated data for advance ratio`

.*Advance angle*is the angular location of the propeller operational conditions on a four quadrant plot. The block uses this to determine*C*and_{T}*C*when you set_{Q}**Parameterization**to`Tabulated data for advance ratio`

.*Quadrant*is the relative two-dimensional location of the propeller operating condition where the vertical axis is*V*and the horizontal axis is_{a}*ω*.*Pitch angle*is the angle between the plane of the blade rotation and the chord line of the blade.

The block equations refer to these quantities:

*T*is the propeller thrust.*Q*is the propeller torque.*ρ*is the fluid density. You can specify the fluid density using the**Density**parameter or the**Rho**port.*θ*is the pitch angle.*D*is the**Propeller diameter**parameter.*ω*is the propeller angular speed input at port**R**. For more information about using angular units in Simscape™, see Angular Units.*n*is the propeller angular speed in revolutions per second, which consistently nondimensionalizes the power and thrust. The block defines*ω = 2πn*.*n*is the_{Thr}**Rotational speed threshold**parameter.*ε*is the**Propeller direction**parameter.*k*is the thrust coefficient with respect to the propeller rotational speed._{T}*k*is the power coefficient with respect to the propeller rotational speed._{P}*p*is the polynomial thrust coefficient vector or 2-D matrix._{kT}*p*is the polynomial power coefficient vector or 2-D matrix._{kP}*C*is the thrust coefficient with respect to the relative advance velocity._{T}*C*is the torque coefficient with respect to the relative advance velocity._{Q}*k*is the_{Thr}**Saturation threshold for nondimensional coefficients**parameter.*J*is the advance ratio.*V*is the advance velocity. Specify the advance velocity using the_{a}**Va**port.*V*is the relative advance velocity at a blade section at 70% of the blade radius._{R}*η*is the efficiency.*C*is the thrust coefficient based on the blade relative advance velocity at 70% blade radius.^{*}_{T}*C*is the reference thrust coefficient vector or 2-D matrix.^{*}_{T,TLU}*C*is the torque coefficient based on the blade relative advance velocity at 70% blade radius.^{*}_{Q}*C*is the reference torque coefficient vector or 2-D matrix.^{*}_{Q,TLU}*β*is the advance angle.*β*is the reference advance angle._{TLU}

### Parameterizations

The propeller performance depends on the thrust and power coefficients. The
**Parameterization** parameter gives you different options to
control these coefficients. The propeller output depends on the quadrant where the
propeller operates. The block defines the four quadrants as:

First quadrant:

*+V*,_{a}*+n*Second quadrant:

*+V*,_{a}*-n*Third quadrant:

*-V*,_{a}*-n*Fourth quadrant:

*-V*,_{a}*+n*

The figure shows a visual representation of the quadrants.

When you set **Parameterization** to
`Constant coefficients`

, you specify the thrust and
power coefficients directly. Otherwise, the block computes these coefficients
depending on the **Parameterization** setting.

**Advance Ratio**

When you set **Parameterization** to ```
Polynomial
fit
```

or ```
Tabulated data for advance
ratio
```

, the block uses the advance ratio, *J*.
The block uses a numerically smoothed version of the fundamental thrust and
power equations such that

$$\begin{array}{l}T={k}_{T}\rho {D}^{4}\epsilon n\sqrt{{n}^{2}+{n}_{thr}^{2}}\\ Q=\frac{{k}_{P}\rho {D}^{5}}{2\pi}n\sqrt{{n}^{2}+{n}_{thr}^{2}}\end{array}$$

The block defines the advance ratio as

$$J=\frac{{V}_{a}\epsilon n}{D({n}^{2}+{n}_{Thr}^{2})},$$

where the angular speed threshold
*n _{Thr}* linearizes the propeller
rotational speed,

*n*, for smoothing.

When you set **Parameterization** to:

`Polynomial fit`

—*k*and_{T}*k*vary with time according to the values you specify for the polynomial coefficient parameters. The block saturates_{P}*J*to be between 0 and the first positive root of the polynomial and restricts*k*and_{T}*k*to always be positive. The block calculates the thrust and power coefficients as_{P}$$\begin{array}{l}{k}_{T}={\displaystyle \sum _{j=1:N}^{N}{p}_{kT,j}{J}^{j}}\\ {k}_{P}={\displaystyle \sum _{j=1:N}^{N}{p}_{kP,j}{J}^{j}}\end{array}$$

where

*p*and_{kT}*p*represent the polynomial coefficients._{kP}`Tabulated data for advance ratio`

— You specify tabulated values for*k*and_{T}*k*for given values of_{P}*J*or*J*and*θ*, depending on the**Blade pitch type**parameter.

When **Efficiency sensor** is on, the block calculates the
efficiency as

$$\eta =\frac{Powe{r}_{out}}{Powe{r}_{in}}=\frac{T{V}_{A}}{2\pi nQ}=\sqrt{{J}^{2}+{k}_{Thr}^{2}}\frac{{k}_{T}}{\sqrt{{k}_{P}^{2}+{k}_{Thr}^{2}}}$$

**Advance Angle**

When you set **Parameterization** to ```
Tabulated data for
advance angle
```

, the block uses thrust and power coefficients
with respect to relative advance angle. The block defines the advance angle as

$$\beta =\mathrm{arctan}\left(\frac{{V}_{a}}{0.7\pi \epsilon nD}\right),$$

where *β* is cyclic. You must ensure that
the coefficient extrapolation and cycle wrapping occur as expected. The block
defines the thrust and power coefficients for relative advance velocity as

$$\begin{array}{l}{C}_{T}^{*}=\frac{T}{{\scriptscriptstyle \frac{1}{8}}\rho {V}_{R}^{2}\pi {D}^{2}}\\ {C}_{Q}^{*}=\frac{Q}{{\scriptscriptstyle \frac{1}{8}}\rho {V}_{R}^{2}\pi {D}^{3}}\end{array}$$

where *V _{R}* is the
relative advance velocity at a blade section at 70% of the blade radius, such that

$${V}_{R}^{2}={V}_{A}^{2}+{\left(0.7D\pi \epsilon n\right)}^{2}.$$

Rearranging the coefficient equations yields the block equations for thrust and torque with respect to relative advance velocity:

$$\begin{array}{l}T={C}_{T}^{*}{\scriptscriptstyle \frac{1}{8}}\rho {V}_{R}^{2}{D}^{2}\\ Q={C}_{Q}^{*}{\scriptscriptstyle \frac{1}{8}}\rho {V}_{R}^{2}{D}^{3}\end{array}$$

When you set **Blade pitch** to:

`Constant`

, the block calculates the thrust and power coefficients as$$\begin{array}{l}{C}_{T}^{*}=tablelookup\left({\beta}_{TLU},{C}_{T,TLU}^{*},\beta ,\text{interpolation=}interp\_method,\text{extrapolation=}extrap\_method\right)\\ {C}_{Q}^{*}=tablelookup\left({\beta}_{TLU},{C}_{Q,TLU}^{*},\beta ,\text{interpolation=}interp\_method,\text{extrapolation=}extrap\_method\right)\end{array}$$

`Controlled`

, the block calculates the thrust and power coefficients as$$\begin{array}{l}{C}_{T}^{*}=tablelookup\left(P/{D}_{TLU},{\beta}_{TLU},{C}_{T,TLU}^{*},P/D,\beta ,\text{interpolation=}interp\_method,\text{extrapolation=}extrap\_method\right)\\ {C}_{Q}^{*}=tablelookup\left(P/{D}_{TLU},{\beta}_{TLU},{C}_{Q,TLU}^{*},P/D,\beta ,\text{interpolation=}interp\_method,\text{extrapolation=}extrap\_method\right)\end{array}$$

The basis of the propeller efficiency is the fundamental relationship

$$\eta =\frac{Powe{r}_{out}}{Powe{r}_{in}}=\frac{T{V}_{A}}{2\pi \epsilon nQ}=\frac{{V}_{A}{C}_{T}^{*}}{2\pi \epsilon nD{C}_{Q}^{*}}.$$

When **Efficiency sensor** is on, the block
calculates the smoothed efficiency as

$$\eta =\frac{1}{2\pi D}\sqrt{\frac{{V}_{A}^{2}{C}^{*2}+{\left(D\pi {n}_{Thr}{K}_{Thr}\right)}^{2}}{{n}^{2}{C}_{Q}^{*2}+{\left(0.1{n}_{Thr}{K}_{Thr}\right)}^{2}}}.$$

**Blade Element Lift and Drag Coefficients**

When you set **Parameterization** to ```
Tabulated data for
airfoil lift and drag coefficients
```

, you can parameterize the
lift and drag coefficients and the airfoil geometry for a given blade element.
The block treats the propeller as a continuous disc. Conservation of momentum
applies to the air that crosses the disc when the block calculates the induced
velocity, *v _{i}*. The block uses the
induced velocity to find the magnitude and direction of the total flow velocity
at a vector of radial locations along the blade, which it then uses to find lift
and drag based on the lift and drag coefficient lookup tables. These quantities
are specific to this parameterization:

*T*— Thrust calculated by momentum theory_{MT}*v*— Flow velocity induced by the motion of the propeller_{i}*v*— Freestream inflow velocity of the air that the propeller experiences_{inflow}*v*— Axial velocity at the blade location_{ax}*v*— Theoretical hover-induced velocity_{h}*λ*— Non-dimensionalized*v*_{ax}*g(λ)*— Function the block uses for inflow*T*— Thrust as calculated by blade element theory_{BET}*Q*— Torque as calculated by blade element theory_{BET}*N*— Number of propeller blades_{blades}*r*— Discrete blade element location as defined by the**Nondimensional radial location vector, r**parameter, which the block interpolates to find*y**c*— Chord length for at a position along the blade, where the length is non-dimensionalized such that*c*=*Geometric chord length/D**e*— Nondimensional location of the root cutout as given by the first element of the**Nondimensional radial location vector, r**parameter*v*— Tangential velocity as a function of_{r}(y)*y**C*— Element-wise coefficients of the lift and drag, respectively_{l},C_{d}*ϕ(y)*— Inflow angle at a given point along the blade

The block uses momentum theory to define a smoothed thrust equation such that

$${T}_{MT}=\frac{2\rho \pi {D}^{2}}{4}{v}_{inflow}\cdot {v}_{i},$$

where the block implicitly solves for
*T _{MT}* and

*v*. The block smoothes

_{i}*v*to find

_{ax}*v*, which allows for transitions between forward and astern flow such that

_{inflow}$$\begin{array}{l}{v}_{inflow}=\sqrt{{v}_{ax}^{2}+{v}_{h}^{2}\cdot \text{g(}\lambda )}\\ {v}_{h}=\sqrt{\frac{2\cdot \left|{T}_{MT}\right|}{\rho \pi {D}^{2}}}\\ \lambda =2{v}_{ax}/\omega D\\ g(\lambda )=\{\begin{array}{cc}(2+\lambda )-2-{\lambda}^{2}+(1+\lambda )\cdot \left(\text{0}\text{.109+0}\text{.217(}\lambda -0.15{)}^{2}\right)& \text{for}-1\le \lambda \le 0.6378\\ 0& \text{else}.\end{array}\end{array}$$

The block interpolates the values from the
**Nondimensional radial location vector, r** parameter to
find *y*. Then the block interpolates the lift and drag
coefficients to find *C _{l}(y)* and

*C*based upon the tabulated angle of attack and lift and drag coefficients. The block uses blade element theory to calculate the thrust and torque such that

_{d}(y)$$\begin{array}{l}{T}_{BET}=\frac{{N}_{blades}\rho {D}^{2}}{4}{\displaystyle \underset{e}{\overset{1}{\int}}\left({v}_{r}^{2}+{v}_{ax}^{2}\right)\cdot \left({C}_{l}\mathrm{cos}\varphi (y)-{C}_{d}\mathrm{sin}\varphi (y)\right)}\cdot c\mathrm{dy}\\ {Q}_{BET}=\frac{{N}_{blades}\rho {D}^{3}}{8}{\displaystyle \underset{e}{\overset{1}{\int}}\left({v}_{r}^{2}+{v}_{ax}^{2}\right)\cdot \left({C}_{l}\mathrm{sin}\varphi (y)-{C}_{d}\mathrm{cos}\varphi (y)\right)}\cdot cy\mathrm{dy}\end{array}$$

The block performs this integration across the each discrete
blade element. The block discretizes *y* according to the
specification in the **Number of blade elements**
parameter.

**Controlled Pitch**

When you set **Blade pitch type** to
`Controlled`

, you can parameterize the propeller
over a range of pitch angles, *θ*. You must specify
*θ* as a vector in the **Pitch angle vector,
θ** parameter, where each element corresponds to a row in both the
*k _{T}* and

*k*arrays.

_{P}### Inertia

You can optionally include translational and rotational propeller inertia. To simulate
inertia, set **Rotational connections** or **Translational
connections** to `Conserving`

, and select
**Model inertia**. When you select **Model
inertia** and set **Rotational connections** to
`Conserving`

, set the initial rotational velocity or
torque on the shaft in the **Initial Targets** section, or set an
algebraically linked variable to high priority to initialize the rotational inertia.
When you select **Model inertia** and set **Translational
connections** to `Conserving`

, set the initial
translational velocity or thrust in the **Initial Targets**
section, or set an algebraically linked variable to high priority to initialize the
translational mass.

**Note**

For rotational conserving connections, the block logs
`Q`

, the aerodynamic torque, and
`Inertia.t`

.

For translational conserving connections, the block logs
`thrust`

, the aerodynamic thrust, and
`mass.f`

.

You can use an Ideal Torque Sensor or Ideal Force Sensor blocks to log the sum of the inertia and the aerodynamic torque or force, respectively.

### Assumptions and Limitations

The block treats the fluid velocity as quasi-steady in time. Fluid flows uniformly over the propeller.

The block only accounts for axial flow across the propeller.

When you set

**Parameterization**to`Polynomial fit`

, the block assumes that the propeller power and thrust coefficients are symmetric with the first quadrant.When you set

**Parameterization**to`Tabulated data for advance ratio`

, the block assumes the power and thrust coefficients are identical in the first and third quadrants and the second and fourth quadrants. If all elements of*J*are positive, then the block assumes the coefficients in all quadrants are symmetric with the first quadrant.When you set

**Parameterization**to`Tabulated data for advance angle`

, the block removes the sign from*V*. To attain negative thrusts and torques, you must include the signs in the values of_{a}*C*and_{T}*C*._{Q}

### Variables

To set the priority and initial target values for the block variables prior to simulation,
use the **Initial Targets** section in the block dialog box or Property
Inspector. For more information, see Set Priority and Initial Target for Block Variables.

Nominal values provide a way to specify the expected magnitude of a variable in a model.
Using system scaling based on nominal values increases the simulation robustness. Nominal
values can come from different sources, one of which is the **Nominal
Values** section in the block dialog box or Property Inspector. For more
information, see Modify Nominal Values for a Block Variable.

## Examples

## Ports

### Inputs

### Outputs

### Conserving

## Parameters

## Extended Capabilities

## Version History

**Introduced in R2022b**