Assignments and readings

Note: a password is needed to access the readings. It will be given in class.

January 23:
Install Canopy on your laptop (see instructions in the
Python section of this web site)

January 28:
Fun with Python
Read all of Section 2.1 and follow the exercises on your laptop.
This is an excerpt from “Mathematical Methods in Python: a companion to
Principles of Planetary Climate” by Raymond Pierrehumbert, University of Chicago. The full article is available here.

Assignment 1
due Tuesday February 4

January 30:
Reading: “
A History of and Introduction to Climate Models
Chapter 2 of
A Climate Modelling Primer (Third Ed.) by K. McGuffie and A. Henderson-Sellers, Wiley 2005.

February 4:
A guided exercise to introduce you to the CESM model and how to access the model data:
Introducing the CESM
or for the adventurous, the same content in an iPython notebook:
Introducing_CESM.ipynb

February 11:
Assignment 2
due Tuesday February 18

February 12:
Reading: “
The global energy balance
Chapter 2 of
Atmosphere, Ocean, and Climate Dynamics: An Introductory Text by John Marshall and R. Alan Plumb, Academic Press 2007.

February 19:
Assignment 3: Introducing the Column Model
You will need to download these two code files:
ColumnModel.py, ClimateUtils.py
due Tuesday February 25

February 27:
Updated version of
ColumnModel.py
There was a bug in the first version, affective convective adjustment.
You will need to
download this new version to do the next assignment.
(The bug did NOT affect the radiative equilibrium calculations you did in Assignment 3).

Soundings from Observations and RCE Models
These are the graphs of temperature vs. pressure that I showed in class, along with the code to compute and plot them yourself. May be a useful reference for the next homework.

February 28:
Assignment 4 (updated March 5)
due Friday March 7 (by 5 pm).
due Monday March 10 (by 5 pm).

March 4:
Second update of ColumnModel.py
Now includes (optional) shortwave absorption.
Code also runs faster and is better organized.
[ all the previous exercises should run normally with the new code ].

March 5:
Code to compute solar radiation as a function of latitude and time:
orbital.py (updated version below)

March 6:
Third update of ColumnModel.py
Fixed a bug in the calculation of OLR contributions from atmospheric layers
(previous version gave the total of contributions from all layers, rather than an array of values).

March 10:
Fourth (and final?) update of
ColumnModel.py
Fixed yet another bug in the OLR calculation

March 24:
Insolation and orbital variations
The code to generate the graphs of insolation and orbital variations that we looked at in class. Will be a useful reference for the next homework.
An updated version of
orbital.py

March 25:
Assignment 5
due Friday March 28 (by 5 pm).

April 2:
Code for the 1-D Energy Balance Model
ebm.py

April 8:
Assignment 6
due Wednesday April 16 (by 5 pm)

Final Project interim “peer review” assignment
due Friday April 18 (by 5 pm)

Seasonal cycle and heat capacity
Notes and code looking at the seasonal cycle of surface temperature, and its representation in the simple Energy Balance Model. Used in lecture on Thursday April 8.

April 28:
Here is a modified version of orbital.py that is set up to use orbital data from -51 to +21 million years:
orbital_extended.py
To use this code you also need to download this data file into the same directory:
La2004_orbital.py