GEOS-Chem chemistry mechanisms

From Geos-chem
Revision as of 20:51, 20 September 2022 by Bmy (Talk | contribs) (Overview)

Jump to: navigation, search

Previous | Next | Guide to GEOS-Chem simulations

  1. Simulations using KPP-built mechanisms
  2. Aerosol-only simulation
  3. CH4 simulation
  4. CO2 simulation
  5. Hg simulation
  6. POPs simulation
  7. Tagged CO simulation
  8. Tagged O3 simulation
  9. TransportTracers simulation

On this page, we provide information about GEOS-Chem simulations that use chemistry mechanism solver code built by the Kinetic PreProcessor (KPP).


The following table provides links to information about the available full-chemistry mechanisms in GEOS-Chem.

Mechanism Description Mechanism file Extra options
fullchem NOx + Ox + Br + Cl + I + aerosols chemistry in the troposphere and stratosphere KPP/fullchem/fullchem.eqn
Hg Mercury chemistry
  • Introduced in 13.4.0 as a KPP mechanism
carboncycle KPP/carboncycle/carboncycle.eqn
  • Will debut in 14.1.0 as a KPP mechanism

--Bob Yantosca (talk) 14:22, 20 September 2022 (UTC)

Updates to the fullchem mechanism

Updates to heterogeneous and cloud chemistry

This update was included in GEOS-Chem 12.6.0, which was released on 18 Oct 2019.

This combines model updates described by Holmes et al. (2019) and McDuffie et al (2018a, b).

Cloud heterogeneous chemistry

These changes are described by Holmes et al. (2019). The effective radius and surface area of ice cloud particles have been updated based on aircraft observations (Heymsfield et al., 2014). Entrainment-limited uptake in clouds, as defined by Holmes et al. (2019), is implemented. This method accounts for cloud fraction and entrainment within the chemical loss rates. Losses of NO3 and N2O5 in clouds are currently included and the method and code can also be applied to other species that react in clouds. The changes in the cloud and ice surface areas had significant impact on the cycling of HCl to ClOx species increasing them in the UT.

N2O5 uptake on aerosol

N2O5 uptake on sulfate-nitrate-ammonium-organic aerosol is calculated with gamma for combined SNA+ORG aerosol in in which a SNA core is coated with an organic shell (McDuffie et al. 2018b). Parameters in the gamma expression are fitted to aircraft observations. This parameterization generally follows the Bertram and Thornton ACP (2009) functional form for SNA aerosol (excluding chloride enhancement) and treats aerosol organics as a resistive coating. The gamma values of SNA and ORG components are calculated separately and combined using a resistor model framework: 1/gamma_total = 1/gamma_SNA + 1/gamma_ORG. The ClNO2 yield is currently treated as 1 on sea salt aerosol and 0 on SNA+ORG aerosol. Planned updates to chlorine chemistry will modify the ClNO2 yields in a future model version.

The gamma for N2O5 uptake on other aerosols is updated according to IUPAC and JPL recommendations, as documented by Holmes et al. (2019).

NO2 and NO3 uptake on aerosol

Gamma parameters are updated according to IUPAC and JPL recommendations, as documented by Holmes et al. (2019). Notable changes compared to prior model versions include reduction of NO2 and NO3 gammas on all aerosol types,

Aerosol water content

Within the heterogeneous chemistry, we now use the aerosol water content of sulfate-nitrate-ammonium aerosol from the ISORROPIA II aerosol thermodynamics. This water content is then used to infer the volume and surface area of sulfate-nitrate-ammonium for heterogeneous chemistry. The aerosol optics used for FastJ and RRTMG continue to use lookup tables for hygroscopic growth so that the optical properties (phase function, index of refraction) are consistent with the assumptions about aerosol composition and size.

Heterogeneous chemistry diagnostics

