Simple Atmospheric Models: Resources

by Mathew Barlow, EEAS Professor of Climate Science

This post gives links to freely-available code for simple models of the atmosphere (and ocean). If you know of anything I’ve missed, please email me at Mathew_Barlow@uml.edu and I will add it here. Many thanks to Daniela Domeisen, Geoff Vallis, Malte Stuecker, Nathaneal Wong, Milan Klöwer, and Gregory Wagner for additional suggestions!

Geoff Vallis’ codes: http://empslocal.ex.ac.uk/people/staff/gv219/codes/index.html

  • Languages: Matlab and Python
  • Models: several, including barotropic, mountain gravity waves, & Gill-Matsuno
  • Notes: models link to my favorite dynamics book, Geoff’s Atmospheric and Oceanic Fluid Dynamics

Robin Hogan’s shallow water model: http://www.met.reading.ac.uk/~swrhgnrj/shallow_water_model/

  • Languages: Matlab
  • Models: shallow water model
  • Notes: several great examples and related notes

Milan Klöwer’s shallow water model:
https://github.com/milankl/ShallowWaters.jl

  • Languages: Julia
  • Models: shallow water model
  • Notes: easy to run, registered Julia package

pyqg:
https://pyqg.readthedocs.io/en/latest/

  • Languages: Python
  • Models: multi-layer quasi-geostrophic, with additional special cases
  • Notes: research grade, includes spectrum and stability analysis

Brian Rose’s climlab package:
https://github.com/brian-rose/climlab

  • Languages: Python
  • Models: several, including column models & convection schemes
  • Notes: flexible code, many options

Holton & Hakim, Intro to Dynamic Meteorology:
https://booksite.elsevier.com/9780123848666/matlab_code.php

  • Languages: Matlab
  • Models: many!
  • Notes: models linked specifically to exercises in the classic textbook for dynamical meteorology

Matt Barlow’s codes:
https://github.com/mathewbarlow/simple-atmospheric-models

  • Languages: Fortran, Python
  • Models: 1D barotropic, global linearized barotropic, two-layer baroclinic model (as in Holton), inertial oscillations
  • Notes: not research grade, some need recoding, more models will be added as time allows

U Chicago’s climate and carbon cycle models:
http://climatemodels.uchicago.edu

  • Languages: models run through web browsers
  • Models: several physics, carbon cycle, and cryosphere models
  • Notes: models run online, linked to textbook and free online course

GeophysicalFlows:
https://github.com/FourierFlows/GeophysicalFlows.jl

  • Languages: Julia
  • Models: 2D vorticity equation, with and without rotation, topography, imposed zonal flow, etc.
  • Notes: comes with several turbulence examples

The following have linearized dynamical cores

U Tokyo Linear Baroclinic Model (LBM)
https://ccsr.aori.u-tokyo.ac.jp/~lbm/sub/lbm.html

  • Languages: Fortran
  • Models: several versions of linearized primitive equation models (steady response to forcing, storm track, etc.)
  • Notes: basis for several papers, must request access

The following have full dynamical cores but simplified physics

ICTP SPEEDY model
https://www.ictp.it/research/esp/models/speedy.aspx

  • Languages: Fortran
  • Models: primitive equation dynamics, simplified parameterizations
  • Notes: runs quickly, basis for several papers, must request access

U Hamburg’s PUMA model
https://www.mi.uni-hamburg.de/en/arbeitsgruppen/theoretische-meteorologie/modelle/puma.html

  • Languages: Fortran
  • Models: primitive equation dynamics, simplified parameterizations
  • Notes: detailed user guide

Martin Jucker’s MiMA model
http://mjucker.github.io/MiMA/

  • Languages: Fortran and C
  • Models: intermediate GCM with full radiation
  • Notes: requires Intel compilers, basis for several papers

CESM2 dry dynamical core
http://www.cesm.ucar.edu/models/simpler-models/dry-dynamical-core.html

  • Languages: Fortran
  • Models: dry dynamical core with adiabatic or Held-Suarez physics
  • Notes: as best I can tell, must be downloaded as part of the full CESM2 package

Oceananigans
https://github.com/CliMA/Oceananigans.jl

  • Languages: Julia
  • Models: rotating Boussinesq equations in 1 to 3 dimensions
  • Notes: ocean oriented, has some nice idealized examples

The following are packages that can run models at a range of complexities

Exeter’s Isca model
https://execlim.github.io/IscaWebsite/team.html

  • Languages: Fortran, Python front end
  • Models: varying levels of complexity for parameterizations and boundary conditions
  • Notes: can also be used to model the atmosphere of other planets

The following are full models that include idealized cases

Weather Research and Forecasting (WRF) model
https://www2.mmm.ucar.edu/wrf/users/tutorial/201507/IDEAL.pdf

  • Languages: Fortran
  • Idealized cases: several 1D, 2D, and 3D idealized cases, including baroclinic instability, squall lines, and mountain waves
  • Notes: the idealized cases simplify the model in different ways (number of dimensions, beta plane, dry dynamics, etc.)

Marat Khairoutdinov’s System for Atmospheric Modeling (SAM):
http://rossby.msrc.sunysb.edu/~marat/SAM.html

  • Languages: Fortran
  • Models: cloud-resolving model, can be run in simplified configurations
  • Notes: must request access

Leave a Reply

Your email address will not be published. Required fields are marked *