5.2 Precipitation
Precipitation forms when cloud droplets or ice crystals grow large enough to fall against updrafts. The two main mechanisms are collision-coalescence (warm clouds) and the Bergeron process (cold clouds).
Precipitation Mechanisms
Collision-Coalescence
Large drops collect smaller ones. Dominant in warm tropical clouds.
Bergeron-Findeisen Process
Ice crystals grow at expense of supercooled water (lower es over ice).
Precipitation Types
Rain
Liquid drops > 0.5 mm
Snow
Ice crystals, T < 0°C through column
Sleet
Frozen raindrops, warm layer aloft
Hail
Layered ice, strong updrafts in thunderstorms
Python: Terminal Velocity
#!/usr/bin/env python3
"""precipitation.py - Raindrop terminal velocity"""
import numpy as np
import matplotlib.pyplot as plt
def terminal_velocity(D):
"""Terminal velocity for raindrops (m/s)"""
# D in mm, returns m/s
# Empirical fit (Gunn & Kinzer)
D_m = D * 1e-3 # convert to m
if D < 0.1: return 0
elif D < 1.0: return 4.5 * D**0.5
else: return 9.65 - 10.3 * np.exp(-0.6 * D)
D = np.linspace(0.1, 6, 100)
v_t = np.array([terminal_velocity(d) for d in D])
plt.figure(figsize=(10, 6))
plt.plot(D, v_t, 'b-', linewidth=2)
plt.xlabel('Drop Diameter (mm)')
plt.ylabel('Terminal Velocity (m/s)')
plt.title('Raindrop Terminal Velocity')
plt.grid(True, alpha=0.3)
plt.axhline(y=9, color='r', linestyle='--', label='Max (~9 m/s)')
plt.legend()
plt.savefig('precipitation.png', dpi=150)
plt.show()