Aerosol water content and N2O5 gamma coefficients are now saved as StateChem variables for diagnostic output through HISTORY.rc


  1. Heymsfield, A., Winker, D., Avery, M., Vaughan, M., Diskin, G., Deng, M., et al., Relationships between ice water content and volume extinction coefficient from in situ observations for temperatures from 0° to –86 °C: Implications for spaceborne lidar retrievals, Journal of Applied Meteorology and Climatology, 53(2), 479–505.‐D‐13‐087.1, 2014.
  2. Holmes, C. D., Bertram, T. H., Confer, K. L., Graham, K. A., Ronan, A. C., Wirks, C. K., & Shah, V., The role of clouds in the tropospheric NOx cycle: A new modeling approach for cloud chemistry and its global implications, Geophysical Research Letters, 46(9), 4980–4990., 2019.
  3. McDuffie, E. E., Fibiger, D. L., Dubé, W. P., Lopez-Hilfiker, F., Lee, B. H., Jaeglé, L., et al., ClNO2 yields from aircraft measurements during the 2015 WINTER campaign and critical evaluation of the current parameterization, Journal of Geophysical Research, 123(22), 12,994–13,015., 2018a.
  4. McDuffie, E. E., Fibiger, D. L., Dubé, W. P., Lopez-Hilfiker, F., Lee, B. H., Thornton, J. A., et al., Heterogeneous N2O5 Uptake During Winter: Aircraft Measurements During the 2015 WINTER Campaign and Critical Evaluation of Current Parameterizations, Journal of Geophysical Research, 123(8), 4345–4372., 2018b.

Aerosol nitrate photolysis option

This update was included in GEOS-Chem 12.6.0, which was released on 18 Oct 2019.

Tomas Sherwen wrote:

This update allows for optional photolysis of aerosol nitrate (NIT(s)) yielding HNO2+NO2. This set to off as default. The photolysis rate is scaled the photolysis rates of HNO3 (JHNO3) as described by Kasibhatla et al (2018). The photolysis rate and product split is set in the input.geos file with the lines as below:
   Photolyse nitrate aer.? : F
    => NIT Jscale (JHNO3)  : 0.0
    => NITs Jscale (JHNO3) : 0.0
    => % channel A (HONO)  : 66.667
    => % channel B (NO2)   : 33.333
As the code is off by default no notable changes are expected in the model's output. To reproduce the results of Kasibhatla et al 2018, updates to nitrate partitioning (e.g. from Xuan Wang's chlorine updates) and updates to the heterogeneous uptake and hydrolysis of NO2 need to be included as well.


  • Kasibhatla, P., Sherwen, T., Evans, M. J., Carpenter, L. J., Alexander, B., Chen, Q., Sulprizio, M. P., Lee, J. D., Read, K. A., Bloss, W., Crilley, L. R., Keene, W. C., Pszenny, A. A. P., and Hodzic, A.: Global impact of nitrate photolysis in sea-salt aerosol on NOx, OH, and O4 in the marine boundary layer, Atmos. Chem. Phys., 18, 11185-11203,, 2018.

--Melissa Sulprizio (talk) 16:52, 27 June 2019 (UTC)

Updated isoprene and monoterpene chemistry

This update was included in v11-02c and approved on 21 Sep 2017.


  • Katie Travis (MIT, formerly Harvard)
  • Jenny Fisher (U. Wollongong)
  • Christopher Chan Miller (Smithsonian Astrophysical Observatory, formerly Harvard)
  • Eloise Marais (U. Birminghan, formerly Harvard)

