Frontogenesis3D#
- class rojak.turbulence.diagnostic.Frontogenesis3D(u_wind: DataArray, v_wind: DataArray, potential_temperature: DataArray, geopotential: DataArray, divergence: DataArray, vector_derivatives: dict[VelocityDerivative, DataArray])[source]#
Bases:
Diagnostic
Three-dimensional frontogenesis CAT diagnostic
The 3D frontogenesis equation is defined in [Bluestein1993] (p. 253) as,
\[\mathbf{F} = \frac{D}{Dt} | \nabla \theta |\]where \(\frac{D}{Dt}\) is the material derivative and \(\theta\) is the potential temperature.
This implementation is based on the ECMWF implementation in the IFS which ignores terms related to diabatic heating, negligible horizontal gradients of the vertical velocity and that \(\frac{ \partial w }{ \partial z } = - \delta\). It is defined in [Bechtold2021] as,
\begin{aligned} \mathbf{F} = - \frac{1}{|\nabla\theta|} &\left[\frac{ \partial \theta }{ \partial x } \left( \frac{ \partial u }{ \partial x } \frac{ \partial \theta }{ \partial x } + \frac{ \partial v }{ \partial x } \frac{ \partial \theta }{ \partial y } \right) \right. + \left. \frac{ \partial \theta }{ \partial y } \left( \frac{ \partial u }{ \partial y } \frac{ \partial \theta }{ \partial x } + \frac{ \partial v }{ \partial y } \frac{ \partial \theta }{ \partial y } \right) \right. \\ &+ \left. \frac{ \partial \theta }{ \partial z } \left( \frac{ \partial u }{ \partial z } \frac{ \partial \theta }{ \partial x } + \frac{ \partial v }{ \partial z } \frac{ \partial \theta }{ \partial y} - \delta \frac{ \partial \theta }{ \partial z }\right) \right] \end{aligned}where \(\delta\) is the divergence, i.e. \(\delta = \frac{ \partial u }{ \partial x } + \frac{ \partial v }{ \partial y }\)
- Parameters:
u_wind (DataArray) – Zonal wind speeds in m/s
v_wind (DataArray) – Meridional wind speeds in m/s
geopotential (DataArray) – Geopotential in m^2/s
divergence (DataArray) – Horizontal divergence of wind in m/s
vector_derivatives (dict[VelocityDerivative, DataArray]) – Dictionary containing all 4 velocity derivatives
potential_temperature (DataArray)
- __init__(u_wind: DataArray, v_wind: DataArray, potential_temperature: DataArray, geopotential: DataArray, divergence: DataArray, vector_derivatives: dict[VelocityDerivative, DataArray]) None [source]#
Methods
__init__
(u_wind, v_wind, ...)x_component
(dtheta_dx, dtheta_dy)y_component
(dtheta_dx, dtheta_dy)z_component
(dtheta_dx, dtheta_dy, dtheta_dz)Attributes
computed_value
name