In an attempt to learn something about climate modelling, I decided to write a little two-box climate model. I found quite a lot of useful information on Tamino’s blog, Arthur Smith’s blog, Isaac Held’s blog, Lucia’s blackboard and from Kevin Cowtan’s website, which is where I got some of the data from. I recommend having a look at Kevin Cowtan’s website if you want to play around with basic climate models. I should acknowledge that I haven’t really spoken to anyone much about this, so I may have made some kind of silly blunder. This also isn’t really intended to illustrate anything deep or meaningful. It was fun and instructive, so I thought I’d write a blog post. I also did it slightly differently to how others have done this, but I think it’s essentially consistent with other methods.
So, the way I implemented this was to start with the RCP11 forcing dataset, and then summed all the different forcings to get a net forcing which is shown in the figure below.
Some of the other methods work directly with this forcing. I decided to try something that was a little more intuitive (to me at least). What really determines the warming trend is the energy imbalance. The energy imbalance can be determined, at any time, if one knows the change in forcing (above), the increase in outgoing flux due to the change in temperature, and the change in forcing due to feedbacks. This is expressed below
where, Torig = 288 K, Ts is the change in surface temperature, ε = 0.625 is the surface emissivity, and I assume that Ffeed = 1.8 Ts Wm-2.
The model has two boxes, one that represents the surface, and the other an ocean layer. The equations that then describe their evolution are
where Cs and Co are the heat contents of the surface (atmosphere) and the ocean layer. The heat content of the atmosphere I determined by assuming a mass of 5 x 1018 kg and a specific heat capacity of 1000 J K-1 kg-1. The ocean layer is assumed to have a heat content 100 times greater than that of the atmosphere. These are also then normalised by dividing by the surface area of the earth and the number of seconds in a year. The coefficients in front of the first terms on the right-hand side in each equation are the fraction of the energy imbalance associated with surface warming and with ocean warming. I use αs = 0.025, and αo = 0.93. The last term in each equation is simply a coupling between the ocean layer and the atmosphere and I use β = 0.1. I also have an ENSO correction term which is essentially Ts = Ts + 0.075 ENSO, where ENSO is a 12 month average of the ENSO index, but lagged by 6 months (i.e., averaged between July and June for each year).
So, basically I start in 1880 with the change in forcing known and with both temperatures set to zero. I then step forward in time, at each time determining a new energy imbalance, updating the two temperatures, and then correcting the surface temperature using the ENSO index. The result I get is below, where the solid line is from my model and the dashed line is the observed temperature anomaly. The linear regression coefficient is 0.945.
I can also plot the evolution of the energy imbalance, which I show below. It suggests an energy imbalance today of between 0.5 and 1 Wm-2, quite similar to what is expected based on ocean heat content data. I also determined a TCR and ECS for my model which – for the assumptions I used – are 1.92 and 2.6oC respectively.
Anyway, I’ve written this post quite quickly, so I hope I’ve explained things clearly. I’ve also tried to explain my assumptions quite thoroughly so as to be corrected by those who know better. I’m also not really implying anything by this post other than it was fun to develop a simple model like this and it seems quite remarkable that making assumptions that seem consistent with our current understanding, can produce results that appear quite consistent with observations. That’s it really.