This is Python code that solves the nonlinear QG equations for PV anomalies on a doubly-periodic domain. It consists of two parts:
- a fully-dealiased pseudo-spectral code that steps forward the PV conservation equations and
- implementations of specific model types that provide an inversion relation.
At the moment, seven model types have been implemented:
- two-dimensional dynamics (
TwoDim
), - surface QG dynamics (
Surface
), - multi-layer dynamics (
Layered
), - Eady dynamics (
Eady
), - floating Eady dynamics (
FloatingEady
), - two-Eady dynamics (
TwoEady
), - two-Eady dynamics with buoyancy jump (
TwoEadyJump
).
See run.py
for an example of how a model is initialized and run.
This model makes use of PyFFTW, a Python wrapper of FFTW. Follow the installation instructions for PyFFTW if you do not have it installed already.