This model is based on the works of Matsuno (1966) and Gill (1980). 3 prognostic variables , and on a 2-dimensional spatial domain are integrated in time forced by a convective heating .
The prognostic variables can be interpreted as horizontal winds and column height in a shallow water model, or wind shear and layer thickness in a 2-layer model, or boundary layer winds and pressure and probably other interpretations. Read Matsuno (1966), Gill (1980), Neelin (1989) and others for more information. The model is non-dimensionalised, which can be done in different ways depending on the interpretation you choose to apply. Often the horizontal length scale is approximately 10 degrees and the timescale a couple of hours. Note that here the sign of the forcing is reversed compared to Gill 1980, so that a postive heating induces a posive geopotential or layer thickness anomaly (in contrast to negative anomalies corresponding to a low pressure system at the surface).
The model can be found here: https://github.com/pkeil7/numerical_gill . The code runs on the Julia language on your local machine or on levante. Read this page on how to install Julia and a Julia kernel for jupyterhub on levante. Then download the repository or clone it:
git clone https://github.com/pkeil7/numerical_gill.git
Open a Julia console and activate the project:
using Pkg Pkg.activate("path/to/this/project") Pkg.instantiate()
This will install all necessary packages listed in the Project.toml
file for you.
Check out notebooks/showcase.ipynb for more information and a demonstration of how to reproduce the solution to idealised forcing from Gill 1980. Of course, you can specify your own forcing and play around with it. In case of questions contact Paul Keil: paul.keil [at] mpimet.mpg.de