gem

Wind Distribution — GEM Chapter 11

Mathematical models for wind-speed and wind-energy distributions derived from first principles in Mathematical Geoenergy (GEM), Chapter 11.


Overview

Wind energy is the archetypal example of a maximum-entropy (MaxEnt) dispersion problem. The derivation in GEM Ch. 11 starts from two elementary observations:

  1. Kinetic energy is proportional to the square of wind speed (Newtonian / drag law).
  2. The Principle of Maximum Entropy constrains the energy distribution to be exponential when only the mean energy is known.

Combining these two facts immediately yields the Rayleigh distribution for wind speed, which matches observed data from Ontario, Germany, and the Bonneville Power Administration (BPA) with no free parameters beyond the mean.


Equations

Part 1 — Wind-Speed PDF

Eq. 11-6 — Kinetic energy–velocity relation

\[E \sim \nu^2\]

Kinetic energy $E \propto \tfrac{1}{2}m\nu^2$ (proportionality absorbed into scale $c$).


Eq. 11-7 — Maximum-entropy energy distribution

\[p(E) = k\cdot e^{-kE}, \quad E \geq 0\]

Applying the Principle of Maximum Entropy with only a mean-energy constraint yields an exponential (Gibbs–Boltzmann) distribution. Here $k = 1/\bar{E}$ is the inverse mean energy.


Eq. 11-8 / 11-12 — Rayleigh wind-speed PDF (change of variables $E = c\nu^2$)

\[p(\nu)\\,d\nu = p(E)\\,dE \quad\Longrightarrow\quad p(\nu) = 2c\nu\cdot e^{-c\nu^2}\]

The scale parameter $c = 1/\bar{E}$ is determined solely by the mean wind energy. For the BPA data set, $\bar{\nu} \approx 12.4$ MPH, giving $c = \pi/(4\bar{\nu}^2)$.

CDF:

\[F(\nu) = 1 - e^{-c\nu^2}\]

Weibull generalisation (GEM Ch. 11 footnote)

\[p(v;\beta,\lambda) = \frac{\beta}{\lambda}\left(\frac{v}{\lambda}\right)^{\beta-1} e^{-(v/\lambda)^\beta}\]

Rayleigh is the special case $\beta = 2$, $\lambda = 1/\sqrt{c}$. Empirically, $\beta \approx 1.95$ fits most wind records equally well.


Part 2 — Time-to-Energy Distributions

Eq. 11-9 — Time PDF for energy accumulation (naive, no drag)

\[p\left(t \\,\big|\\, E > c\nu^2\right) = c\nu^2\cdot \frac{e^{-c\nu^2}}{t^2}\]

The probability density that a wind speed $\nu$ has been sustained long enough to accumulate threshold energy $c\nu^2$ by time $t$. Tail decays as $1/t^2$ — a fat tail.


Eq. 11-10 — Power-law PDF with aerodynamic drag (Betz’ law)

\[p(t) = \tfrac{2}{3}\cdot d\cdot \frac{e^{-d/t^{2/3}}}{t^{5/3}}\]

Because extractable power is proportional to $\nu^3$ (drag × velocity), the chain rule shifts the time exponent from 2 to 5/3, making the tail fatter.


Eq. 11-11 — Time PDF to accumulate $E(T)$

\[p\left(t \\,\big|\\, E > E(T)\right) = T\cdot \frac{e^{-T/t}}{t^2}\]

$T$ is the mean waiting time (= $E(T)/\bar{\text{rate}}$). For the Ontario data, $T_{200} = 200/178$ and $T_{1000} = 1000/178$ in the chapter’s normalised units.


Part 3 — Super-Statistics (Spatial Variability)

When the mean energy $E_A$ itself varies from region to region, assign it a MaxEnt prior:

Eq. 11-13 — Exponential prior for regional mean energy

\[p(E_i) = \alpha\cdot e^{-\alpha E_i}\]

Eq. 11-14 — Marginal (super-statistics) integral

\[P(E) = \int_0^\infty P(E \mid E_i)\cdot p(E_i)\\,dE_i\]

Eq. 11-15 — Closed-form solution: modified Bessel-K CDF

\[P(E) = 2\sqrt{\frac{E}{\bar{E}}}\\;K_1\left(2\sqrt{\frac{E}{\bar{E}}}\right)\]

where $K_1$ is the modified Bessel function of the second kind, order 1, and $\bar{E} = 1/\alpha$ is the grand mean energy. This same functional form appears in terrain slope distributions (GEM Ch. 10) and radar clutter statistics (GEM Ch. 16), demonstrating the universal character of entropic dispersion.


Part 4 — Spatial and Temporal Correlations

Eq. 11-16 — Spatial autocorrelation of prevailing winds

\[C(x) = e^{-\alpha_c|x|}\cos(\beta_c x)\]

Fitted to meridional wind PSD from jet-airliner measurements with:

Eq. 11-17 — Lorentzian / shifted Cauchy PSD

\[I(S_x) = \frac{\alpha_c}{(S_x - \beta_c)^2 + \alpha_c^2}\]

The Fourier transform of the damped-cosine autocorrelation. Its peaked shape is characteristic of a semi-Markovian process: the Markov term ($\alpha_c$ damping) gives the overall $1/S^2$ roll-off, while the spatial shift $\beta_c$ introduces weak periodicity with a characteristic scale of $\approx 4$ days at 30 MPH prevailing wind.


Repository Files

File Purpose
wind_symbolic.py Symbolic derivation of all equations using SymPy
wind_numerical.py Numerical implementation, validation, and composite figure
wind_model_output.png Output figure (8 panels) generated by wind_numerical.py

Usage

Install dependencies (from models/requirements.txt):

pip install -r ../requirements.txt

Run symbolic derivation (all assertions print ✓):

python wind_symbolic.py

Run numerical model and generate figure:

MPLBACKEND=Agg python wind_numerical.py

Key Physical Insights

  1. Single-parameter model: the Rayleigh distribution has only one free parameter ($c = 1/\bar{E}$), which is fixed by the observed mean wind energy. There is no curve-fitting.

  2. Fat tails are inevitable: the time-to-energy distributions have power-law tails ($\sim 1/t^2$ or $\sim 1/t^{5/3}$), meaning long calms are more likely than intuition suggests.

  3. Universal character: the same Rayleigh / BesselK functional forms fit wind data from Ontario, Germany, and the BPA, confirming the universality of the MaxEnt argument.

  4. Super-statistics extends the model: allowing the mean energy to fluctuate regionally produces the BesselK distribution, which provides a better fit at high energy tails (Eq. 11-15).

  5. Lorentzian PSD: the $\approx 4833$ km spatial periodicity in the meridional wind PSD corresponds to $\approx 4$ days of flow at 30 MPH, consistent with observed baroclinic Rossby wave patterns.


References