Dear Ed,
It is trivially true that changes to the average atmospheric CO2
level must be equal to the difference between the processes which add to that
level and the processes which subtract from it.
1 ppmv CO2 (molecular wt 44.01) has mass 8.053 Gt, of which 12/44-ths or 2.196
Gt is carbon. (Note: I have a hard time remembering such numbers, so I have
a crib sheet of
conversion factors on
my web site.)
We have good economic data for the global production & use
of fossil fuels, so we can trivially calculate anthropogenic emissions from
those sources. But everything else is harder.
It's not too bad on the emissions side, because it is generally acknowledged
that fossil fuels are the main source of anthropogenic CO2 emissions. So even
if estimates of the other sources (concrete, land use changes, etc.) are badly
botched, we still will be "in the ballpark" for our anthropogenic
emissions estimates. Those emissions are currently estimated to be a little over
10 Gt carbon per year, equivalent to almost 5 ppmv CO2 per year.
The various processes which remove CO2 from the air (mainly terrestrial
greening, and dissolution in seawater) have rates which are governed by many
factors, but those factors are surely dominated by just one: the average
atmospheric CO2 level.
Note that simple physics & chemistry cannot possibly govern the removal
rate, because the most important factors are probably biological.
Note also that those processes cannot be significantly affected by the emission rate of "fossil" (anthropogenic) CO2. There simply is no plausible physical mechanism for such a coupling. It is the CO2 level, not the CO2 emission rate, which primary governs the CO2 removal rate.
Now, as it happens, the CO2 removal rate has generally been very close to half the anthropogenic CO2 emission rate, for many years, with the result that CO2 levels have increased only about half as fast as would have happened w/o the negative feedbacks that remove CO2 at an accelerating rate (which apparently came as a big surprise for Hansen et al (1988), and is one of the main reasons their predictions 30 years ago were so far off). As CO2 emission rates have increased, CO2 levels have also unsurprisingly increased, and as CO2 levels have risen, CO2 removal rates have also unsurprisingly risen. The one really surprising thing about it is the certainly coincidental fact that CO2 removal rates have been consistently near half the anthropogenic CO2 emission rates.
Back in 1988, Hansen & his seven illustrious co-authors equated emissions with level increases, which means they assumed that rising CO2 levels would not cause an acceleration in the processes that remove CO2. But now a remarkable number of supposed authorities on climate change make the opposite mistake: they suffer from the delusion that CO2 removal rates are governed by the emission rates, and that it is some sort of law that "half of the CO2 we emit stays in the atmosphere." That leads to imbecilic claims that anthropogenic CO2 emissions must be lowered to zero to stop the rise in CO2 levels, and to the idiotic notion of a "carbon budget." (Actually, if anthropogenic CO2 emission rates were merely halved, CO2 levels would completely cease rising, at least for quite a while.)
Okay, enough of that rant. Back to the subject at
hand...
We can quite easily tabulate the CO2 removal rate as a function
of atmospheric CO2 level. I didn't bother to do it exactly, because for
back-of-envelope purposes there's no need for extreme precision.
We just need a few data points, and we can interpolate between them. Since we
have six decades of Mauna Loa CO2
measurement data,
let's use six decadal averages: 1958-1968, 1968-1978, 1978-1988, 1988-1998,
1998-2008, 2008-2018.
I try very hard to avoid biasing my results according to my
expectations, but it's just about humanly impossible. The only way to avoid it
is to not have any expectations! So, I
purposefully did not examine Roy's spreadsheet, before
doing my similar (but cruder!) exercise. So I did not (yet) make use of his
nice table of carbon emission levels. What I did was a lot rougher. Here's what
I did.
I started with the assumption that we can approximate the historic CO2 emission
rates as twice the rate of CO2 level increase, and thus that we can approximate
the CO2 removal rate as equal to the rate of CO2 level increase. ("Version
2" will refine this by incorporating the actual emission data, copied from
Roy's spreadsheet.)
So I made a little spreadsheet, with six rows for the six decades:
http://sealevel.info/CO2_Residence_Times/simple_spreadsheet_relating_CO2_removal_rates_to_CO2_levels_v1.xlsx
|
Decade |
Start level |
End level |
Avg level |
E: increase/yr |
F: Avg level-280 |
Ratio F/E |
|
1958-1968 |
315.34 |
323.04 |
319.190 |
0.770 |
39.190 |
50.90 |
|
1968-1978 |
323.04 |
335.40 |
329.220 |
1.236 |
49.220 |
39.82 |
|
1978-1988 |
335.40 |
351.57 |
343.485 |
1.617 |
63.485 |
39.26 |
|
1988-1998 |
351.57 |
366.70 |
359.135 |
1.513 |
79.135 |
52.30 |
|
1998-2008 |
366.70 |
385.60 |
376.150 |
1.890 |
96.150 |
50.87 |
|
2008-2018 |
385.60 |
408.40 |
397.000 |
2.280 |
117.000 |
51.32 |
|
|
Averages: |
1.551 |
74.030 |
47.73 |
||
For each decade:
column D has the average CO2 level over the decade,
column E has the average annual CO2 level increase during that decade,
column F has the average CO2 level minus 280 ppmv (i.e., the "CO2
elevation" above preindustrial).
The last column is the ratio of the "CO2 elevation" (column F) to the rate of increase (column E).
Note that the last column doesn't vary much.
Using the crude approximation that the rate of increase has, historically, been very roughly equal to the removal rate, I wrote a little Perl program, which estimates the removal rate as a function of the CO2 level, by interpolating between those six data points:
http://sealevel.info/CO2_Residence_Times/calc_est_co2_removal_rates.pl.txt
#!/usr/bin/perl # linear interpolation:# takes five inputs, and produces one output. The five inputs are:# $x is the main input, which is expected to be between $x1 and $x2# $x1 is the lower bound of the input range# $y1 is the return value if $x = $x1# $x2 is the upper bound of the input range# $y2 is the return value if $x = $x2sub interpolate { local($x,$x1,$y1,$x2,$y2) = @_; local($xrange) = $x2 - $x1; local($yrange) = $y2 - $y1; local($result) = (($x - $x1) / $xrange) * $yrange + $y1; return $result;} # estimate CO2 removal rate in ppmv/yr as a function of CO2 level in ppmvsub removal_rate { local($co2level) = shift; local($removalrate) = 0; local($co2elevation) = $co2level - 280; local($ratio) = 47.73; if ($co2level <= 280) { $removalrate = 0; } elsif ($co2level < 319.19) { $removalrate = $co2elevation / 50.90; } elsif ($co2level <= 329.220) { $removalrate = &interpolate( $co2level, 319.19, 0.770, 329.20, 1.236 ); } elsif ($co2level <= 343.485) { $removalrate = &interpolate( $co2level, 329.20, 1.236, 343.485, 1.617 ); } elsif ($co2level <= 359.135) { $removalrate = &interpolate( $co2level, 343.485, 1.617, 359.135, 1.513 ); } elsif ($co2level <= 376.150) { $removalrate = &interpolate( $co2level, 359.135, 1.513, 376.150, 1.890 ); } elsif ($co2level <= 397.000) { $removalrate = &interpolate( $co2level, 376.150, 1.890, 397.000, 2.280 ); } else { # > 398 $removalrate = $co2elevation / 51.32; } return $removalrate;} # SIMULATE DECLINE IN CO2 LEVEL IF EMISSIONS SUDDENLY WENT TO ZERO$co2level = 410;$year = 2019;while ($co2level > 300) { printf("$year %5.1f\n", $co2level); $year += 1; $removalrate = &removal_rate( $co2level ); $co2level -= $removalrate;}
I then ran a simulation: starting at year 2019, with CO2 at 410 ppmv, of what would happen to CO2 levels if anthropogenic CO2 emissions suddenly ceased; this is the output:
http://sealevel.info/CO2_Residence_Times/simulation_output_01.txt
2019 410.02020 407.52021 405.02022 402.52023 400.22024 397.82025 395.52026 393.32027 391.12028 388.92029 386.82030 384.72031 382.62032 380.62033 378.62034 376.72035 374.82036 372.92037 371.12038 369.32039 367.62040 365.92041 364.22042 362.62043 361.02044 359.52045 358.02046 356.42047 354.92048 353.42049 351.82050 350.22051 348.72052 347.12053 345.52054 343.92055 342.32056 340.72057 339.22058 337.72059 336.22060 334.82061 333.42062 332.02063 330.72064 329.42065 328.22066 327.02067 325.92068 324.82069 323.82070 322.8 <== two-thirds of the anthropogenic CO2 is gone in 51 years
2071 321.82072 321.02073 320.12074 319.32075 318.52076 317.82077 317.02078 316.32079 315.62080 314.92081 314.22082 313.52083 312.92084 312.22085 311.62086 311.02087 310.42088 309.82089 309.22090 308.62091 308.02092 307.52093 306.92094 306.42095 305.92096 305.42097 304.92098 304.42099 303.92100 303.52101 303.02102 302.52103 302.12104 301.72105 301.22106 300.82107 300.42108 300.0
Note the result: 2/3 of the anthropogenic CO2 gone from the atmosphere in 51 years (very similar to Dick Lindzen's "50 years" and not far from Roy Spencer's "70 years").
It's my bedtime, now, but when I refine this by incorporating real CO2 emission numbers, and from them the more precisely calculated removal rate numbers, I'll let y'all know.
The files (including a Windows
command-line Perl executable, and a "run_simulation.bat" file to run
the simulation at a Windows command prompt), are here:
https://sealevel.info/CO2_Residence_Times/allfiles.zip
Warmest regards,
Dave