Difference between revisions of "Tagged CO simulation"

From Geos-chem
Jump to: navigation, search
(Now call INIT_TAGGED_CO from input_mod.F)
(Reduce memory footprint of arrays)
Line 89: Line 89:
 
==== Reduce memory footprint of arrays ====
 
==== Reduce memory footprint of arrays ====
  
'''''This update is being validated in [[GEOS-Chem v10-01 benchmark history#v10-01c|GEOS-Chem v10-01c]].'''''
+
'''''These updates were validated with 1-month benchmark simulation [[GEOS-Chem v10-01 benchmark history#v10-01c|GEOS-Chem v10-01c]], which was approved on 29 May 2014.'''''
  
 
In module <tt>GeosCore/tagged_co_mod.F</tt>, the following arrays:
 
In module <tt>GeosCore/tagged_co_mod.F</tt>, the following arrays:
Line 103: Line 103:
 
These arrays are meant to hold <tt>REAL*4</tt> data that is read in from a netCDF file, so there is no need to keep them at <tt>REAL*8</tt>.  This will half the amount of memory required to store this data.
 
These arrays are meant to hold <tt>REAL*4</tt> data that is read in from a netCDF file, so there is no need to keep them at <tt>REAL*8</tt>.  This will half the amount of memory required to store this data.
  
--[[User:Bmy|Bob Y.]] 14:56, 11 April 2014 (EDT)
+
--[[User:Bmy|Bob Y.]] 17:01, 30 May 2014 (EDT)
  
 
==== Bug fix: Make sure to define the DTCHEM variable ====
 
==== Bug fix: Make sure to define the DTCHEM variable ====

Revision as of 21:01, 30 May 2014

Description

The tagged CO simulation is an offline simulation that calculates CO concentrations only. It uses monthly mean OH concentrations archived from a previous full-chemistry simulation (more on that below). Because the simulation is linear, CO can be “tagged” by its source region/type. The regions and types used can be adapted to address different problems with a few simple code modifications.

Assumptions

  1. The tagged CO simulation doesn’t include direct emissions of volatile organic compounds (VOCs), so CO sources are scaled to account for co-emitted VOCs. Fossil fuel and biofuel emissions are scaled by 19% and biomass burning emissions are scaled by 11%. More information is given in Duncan et al. (2007).

  2. Biogenic VOCs:
    1. Isoprene: Yield of CO from isoprene is assumed to be 30% based on Miyoshi et al. (1994). Isoprene yield can also be computed as a function of NOx concentration by setting ALPHA_ISOP_FROM_NOX = .TRUE. in CHEM_TAGGED_CO, but this is not the default behavior.
    2. Methanol: The CO flux from methanol is scaled to the isoprene flux
    3. Monoterpene: Yield of CO from monoterpenes is assumed to be 20% based on Hatakeyama et al. (1991) and Vinckier et al. (1998).
    4. Acetone: Yield of CO from acetone is assumed to be 2/3 and accounts for acetone loss from reaction with OH and photolysis.

  3. OH concentrations are taken from a previously run full chemistry simulation. The default is from a much earlier version of the model, when OH was thought to be more realistic. The standard code uses OH from version 5-07-08, with GEOS3 meteorology.

  4. Methane concentrations are calculated based on measurements from the NOAA Global Monitoring Division network and are assumed constant over four latitudinal bands (30-90S, 0-30S, 0-30N, 30-90N). Yield is assumed to be one molecule CO per molecule CH4.

Standard Tracers

In a standard run, there are 17 tracers (see input.geos below).

Tracer 1 (CO) is total CO; this is the sum of CO from all sources.
Tracers 2-5 are CO from fossil fuel emissions in: 
 -COus: North America (172.5-17.5W, 24-88N)
 -COeur: Europe (17.5W-72.5E, 36-45N and 17.5W-172.5E, 45-88N)
 -COasia: Asia (70-152.5E, 8-45N)
 -COoth: everywhere else.
