CO2 simulation

From Geos-chem
Revision as of 20:45, 1 May 2015 by Ray (Talk | contribs) (Overview)

Jump to: navigation, search

This page contains information about the carbon dioxide (CO2) simulation in GEOS-Chem.


The original GEOS-Chem CO2 simulation was developed by Parv Suntharalingam (Suntharalingam et al., 2003; 2004), now at the University of East Anglia. A major update to the CO2 simulation was developed by Ray Nassar and Dylan B.A. Jones of the University of Toronto (Nassar et al., 2010). This update was delivered to the GEOS-Chem software development team at Harvard on 2010 April 1. The latest update to the CO2 simulation was developed by Ray Nassar (now at Environment Canada) and appears in GEOS-Chem v10-01, which was released on 2015 May 1.

The 2010 update retained the original six CO2 fluxes: fossil fuel, ocean exchange, biomass burning, biofuel burning, balanced terrestrial exchange (CASA) and net annual terrestrial exchange. Other inventories are available as options for some of these fluxes and other new fluxes were added such as CO2 emissions from international shipping and aviation. There is also an optional feature to include CO2 production from the oxidation of CO, CH4 and NMVOCs. This chemical source concept was first highlighted by Enting and Mansbridge (1991). Although a few attempts have been made by other groups in the past, this implementation made GEOS-Chem the only 3-D global model to account for the chemical production of CO2. The GEOS-Chem implementation uses an approach similar to that described in Suntharalingam et al. (2005), with some updated year-specific numbers and some other modifications described in Nassar et al. (2010). The full GEOS-Chem CO2 update was applied to and tested with v8-02-01 (along with some patches). It has been publicly available in GEOS-Chem release v8-03-02 and later versions, along with an update to the GEOS-Chem online manual. The references below are cited in the updated code's comments and online manual, and include the new CO2 simulation description paper Nassar et al. (2010).

Details of the 2015 update available as v10-01 will be available on this wiki page in early May.

Authors and collaborators

CO2 simulation user groups

User Group Personnel Projects
University of Toronto Dylan Jones Model updates and application to inverse modeling
Korea Environment Institute (KEI)] Changsub Shim
University of Colorado Boulder Daven Henze CO2 adjoint
IAP,CAS Zhu J,Chen Inverse modeling of CO2 using satellite
Tsinghua University Yuxuan Wang ; Mingwei Li
Environment Canada Ray Nassar CO2 modeling and source sink estimation using satellite and in situ data
Caltech Janina Messerschmidt CO2 source/sink estimation using ground-based FTS data
University of Wollongong Nicholas Deutscher CO2 source/sink estimation using ground-based FTS (TCCON) data and co-located surface measurements. Focus on Australia
Add yours here!