This document compiled by Katie Travis and Josh Cox describes the updated isoprene and monoterpene chemistry to be included in GEOS-Chem v11-02c (also see the list of modifications below). These updates include the monoterpene nitrate scheme and aqueous isoprene uptake and were originally implemented for simulation of the SEAC4RS data.


  • Chan Miller, C., D.J.Jacob, E.A. Marais, K. Yu, K.R. Travis, P.S. Kim, J.A. Fisher, L. Zhu, G.M. Wolfe, F.N. Keutsch, J. Kaiser, K.-E. Min, S.S. Brown, R.A. Washenfelder, G. Gonzalez Abad, and K. Chance, Glyoxal yield from isoprene oxidation and relation to formaldehyde: chemical mechanism, constraints from SENEX aircraft observations, and interpretation of OMI satellite data, Atmos. Chem. Phys., 17, 8725-8738,, 2017. PDF
  • Fisher, J.A., D.J. Jacob, K.R. Travis, P.S. Kim, E.A. Marais, C. Chan Miller, K. Yu, L. Zhu, R.M. Yantosca, M.P. Sulprizio, J. Mao, P.O. Wennberg, J.D. Crounse, A.P. Teng, T.B. Nguyen, J.M. St. Clair, R.C. Cohen, P. Romer, B.A. Nault, P.J. Wooldridge, J.L. Jimenez, P. Campuzano-Jost, D.A. Day, P.B. Shepson, F. Xiong, D.R. Blake, A.H. Goldstein, P.K. Misztal, T.F. Hanisco, G.M. Wolfe, T.B. Ryerson, A. Wisthaler, and T. Mikoviny. Organic nitrate chemistry and its implications for nitrogen budgets in an isoprene- and monoterpene-rich atmosphere: constraints from aircraft (SEAC4RS) and ground-based (SOAS) observations in the Southeast US. Atmos. Chem. Phys., 16, 2961-2990, 2016. PDF
  • Marais, E. A., D. J. Jacob, J. L. Jimenez, P. Campuzano-Jost, D. A. Day, W. Hu, J. Krechmer, L. Zhu, P. S. Kim, C. C. Miller, J. A. Fisher, K. Travis, K. Yu, T. F. Hanisco, G. M. Wolfe, H. L. Arkinson, H. O. T. Pye, K. D. Froyd, J. Liao, V. F. McNeill, Aqueous-phase mechanism for secondary organic aerosol formation from isoprene: application to the southeast United States and co-benefit of SO2 emission controls, Atmos. Chem. Phys., 16, 1603-1618, 2016. PDF
  • Travis, K. R., D. J. Jacob, J. A. Fisher, P. S. Kim, E. A. Marais, L. Zhu, K. Yu, C. C. Miller, R. M. Yantosca, M. P. Sulprizio, A. M. Thompson, P. O. Wennberg, J. D. Crounse, J. M. St. Clair, R. C. Cohen, J. L. Laughner, J. E. Dibb, S. R. Hall, K. Ullmann, G. M. Wolfe, J. A. Neuman, and X. Zhou, Why do models overestimate surface ozone in the Southeast United States, Atmos. Chem. Phys., 16, 13561-13577, doi:10.5194/acp-16-13561-2016, 2016. PDF, Supplement

--Melissa Sulprizio (talk) 18:06, 12 July 2017 (UTC)

Modifications to the original updates

The following modifications were made to the original updates listed in the above document following conversations with the developers. These modifications were included in v11-02c.

(1) Restore H2O2 Henry's law constant for wet deposition. Daniel Jacob wrote:

For wetdep of H2O2 we should restore the old Henry’s law constant of 8.3E4exp[7400(1/T – 1/298)] because as Dylan points out that’s the physical value. For drydep of H2O2 we can keep the value of 5E7 as parameterized by Nguyen to fit his drydep data.

(2) HC187 is advected

(3) The following species have different names from the original document:

  • API is now MTPA (for consistency with existing SOA scheme)
  • APIO2 is now PIO2 (for consistency with PAN updates added in v11-02a)
  • LIM is now LIMO (for consistency with existing SOA scheme)
  • PMN is now NPMN and IPMN (PMN from non-isoprene and isoprene sources; from aqueous isoprene uptake updates)
  • ONITAam is now IONITA (Jenny Fisher recommended we change the names - they were originally daytime/nighttime species, but changed to isop/monot)
  • ONITApm is now MONITA (Jenny Fisher recommended we change the names - they were originally daytime/nighttime species, but changed to isop/monot)

(4) Fix typos in the original document

   Orig:    ISNOHOO + MO2 = 0.660PROPNN + 0.700GLYX + 1.200HO2 + 0.750CH2O + 0.040ISN1OG
            Rate = 2.00e-13
   v11-02c: ISNOHOO + MO2 = 0.660PROPNN + 0.700GLYX + 1.200HO2 + 0.750CH2O + 0.250MOH + 0.040ISN1OG
            Rate = 2.06e-13

   Orig:    ISOPNB + OH = ISOPNBO2 + 0.100IEPOX + 0.100NO2 
   v11-02c: ISOPNB + OH = 0.900ISOPNBO2 + 0.100IEPOX + 0.100NO2

   Orig:    HONIT + OH = NO3 + HKET
   v11-02c: HONIT + OH = NO3 + HAC

   Orig:    HONIT + hv = HKET + NO2
   v11-02c: HONIT + hv = HAC + NO2