Tracers 6-11 are CO from biomass burning emissions in:
 -CObbam: South America (112.5-32.5W, 56S-24N)
 -CObbaf: Africa (17.5W-70E, 48S-36N)
 -CObbas: Southeast Asia (70-152.5E, 8-45N)
 -CObboc: Oceania (70-170E, 90S-8N)
 -CObbeu: Europe (17.5W-72.5E, 36-45N and 17.5W-172.5E, 45-88N)
 -CObbna: Everywhere else (basically North America)
Tracer 12 (COch4) is CO produced from methane.
Tracer 13 (CObiof) is CO from biofuel emissions (except if you are using the Streets inventory over Asia, where biofuel and fossil fuel emissions are combined).
Tracers 14-17 are CO produced from the following volatile organic compounds (in order): isoprene (COisop), monoterpenes (COmono), methanol (COmeoh), and acetone (COacet).

The regional definitions used for the fossil fuel and biomass burning tracers can be changed in DEFINE_FF_REGIONS and DEFINE_BB_REGIONS, respectively. The biofuel tracer can be removed by commenting lines in EMISS_TAGGED_CO (look for LSPLIT and tracer #13). The methane and VOC tracers can be removed by commenting lines in CHEM_TAGGED_CO (look for LSPLIT). Note that if you change the tracers you will also need to make the appropriate changes in your input.geos and restart files.

Practicalities

Tagged CO is simulation type 7. For tagged CO run with standard tracers, the input.geos should look like this:

%%% TRACER MENU %%%     : 
Type of simulation      : 7 
Number of Tracers       : 17  
Tracer Entries -------> : TR#   Name    g/mole Tracer Members; () = emitted  
Tracer #1               : 1     CO      28.0   (CO) 
Tracer #2               : 2     COus    28.0  
Tracer #3               : 3     COeur   28.0  
Tracer #4               : 4     COasia  28.0  
Tracer #5               : 5     COoth   28.0  
Tracer #6               : 6     CObbam  28.0  
Tracer #7               : 7     CObbaf  28.0  
Tracer #8               : 8     CObbas  28.0  
Tracer #9               : 9     CObboc  28.0  
Tracer #10              : 10    CObbeu  28.0  
Tracer #11              : 11    CObbna  28.0  
Tracer #12              : 12    COch4   28.0  
Tracer #13              : 13    CObiof  28.0  
Tracer #14              : 14    COisop  28.0  
Tracer #15              : 15    COmono  28.0  
Tracer #16              : 16    COmeoh  28.0  
Tracer #17              : 17    COacet  28.0

Recent tagged CO updates

The following updates were recently added to the GEOS-Chem tagged CO simulation:

Science updates

These scientific updates were added to the tagged CO simulation:

  1. Updated CO+OH rate constant to JPL2006 (Jenny Fisher): standard in GEOS-Chem v8-02-03
  2. Optional use of MEGAN biogenic emissions added (Prasad Kasibhatla and Jenny Fisher): standard in GEOS-Chem v8-02-03
  3. Bug fixes in biomass_mod.f, emep_mod.f, and nei2005_anthro_mod.f: standard in GEOS-Chem v9-01-02
  4. Addition of aircraft emissions of CO from the FAA/AEDT aircraft emissions inventory (in GEOS-Chem v9-02 and higher)

--Bob Y. 15:00, 11 April 2014 (EDT)

Code Updates

These code updates were added to GEOS-Chem v10-01:

Now call INIT_TAGGED_CO from input_mod.F

These updates were validated with 1-month benchmark simulation GEOS-Chem v10-01c, which was approved on 29 May 2014.

Prior to GEOS-Chem v10-01, routine INIT_TAGGED_CO (in module GeosCore/tagged_co_mod.F) was called from routine EMISS_TAGGED_CO on the first chemistry timestep.

In order to make the code more compatible with our Grid-Independent GEOS-Chem development, we now call INIT_TAGGED_CO from routine GIGC_INIT_EXTRA (in module GeosCore/input_mod.F). This is now called during the "Initialization" phase of GEOS-Chem rather than during the "Run" phase.

--Bob Y. 17:01, 30 May 2014 (EDT)

Reduce memory footprint of arrays

These updates were validated with 1-month benchmark simulation GEOS-Chem v10-01c, which was approved on 29 May 2014.

In module GeosCore/tagged_co_mod.F, the following arrays:

     REAL*8,  ALLOCATABLE :: CO_PRODS  (:,:,:)   ! Strat P(CO) from CH4
     REAL*8,  ALLOCATABLE :: CO_LOSSS  (:,:,:)   ! Strat L(CO) from CO + OH

can be changed from REAL*8 to REAL*4:

     REAL*4,  ALLOCATABLE :: CO_PRODS  (:,:,:)   ! Strat P(CO) from CH4
     REAL*4,  ALLOCATABLE :: CO_LOSSS  (:,:,:)   ! Strat L(CO) from CO + OH

These arrays are meant to hold REAL*4 data that is read in from a netCDF file, so there is no need to keep them at REAL*8. This will half the amount of memory required to store this data.

--Bob Y. 17:01, 30 May 2014 (EDT)

Bug fix: Make sure to define the DTCHEM variable

This update is being validated in GEOS-Chem v10-01c.

In routine CHEM_TAGGED_CO (in module file GeosCore/tagged_co_mod.F, variable DTCHEM was never assigned any value. This caused the tagged CO to halt with an error when running in the GEOS-Chem Unit Tester.

The solution was to change this line:

      ! DTCHEM is the number of seconds per chemistry timestep
      DTSRCE    = GET_TS_EMIS() * 60d0			 

to this:

     ! DTCHEM is the number of seconds per chemistry timestep
     DTCHEM    = GET_TS_CHEM() * 60d0			 

--Bob Y. 14:56, 11 April 2014 (EDT)

Tagged CO development projects

  1. Flexible region masks (Dylan Jones and Prasad Kasibhatla)

Adjoint capabilities

Tagged CO is one of the simulations supported in the adjoint code. See the GEOS-Chem Adjoint wiki page for more details.

Setting up a tagged CO simulation on the GEOS-5 72-level grid

If you wish to run the tagged CO simulation on the GEOS-5 (or MERRA or GEOS-FP) 72-level vertical grid, then follow these steps:

  1. In file Headers/define.h
    • Turn off (e.g. comment out) the GRIDREDUCED switch
  2. In file Headers/CMN_SIZE
  3. Make sure that the various files are interpolated to 72 vertical levels, including
    • Mean OH file
    • P(CO) and L(CO) rates
    • NOx fields

More Information

For more information, see the GEOS-Chem manual pages about tagged CO:

  1. Checklist for Tagged CO simulation (Chapter 6.1.4 of the GEOS-Chem User's Guide)
  2. Sample input.geos file for Tagged CO simulation
  3. Tracers for Tagged CO simulation (Appendix 1.7 of the GEOS-Chem User's Guide)

Studies that used Tagged CO simulation

  1. Palmer, P. I., D. J. Jacob, D. B. A. Jones, C. L. Heald, R. M. Yantosca, J. A. Logan, G. W. Sachse, and D. G. Streets (2003), Inverting for emissions of carbon monoxide from Asia using aircraft observations over the western Pacific, Journal of Geophysical Research, 108(D21), 4180, doi: 10.1029/2003JD003397.
  2. Heald, C. L., D. J. Jacob, D. B. A. Jones, P. I. Palmer, J. A. Logan, D. G. Streets, G. W. Sachse, J. C. Gille, R. N. Hoffman, and T. Nehrkorn (2004), Comparative inverse analysis of satellite (MOPITT) and aircraft (TRACE-P) observations to estimate Asian sources of carbon monoxide, Journal of Geophysical Research, 109(D15S04), doi: 10.1029/2004JD005185.
  3. Arellano, A. F., P. S. Kasibhatla, L. Giglio, G. R. van der Werf, and J. T. Randerson (2004), Top-down estimates of global CO sources using MOPITT measurements, Geophysical Research Letters, 31(L01104), doi: 10.1029/2003GL018609.
  4. Arellano, A. F., P. S. Kasibhatla, L. Giglio, G. R. van der Werf, J. T. Randerson, and G. J. Collatz (2006), Time-dependent inversion estimates of global biomass-burning CO emissions using Measurement of Pollution in the Troposphere (MOPITT) measurements, J. Geophys. Res., 111(D09303), doi: 10.1029/2005JD006613.
  5. Duncan, B. N., Logan, J. A., Bey, I., Megretskaia, I. A., Yantosca, R. M., Novelli, P. C., Jones, N. B., and Rinsland, C. P., Global budget of CO, 1988–1997: Source estimates and validation with a global model, J. Geophys. Res., 112, D22301, doi:10.1029/2007JD008459, 2007.
  6. Duncan, B. N., J. A. Logan, I. Bey, I. A. Megretskaia, R. M. Yantosca, P. C. Novelli, N. B. Jones, and C. P. Rinsland (2008), Model analysis of the factors regulating the trends and variability of carbon monoxide between 1988 and 1997, Atmos. Chem. Phys, 8, 7389-3403.
  7. Kopacz, M., D. J. Jacob, D. K. Henze, C. L. Heald, D. G. Streets, and Q. Zhang (2009), Comparison of adjoint and analytical Bayesian inversion methods for constraining Asian sources of carbon monoxide using satellite (MOPITT) measurements of CO columns, J. Geophys. Res., 114(D04305), doi: 10.1029/2007JD009264.
  8. Fisher, J.A., D.J. Jacob, M.T. Purdy, M. Kopacz, P. Le Sager, C. Carouge, C.D. Holmes, R.M. Yantosca, R.L. Batchelor, K. Strong, G.S. Diskin, H.E. Fuelberg, J.S. Holloway, E.J. Hyer, W.W. McMillan, J. Warner, D.G. Streets, Q. Zhang, Y. Wang, S. Wu, Source attribution and interannual variability of Arctic pollution in spring constrained by aircraft (ARCTAS, ARCPAC) and satellite (AIRS) observations of carbon monoxide, Atm. Chem. Phys. Discuss., 9, 19035-19080, 2009.
  9. Kopacz, M., D.J. Jacob, J.A. Fisher, J.A. Logan, L. Zhang, I.A. Megretskaia, R.M. Yantosca, K. Singh, D.K. Henze, J.P. Burrows, M. Buchwitz, I. Khlystova, W.W. McMillan, J.C. Gille, D.P. Edwards, A. Eldering, V. Thouret, P. Nedelec, Global estimates of CO sources with high resolution by adjoint inversion of multiple satellite datasets (MOPITT, AIRS, SCIAMACHY and TES), Atm. Chem. Phys. Discuss., 9, 19967-20018, 2009.

References

  1. Duncan, B. N., Logan, J. A., Bey, I., Megretskaia, I. A., Yantosca, R. M., Novelli, P. C., Jones, N. B., and Rinsland, C. P., Global budget of CO, 1988–1997: Source estimates and validation with a global model, J. Geophys. Res., 112, D22301, doi:10.1029/2007JD008459, 2007.
  2. Hatakeyama, S., Izumi, K., Fukuyama, T., Akimoto, H. Washida, N., Reactions of OH with alpha-pinene and beta-pinene in air: Estimate of global CO production from the atmospheric oxidation of terpenes, J. Geophys. Res., 96(D1), 947-958, 1991.
  3. Miyoshi, A., Hatakeyama, S., Washida, N., OH radical-initiated photooxidation of isoprene: An estimate of global CO production, J. Geophs. Res., 99(D9), 18779-18787, 1994.
  4. Vinckier, C., Compernolle, F., Saleh, A. M., Van Hoof, N., Van Hees, I., Product yields of the alpha -pinene reaction with hydroxyl radicals and the implication on the global emission of trace compounds in the atmosphere, Fresenius Env. Bull., 7(5-6), 361-368, 1998.

Previous issues that are now resolved

We have found and fixed the following issues with the Tagged CO simulation:

Bug fixes for tagged CO simulation

This update was tested in the 1-month benchmark simulation v9-02b and approved on 29 Oct 2012.

We have corrected the following minor issues in the Tagged CO simulation. These bugs were present in GEOS-Chem v9-01-03. The full-chemistry simulation is not affected by these issues.

(1) In emissdr.F, bracket AD46 diagnostics with IF statements in order to avoid out-of-bounds errors caused by undefined bromine tracer flags:

               ! CHBr3 emissions [kg/m2/s] -- tracer #14
               IF ( IDECHBr3 > 0 ) THEN
                  AD46(I,J,14) = AD46(I,J,14) 
     &                         + ( EMISRR(I,J,IDECHBr3)  / AREA_M2 ) 
     &                         * ( MWT_CHBr3             / AVG     )
              ENDIF
 
               ! CH2Br2 emissions [kg/m2/s] -- tracer #15
               IF ( IDECH2Br2 > 0 ) THEN
                  AD46(I,J,15) = AD46(I,J,15) 
     &                         + ( EMISRR(I,J,IDECH2Br2) / AREA_M2 ) 
     &                         * ( MWT_CH2Br2            / AVG     )
               ENDIF


(2) We needed to pass the am_I_Root = .TRUE. value to routine GET_GLOBAL_CH4 from tagged_co_mod.F. We changed this line:

         CALL GET_GLOBAL_CH4( GET_YEAR(), .TRUE., 
     &                        A3090S, A0030S, A0030N, A3090N )

to:

         CALL GET_GLOBAL_CH4( GET_YEAR(), .TRUE.,             
     &                        A3090S, A0030S, A0030N, A3090N, .TRUE. )


(3) The CO_PRODS and CO_LOSSS arrays need to be made 3-dimensional for compatibility with the new GMI stratospheric chemistry data. Change these lines:

      REAL*8,  ALLOCATABLE :: CO_PRODS(:,:)
      REAL*8,  ALLOCATABLE :: CO_LOSSS(:,:)
      . . .
      ALLOCATE( CO_PRODS( JJPAR, LLPAR ), STAT=AS )
      . . .
      ALLOCATE( CO_LOSSS( JJPAR, LLPAR ), STAT=AS )
      . . .
      IF ( IS_PROD ) THEN
         RATE = CO_PRODS(J,L)   ! P(CO) from CH4 + OH in [v/v/s]
      ELSE
         RATE = CO_LOSSS(J,L)   ! L(CO) from CO + OH  in [s^-1]
      ENDIF

to:

      REAL*8,  ALLOCATABLE :: CO_PRODS(:,:,:)
      REAL*8,  ALLOCATABLE :: CO_LOSSS(:,:,:)
      . . .
      ALLOCATE( CO_PRODS( IIPAR, JJPAR, LLPAR ), STAT=AS )
      . . .
      ALLOCATE( CO_LOSSS( IIPAR, JJPAR, LLPAR ), STAT=AS )
      . . .
      IF ( IS_PROD ) THEN
         RATE = CO_PRODS(I,J,L)   ! P(CO) from CH4 + OH in [v/v/s]
      ELSE
         RATE = CO_LOSSS(I,J,L)   ! L(CO) from CO + OH  in [s^-1]
      ENDIF

Thanks to Jenny Fisher for her assistance in correcting these issues.

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

Outstanding issues that are not yet resolved

None at this time.

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