"1-Dimensional" 2-layer QG Model

This is a stand-alone Python code for a "1-dimensional" 2-layer QG model as described in Panetta and Held (1988). The model is truncated in wavenumber space to retain only the zonal-mean flow and one non-zero zonal wavenumber (the default set-up retains the most unstable wave) and can be quickly run on a laptop. Non-linear terms are de-aliased using the Orszag (1971) "two-thirds" rule. The domain is doubly-periodic and the model is forced by an unstable meridional temperature gradient as well as lower-layer Ekman friction.