File Exchange

## Fuel fraction sizing

version 2.4.0.0 (7.24 KB) by Sky Sartorius

### Sky Sartorius (view profile)

Finds aircraft gross weight using the fuel fraction sizing method

Updated 21 Aug 2015

Read about fuel fraction sizing in Raymer's "Aircraft Design: A Conceptual Approach" or most other aircraft design text books.
FUELFRACTIONSIZING finds aircraft gross weight using the fuel fraction sizing method.
W0 = fuelfractionsizing(EWfunc, fixedW, FF, tol, maxW)
BREGUET uses the Breguet range equation to calculate the weight fraction for a cruise or loiter mission segment -OR- to find the range and endurance for a given segment weight fraction.
segFrac = breguet('Jet', 'Cruise', R, LD, TSFC, V)
segFrac = breguet('Jet', 'Loiter', E, LD, TSFC)
[R, E] = breguet('Jet', 'Range', segFrac, LD, TSFC, V)

segFrac = breguet('Prop', 'Cruise', R, LD, PSFC, [], eta_p)
segFrac = breguet('Prop', 'Loiter', E, LD, PSFC, V, eta_p)
[R, E] = breguet('Prop', 'Range', segFrac, LD, PSFC, V, eta_p)

All functions in the suite are vectorized and can accept arrays for input parameters - very useful for conducting trade studies.

Example 1: Find gross weight of a light sport aircraft with 600 nmi range, PSFC of 0.4 lb/hr/bhp, and fixed weights (pilot, passenger, cargo) of 400 lbs.
Single line:
W0 = fuelfractionsizing({3.03 -.235}, 400, 1.06*missionfuelburn...
(.98,.99,breguet('Prop','Cruise',1111200,10,6.628e-07,0,.8),.99))

Verbose:
fixedW = 400;
R = 600*1852; %convert nmi to m
L_over_D = 10;
PSFC = 0.4*1.657e-06; %convert lbm/hr/bhp to 1/m
eta_prop = 0.8;

segments = {.98 %startup, runup, taxi, takeoff
.99 %climb
breguet('Prop','Cruise', R, L_over_D, PSFC, false, eta_prop)
.99}; %decent, landing, taxi, shutdown

fuel_safety_margin = 0.06;
FF = (1+fuel_safety_margin)*missionfuelburn(segments{:});

EWfunc = @(W0) 3.03*W0.^-.235;
W0 = fuelfractionsizing(EWfunc, fixedW, FF)

Example 2: Evaluate sensitivity of W0 to variations in historical trendline parameter A.
A0 = 3.03; A = linspace(.8*A0,1.2*A0,30);
W0 = fuelfractionsizing({A -0.235}, 400, 1.06*missionfuelburn...
(.98,.99,breguet('Prop','Cruise',1111200,10,6.628e-07,0,.8),.99));
plot(A,W0); xlabel('A'); ylabel('W0 (lb)')

Example 3: Take advantage of vectorization to do a gross weight trade study for the effect of range and fixed weights on gross weight, ignoring aircraft that are heavier than the light sport category limit of 1,320 pounds.
R = 1852*(300:2:1000)'; %convert nmi to m
fixedW = 200:2:600;
[R, fixedW] = meshgrid(R,fixedW);
W0 = fuelfractionsizing({3.03 -.235},fixedW,1.06*missionfuelburn...
(.98,.99,breguet('Prop','Cruise',R,10,6.628e-07,0,.8),.99),[],1320);
surfc(R/1852,fixedW,W0,'LineStyle','none')
xlabel('Range (nmi)'); ylabel('Fixed Weights (lb)')
zlabel('Gross Weight (lb)')

### Cite As

Sky Sartorius (2019). Fuel fraction sizing (https://www.mathworks.com/matlabcentral/fileexchange/38973-fuel-fraction-sizing), MATLAB Central File Exchange. Retrieved .