calc¶
This module contains a variety of meteorological calculations.
Dry Thermodynamics¶
add_height_to_pressure (pressure, height) |
Calculate the pressure at a certain height above another pressure level. |
add_pressure_to_height (height, pressure) |
Calculate the height at a certain pressure above another height. |
density (pressure, temperature, mixing[, …]) |
Calculate density. |
dry_lapse (pressure, temperature) |
Calculate the temperature at a level assuming only dry processes. |
dry_static_energy (heights, temperature) |
Calculate the dry static energy of parcels. |
geopotential_to_height (geopot) |
Compute height from a given geopotential. |
height_to_geopotential (height) |
Compute geopotential for a given height. |
height_to_pressure_std (height) |
Convert height data to pressures using the U.S. |
mean_pressure_weighted (pressure, *args, **kwargs) |
Calculate pressure-weighted mean of an arbitrary variable through a layer. |
potential_temperature (pressure, temperature) |
Calculate the potential temperature. |
pressure_to_height_std (pressure) |
Convert pressure data to heights using the U.S. |
sigma_to_pressure (sigma, psfc, ptop) |
Calculate pressure from sigma values. |
static_stability (pressure, temperature[, axis]) |
Calculate the static stability within a vertical profile. |
temperature_from_potential_temperature (…) |
Calculate the temperature from a given potential temperature. |
thickness_hydrostatic (pressure, temperature, …) |
Calculate the thickness of a layer via the hypsometric equation. |
Moist Thermodynamics¶
dewpoint (e) |
Calculate the ambient dewpoint given the vapor pressure. |
dewpoint_from_specific_humidity (…) |
Calculate the dewpoint from specific humidity, temperature, and pressure. |
dewpoint_rh (temperature, rh) |
Calculate the ambient dewpoint given air temperature and relative humidity. |
equivalent_potential_temperature (pressure, …) |
Calculate equivalent potential temperature. |
mixing_ratio (part_press, tot_press[, …]) |
Calculate the mixing ratio of a gas. |
mixing_ratio_from_relative_humidity (…) |
Calculate the mixing ratio from relative humidity, temperature, and pressure. |
mixing_ratio_from_specific_humidity (…) |
Calculate the mixing ratio from specific humidity. |
moist_lapse (pressure, temperature) |
Calculate the temperature at a level assuming liquid saturation processes. |
moist_static_energy (heights, temperature, …) |
Calculate the moist static energy of parcels. |
precipitable_water (dewpt, pressure[, …]) |
Calculate precipitable water through the depth of a sounding. |
psychrometric_vapor_pressure_wet (…[, …]) |
Calculate the vapor pressure with wet bulb and dry bulb temperatures. |
relative_humidity_from_dewpoint (temperature, …) |
Calculate the relative humidity. |
relative_humidity_from_mixing_ratio (…) |
Calculate the relative humidity from mixing ratio, temperature, and pressure. |
relative_humidity_from_specific_humidity (…) |
Calculate the relative humidity from specific humidity, temperature, and pressure. |
relative_humidity_wet_psychrometric (…) |
Calculate the relative humidity with wet bulb and dry bulb temperatures. |
saturation_equivalent_potential_temperature (…) |
Calculate saturation equivalent potential temperature. |
saturation_mixing_ratio (tot_press, temperature) |
Calculate the saturation mixing ratio of water vapor. |
saturation_vapor_pressure (temperature) |
Calculate the saturation water vapor (partial) pressure. |
specific_humidity_from_mixing_ratio (mixing_ratio) |
Calculate the specific humidity from the mixing ratio. |
thickness_hydrostatic_from_relative_humidity (…) |
Calculate the thickness of a layer given pressure, temperature and relative humidity. |
vapor_pressure (pressure, mixing) |
Calculate water vapor (partial) pressure. |
vertical_velocity (omega, pressure, temperature) |
Calculate w from omega assuming hydrostatic conditions. |
vertical_velocity_pressure (w, pressure, …) |
Calculate omega from w assuming hydrostatic conditions. |
virtual_potential_temperature (pressure, …) |
Calculate virtual potential temperature. |
virtual_temperature (temperature, mixing[, …]) |
Calculate virtual temperature. |
wet_bulb_temperature (pressure, temperature, …) |
Calculate the wet-bulb temperature using Normand’s rule. |
Soundings¶
bulk_shear (pressure, u, v[, heights, …]) |
Calculate bulk shear through a layer. |
bunkers_storm_motion (pressure, u, v, heights) |
Calculate the Bunkers right-mover and left-mover storm motions and sfc-6km mean flow. |
cape_cin (pressure, temperature, dewpt, …) |
Calculate CAPE and CIN. |
critical_angle (pressure, u, v, heights, …) |
Calculate the critical angle. |
el (pressure, temperature, dewpt[, …]) |
Calculate the equilibrium level. |
lcl (pressure, temperature, dewpt[, …]) |
Calculate the lifted condensation level (LCL) using from the starting point. |
lfc (pressure, temperature, dewpt[, …]) |
Calculate the level of free convection (LFC). |
mixed_layer (p, *args, **kwargs) |
Mix variable(s) over a layer, yielding a mass-weighted average. |
mixed_parcel (p, temperature, dewpt[, …]) |
Calculate the properties of a parcel mixed from a layer. |
most_unstable_cape_cin (pressure, …) |
Calculate most unstable CAPE/CIN. |
most_unstable_parcel (pressure, temperature, …) |
Determine the most unstable parcel in a layer. |
parcel_profile (pressure, temperature, dewpt) |
Calculate the profile a parcel takes through the atmosphere. |
parcel_profile_with_lcl (pressure, …) |
Calculate the profile a parcel takes through the atmosphere. |
significant_tornado (sbcape, …) |
Calculate the significant tornado parameter (fixed layer). |
storm_relative_helicity (u, v, heights, depth) |
Calculate storm relative helicity. |
supercell_composite (mucape, …) |
Calculate the supercell composite parameter. |
surface_based_cape_cin (pressure, …) |
Calculate surface-based CAPE and CIN. |
Dynamic/Kinematic¶
absolute_momentum (u_wind, v_wind[, index]) |
Calculate cross-sectional absolute momentum (also called pseudoangular momentum). |
absolute_vorticity (u, v, dx, dy, lats[, …]) |
Calculate the absolute vorticity of the horizontal wind. |
advection (scalar, wind, deltas) |
Calculate the advection of a scalar field by the wind. |
ageostrophic_wind (heights, f, dx, dy, u, v) |
Calculate the ageostrophic wind given from the heights or geopotential. |
coriolis_parameter (latitude) |
Calculate the coriolis parameter at each point. |
divergence (u, v, dx, dy) |
Calculate the horizontal divergence of the horizontal wind. |
exner_function (pressure[, reference_pressure]) |
Calculate the Exner function. |
frontogenesis (thta, u, v, dx, dy[, dim_order]) |
Calculate the 2D kinematic frontogenesis of a temperature field. |
geostrophic_wind (heights, f, dx, dy) |
Calculate the geostrophic wind given from the heights or geopotential. |
inertial_advective_wind (u, v, u_geostrophic, …) |
Calculate the inertial advective wind. |
kinematic_flux (vel, b[, perturbation, axis]) |
Compute the kinematic flux from two time series. |
montgomery_streamfunction (height, temperature) |
Compute the Montgomery Streamfunction on isentropic surfaces. |
potential_vorticity_baroclinic (…[, axis, …]) |
Calculate the baroclinic potential vorticity. |
potential_vorticity_barotropic (heights, u, …) |
Calculate the barotropic (Rossby) potential vorticity. |
q_vector (u, v, temperature, pressure, dx, dy) |
Calculate Q-vector at a given pressure level using the u, v winds and temperature. |
shearing_deformation (u, v, dx, dy) |
Calculate the shearing deformation of the horizontal wind. |
stretching_deformation (u, v, dx, dy) |
Calculate the stretching deformation of the horizontal wind. |
total_deformation (u, v, dx, dy) |
Calculate the horizontal total deformation of the horizontal wind. |
vorticity (u, v, dx, dy) |
Calculate the vertical vorticity of the horizontal wind. |
wind_components (speed, wdir) |
Calculate the U, V wind vector components from the speed and direction. |
wind_direction (u, v) |
Compute the wind direction from u and v-components. |
wind_speed (u, v) |
Compute the wind speed from u and v-components. |
Boundary Layer/Turbulence¶
brunt_vaisala_frequency (heights, …[, axis]) |
Calculate the Brunt-Vaisala frequency. |
brunt_vaisala_frequency_squared (heights, …) |
Calculate the square of the Brunt-Vaisala frequency. |
brunt_vaisala_period (heights, …[, axis]) |
Calculate the Brunt-Vaisala period. |
friction_velocity (u, w[, v, perturbation, axis]) |
Compute the friction velocity from the time series of velocity components. |
tke (u, v, w[, perturbation, axis]) |
Compute turbulence kinetic energy. |
Mathematical Functions¶
cross_section_components (data_x, data_y[, index]) |
Obtain the tangential and normal components of a cross-section of a vector field. |
first_derivative (f, **kwargs) |
Calculate the first derivative of a grid of values. |
gradient (f, **kwargs) |
Calculate the gradient of a grid of values. |
grid_deltas_from_dataarray (f) |
Calculate the horizontal deltas between grid points of a DataArray. |
laplacian (f, **kwargs) |
Calculate the laplacian of a grid of values. |
lat_lon_grid_deltas (longitude, latitude, …) |
Calculate the delta between grid points that are in a latitude/longitude format. |
normal_component (data_x, data_y[, index]) |
Obtain the normal component of a cross-section of a vector field. |
second_derivative (f, **kwargs) |
Calculate the second derivative of a grid of values. |
tangential_component (data_x, data_y[, index]) |
Obtain the tangential component of a cross-section of a vector field. |
unit_vectors_from_cross_section (cross[, index]) |
Calculate the unit tanget and unit normal vectors from a cross-section. |
Apparent Temperature¶
apparent_temperature (temperature, rh, speed) |
Calculate the current apparent temperature. |
heat_index (temperature, rh[, mask_undefined]) |
Calculate the Heat Index from the current temperature and relative humidity. |
windchill (temperature, speed[, …]) |
Calculate the Wind Chill Temperature Index (WCTI). |
Other¶
find_bounding_indices (arr, values, axis[, …]) |
Find the indices surrounding the values within arr along axis. |
find_intersections (x, a, b[, direction]) |
Calculate the best estimate of intersection. |
get_layer (pressure, *args, **kwargs) |
Return an atmospheric layer from upper air data with the requested bottom and depth. |
get_layer_heights (heights, depth, *args, …) |
Return an atmospheric layer from upper air data with the requested bottom and depth. |
get_perturbation (ts[, axis]) |
Compute the perturbation from the mean of a time series. |
isentropic_interpolation (theta_levels, …) |
Interpolate data in isobaric coordinates to isentropic coordinates. |
nearest_intersection_idx (a, b) |
Determine the index of the point just before two lines with common x values. |
parse_angle (input_dir) |
Calculate the meteorological angle from directional text. |
reduce_point_density (points, radius[, priority]) |
Return a mask to reduce the density of points in irregularly-spaced data. |
resample_nn_1d (a, centers) |
Return one-dimensional nearest-neighbor indexes based on user-specified centers. |
smooth_gaussian (scalar_grid, n) |
Filter with normal distribution of weights. |
Deprecated¶
Do not use these functions in new code, please see their documentation for their replacements.
get_wind_components (u, v) |
Calculate the U, V wind vector components from the speed and direction. |
get_wind_dir (u, v) |
Compute the wind direction from u and v-components. |
get_wind_speed (u, v) |
Compute the wind speed from u and v-components. |
interp (x, xp, *args, **kwargs) |
Interpolates data with any shape over a specified axis. |
interpolate_nans (x, y[, kind]) |
Interpolate NaN values in y. |
lat_lon_grid_spacing (longitude, latitude, …) |
Calculate the distance between grid points that are in a latitude/longitude format. |
log_interp (x, xp, *args, **kwargs) |
Interpolates data with logarithmic x-scale over a specified axis. |