metpy.calc.isentropic_interpolation(theta_levels, pressure, temperature, *args, **kwargs)[source]

Interpolate data in isobaric coordinates to isentropic coordinates.

  • theta_levels (array) – One-dimensional array of desired theta surfaces
  • pressure (array) – One-dimensional array of pressure levels
  • temperature (array) – Array of temperature
  • args (array, optional) – Any additional variables will be interpolated to each isentropic level.

list – List with pressure at each isentropic level, followed by each additional argument interpolated to isentropic coordinates.

Other Parameters:
  • axis (int, optional) – The axis corresponding to the vertical in the temperature array, defaults to 0.
  • tmpk_out (bool, optional) – If true, will calculate temperature and output as the last item in the output list. Defaults to False.
  • max_iters (int, optional) – The maximum number of iterations to use in calculation, defaults to 50.
  • eps (float, optional) – The desired absolute error in the calculated value, defaults to 1e-6.
  • bottom_up_search (bool, optional) – Controls whether to search for theta levels bottom-up, or top-down. Defaults to True, which is bottom-up search.


Input variable arrays must have the same number of vertical levels as the pressure levels array. Pressure is calculated on isentropic surfaces by assuming that temperature varies linearly with the natural log of pressure. Linear interpolation is then used in the vertical to find the pressure at each isentropic level. Interpolation method from [Ziv1994]. Any additional arguments are assumed to vary linearly with temperature and will be linearly interpolated to the new isentropic levels.

Examples using metpy.calc.isentropic_interpolation