2.3 Stability & Convection

Atmospheric stability determines whether air parcels rise or sink. Unstable conditions lead to convection, clouds, and thunderstorms; stable conditions suppress vertical motion.

Static Stability

Absolutely Stable

Environmental lapse rate < moist adiabatic rate

Γ < Γm ≈ 6°C/km: Displaced parcel returns to original position

Absolutely Unstable

Environmental lapse rate > dry adiabatic rate

Γ > Γd = 9.8°C/km: Parcel accelerates away from original position

Conditionally Unstable

Γm < Γ < Γd

Most common state: stable for dry air, unstable for saturated air

Stability Criterion in Terms of Potential Temperature

$$\frac{\partial \theta}{\partial z} > 0 \;\;\text{(stable)}, \qquad \frac{\partial \theta}{\partial z} = 0 \;\;\text{(neutral)}, \qquad \frac{\partial \theta}{\partial z} < 0 \;\;\text{(unstable)}$$

Potential temperature increasing with height means the atmosphere is stably stratified.

Buoyancy & Brunt-Väisälä Frequency

Parcel Buoyancy

$$B = g\,\frac{T_{v,\text{parcel}} - T_{v,\text{env}}}{T_{v,\text{env}}}$$

Net upward acceleration on a displaced parcel, using virtual temperature $T_v$ to account for moisture effects. Positive $B$ = parcel accelerates upward.

Brunt-Väisälä (Buoyancy) Frequency

$$N^2 = \frac{g}{\theta}\frac{d\theta}{dz} = \frac{g}{T}\left(\frac{dT}{dz} + \Gamma_d\right)$$

Frequency of oscillation of a displaced parcel in a stably stratified atmosphere.

$N^2 > 0$

Stable: oscillation period $\tau = 2\pi/N$

$N^2 = 0$

Neutral stability

$N^2 < 0$

Unstable: exponential growth

Richardson Number

$$Ri = \frac{N^2}{\left(\dfrac{\partial u}{\partial z}\right)^2 + \left(\dfrac{\partial v}{\partial z}\right)^2} = \frac{N^2}{|\nabla_z \mathbf{u}|^2}$$

Ratio of buoyancy suppression to wind shear production of turbulence. When $Ri < 0.25$, shear instability (Kelvin-Helmholtz) can develop even in stable air.

CAPE & CIN

CAPE (Convective Available Potential Energy)

$$CAPE = \int_{LFC}^{EL} g \frac{T_{parcel} - T_{env}}{T_{env}} dz$$

Positive buoyancy: energy available for convection (J/kg)

  • • <1000: Weak instability
  • • 1000-2500: Moderate
  • • >2500: Strong (severe weather)

CIN (Convective Inhibition)

$$CIN = \int_{SFC}^{LFC} g \frac{T_{parcel} - T_{env}}{T_{env}} dz$$

Negative buoyancy: energy barrier to convection (J/kg)

  • • <50: Weak cap
  • • 50-200: Moderate cap
  • • >200: Strong cap (inhibits storms)

Maximum Updraft Speed from CAPE

$$w_{\max} = \sqrt{2 \cdot \text{CAPE}}$$

Theoretical maximum vertical velocity (m/s). For CAPE = 2500 J/kg, $w_{\max} \approx 71$ m/s. In practice, entrainment and drag reduce this substantially.

Level of Free Convection (LFC)

The altitude where a lifted parcel first becomes warmer than its environment. Formally defined where buoyancy changes sign:

$$T_{v,\text{parcel}}(z_{\text{LFC}}) = T_{v,\text{env}}(z_{\text{LFC}}) \quad \text{with} \quad \frac{\partial B}{\partial z}\bigg|_{\text{LFC}} > 0$$

Below the LFC, the parcel must be forced upward (e.g., by fronts, orography, or convergence). Above the LFC, positive buoyancy drives free convection up to the Equilibrium Level (EL).

Interactive Simulation: CAPE and CIN Computation

Python

Creates a synthetic atmospheric sounding and computes a lifted parcel ascent. Identifies LCL, LFC, and EL levels, numerically integrates CAPE and CIN, and displays a Skew-T style diagram with shaded buoyancy regions.

cape_cin_sounding.py103 lines

Click Run to execute the Python code

Code will be executed with Python 3 on the server