Contrail formation prediction and radiative forcing calculations.
Module constants
Constant
Value
Description
ei_water
1.2232
Water vapor emission index (kg/kg fuel)
spec_combustion_heat
43e6
Specific combustion heat (J/kg)
spec_air_heat_capacity
1004
Specific heat capacity of air (J/(kg*K))
DEFAULT_PROPULSION_EFFICIENCY
0.4
Default propulsion efficiency
Saturation pressure
23.0.1saturation_pressure_over_water(temperature)
Calculate saturation vapor pressure over liquid water using the Murphy & Koop (2005) formulation, valid for temperatures from 123 K to 332 K.
Parameters:
temperature: Air temperature (K). Can be scalar or array.
Returns: Saturation vapor pressure over water (Pa).
Reference: Murphy, D. M. and Koop, T. (2005). Review of the vapour pressures of ice and supercooled water for atmospheric applications. Q. J. R. Meteorol. Soc., 131, 1539-1565.
23.0.2saturation_pressure_over_ice(temperature)
Calculate saturation vapor pressure over ice using the Murphy & Koop (2005) formulation, valid for temperatures from 110 K to 273 K.
Parameters:
temperature: Air temperature (K). Can be scalar or array.
Returns: Saturation vapor pressure over ice (Pa).
Reference: Murphy, D. M. and Koop, T. (2005). Review of the vapour pressures of ice and supercooled water for atmospheric applications. Q. J. R. Meteorol. Soc., 131, 1539-1565.
Calculate critical temperature below which contrails can form (water saturation), based on the Schmidt-Appleman criterion.
Parameters:
pressure: Air pressure (Pa). Can be scalar or array.
propulsion_efficiency: Overall propulsion efficiency (0-1). Default: 0.4. Higher efficiency means higher critical temperature (contrails form more easily).
Returns: Critical temperature (K). Contrails can form when the ambient temperature is below this value.
Reference: Schumann, U. (1996). On conditions for contrail formation from aircraft exhausts. Meteorol. Z., 5, 4-23.
Returns: Tuple of (crit_temp_water, crit_temp_ice) in Kelvin. - crit_temp_water: Temperature below which contrails can form - crit_temp_ice: Temperature below which contrails can persist (if ice supersaturation exists)
Reference: Schumann, U. (1996). On conditions for contrail formation from aircraft exhausts. Meteorol. Z., 5, 4-23.
Radiative forcing
23.0.7rf_shortwave(zenith, tau, tau_c)
Calculate shortwave (solar) radiative forcing from contrails. Shortwave forcing is typically negative (cooling effect) during daytime.
Parameters:
zenith: Solar zenith angle (degrees). 0 = sun overhead, 90 = horizon, >90 = nighttime
Load OLR data from a netCDF file and interpolate to specified locations and times. Requires xarray (optional dependency).
Parameters:
filepath: Path to netCDF file containing OLR data. Expected variables: βolrβ or βOLRβ, with dimensions (time, lat/latitude, lon/longitude)
lat: Latitude(s) to interpolate (degrees)
lon: Longitude(s) to interpolate (degrees)
time: Timestamp(s) for temporal interpolation. Can be datetime, pandas Timestamp, or array of timestamps
Returns: OLR values (W/mΒ²) at the specified locations and times.
Raises:ImportError if xarray is not installed.
Example:
Computing the critical temperature at typical cruise pressure and checking if contrail formation is possible:
from openap import contrail# Typical cruise pressure (~FL350)p =23842# Pa# Critical temperature for contrail formationT_crit = contrail.critical_temperature_water(p)print(f"Critical temperature: {T_crit:.1f} K ({T_crit -273.15:.1f} Β°C)")# Check contrail formation at different ambient temperaturesT_ambient =220# K (-53Β°C)if T_ambient < T_crit:print(f"Contrails can form at {T_ambient:.1f} K")else:print(f"Contrails cannot form at {T_ambient:.1f} K")
Critical temperature: 232.3 K (-40.8 Β°C)
Contrails can form at 220.0 K