The updated CO2 simulation will be incorporated into GEOS-Chem v8-03-02. In Nassar et al. (2010) model comparisons are made with GLOBALVEIW-CO2 ( and CONTRAIL (Comprehensive Observation Network for TRace gases by AIrLiner) measurements. In other work, the CO2 simulation has also been compared with aircraft observations from the HIAPER Pole-to-Pole Observations (HIPPO) campaigns of 2009 (Wofsy et al., 2010).

Restart Files


Some single-tracer restart files are available:

CO2 restart file for GEOS4 (30 levels) on date 2000-01-01
CO2 restart file for GEOS5 (47 levels) on date 2004-01-01

These two restart file have uniform CO2 values of 367.2 ppm for 2000-01-01 and 375.0 ppm for 2004-01-01, which are reasonable estimates of the global mean, but not realistic in the global distribution. Spinning up for one year will result in a realistic distribution in terms of both the global mean value and gross features (latitudinal gradient and seasonal/diurnal cycle) but accurate work will require adjusting or calibrating the restart file with actual measurements for the start of your run. The method of calibration using the sparse in situ measurements and/or satellite observations can be an active area of research on its own, so determining the approach to this is left to the user.


You can use the Git version control software to download GEOS-Chem run directories containing the above-mentioned restart files and other relevant input files (e.g. input.geos).

To download the GEOS-4 (30 levels) run directory, use this command:

git clone git://

To download the GEOS-5 (47 levels) run directory, use this command:

git clone git://

Nested-grid CO2 simulation

This update was tested in the 1-month benchmark simulation v9-01-03h and approved on 09 Mar 2012.

Yuxuan Wang wrote:

The nested-grid CO2 simulation is developed and tested based on v8-02-01. Except for code changes for nested-grid simulation in general, specific changes are made to read the CO2 fluxes at 0.5x0.667 resolution . These fluxes are regridded to 0.5x0.667 either from 1x1 input files on the fly when running GEOS-Chem or from 2x2.5 data files off-line using IDL.

--Melissa Payer 16:00, 2 December 2011 (EST)


  1. Andres, R. J., G. Marland, I. Fung, and E. Matthews, A 1°x1° distribution of carbon dioxide emissions from fossil fuel consumption and cement manufacture, Global Biogeochem. Cycles, 10, 419–429, 1996.
  2. Andres, R. J., Gregg, J. S., Losey, L., Marland, G., and Boden, T. A.: Monthly, global emissions of carbon dioxide from fossil fuel consumption, Tellus B, 63B, 2011.
  3. Baker, D. F., et al., TransCom 3 inversion intercomparison: Impact of transport model errors on the interannual variability of regional CO2 fluxes, 1988-2003, Global Biogeochem. Cycles, 20, GB1002, doi:10.1029/2004GB002439, 2006.
  4. Boden, T.A., G. Marland, and R.J. Andres, Global, Regional, and National Fossil-Fuel CO2 Emissions. Carbon Dioxide Information Analysis Center, Oak Ridge National Laboratory, U.S. Department of Energy, Oak Ridge, Tenn., U.S.A. doi 10.3334/CDIAC/00001, 2009.
  5. Corbett & Koehler, Updated emissions from ocean shipping, J. Geophys. Res., 108, D20, 4650, 2003.
  6. Corbett, J. J., and H. W. Koehler, Considering alternative input parameters in an activity-based ship fuel consumption and emissions model: Reply to comment by Øyvind Endresen et al. on Updated emissions from ocean shipping, J. Geophys. Res., 109, 2004.
  7. Duncan, B. N., R. V. Martin, A. C. Staudt, R. Yevich, and J. A. Logan, Interannual and seasonal variability of biomass burning emissions constrained by satellite observations, J. Geophys. Res., 108(D2), 4100, doi:10.1029/2002JD002378, 2003.
  8. Endresen, O, et al., A historical reconstruction of ships fuel consumption and emissions, J. Geophys. Res, 112, D12301, 2007.
  9. Enting, I. G. and Mansbridge, J. V.: Latitudinal distribution of sources and sinks of CO2: results of and inversion study, Tellus B, 43, 156–170, 1991.
  10. Kim, B. Y., et al., System for assessing Aviation's Global Emissions (SAGE) Version 1.5 global Aviation Emissions Inventories for 2000-2004, 2005.
  11. Kim, B. Y., et al., System for assessing Aviation’s Global Emissions (SAGE), Part 1: Model description and inventory results, Transportation Research, Part D 12, 325–346, 2007.
  12. Le Quere, C. et al., Trends in the sources and sinks of carbon dioxide, Nature Geoscience, doi:10.1038/ngeo689, 2009.
  13. Nassar, R., D. B. A. Jones, P. Suntharalingam, J. M. Chen, R. J. Andres, K. J. Wecht, R. M. Yantosca, S. S. Kualwik, K. W. Bowman, J. R. Worden, T. Machida, H. Matsueda, Modeling global atmospheric CO2 with improved emission inventories and CO2 production from the oxidation of other carbon species, Geoscientific Model Development, 3, 689-716, 2010.
  14. Olsen, S. C., and J. T. Randerson, Differences between surface and column atmospheric CO2 and implications for carbon cycle research, J. Geophys. Res., 109, D02301, doi:10.1029/2003JD003968, 2004.
  15. Potter, C. S., J. T. Randerson, C. B. Field, P. A. Matson, P. M. Vitousek, H. A. Mooney, and S. A. Klooster, Terrestrial ecosystem production: A process model based on global satellite and surface data, Global Biogeochem. Cycles, 7, 811–841, 1993.
  16. Sausen, R. and U. Schumann, Estimates of the Climate Response to Aircraft CO2 and NOx Emissions Scenarios, Climate Change, 44: 27-58, 2000.
  17. Suntharalingam, P., C. M. Spivakovsky, J. A. Logan, and M. B. McElroy, Estimating the distribution of terrestrial CO2 sources and sinks from atmospheric measurements: Sensitivity to configuration of the observation network, J. Geophys. Res., 108(D15), 4452, doi:10.1029/2002JD002207, 2003.
  18. Suntharalingam, P., D. J. Jacob, P. I. Palmer, J. A. Logan, R. M. Yantosca, Y. Xiao, M. J. Evans, D. G. Streets, S. L. Vay, and G. W. Sachse, Improved quantification of Chinese carbon fluxes using CO2/CO correlations in Asian outflow, J. Geophys. Res., 109, D18S18, doi:10.1029/2003JD004362, 2004.
  19. Suntharalingam, P., J. T. Randerson, N. Krakauer, J. A. Logan, and D. J. Jacob, Influence of reduced carbon emissions and oxidation on the distribution of atmospheric CO2: Implications for inversion analyses, Global Biogeochem. Cycles, 19, GB4003, doi:10.1029/2005GB002466, 2005.
  20. Takahashi, T., R. A. Feely, R. Weiss, R. H. Wanninkhof, D. W. Chipman, S. C. Sutherland, T. T. Takahashi, Global air-sea flux of CO2: an estimate based on measurements of sea-air pCO2 difference, Proc. Natl. Acad. Sci., 94, 8292–8299, 1997.
  21. Takahashi, T., et al., Climatological mean and decadal change in surface ocean pCO2, and net sea–air CO2 flux over the global oceans, Deep-Sea Res. II, doi:10.1016/j.dsr2.2008.12.009, 2009.
  22. Wang, C., J.J. Corbett, J. Firestone, Modeling Energy Use and Emissions from North American Shipping: Application of the Ship Traffic, Energy, and Environment Model, Environ. Sci. Technol., 41, 3226-3232, 2008.
  23. Wilkersen, J.T. et al., Analysis of emission data from global commercial Aviation: 2004 and 2006, Atmos. Chem. Phys. Disc., 10, 2945-2983, 2010.
  24. Wofsy, S.C., et al., HIAPER Pole-to-Pole Observations (HIPPO): Fine grained, global scale measurements of climatically important atmospheric gases and aerosols, Proceedings of the Royal Society A, 369, 2073-2086, 2011.
  25. Yevich, R., and J. A. Logan, An assessment of biofuel use and burning of agricultural waste in the developing world, Global Biogeochem. Cycles, 17(4), 1095, doi:10.1029/2002GB001952, 2003. PDF

Previous issues that are now resolved

Monthly CDIAC CO2 emissions

Although GEOS-Chem v8-03-02 will be released with the functionality to run with monthly fossil fuel CO2 emissions from CDIAC (R.J. Andres), the inventory files most likely will not be released until a later date, when the submitted paper Andres et al. (2010) is at a sufficient stage. Until then, annually-averaged fossil fuel CO2 emissions must be selected in the input.geos file.

--Bob Y. 12:26, 29 March 2010 (EDT)

--Ray Nassar 9:48, 25 June 2010 (EDT)

Update: 25 Feb 2010: Updated annual and monthly fossil fuel CO2 emissions from CDIAC (version 2010 by R. Andres) are now available for use in GEOS-Chem v8-03-02 and higher versions. These data are located in the data directories:



The 1° x 1° data will be available by special request. Please contact the GEOS-Chem Support Team.

For more information, please see the following README files:

  1. 2° x 2.5° global data: GEOS_2x2.5/CO2_201003/fossilfuel_andres/README
  2. 4° x 5° global data: GEOS_2x2.5/CO2_201003/fossilfuel_andres/README

--Bob Y. 11:48, 25 February 2011 (EST)

Fix for regridding error in offline CO2 simulation

We have corrected this issue as a post-release patch on 22 Sep 2012. This issue does not affect the full-chemistry simulations, only the CO2 simulation.

Ray Nassar wrote:

There is a bug in v9-01-03 for the CO2 simulation that causes a crash. It relates to the MAP_A2A regridding and the fact that the net terrestrial exchange file is named with geos.1x1 (360x181) although it is actually generic 1x1 (360x180) and it is trying to be read as geos.1x1.

Bob Yantosca wrote:

I fixed the issue in the CO2 code. To avoid further confusion, I made a symbolic link in the data directory:
   cd /as/data/geos/GEOS_1x1/CO_201003
   ln –s Net_terrestrial_exch_5.29Pg.geos.1x1 Net_terrestrial_exch_5.29Pg.generic.1x1
and then I made these changes in the code:
         ! Arrays and pointers
         REAL*4                 :: ARRAY    (IIPAR,JJPAR,1)
         REAL*4                 :: ARRAY_1x1(I1x1,J1x1-1,1)
         REAL*8,  TARGET        :: GEN_1x1  (I1x1,J1x1-1,1)
         REAL*8,  TARGET        :: GEOS_GRID(IIPAR,JJPAR,1)
         REAL*8,  POINTER       :: INGRID (:,:) => NULL()
         REAL*8,  POINTER       :: OUTGRID(:,:) => NULL()

         . . .
         ! Read climatological Bionet data

            ! TAU value for start of "generic" year 2000
            TAU = GET_TAU0( 1, 1, 2000 )
   !%%% v9-01-03 POST-RELEASE PATCH (bmy, 10/2/12)
   !%%% NOTE: Someone mislabeled the Net_terrestrial_exch file, it is labeled
   !%%% "geos.1x1" but is on the GENERIC 1x1 grid.  Therefore, we shall rename
   !%%% this file accordingly and use the generic grid indices (I1x1,J1x1-1)
   !%%% etc. below. (bmy, 10/2/12)
   !%%%         ! Filename
   !%%%         FILENAME = TRIM( DATA_DIR_1x1 )  //  
   !%%%     &              'CO2_201003/Net_terrestrial_exch_5.29Pg.geos.1x1'
   !%%%         ! Echo info
   !%%%         WRITE( 6, 100 ) TRIM( FILENAME )
   !%%%         ! Read Net Terrestrial CO2 Exchange [molec/cm2/s]
   !%%%         CALL READ_BPCH2( FILENAME, 'CO2-SRCE', 6, 
   !%%%     &                    TAU,       I1x1,      J1x1      
   !%%%     &                    1,         ARRAY,     QUIET=.TRUE. )
   !%%%         ! Cast to REAL*8 before regridding
   !%%%         GEOS_1x1(:,:,1) = ARRAY(:,:,1)
   !%%%         ! File with lat/lon edges for regridding
   !%%%         LLFILENAME = TRIM( DATA_DIR_1x1) //
   !%%%     &                'MAP_A2A_Regrid_201203/'
   !%%%         ! Regrid from GEOS 1x1 --> current model resolution
   !%%%         INGRID  => GEOS_1x1 (:,:,1)
   !%%%         OUTGRID => GEOS_GRID(:,:,1)
   !%%%         CALL DO_REGRID_A2A( LLFILENAME, I1x1,    J1x1, 
   !%%%     &                       INGRID,     OUTGRID, PERAREA=0,
   !%%%     &                       netCDF=.TRUE.                   )
            ! Filename
            FILENAME = TRIM( DATA_DIR_1x1 )                      //  
        &              'CO2_201003/'                             //
        &              'Net_terrestrial_exch_5.29Pg.generic.1x1'
            ! Echo info
            WRITE( 6, 100 ) TRIM( FILENAME )

            ! Read Net Terrestrial CO2 Exchange [molec/cm2/s]
            CALL READ_BPCH2( FILENAME, 'CO2-SRCE', 6, 
        &                    TAU,       I1x1,      J1x1-1,
        &                    1,         ARRAY_1x1, QUIET=.TRUE. )

            ! Cast to REAL*8 before regridding
            GEN_1x1(:,:,1) = ARRAY_1x1(:,:,1)

            ! File with lat/lon edges for regridding
            LLFILENAME = TRIM( DATA_DIR_1x1)            //
        &                'MAP_A2A_Regrid_201203/'       //
        &                ''

            ! Regrid from GEOS 1x1 --> current model resolution
            INGRID  => GEN_1x1  (:,:,1)
            OUTGRID => GEOS_GRID(:,:,1)
            CALL DO_REGRID_A2A( LLFILENAME, I1x1,    J1x1-1, 
        &                       INGRID,     OUTGRID, PERAREA=0,
        &                       netCDF=.TRUE.                   )

        ! Free pointers
        ... etc ...    

I pushed these to the GEOS_Chem repository (and also the GC_Bleeding_Edge repository). You can get it with:

    git pull git:// master

The commit was tagged with “Fix_for_CO2_sim” and is labeled:

   v9-01-03 post-release patch to fix bug in CO2 simulation

--Bob Y. 15:20, 20 December 2012 (EST)