Add PRESSURE_MSL magic constant

This commit is contained in:
XANTRONIX 2025-03-09 23:59:25 -04:00
parent 2724e7e28f
commit 9309393189

View file

@ -8,6 +8,7 @@ LAPSE_RATE_DRY = 9.8 / 1000 # degrees C per km
LAPSE_RATE_MOIST = 4.0 / 1000
PRESSURE_MAX = 1050 # millibar
PRESSURE_MSL = 1013.25
PRESSURE_MIN = 100
PRESSURE_STEP = 50
@ -68,12 +69,12 @@ def lcl(temp: float, dewpoint: float) -> float:
"""
return (temp - dewpoint) / 0.008
def pressure_height(pressure: float) -> float:
def pressure_height(pressure: float, surface: float=PRESSURE_MSL) -> float:
"""
Return the approximate altitude, in meters, for a given pressure in
millibar.
"""
return (1 - (pressure / 1013.25) ** 0.190284) * 145366.45 * 0.3048
return (1 - (pressure / surface) ** 0.190284) * 145366.45 * 0.3048
def lapse(temp: float, delta: float, rate=LAPSE_RATE_DRY) -> float:
"""