I mentioned before that I’m teaching a new course this term, a first-year undergraduate seminar course on climate computing. Course starts next week, so I’m busy putting together some material. It’s intended to be pretty open ended, as it’s a small group seminar, and we can jump into topics that the students are interested in. So I put together a core set of topics I want to cover, and then a long list of other possible topics. Here’s what I have so far:

Core topics:

Part 1: Background & History

Week 1: Climate Science BC (Before Computers), in which we cover Fourier, Tyndall, Arrhenius, Callendar, and the discovery of global warming. We’ll introduce the key concepts for understanding how the physical climate system works.

Week 2: Taming Chaos in which we talk about Bjerknes and Lorenz, and look at the basic equations for modeling the atmosphere, and a gentle introduction to Chaos theory.

Week 3: The Giant Brain in which we talk about von Neumann, Charney, ENIAC and the first general circulation models.

Part 2: Basics of Climate Modeling

Week 4: Inside the simulation (also known as “Computational Fluid Dynamics on a Rotating Sphere for beginners”), where we look at the major elements of a climate model, including grids, dynamics, radiation, parameterizations, etc.

Week 5: What happens at the Boundaries? in which we look at the physical boundaries (land and ocean, the boundary layer), spatial boundaries (subgrid processes), temporal boundaries (start states, long runs, etc), and climate state boundaries (forcings, emissions scenarios, etc), and talk about the difference between Initial Value and Boundary Value problems.

Week 6: Towards Earth System Models in which we look at the growing complexity of modern GCMs, and the trade-offs between more resolution, more earth system processes, and more complexity.

Part 3: Choosing and Using Models

Week 8: On the Catwalk in which we look at the vast range of different types of models that are available, and what they are used for.

Week 9: Experimentation in which we look at what’s involved in running a model, and the kinds of experiments you might do with one. If we’re lucky, we’ll get to try running some experiments for real.

Week 10: How good are the models? in which we look at how to test and validate models, what it means to “do science” with a model, what model inter-comparison projects tell us, and some of weaknesses of current earth system models.

Part 4: What we can know, and what we can do

Week 11: Knowledge and Uncertainty, in which we talk about what we know and what we don’t know about climate change, sources of uncertainty, and whether we can predict the future. We’ll also explore how climate models interact with other types of knowledge about global climate change.

Week 12: Decisions, Decisions, Decisions in which we look at what policymakers need, and what they get. We’ll talk about the IPCC process, and maybe a bit about some of the policy options. We’ll talk about the need for better predictions of climate extremes, and regional impacts. And we’ll look at the difference between GCMs and IAMs.

Week 13: Enough talk, time for action! in which we face up to the question that given we now have to learn how to manage the earth’s climate systems, what should we be doing about climate change, and what other tools do we need in order to be successful?

Additional Topics:

We can include any of these based on interest and enthusiasm (but probably not all of them!). Some of these stray away from the “computing” them of the course, so we might need to agree on some criteria for which ones to include. In no particular order:

  • Carbon calculators (and other softwre for personal/community decision support);
  • Data Collection for weather and climate: how the global observing system works;
  • Supercomputers and the path to exascale computing;
  • Media potrayals of climate models and their projections;
  • The role of Free/Open source software in climate science;
  • The carbon footprint of computing;
  • Other sources of evidence about climate change: paleoclimate, observational data, measurable impacts;
  • Controversy and disinformation – how do you know who to trust? Is there really a debate, and if so, what about?
  • How bad will it get?
  • Climate Change and other global issues: over-population, peak oil, conservation of ecosystems, international conflict, food security, renewable energy, etc.;
  • Geo-engineering;
  • Climate Ethics: inter-nation and inter-generational issues.

After an exciting sabbatical year spent visiting a number of climate modeling centres, I’ll be back to teaching in January. I’ll be introducing two brand new courses, both related to climate modeling. I already blogged about my new grad course on “Climate Change Informatics”, which will cover many current research issues to do with software and data in climate science.

But I didn’t yet mention my new undergrad course. I’ll be teaching a 199 course in January, which I’ve never done before. 199 courses are first-year seminar courses, open to all new students across the faculty of arts and science, intended to encourage critical thinking, communication and research skills. They are run as small group seminar courses (enrolment is capped at 24 students). I’ve never taught one of these courses before, so I’ve no idea what to expect – I’m hoping for an interesting mix of students with different backgrounds, so we can spend some time attacking the theme of the course from different perspectives. Here’s my course description:

“Climate Change: Software, Science and Society”

This course will examine the role of computers and software in understanding climate change. We will explore the use of computer models to build simulations of the global climate, including a historical view of the use of computer models to understand weather and climate, and a detailed look at the current state of computer modelling, especially how global climate models are tested, what kinds of experiments are performed with them, how scientists know they can trust the models, and how they deal with uncertainty. The course will also explore the role of computer models in helping to shape society’s responses to climate change, in particular, what they can (and can’t) tell us about how to make effective decisions about government policy, international treaties, community action and the choices we make as individuals. The course will take a cross-disciplinary approach to these questions, looking at the role of computer models in the physical sciences, environmental science, politics, philosophy, sociology and economics of climate change. However, students are not expected to have any specialist knowledge in any of these fields prior to the course.

