Links
Comment on page

Initial sizing

The aim of the initial sizing is to come up with a design which is light, performs well, and is inexpensive to manufacture and operate.
A popular method for initial sizing is the so called constraint analysis method. The method can be used to asses the required wing area and power for an aircraft such that the aircraft meets all performance requirements.
The performance requirements are defined by mathematical expressions of the following form:
TW=f(WS)\frac{T}{W}=f\left(\frac{W}{S}\right)
.
In the above equation
TW\frac{T}{W}
is referred to as the thrust to weight ratio and the
WS\frac{W}{S}
is referred to as the wing loading. The expressions relating the wing loading to the thrust to weight ratio are dependent on the performance requirements. Below are commonly used performance requirements equations. They can be found in any aircraft performance textbook.
The performance equations below are rewritten as a function of the power loading
PW\frac{P}{W}
expressed in
W/kgW/kg
. This is more convenient when designing propeller-powered aircraft.

P/W for a level, constant-velocity turn

PW=qcruise(CD0WSg+k(ng)2WSg)Vcruiseηg\frac{P}{W}=q_{cruise}\left(\frac{C_{D0}}{\frac{W}{S}g}+k\left(\frac{n}{g}\right)^2\frac{W}{S}g\right)\frac{V_{cruise}}{\eta}g

P/W for a desired rate of climb

PW=(ROCVclimb+qrefWSgCD0+kqrefWSg)Vclimbηg\frac{P}{W}=\left(\frac{ROC}{V_{climb}}+\frac{q_{ref}}{\frac{W}{S}g}C_{D0}+\frac{k}{q_{ref}}\frac{W}{S}g\right)\frac{V_{climb}}{\eta}g

P/W for a desired cruise airspeed

PW=(qcruiseCD0WSg+kqcruiseWSg)Vcruiseηg\frac{P}{W}=\left(\frac{q_{cruise}C_{D0}}{\frac{W}{S}g}+\frac{k}{q_{cruise}}\frac{W}{S}g\right)\frac{V_{cruise}}{\eta}g

P/W for a desired takeoff distance

PW=[Vtakeoff22gStakeoff+qtakeoffCD,takeoffWSg+Cf,takeoff(1qtakeoffCL,takeoffWSg)]Vclimbηg,Vtakeoff=1.1Vstall\frac{P}{W}=\left[\frac{V_{takeoff}^2}{2gS_{takeoff}}+\frac{q_{takeoff}C_{D,takeoff}}{\frac{W}{S}g}+C_{f,takeoff}\left(1-\frac{q_{takeoff}C_{L,takeoff}}{\frac{W}{S}g}\right)\right]\frac{V{climb}}{\eta}g,\\ V_{takeoff}=1.1V_{stall}
Vstall=2ρCL,maxWSgV_{stall}=\sqrt{\frac{2}{\rho C_{L,max}}\frac{W}{S}g}

P/W for a best range

PW=(qrangeCD0WSg+kqrangeWSg)Vrangeηg,Vrange=2gρWSkCD0\frac{P}{W}=\left(\frac{q_{range}C_{D0}}{\frac{W}{S}g}+\frac{k}{q_{range}}\frac{W}{S}g\right)\frac{V_{range}}{\eta}g,\quad V_{range}=\sqrt{\frac{2g}{\rho}\frac{W}{S}\sqrt{\frac{k}{C_{D0}}}}

P/W for best endurance

PW=(qenduranceCD0WSg+kqenduranceWSg)Venduranceηg,Vendurance=2gρWSk3CD0\frac{P}{W}=\left(\frac{q_{endurance}C_{D0}}{\frac{W}{S}g}+\frac{k}{q_{endurance}}\frac{W}{S}g\right)\frac{V_{endurance}}{\eta}g,\quad V_{endurance}=\sqrt{\frac{2g}{\rho}\frac{W}{S}\sqrt{\frac{k}{3C_{D0}}}}

CLmax for desired stall speed

