This example shows how to implement a steady, viscous flow through an insulated, constant-area duct using the Aerospace Toolbox™ software. This flow is also called Fanno line flow.
This section describes the problem to be solved. It also provides necessary equations and known values.
Fanno line flow is the modeling of perfect gas flow through a constant-area duct that does not change with time and which is adiabatic. Wall friction is the main mechanism for the change of the flow variables. This example looks at Fanno flow of air entering a 3 centimeter diameter pipe that is 45 centimeters long at a Mach number of 0.6. The conditions at the inlet, also called station 1, are static pressure of 150 kilopascals and static temperature of 300 Kelvin. The duct is assumed to have a coefficient of friction of 0.02. Calculate the Mach number, static pressure and static temperature at the exit of the duct or station 2.
ductPicture = astfrictionduct;
The given information in the problem is:
ductLength = 0.45; % Length of the duct [m] diameter = 0.03; % Diameter of the duct [m] inletMach = 0.6; % Mach number at the duct inlet [dimensionless] inletPressure = 150; % Static pressure at the duct inlet [kPa] inletTemperature = 300; % Static temperature at the duct input [K] frictionCoeff = 0.02; % Duct friction coefficient [dimensionless]
The fluid is air which has the following specific heat ratio.
k = 1.4; % Specific heat ratio [dimensionless]
The Fanno parameter is a dimensionless quantity that indicates how much influence friction will have while the fluid is flowing through the duct. For a given duct, the Fanno parameter is defined as
For the circular pipe, assume the hydraulic diameter is the inner diameter of the pipe. The friction coefficient, f, is given by the following expression:
Note, this example uses the convention in which a factor of four is not visible in the Fanno parameter. This convention defines the friction coefficient as four times the skin friction over the dynamic pressure. Friction will have a greater effect on the flow in a long duct than in a short duct because the flow is impeded by more wall surface friction. Additionally, friction is more dominant when the duct is narrow. This is because the boundary layer affects a larger portion of the flow along the walls than when the duct width is large.
Friction is an energy loss that generates entropy (irreversibility) in the system. The increase in entropy causes the flow to tend towards the choked condition (Mach = 1). The choked condition occurs if the length of the duct is long enough. For a given Mach number and specific heat ratio, the reference Fanno parameter for choked flow is
This example provides the length of the duct, the diameter of the duct, and the friction coefficient. Therefore, the actual Fanno parameter of the duct can be computed as follows:
fannoParameter = frictionCoeff * ductLength / diameter;
This example also provides the Mach number and specific heat ratio. This enables you to calculate the reference Fanno parameter for the inlet condition, the inlet temperature ratio and inlet the pressure ratio. Use the flowfanno function from the Aerospace Toolbox:
[~, inletTempRatio, inletPresRatio, ~, ~, ~, inletFannoRef] = flowfanno(k, inletMach);
The subscript indicates the flow station.
Unstarred quantities are the local values of the given variables.
Starred quantities are referenced value of the given variables if the flow is brought to the choked condition.
The length of the inlet reference Fanno parameter, also called inlet max length, is the length that the pipe needs to be to have choked flow for a given inlet condition. If the actual length is less than the inlet max length, an extension to the pipe is needed for choked flow. This choked flow corresponds to a reference Fanno parameter for the outlet. Since the diameter and friction coefficient are given in the problem statement, only the lengths vary in the following equation for the outlet reference Fanno parameter:
outletFannoRef = inletFannoRef - fannoParameter;
Next, use flowfanno to calculate the flow ratios at the outlet station. The third input, 'fannosub', indicates that the second input, outletFannoRef, is a subsonic Fanno parameter input.
[outletMach, outletTempRatio, outletPresRatio] = flowfanno(k, outletFannoRef, 'fannosub');
Use the temperature ratios found at the inlet and outlet to calculate the temperature and pressure at the outlet. The reference conditions are the same at both stations because the duct is insulated. In addition, assume that the effects of friction act on both stations in the same manner. As a result, we have $
Therefore, the temperature at the outlet and the pressure at the outlet are
outletTemperature = inletTemperature / inletTempRatio * outletTempRatio;
outletPressure = inletPressure / inletPresRatio * outletPresRatio;
The values that we wanted to calculate are
outletMach % [dimensionless] outletTemperature % [K] outletPressure % [kPa]
outletMach = 0.7093 outletTemperature = 292.2018 outletPressure = 125.2332
For Fanno line flow where the inlet flow is subsonic, the temperature and pressure always decrease through the duct. For all Fanno line flow cases the Mach number moves closer to one.
 James, J. E. A., "Gas Dynamics, Second Edition", Allyn and Bacon, Inc, Boston, 1984.