Skip to contents

`r lifecycle::badge('experimental')` This function estimate the vertical velocity from model output. It works only with models on hybrid heights coordinate.

Usage

omega_hl(
  ua,
  va,
  ta,
  ps,
  ap_full,
  b_full,
  ap_half,
  b_half,
  orog,
  lon,
  lat,
  nthreads = 1
)

Arguments

ua

zonal wind component [lon, lat, lev, time] on model levels (m/s).

va

meridional wind component [lon, lat, lev, time] on model levels (m/s).

ta

air temperature [lon, lat, lev, time] on model levels.

ps

surface pressure [lon, lat, time] (hPa).

ap_full

vertical coordinate formula term ap(k) or a(k) [lev] at layer midpoints (m).

b_full

vertical coordinate formula term b(k) [lev] at layer midpoints. b(k) is dimensionless fraction.

ap_half

vertical coordinate formula term ap(k) or a(k) [lev+1] at layer interfaces (m).

b_half

vertical coordinate formula term b(k) [lev+1] at layer interfaces. b(k) is dimensionless fraction.

orog

surface altitude in meter [lon, lat].

lon

longitude coordinates [lon] (degrees east).

lat

latitude coordinates [lat] (degrees north).

nthreads

an integer specifying the number of threads to use for computation (OpenMP). Default is 1.

Value

the vertical velocity [lon, lat, lev, time] in Pa/s. Lev is from the top of the atmosphere to the surface.

Note

The function handles model output organised top of the atmosphere to the surface and vice versa. The function uses continuity equation using pressure estimated on height levels. Since there no documentation online on how models based on height levels estimate omega, this function should be used with great caution. Further discussion is found on Earth Science Stackexchange by Brendan Wallace https://earthscience.stackexchange.com/q/24989