CL,max=1qstallWSgC_{L,max}=\frac{1}{q_{stall}}\frac{W}{S}g
The expressions above depend on the following parameters:
Parameter
Description
nn
Load factor
CL,maxC_{L,max}
Maximum lift coefficient
CD0C_{D0}
Minimum drag coefficient
kk
Induced drag coefficient
η\eta
Propulsive efficiency
Vcruise,qcruiseV_{cruise}, q_{cruise}
Cruise airspeed and dynamic pressure
Vclimb,qclimb,ROCV_{climb}, q_{climb}, ROC
Climb airspeed, dynamic pressure and rate of climb
Vtakeoff,qtakeoff,StakeoffV_{takeoff}, q_{takeoff}, S_{takeoff}
Takeoff airspeed, dynamic pressure, distance
VstallV_{stall}
Stall airspeed
ρ\rho
Density
gg
Acceleration due to gravity
CfC_{f}
Ground friction coefficient
When performing initial sizing it is difficult to determine the values for the above parameters. After all we haven't even started designing the aircraft! You have probably guessed already - aircraft design is an iterative process.
The image below shows all the performance requirements equations. The required
CL,maxC_{L,max}
for a desired stall speed is also shown.
Wing vs power loading graph
In order to meet all performance requirements, the design point should be above all performance requirement equations. In the above image for a design having a wing loading of
25 kg/m225\text{ }kg/m^2
the power loading should be approximately
200 W/kg200\text{ }W/kg
. In addition for a design having a wing loading of
25 kg/m225\text{ }kg/m^2
and a desired stall speed of
15 m/s15\text{ }m/s
the maximum lift coefficient
CL,maxC_{L,max}
of the design should be approximately
1.81.8
. Consider you would like your design to have a mass of
20kg20 kg
. For a wing loading of
25 kg/m225\text{ }kg/m^2
and power loading of
200 W/kg200\text{ }W/kg
you will need a reference area of approximately
Sref=0.8 m2S_{ref}=0.8\text{ }m^2
and power system of approximately
4000 W4000\text{ }W
.

Example

Please refer to the Python code below which plots the constraint analysis for specific combination of parameters.
import math
import matplotlib.pyplot as plt
import numpy as np
k=0.0593
CD0=0.0181
eta=0.6
m=20
S=3.2200
V_turn=25
V_cruise=25
V_climb=20
ROC=10
ROC_ceiling=0.5
CL_CD0=0.2784
CL_max=1.7
rho=1.1116
rho_takeoff=1.225
rho_ceiling=0.8191
g=9.80665
phi=math.radians(30)
n=1/math.cos(phi)
S_takeoff=50
Cf_takeoff=0.025
N=100
wss = np.linspace(1,30,N)
pw_turn = np.zeros(N)
pw_climb = np.zeros(N)
pw_cruise = np.zeros(N)
pw_takeoff = np.zeros(N)
pw_ceiling = np.zeros(N)
pw_endurance = np.zeros(N)
pw_range = np.zeros(N)
i=0
for ws in wss:
#Turn
q=1/2*rho*V_turn**2
pw_turn[i]=q*(CD0/(ws*g)+k*(n/q)**2*ws*g)*V_turn/eta*g
P_turn = pw_turn[i] * m
#Climb
q=1/2*rho*V_climb**2
pw_climb[i]=(ROC/V_climb+q/(ws*g)*CD0+k/q*ws*g)*V_climb/eta*g
P_climb = pw_climb[i] * m
#Cruise
q=1/2*rho*V_cruise**2
pw_cruise[i]=(q*CD0*(1/(ws*g))+k*(1/q)*ws*g)*V_cruise/eta*g
P_cruise = pw_cruise[i] * m
#Takeoff
V_stall=math.sqrt(2/(rho_takeoff*CL_max)*ws*g)
V_takeoff=1.1*V_stall
CL_takeoff = 0.8*CL_max
CD_takeoff = CD0 + k*(CL_takeoff-CL_CD0)**2
q=1/2*rho_takeoff*(0.7*V_takeoff)**2
pw_takeoff[i]=(V_takeoff**2/(2*g*S_takeoff)+q*CD_takeoff/(ws*g)+Cf_takeoff*(1-(q*CL_takeoff)/(ws*g)))*V_takeoff/eta*g
P_takeoff=pw_takeoff[i] * m
#Ceiling
pw_ceiling[i]=(ROC_ceiling/math.sqrt(2/rho_ceiling*ws*g*math.sqrt(k/(3*CD0)))+4*math.sqrt((k*CD0)/3))*V_climb/eta*g
P_cng=pw_ceiling[i]*m
#Best endurance
V_endurance = math.sqrt(2 * g * ws * math.sqrt(k / (3*CD0)) / rho)
q = 1/2 * rho * V_endurance**2
pw_endurance[i] = (q*CD0/(ws*g)+k/q*ws*g)*V_endurance/eta*g
P_endurance = pw_endurance[i] * m
#Best range
V_range = math.sqrt(2 * g * ws * math.sqrt(k / CD0) / rho)
q = 1/2 * rho * V_range**2
pw_range[i] = (q*CD0/(ws*g)+k/q*ws*g)*V_range/eta*g
P_range = pw_range[i] * m
i=i+1
plt.figure()
plt.plot(wss,pw_cruise,label='Cruise')
plt.plot(wss,pw_climb,label='Climb')
plt.plot(wss,pw_turn,label='Turn')
plt.plot(wss,pw_endurance,label='Endurance')
plt.plot(wss,pw_range,label='Range')
plt.plot(wss,pw_ceiling,label='Ceiling')
plt.plot(wss,pw_takeoff,label='Takeoff')
plt.title('Constraints')
plt.legend()
plt.xlabel('Wing loading (kg/m^2)')
plt.ylabel('Power loading (W/kg)')
plt.show()