pycontrails.models.cocip.wind_shear

Wind shear functions.

Functions

wind_shear(u_wind_top, u_wind_btm, ...)

Calculate the total wind shear.

wind_shear_enhancement_factor(...)

Calculate the multiplication factor to enhance the wind shear based on contrail depth.

wind_shear_normal(u_wind_top, u_wind_btm, ...)

Calculate the total wind shear normal to an axis.

pycontrails.models.cocip.wind_shear.wind_shear(u_wind_top, u_wind_btm, v_wind_top, v_wind_btm, dz)

Calculate the total wind shear.

The total wind shear is the vertical gradient of the horizontal velocity.

Parameters:
  • u_wind_top (ArrayScalarLike) – u wind speed in the top layer, [\(m \ s^{-1}\)]

  • u_wind_btm (ArrayScalarLike) – u wind speed in the bottom layer, [\(m \ s^{-1}\)]

  • v_wind_top (ArrayScalarLike) – v wind speed in the top layer, [\(m \ s^{-1}\)]

  • v_wind_btm (ArrayScalarLike) – v wind speed in the bottom layer, [\(m \ s^{-1}\)]

  • dz (float) – Difference in altitude between measurements, [\(m\)]

Returns:

ArrayScalarLike – Total wind shear, [\(s^{-1}\)]

pycontrails.models.cocip.wind_shear.wind_shear_enhancement_factor(contrail_depth, effective_vertical_resolution, wind_shear_enhancement_exponent)

Calculate the multiplication factor to enhance the wind shear based on contrail depth.

This factor accounts for any subgrid-scale that is not captured by the resolution of the meteorological datasets.

Parameters:
  • contrail_depth (npt.NDArray[np.float64]) – Contrail depth , [\(m\)]. Expected to be positive and bounded away from 0.

  • effective_vertical_resolution (float | npt.NDArray[np.float64]) – Vertical resolution of met data , [\(m\)]

  • wind_shear_enhancement_exponent (float | npt.NDArray[np.float64]) – Exponent used in calculation. Expected to be nonnegative. Discussed in paragraphs following eq. (39) in Schumann 2012 and referenced as n. When this parameter is 0, no enhancement occurs.

Returns:

npt.NDArray[np.float64] – Wind shear enhancement factor

Notes

Implementation based on eq (39) in [Schumann, 2012].

References

pycontrails.models.cocip.wind_shear.wind_shear_normal(u_wind_top, u_wind_btm, v_wind_top, v_wind_btm, cos_a, sin_a, dz)

Calculate the total wind shear normal to an axis.

The total wind shear is the vertical gradient of the horizontal velocity.

Parameters:
  • u_wind_top (ArrayScalarLike) – u wind speed in the top layer, [\(m \ s^{-1}\)]

  • u_wind_btm (ArrayScalarLike) – u wind speed in the bottom layer, [\(m \ s^{-1}\)]

  • v_wind_top (ArrayScalarLike) – v wind speed in the top layer, [\(m \ s^{-1}\)]

  • v_wind_btm (ArrayScalarLike) – v wind speed in the bottom layer, [\(m \ s^{-1}\)]

  • cos_a (ArrayScalarLike) – Cosine component of segment

  • sin_a (ArrayScalarLike) – Sine component of segment

  • dz (float) – Difference in altitude between measurements, [\(m\)]

Returns:

ArrayScalarLike – Wind shear normal to axis, [\(s^{-1}\)]