The Azimuth Project
Experiments in carbon cycle with Sage



The rate of increase of CO2 concentration, as measured monthly at Mauna Loa in the classic Keeling experiment:

shows large irregularities. It would be interesting to plot these and do some simple time analysis in both time and frequency domain using Sage and its built in support for time series. It would also be interesting to correlate these to indicators of the El Nino - Southern Oscillation, for example this:



Over time

The classic Keeling curve, plotted up to October 2011 in Sage with default aspect ratio for Sage List_plot:

So we can see the typical seasonal variations but also a definite upwards trend. So is it increasing with constant speed or is it accelerating?

Well look at the second plot below which shows annual (12 months) differences in red dots and a simple moving average in yellow. In the 1960’s the annual increase was about 0.7-0.9 ppm and the the trend is increasing all the way up to the last decade where we see that the increase is almost 2 ppm. So the carbon dioxide levels are accelerating.

Let us look at some typical properties of the time series, the Hurst exponent and auto-correlation to detect degree of randomness and tendencies. The Hurst exponent is 0.23 and it indicates that the CO 2CO_2 time series has a tendency to decrease between values will probably be followed by an increase. We can conclude that the time series from Mauna Loa is not a random walk as well, due to the fact that random walk processes always has a Hurst exponent of 0.5.

Part of user interface (using interact)

Here is the part of the application where you can control what you want to happen and what is shown:

So right now it only works for CO 2CO_2. But you can control the number of months between time series differences and if you want to use the NOOA data as is or seasonally corrected, by checking the “seasonally corrected”. You migh also choose which time interval by drawing the sliders marked “start” and “end”.

The code below shows only the interact part (the reference section has a link to the published public worksheet):

# based on made by Marshall Hampton CC 3.0
# Staffan Liljegren removed regression code - which you can see at the above URL - and
# added the Time series features. TBD enable the fft and smoothing as part of the viewer

chem_formulas= ['co2', 'ch4', 'n2o','o2','o3','h2o']
ghgs = dict([(s,GHGData(s)) for s in chem_formulas])
current_year = time.localtime().tm_year

def co2_viewer(chem_formula = chem_formulas, months = [1,3,6,12,24], seasonally_corrected = False, start = (1958,current_year,1), end = (1959,current_year,1),auto_update=False):
    ghg = GHGData(chem_formula)
    if seasonally_corrected:
        ghg.co2_data = [[q[2],q[5]] for q in ghg.load() if start = q[2] = end]
        ghg.nooa_col = " seasonally corrected"
        ghg.co2_data = [[q[2],q[4]] for q in ghg.load() if start = q[2] = end]
        ghg.nooa_col = " "
    pd = ghg.plot_data()
    pdiff = ghg.plot_diff(months,start,end)
    ga = graphics_array([pd,pdiff]) = [9,3]) = [9,3])

If you are interested in other experiments with the carbon cycle, see Experiments with carbon cycle box models.


Renato Iturriaga

The irregularities being studied here were brought to our attention by Renato Iturriaga and discussed here:

The red curve is straightforward: he computed each year’s increase in CO2 concentration by taking December CO2 level from here and subtracting the CO2 level from the previous December.

He got the blue curve by taking the US Energy Information Administration numbers and converting them from gigatonnes of CO2 to parts per million moles. He assumed that that the atmosphere weighs 5 × 1015 tons and that CO2 gets well mixed with the whole atmosphere each year. Given this, we can simply say that one gigatonne is 0.2 parts per million of the atmosphere’s mass.

But people usually measure CO2 in parts per million volume. Now, a mole is just a certain large number of molecules. Furthermore, the volume of a gas at fixed pressure is almost exactly proportional to the number of molecules, regardless of its composition. So parts per million volume is essentially the same as parts per million moles.

So, he did a conversion. Remember:

  • The molecular mass of N2 is 28, and about 79% of the atmosphere’s volume is nitrogen.

  • The molecular mass of O2 is 32, and about 21% of the atmosphere’s volume is oxygen.

  • By comparison, there’s very little of the other gases.

So, the average molecular mass of air is

28 × .79 + 32 × .21 = 28.84

On the other hand, the molecular mass of CO2 is 44. So one ppm mass of CO2 is less than one ppm volume: it’s just

28.84/44 = 0.655

parts per million volume. So, a gigatonne of CO2 is about 0.2 ppm mass, but only about

0.2 × 0.655 = 0.13

parts per million volume (or moles).

So to get the blue curve, Renato took gigatonnes of CO2 and multiplied by 0.13 to get ppm volume.

And then, of course, the green curve is the blue one minus the red one.


In this blog post:

the author took the CO2 concentration, subtracted off a seasonal cycle and a linear trend, and graphed what was left: the ‘anomaly’.

Then they compared the growth rate of this anomaly to the El Niño–Southern Oscillation, and got some intriguing correlations:

If you compare this to the red curve on Renato Iturriaga’s graph:

it’s a bit hard to see what’s going on, but the 1997 peak in CO2 production stands out.

Feely et al.