If all goes well, I plan to include some hands-on experimentation with climate models, perhaps using EdGCM (or even CESM if I can simplify the process of installing it and running it for them). We’ll also look at how climate models are perceived in the media and blogosphere (that will be interesting!) and compare these perceptions to what really goes on in climate modelling labs. Of course, the nice thing about a small seminar course is that I can be flexible about responding to the students’ own interests. I’m really looking forward to this…

I’m proposing a new graduate course for our department, to be offered next January (after I return from sabbatical). For the course calendar, I’m required to describe it in fewer than 150 words. Here’s what I have so far:

Climate Change Informatics

This introductory course will explore the contribution of computer science to the challenge of climate change, including: the role of computational models in understanding earth systems, the numerical methods at the heart of these models, and the software engineering techniques by which they are built, tested and validated; challenges in management of earth system data, such as curation, provenance, meta-data description, openness and reproducibility; tools for communication of climate science to broader audiences, such as simulations, games, educational software, collective intelligence tools, and the challenges of establishing reputation and trustworthiness for web-based information sources; decision-support tools for policymaking and carbon accounting, including the challenges of data collection, visualization, and trade-off analysis; the design of green IT, such as power-aware computing, smart controllers and the development of the smart grid.

Here’s the rationale:

This is an elective course. The aim is to bring a broad range of computer science graduate students together, to explore how their skills and knowledge in various areas of computer science can be applied to a societal grand challenge problem. The course will equip the students with a basic understanding of the challenges in tackling climate change, and will draw a strong link between the students’ disciplinary background and a series of inter-disciplinary research questions. The course crosscuts most areas of computer science.

And my suggested assessment modes:

  • Class participation: 10%
  • Term Paper 1 (essay/literature review): 40%
  • Term Paper 2 (software design or implementation): 40%
  • Oral Presentation or demo: 10%

Comments are most welcome – the proposal has to get through various committees before the final approval by the school of graduate studies. There’s plenty of room to tweak it in that time.

I’m teaching our introductory software engineering course this term, for which the students will be working on a significant software development project over the term. The main aim of the course is to get the students thinking about and using good software development practices and tools, and we organise the term project as an agile development effort, with a number of small iterations during the term. The students have to figure out for  themselves what to build at each iteration.

For a project, I’ve challenged the students to design new uses for the Canadian Climate Change Senarios Network. This service makes available the data on possible future climate change scenarios from the IPCC datasets, for a variety of end users. The current site allows users to run basic queries over the data set, and have the results returned either as raw data, or in a variety of visualizations. The main emphasis is on regional scenarios for Canada, so the service offers some basic downscaling, and ability to couple the scenarios with other regional data sources, such as data from weather monitoring stations in the region. However, to use the current service, you need to know quite a bit about the nature of the data: it asks you which models you’re interested in; which years you want data for (assumes you know something about 30-year averages); which scenarios you want (assumes you know something about the standard IPCC scenarios); which region you want (in latitude and longitude); and which variables you want (assumes you know something about what these variables measure). The current design reflects the needs of the primary user group for which the service was developed – (expert) researchers working on climate impacts and adaptation.

The challenge for the students on my course is to extend the service for new user groups. For example, farmers who want to know something about likely effects of climate change on growing seasons, rainfall and heat stress in their local area. High school students studying climate and weather. Politicians who want to understand what the latest science tells us about the impacts of climate change on the constituencies they represent. Activists who want to present a simple clear message to policymakers about the need for policy changes. etc.

I have around 60 students on the course, working in teams of 4. I’m hoping that the various teams will come up with a variety of ideas for how to make this dataset useful to new user groups, and I’ve challenged them to be imaginative. But more suggestions are always welcome…

Spurred on by Michael Tobis’s thoughts about building a readable/understandable climate model in Python, I dug up an old bookmark to a course offered in UMinn’s geology department on Designing your own “Earth System” Model. Really neat idea for a course. Now, with a bit of tweaking, I could set up a similar course here, but with a twist – we recruit a mix of CS and Physics students onto the course, and put them together in cross-disciplinary teams, each team building an earth system model of some kind (tapping into the domain knowledge of the physicists), using current CS and software engineering tools and techniques. And to keep Michael happy, they code it all in Python. Marks awarded based on understandability of the code.

In the longer term, we keep the models produced from each instance of the course, and get the next cohort of students to develop them further – the aim is to build them up to be full scale earth system models.

Update: Michael has posted some more reflections on this.

Having talked with some of our graduate students about how to get a more inter-disciplinary education while they are in grad school, I’ve been collecting links to collaborative grad programs at U of T:

The Dynamics of Global Change Doctoral Program, housed in the Munk Centre. The core course, DGC1000H is very interesting – it starts with Malcolm Gladwell’s Tipping Point book, and then tours through money, religion, pandemics, climate change, the internet and ICTs, and development. What a wonderful journey.

The Centre for the Environment runs a Collaborative Graduate Program (MSc and PhD) in which students take some environmental science courses in addition to satisfying the degree requirements of their home department. The core course for this program is ENV1001, Environmental Decision Making, and it also include an internship to get hands on experience with environmental problem solving.

The Knowledge Media Design Institute (KMDI) also has a collaborative doctoral program, perfect for those interested in design and evaluation of new knowledge media, with a strong focus on knowledge creation, social change, and community

Finally, the Centre for Global Change Science has a set of graduate student awards, to help fund grad students interested in global change science. Oh, and they have a fascinating seminar series, mainly focussed on climate science (all done for this year, but get on their mailing list for next years seminars).

Are there any more I missed?