Compare commits

...

2 commits

Author SHA1 Message Date
9309393189 Add PRESSURE_MSL magic constant 2025-03-09 23:59:25 -04:00
2724e7e28f Use 0.6 skew 2025-03-09 21:58:00 -04:00
2 changed files with 4 additions and 3 deletions

View file

@ -22,7 +22,7 @@ TEMP_CENTER = 0 # degrees C
TEMP_STEP = 5
TEMP_STEP_COUNT = math.ceil(TEMP_RANGE / TEMP_STEP)
SKEW = 0.7
SKEW = 0.6
def clamp(value, lowest, highest):
if value < lowest:

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:
"""