Monday, November 30, 2009

Amateur Climate Modelling - Introduction

There are plenty of discussions on the way that the CRU data leak has impacted the field of climate science. It was, for me, the final straw on demanding that data used for public policy analysis be publicly available.

Fortunately, somewhere around 80% of the climate data sets out there ARE publicly available, if not interoperable, and about 30% of the climate models are as well. Now it's time to put them to the test - myself, and a few others, are attempting to do an amateur run of a climate sim, then go through the data. The climate sim we're going to use is CCMS 3.0. If you're particularly brave, you can click that link and follow along with us.

I'm the mouthpiece and bandleader. I'm neither a mathematician, climate scientist, or computer programmer. I have access to some, who are curious about what comes of this. What I am is a writer.

I'll be editing a lot of what comes through here from other people who are running the sims and stitching them into a narrative. My model on this is Jerry Pournelle's "Computing At Chaos Manor", which is largely a narrative of a Very Bright Amateur doing Dumb Things so You Don't Have To. Jerry discovered that the secret to conveying a lot of computer stuff to his readers wasn't to come down like the Guy Who Knows Everything, but rather, to be The Ordinary Guy Who Wants To Know Why This *&#&ing Thing Doesn't Work, including the narrative of how he eventually resolved the problem. To people who were doing major IT planning, Pournelle's columns were far too simplistic. To the guy who has to set up his Aunt Minnie's computer after Christmas, they were cathartic, and moderately educational.

In one respect, we are breaking from Pournelle's formula - Pournelle does this with a lot of different things each month, and the thing that ends up in the column is whatever he managed to get working in the end, showing you all the mis-steps he took along the way. As he says, the key is to know the happy ending and work backwards from there.

We have no guarantee of a happy ending. Even with the talent pool I have available for this project, I figure there's at least a 50-60% chance we can't get this thing up and running at all. However, I'll document as we go along.


  1. Where do you get the figures 50-60%? I understand that poor estimation is the biggest cause of project failure in the software world, but this really is making up numbers for the hell of it.

    Anyway. Take heed of our interviews with some PhD students in atmospheric physics:
    And before you scream about why don't they make it portable, think a bit about the trade-offs between portability and utility as a scientific instrument.

  2. Steve, my guess is that, at best, we've got a 50-50 chance of making this run. I may be incredibly optimistic.

    It may be that CCMS is documented for better portability that we expect. (We've already found some support documents that look like someone's run them on an X86 Linux box).

    However, it's important to tell people up front that this may blow up in our face, and most casual readers would ask "If you think the odds are 80% that it's going to blow up on you, why waste your time?"

    In some ways, we're doing a very minor bit of observational science/quality assurance testing, and will document the Dumb Things We Did so the next people who try this can go "OK, don't do that."

    And yeah, I know that scientific code gets written in ways that make production software engineers shudder and reach for strong drink.

  3. Hey Ken,

    Went to download the CCMS3 source and It asked for a registration that needs to be confirmed. Just in case they come back with "why the heck do you want it?", what did you put for the institution and project on your registration?

  4. Dante, we put in private research and the URL for this blog. Got a confirmation back within an hour on Sunday on Thanksgiving weekend.

    If it's being manually confirmed, there's a grad student there in desperate need of some cookies and leftover turkey.

  5. I put "self" down as the project.

    Since the guy who approves the requests reads this blog....