Abstract: The equatorial oceans are the dominant oceanic source of CO2 to the atmosphere, annually amounting to a net flux of 0.7–1.5 Pg (1015 g) of carbon, up to 72% of which emanates from the equatorial Pacific Ocean (Houghton et al., 1994; Tans et al., 1990; Takahashi et al., 1997). Limited observations indicate that the size of the equatorial Pacific source is significantly influenced by El Niño events (Feely et al., 1995; Wanninkhof et al., 1996; Murray et al., 1994; Feely et al., 1987; Inoue and Sugimura, 1992; Goyet and Peltzer, 1994; Archer et al., 1996), but the effect has not been well quantified. Here we report spring and autumn multiannual measurements of the partial pressure of CO2 in the surface ocean and atmosphere in the equatorial Pacific region. During the 1991–94 El Niño period, the derived net annual sea-to-air flux of CO2 was 0.3 Pg C from autumn 1991 to autumn 1992, 0.6 Pg C in 1993, and 0.7 Pg C in 1994. These annual fluxes are 30–80% of that of 1996, a non-El-Niño year. The total reduction of the regional sea-to-air CO2 flux during the 1991–94 El Niño period is estimated to account for up to one-third of the atmospheric anomaly (the difference between the annual and long-term-average increases in global atmospheric CO2 content) observed over the same period.

(Emphasis ours.)

Le Quéré et al.

Efforts to control climate change require the stabilization of atmospheric CO2 concentrations. This can only be achieved through a drastic reduction of global CO2 emissions. Yet fossil fuel emissions increased by 29% between 2000 and 2008, in conjunction with increased contributions from emerging economies, from the production and international trade of goods and services, and from the use of coal as a fuel source. In contrast, emissions from land-use changes were nearly constant. Between 1959 and 2008, 43% of each year’s CO2 emissions remained in the atmosphere on average; the rest was absorbed by carbon sinks on land and in the oceans. In the past 50 years, the fraction of CO2 emissions that remains in the atmosphere each year has likely increased, from about 40% to 45%, and models suggest that this trend was caused by a decrease in the uptake of CO2 by the carbon sinks in response to climate change and variability. Changes in the CO2 sinks are highly uncertain, but they could have a significant influence on future atmospheric CO2 levels. It is therefore crucial to reduce the uncertainties.

There are some nice graphs in this paper, including figure a, which shows the rate of increase of CO2 concentration. This graph is jagged like Renato’s, but different, because it’s based on different data, also provide by NOAA:

We used the global mean data after 1980 and the Mauna Loa data between 1959 and 1980.

There’s a lot of good information here, but they note that it would be good to have more:

Progress has been made in monitoring the trends in the carbon cycle and understanding their drivers. However, major gaps remain, particularly in our ability to link anthropogenic CO2 emissions to atmospheric CO2 concentration on a year-to-year basis; this creates a multi-year delay and adds uncertainty to our capacity to quantify the effectiveness of climate mitigation policies. To fill this gap, the residual CO2 flux from the sum of all known components of the global CO2 budget needs to be reduced, from its current range of ±2.1 Pg C yr−1, to below the uncertainty in global CO2 emissions, ±0.9 Pg C yr−1. If this can be achieved with improvements in models and observing systems, geophysical data could provide constraints on global CO2 emissions estimates.

Here’s an earlier paper by some of the same authors:

Abstract: Atmospheric CO2 has increased at a nearly identical average rate of 3.3 and 3.2 Pg C yr−1 for the decades of the 1980s and the 1990s, in spite of a large increase in fossil fuel emissions from 5.4 to 6.3 Pg C yr−1. Thus, the sum of the ocean and land CO2 sinks was 1 Pg C yr−1 larger in the 1990s than in the 1980s. Here we quantify the ocean and land sinks for these two decades using recent atmospheric inversions and ocean models. The ocean and land sinks are estimated to be, respectively, 0.3 (0.1 to 0.6) and 0.7 (0.4 to 0.9) Pg C yr−1 larger in the 1990s than in the 1980s. When variability less than 5 yr is removed, all estimates show a global oceanic sink more or less steadily increasing with time, and a large anomaly in the land sink during 1990–1994. For year-to-year variability, all estimates show 1/3 to 1/2 less variability in the ocean than on land, but the amplitude and phase of the oceanic variability remain poorly determined. A mean oceanic sink of 1.9 Pg C yr−1 for the 1990s based on O2 observations corrected for ocean outgassing is supported by these estimates, but an uncertainty on the mean value of the order of ±0.7 Pg C yr−1 remains. The difference between the two decades appears to be more robust than the absolute value of either of the two decades.

(It says O2 here and I don’t think that’s a typo, though I don’t quite understand it — look at the end of section 4.)

There are also nice graphs here, but the story they tell seems to differ somewhat from Le Quéré et al‘s more recent paper.

Schimel et al.

Knowledge of carbon exchange between the atmosphere, land and the oceans is important, given that the terrestrial and marine environments are currently absorbing about half of the carbon dioxide that is emitted by fossil-fuel combustion. This carbon uptake is therefore limiting the extent of atmospheric and climatic change, but its long-term nature remains uncertain. Here we provide an overview of the current state of knowledge of global and regional patterns of carbon exchange by terrestrial ecosystems. Atmospheric carbon dioxide and oxygen data confirm that the terrestrial biosphere was largely neutral with respect to net carbon exchange during the 1980s, but became a net carbon sink in the 1990s. This recent sink can be largely attributed to northern extratropical areas, and is roughly split between North America and Eurasia. Tropical land areas, however, were approximately in balance with respect to carbon exchange, implying a carbon sink that offset emissions due to tropical deforestation. The evolution of the terrestrial carbon sink is largely the result of changes in land use over time, such as regrowth on abandoned agricultural land and fire prevention, in addition to responses to environmental changes, such as longer growing seasons, and fertilization by carbon dioxide and nitrogen. Nevertheless, there remain considerable uncertainties as to the magnitude of the sink in different regions and the contribution of different processes.

Again, more good graphs and information!

Further references

category: experiments, carbon