I am gratified to have been contacted by Steve Easterbrook of the other U of T since we seem to have similar interests. He is threatening to take me up on the idea of building a literate climate model, from scratch, in Python (yay!). He is considering the enlistment of several semesters worth of computer science classes as unpaid labor. I guess I should encourage this if it’s at all realistic.
The idea is NOT to advance the state of the art in resolution or fidelity or process inclusion in climate modeling, at least not immediately. Rather it is to build a more accessible (readable, robust and modifiable) coupled general circulation model, representing physical oceanography, physical meteorology, and sea ice, forced by prescribed atmospheric concentration, orbital configuration, land surface and land ice configurations. It should be possible to download and install the model on mass market commercial computers. The design should not preclude eventual elaboration into a competitive state-of-the-art model but that should not be a primary concern.
In the Python spirit, readability counts. There may be places where readability must be sacrificed for performance, but we seek to minimize those. Above all, this is a project in literate computing. The idea is to build a CGCM with an entirely new, open, flexible and testable codebase that the maximum number of people will be able to, and want to read that can also be easily run on conventional computers. To do this, we seek to minimize complexity subject to a requirement of moderate fidelity.
I think it is important to start a project like this from a well-designed plan and a committed body of participants. At first I liked Steve’s idea of drawing on an army of students passing through his classroom. But I think that’s over-optimistic. Somebody has to spend a long time getting up to speed, especially on the radiation and dynamics codes.
Image snarfed from csa.fragme.org