climate_modelling_scrBy Claire

I have blogged/complained about my experiences with modelling already on this blog. In case you missed it, all you need to know is that I’m trying to run some climate simulations, using climate models, with absolutely no prior knowledge of how to run a model. It has been a steep learning curve…

I had finally gotten my head around how to run the Australian-based paleoclimate model – the CSIRO Mk3L – and set up a series of experiments to test the climatic response to insolation forcing, and “Henrich-like” events (basically where you dump a bunch of freshwater into the North Atlantic and see what happens – like in The Day After Tomorrow). 

Modelling a Heinrich event is kind of like this...
Modelling a Heinrich event is kind of like this…

My models ran over Christmas last year, and I have been looking at the model output gradually since then. I had found some really great results, and had written them up to put into a paper I am writing. While I was putting together some supplimentary figures, I came across something in the model results that looked a little off. When I went back to the model code, I realised I had made a huge mistake, and did not actually run the experiments I thought I had.

Rookie mistake, but I was SO grateful that I caught the mistake before I had submitted my paper.

So, feeling quite stupid and incredibly embarrassed that I had to explain to my co-authors that my model results were not actually correct, I set about re-running the models – this time correctly!

Since the models had finished running at the end of last year, the server that the model was using was decommissioned, and we were moved onto a new server. Unfortunately, this meant that the pathways in the model had to be updated and, thanks to an amazing model mentor, we finally got the model back up and running. This time, I checked and re-checked each of my model codes, to make sure that I hadn’t made a mistake.

So my new model runs have been chugging along nicely for the last three weeks or so. To run the full experiments, it takes about a month and a half, but I needed to know if my new experiments were going to give me any interesting results, so I decided to take a peek a little earlier (since my paper is still waiting for the new results so I can finally submit it!).

Yesterday I logged on to the server and collected some of the data to see what the results looked like. Precipitation was looking good, but I wanted to see how my ocean was faring with all this new freshwater. As I attempted to extract the ocean data, I kept getting an error message, telling me that the file was not there. At first I thought I had just made a mistake in my extract code, but no. Turns out that there was no file, because the model wasn’t saving the output like it was supposed to!

So here I am, back at square one. Despite having run my models twice, I still have no results.

On the plus side, I found this problem now and not in a month’s time. On the other hand, if I had realised that an error file was being generated each year the model had run, I could have found this problem weeks ago.

So, today I have to fix the error, recompile the model and cross my fingers that I will, one day, have some useable results!!

What have a learnt from this experience?

1) ALWAYS CHECK YOUR CODE!

2) The model produces a really helpful diagnostic after each run year, telling you how it went. USE IT!

3) If you’re on a deadline, something will always go wrong, even if you’re sure you’ve got it right this time.

4) I still really enjoy modelling!

I know, I have to admit that last lesson was a bit of a shock. But as it turns out, all these mistakes have meant that I have learnt more about how the model works. I now feel quite confident in troubleshooting runs and feel like I actually have an understanding of how things work.

So despite all my set-backs, I am still feeling good about things (despite being a little bit frustrated).