(5) Completely replace RIP with RIPA, RIPB, RIPD and IEPOX with IEPOXA, IEPOXB, IEPOXD

   Orig:    RIP  + hv = 0.985OH + 0.985HO2 + 0.710CH2O + 0.425MVK + 0.285MACR + 0.275HC5 + 0.005LVOC
   v11-02c: RIPA + hv = 0.985OH + 0.985HO2 + 0.710CH2O + 0.425MVK + 0.285MACR + 0.275HC5 + 0.005LVOC
            RIPB + hv = 0.985OH + 0.985HO2 + 0.710CH2O + 0.425MVK + 0.285MACR + 0.275HC5 + 0.005LVOC
            RIPD + hv = 0.985OH + 0.985HO2 + 0.710CH2O + 0.425MVK + 0.285MACR + 0.275HC5 + 0.005LVOC

   Orig:    ISOPND + OH = 0.100IEPOX + 0.900ISOPNDO2 +0.100NO2
   v11-02c: ISOPND + OH = 0.100IEPOXD + 0.900ISOPNDO2 +0.100NO2

   Orig:    ISOPNB + OH = 0.900ISOPNBO2 + 0.100IEPOX + 0.100NO2
   v11-02c: ISOPNB + OH = 0.900ISOPNBO2 + 0.067IEPOXA + 0.033IEPOXB + 0.100NO2

   Orig:    IEPOX  = SOAIE : HET(ind_IEPOX,1);
   v11-02c: IEPOXA = SOAIE : HET(ind_IEPOXA,1);
            IEPOXB = SOAIE : HET(ind_IEPOXB,1);
            IEPOXD = SOAIE : HET(ind_IEPOXD,1);

(6) Add LVOC to RIP channels

   Orig:    RIPA + OH = 0.750 RIO2 + 0.250 HC5 + 0.125 (OH + H2O)
   v11-02c: RIPA + OH = 0.750 RIO2 + 0.245 HC5 + 0.125 (OH + H2O) + 0.005 LVOC
   Orig:    RIPA + OH = 0.850 OH + 0.578 IEPOXA + 0.272 IEPOXB + 0.150 HC5OO
   v11-02c: RIPA + OH = 0.850 OH + 0.578 IEPOXA + 0.272 IEPOXB + 0.145 HC5OO + 0.005 LVOC
   Orig:    RIPB + OH = 0.480 RIO2 + 0.520 HC5 + 0.26 (OH + H2O)
   v11-02c: RIPB + OH = 0.480 RIO2 + 0.515 HC5 + 0.26 (OH + H2O) + 0.005 LVOC
   Orig:    RIPD + OH = 0.250 RIO2 + 0.750 HC5 + 0.375 (OH + H2O)
   v11-02c: RIPD + OH = 0.250 RIO2 + 0.745 HC5 + 0.375 (OH + H2O) + 0.005 LVOC
   Orig:    RIPD + OH = 0.500 OH + 0.500 IEPOXD + 0.500 HC5OO
   v11-02c: RIPD + OH = 0.500 OH + 0.500 IEPOXD + 0.495 HC5OO + 0.005 LVOC
   The only reaction that wont have LVOC as a product is RIPB + OH = OH + IEPOXA + IEPOXB.

--Melissa Sulprizio (talk) 16:26, 7 September 2017 (UTC)

Stratospheric chemistry

GEOS-Chem was historically developed as a model of tropospheric chemistry and composition. The above-mentioned chemistry mechamisms in GEOS-Chem v9-01-03 and in GEOS-Chem v9-02 only solve the chemical reaction matrix within the troposphere. In order to prevent tropospheric species from accumulating in the stratosphere and being transported back into the troposphere, we have implemented the following simple stratospheric chemistry schemes:

  1. Linoz stratospheric ozone chemistry
  2. Application of monthly-mean prod/loss rates archived from the GMI model

Linoz only applied to ozone. The simple linearized stratospheric chemistry, which uses production and loss rates archived from the GMI model, is applied to all other species. (NOTE: The user has the option to disable Linoz and use the archived GMI prod/loss rates for ozone, but this is typically not done.)

