Frontogenesis3D#
- class rojak.turbulence.diagnostic.Frontogenesis3D(u_wind, v_wind, potential_temperature, geopotential, divergence, vector_derivatives)[source]#
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, v_wind, potential_temperature, geopotential, divergence, vector_derivatives)[source]#
Methods
__init__(u_wind, v_wind, ...)to_zarr(output_base_dir, *[, file_name])Export
computed_valueto a zarr storex_component(dtheta_dx, dtheta_dy)x-component of the (un-normalised) 3D frontogenesis vector, i.e. the 1st term in the
&\left[...line.y_component(dtheta_dx, dtheta_dy)y-component of the (un-normalised) 3D frontogenesis vector, i.e. the 2nd term in the
&\left[...line.z_component(dtheta_dx, dtheta_dy, dtheta_dz)z-component of the (un-normalised) 3D frontogenesis vector, i.e. the
+ \left[...line.Attributes
computed_valueThe diagnostic's computed value
nameName of the diagnostic