a0 = 661.47 # Knots
d0 = 1.125 # Kg/m2
p0 = 101235 # Pa
T0 = 288.15 # K
g = 9.80665 # m/s2
L = 0.0065 # K/m
R = 8.31447 # J(mol*k)
M = 0.0289644 # Kg/mol
def pressure_at_altitude(alt):
return p0 * pow(( 1 - Lalt/T0), (gM)/(R*L))
def density_at_altitude(alt):
p = pressure_at_altitude(alt)
return (p * M) / (R * (T0 - L * alt))
def tas_to_eas(tas, alt):
d = density_at_altitude(alt)
return tas*sqrt(d/d0)
def eas_to_mach(eas, alt):
p = pressure_at_altitude(alt)
mach = (eas/a0)*sqrt(p0/p)
if mach < 0.91:
return "Slow"
elif mach < 1.01:
return "LTD"
elif mach < 1.11:
return "HTD"
else:
return mach