In GEOS-Chem v10-01 we added the Unified tropospheric-stratospheric Chemistry eXtension (UCX) mechanism into GEOS-Chem. UCX was developed by Seb Eastham and Steven Barrett at the MIT Laboratory for Aviation and the Environment. This mechanism combines the existing GEOS-Chem "NOx-Ox-HC-aerosol" mechanism with several new stratospheric species and reactions.

--Bob Y. 12:11, 1 October 2013 (EDT)
--Melissa Sulprizio (talk) 17:18, 26 May 2015 (UTC)

Correcting ozone from the height of the lowest model level to 10m

This update was included in GEOS-Chem 12.6.0, which was released on 18 Oct 2019.

Katie Travis created a diagnostic to correct daytime ozone and HNO3 values from the lowest model layer, ~60m, to a user-defined altitude such as 10m (which corresponds to the height of certain observational instruments at surface stations). This altitude can be selected in the DEPOSITION MENU of the input.geos file.

C(zC) = (1-Ra(z1,zC)vd(z1))C(z1)	            Eq. 1

where Ra(z1,zC) is the aerodynamic resistance between z1 and zC, and vd(z1) is the ozone deposition velocity at z1, and C(z1) is the ozone concentration at z1.

Ra(z1,zC) is calculated to the lowest model level in GeosCore/drydep_mod.F. We recalculate Ra using z1 = user defined height (such as 10m) for ozone. The new Ra is added to the diagnostic array AD_RA and passed to diag49.F for use in Equation 1.

This new diagnostic has been implemented in as the ConcAboveSfc collection of the GEOS-Chem History diagnostics.

Here is a sample plot of O3 at the midpoint of the 1st model level (~60m) and O3 at 10m at Centerville, AL (32.94N, 87.18W), as generated with this diagnostic:

O3 10m.png


  1. Travis, K.R., and D.J. Jacob,Systematic bias in evaluating chemical transport models with maximum daily 8-hour average (MDA8) surface ozone for air quality applications, Geophys. Model Dev. Discuss.,, in review, 2019.
  2. Lapina, K., D. K. Henze, J. B. Milford and K. Travis (2016), Impacts of foreign, domestic and state-level emissions on ozone-induced vegetation loss in the U.S., Environ. Sci. Technol., 50 (2), 806-813, doi:10.1021/acs.est.5b04887.
  3. Zhang, L., D.J. Jacob, E.M. Knipping, N. Kumar, J.W. Munger, C.C. Carouge, A. van Donkelaar, Y. Wang, and D. Chen, Nitrogen deposition to the United States: distribution, sources, and processes, Atmos. Chem. Phys., 12, 4,539-4,4554, 2012.

--Melissa Sulprizio (talk) 22:26, 17 November 2017 (UTC)

Analytical tools

Carbon balance

Barron Henderson has created a script for evaluating carbon balance. Please see this post on the Chemistry Working Group wiki page for more information.

--Melissa Sulprizio (talk) 17:31, 22 February 2019 (UTC)

Process analysis diagnostics

Barron Henderson has created a software package for process analysis diagnostics. He writes:

Process-based Analysis examines the change in each species due to each process and reaction. Models predict atmospheric state, which in a time-series can be used to create net-change of each species. What this cannot tell us, is which processes led to that change. To supplement state (or concentration), GEOS-Chem has long archived emissions and employed advanced diagnostics to predict gross chemical production or loss. Process Analysis goes a step further archiving grid-cell budgets for each species, and decomposing gross production/loss into individual reaction contributions. Process Analysis extensions are currently available in CAMx, WRF-Chem, CMAQ, and now GEOS-Chem. This allows for direct comparisons of models at a fundamental, process level.

To obtain this software, please contact Barron Henderson directly.

--Bob Y. 12:26, 1 October 2013 (EDT)

Linking GEOS-Chem to CMAQ

Barron Henderson has created Python software that will let you translate GEOS-Chem output to the proper speciation for input to CMAQ. Please see our Linking GEOS-Chem to CMAQ wiki page for more information.

--Bob Y. (talk) 16:46, 26 October 2015 (UTC)

Previous | Next | Guide to GEOS-Chem simulations