flowfanno

Fanno line flow relations

Syntax

[mach, T, P, rho, velocity, P0, fanno] = flowfanno(gamma, fanno_flow, mtype)

Description

[mach, T, P, rho, velocity, P0, fanno] = flowfanno(gamma, fanno_flow, mtype) returns an array for each Fanno line flow relation. This function calculates the arrays for a given set of specific heat ratios (gamma), and any one of the Fanno flow types. You select the Fanno flow type with mtype.

This function uses Fanno variables given by the following. F is the Fanno parameter given by F = f*L/D. f is the friction coefficient. L is the length of constant area duct required to achieve sonic flow. D is the hydraulic diameter of the duct.

This function assumes that variables vary in one dimension only. It also assumes that the main mechanism for the change of flow variables is the change of cross-sectional area of the flow stream tubes.

If the temperature experiences large fluctuations, the perfect gas assumption might be invalid. If the stagnation temperature is above 1500 K, do not assume constant specific heats. In this case, the medium ceases to be a calorically perfect gas. Consider it a thermally perfect gas. See 2 for thermally perfect gas correction factors. If the temperature is so high that molecules dissociate and ionize (static temperature 5000 K for air), you cannot assume a perfect gas.

Input Arguments

gamma

Array of N specific heat ratios. gamma must be either a scalar or an array of N real numbers greater than 1. gamma must be a real, finite scalar greater than 1 for the following input modes: subsonic total pressure ratio, supersonic total pressure ratio, subsonic Fanno parameter, and supersonic Fanno parameter.

fanno_flow

Array of real numerical values for one Fanno flow. This argument can be one of the following:

  • Array of Mach numbers. flow_fanno must be a scalar or an array of N real numbers greater than or equal to 0. If flow_fanno and gamma are arrays, they must be the same size.

    Use flow_fanno with the mtype value 'mach'. Because 'mach' is the default of mtype, mtype is optional when this array is the input mode.

  • Array of temperature ratios. The temperature ratio is the local static temperature over the reference static temperature for sonic flow. This array must be a scalar or array of N real numbers:

    • Greater than or equal to 0 (as the Mach number approaches infinity)

    • Less than or equal to (gamma+1)/2 (at Mach number equal 0)

    Use flow_fanno with mtype value 'temp'.

  • Array of pressure ratios. The pressure ratio is the local static pressure over the reference static pressure for sonic flow. flow_fanno must be a scalar or array of real numbers greater than or equal to 0. If flow_fanno and gamma are arrays, they must be the same size.

    Use flow_fanno with mtype value 'pres'.

  • Array of density ratios. The density ratio is the local density over the reference density for sonic flow. flow_fanno must be a scalar or array of real numbers. These numbers must be greater than or equal to:

    sqrt((gamma-1)/(gamma+1)) (as the Mach number approaches infinity).

    If flow_fanno and gamma are arrays, they must be the same size.

    Use flow_fanno with mtype value 'dens'.

  • Array of velocity ratios. The velocity ratio is the local velocity over the reference velocity for sonic flow. flow_fanno must be a scalar or an array of N of real numbers:

    • Greater than or equal to 0

    • Less than or equal to sqrt((gamma+1)/(gamma-1)) (as the Mach number approaches infinity)

    If flow_fanno and gamma are both arrays, they must be the same size.

    Use flow_fanno with mtype value 'velo'.

  • Scalar value of total pressure ratio. The total pressure ratio is the local total pressure over the reference total pressure for sonic flow. flow_fanno must be greater than or equal to 1.

    Use flow_fanno with mtype values 'totalp' and 'totalpsup'.

  • Scalar value for Fanno parameter. The Fanno parameter is flow_fanno= f*L/D. f is the friction coefficient. L is the length of constant area duct required to achieve sonic flow. D is the hydraulic diameter of the duct. In subsonic mode, flow_fanno must be greater than or equal to 0. In supersonic mode, flow_fanno must be:

    • Greater than or equal to 0 (at Mach number equal 1)

    • Less than or equal to (gamma+1)/(2*gamma)*log((gamma+1)/(gamma-1))-1/gamma (as Mach number approaches infinity)

    Use flow_fanno with mtype values 'fannosub' and 'fannosup'.

mtype

A string that defines the input mode for the type of Fanno flow in fanno_flow.

TypeDescription
'mach'Default Mach number
'temp'Temperature ratio
'pres' Pressure ratio
'dens'Density ratio
'velo'Velocity ratio
'totalpsub'Subsonic total pressure ratio
'totalpsup'Supersonic total pressure ratio
'fannosub'Subsonic Fanno parameter
'fannosup'Supersonic Fanno parameter

Output Arguments

All outputs are the same size as the array inputs. If there are no array inputs, all outputs are scalars.

mach

Array of Mach numbers.

T

Array of temperature ratios. The temperature ratio is the local static temperature over the reference static temperature for sonic flow.

P

Array of pressure ratios. The pressure ratio is the local static pressure over the reference static pressure for sonic flow.

rho

Array of density ratio. The density ratio is the local density over the reference density for sonic flow.

velocity

Array of velocity ratios. The velocity ratio is the local velocity over the reference velocity for sonic flow.

P0

Array of stagnation (total) pressure ratio. The total pressure ratio is the local total pressure over the reference total pressure for sonic flow.

fanno

Array of Fanno parameters. The Fanno parameter is F = f*L/D. f is the friction coefficient. L is the length of constant area duct required to achieve sonic flow. D is the hydraulic diameter of the duct.

Examples

Calculate the Fanno line flow relations for air (gamma = 1.4) for subsonic Fanno parameter 1.2. The following returns scalar values for mach, T, P, rho, velocity, P0, and fanno.

[mach, T, P, rho, velocity, P0, fanno] = flowfanno(1.4, 1.2, 'fannosub') 

Calculate the Fanno line flow relations for gases with specific heat ratios given in the following 1 x 4 row array for the Mach number 0.5. The following yields a 1 x 4 row array for mach, T, P, rho, velocity, P0, and fanno.

gamma = [1.3, 1.33, 1.4, 1.67];
[mach, T, P, rho, velocity, P0, fanno] = flowfanno(gamma, 0.5)

Calculate the Fanno line flow relations for a specific heat ratio of 1.4 and range of temperature ratios from 0.40 to 0.70 in increments of 0.10. The following returns a 4 x 1 column array for mach, T, P, rho, velocity, P0, and fanno.

[mach, T, P, rho, velocity, P0, fanno] = flowfanno(1.4, [1.1 1.2], 'temp')

Calculate the Fanno line flow relations for gases with specific heat ratio and velocity ratio combinations as shown. The following returns a 1 x 2 array for mach, T, P, rho, velocity, P0, and fanno each. The elements of each array correspond to the inputs element-wise.

gamma = [1.3, 1.4];
V = [0.53, 0.49];
[MACH, T, P, RHO, V, P0, F] = flowfanno(gamma, V, 'velo')

References

1. James, J. E. A., Gas Dynamics, Second Edition, Allyn and Bacon, Inc, Boston, 1984.

2. NACA Technical Report 1135, 1953, National Advisory Committee on Aeronautics, Ames Research Staff, Moffett Field, Calif. Pages 667–671.

Was this topic helpful?