Difference between revisions of "FlexChem"

From Geos-chem
Jump to: navigation, search
(Milestones)
 
(257 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[Image: Page is under construction.jpg]]
+
This content has been migrated to:
  
== Overview ==
+
* [https://kpp.readthedocs.io <tt>kpp.readthedocs.io</tt>]: User manual for The Kinetic Preprocessor (KPP)
 
+
* [https://geos-chem.readthedocs.io/en/latest/geos-chem-shared-docs/supplemental-guides/using-kpp-with-gc.html '''Update chemical mechanisms with KPP''' at <tt>geos-chem.readthedocs.io</tt>]
The clean and flexible reimplementation of the Kinetic PreProcessor package (aka KPP)&mdash;known as '''FlexChem'''&mdash;is nearing full integration into GEOS-Chem. Most of the remaining FlexChem development work will focus on replacing legacy infrastructure&mdash;which prevents GEOS-Chem from operating efficiently in high-performance computing (HPC) environments&mdash;with newer, more efficient algorithms.
+
 
+
More information will be posted here soon!
+
 
+
--[[User:Bmy|Bob Yantosca]] ([[User talk:Bmy|talk]]) 19:58, 19 May 2016 (UTC)
+
 
+
== Milestones ==
+
 
+
The following table shows several milestones that were achieved in the FlexChem implementation, development, as well as ongoing development tasks.
+
 
+
{| border=1 cellspacing=0 cellpadding=5
+
|-valign="top" bgcolor="#CCCCCC"
+
!width="600px"|Task
+
!width="150px"|Developer
+
!width="200px"|Status
+
 
+
|-valign="top"
+
|Added FlexChem into v11-01c.
+
|Mike Long
+
|Completed 14 Dec 2015
+
 
+
|-valign="top"
+
|Enabled the “tropchem” mechanism.
+
|Mike Long
+
|Completed 14 Dec 2015
+
 
+
|-valign="top"
+
|Restored the OH and HO2 diagnostics (ND43) \
+
|Melissa Sulprizio
+
|Completed 18 Dec 2015
+
 
+
|-valign="top"
+
|Removed CSPEC array and replaced with State_Chm%Species
+
|Melissa Sulprizio
+
|Completed 22 Dec 2015
+
 
+
|-valign="top"
+
|Enabled a temporary workaround for family tracers (ISOPN, MMN)
+
|Mike Long
+
|Completed 25 Jan 2016
+
 
+
|-valign="top"
+
|Enabled FAST-JX photochemistry
+
|Mike Long
+
|Completed 25 Jan 2016
+
 
+
|-valign="top"
+
|Enabled the "benchmark" chemistry mechanism
+
|Melissa Sulprizio
+
|Completed 29 Jan 2016
+
 
+
|-valign="top"
+
|Fixed HBr and HOBr hetchem rates for the "tropchem" mechanism
+
|Melissa Sulprizio
+
|Completed 04 Feb 2016
+
 
+
|-valign="top"
+
|Fixed unit conversions for heterogeneous chemistry
+
|Mike Long
+
|Completed 18 Feb 2016
+
 
+
|-valign="top"
+
|Restored the broken J-value diagnostic (ND22)
+
|Melissa Sulprizio
+
|Completed 15 Mar 2016
+
 
+
|-valign="top"
+
|Parallelized the main KPP driver loop; fixed other minor issues
+
|Bob Yantosca
+
|Completed 30 Mar 2016
+
 
+
|-valign="top"
+
|Enabled the SOA and SOA-SVPOA mechanisms
+
|Lizzie Lundgren
+
|Completed 01 Apr 2016
+
 
+
|-valign="top"
+
|Added more parallelization fixes
+
|Bob Yantosca
+
|Completed 18 Apr 2016
+
 
+
|-valign="top"
+
|Merged FlexChem with v11-01f
+
|Melissa Sulprizio
+
|Completed 20 Apr 2016
+
 
+
|-valign="top"
+
|Added KPP repository to Bitbucket (https://bitbucket.org/gcst/kpp)
+
|Mike Long
+
|Completed 19 Apr 2016
+
 
+
|-valign="top"
+
|Created new gckpp* files from the updated KPP solver package
+
|Melissa Sulprizio
+
|Completed 22 Apr 2016
+
 
+
|-valign="top"
+
|Enabled the UCX mechanism
+
|Melissa Sulprizio
+
|Completed 26 Apr 2016
+
 
+
|-valign="top"
+
|Introduced a prod/loss diagnostic into the KPP solver package
+
|Mike Long
+
|Completed 29 Apr 2016
+
 
+
|-valign="top"
+
|Fixed various other bugs and cleaned up some leftover things
+
|Melissa Sulprizio
+
|Completed 04 May 2016
+
 
+
|-valign="top"
+
|Completed unit tests and 1-month benchmarks for the tropchem, benchmark, UCX, SOA, and SOA-SVPOA simulations
+
|Melissa Sulprizio<br>Lizzie Lundgren
+
|Completed 05 May 2016
+
 
+
|-valign="top"
+
|Remove tracer indices of Rn, Pb, Be, Hg, and POPs simulations from tracerid_mod.F. (This paves the way for us to retire tracerid_mod.F.)
+
|Bob Yantosca
+
|Completed 02 May 2016
+
 
+
|-valign="top"
+
|Add a fast species name lookup algorithm
+
|Bob Yantosca
+
|Code is in place as of 04 May 2016, but has not been implemented throughout GEOS-Chem yet.
+
 
+
|-valign="top"
+
|Store the unique list of GEOS-Chem species in the GEOS-Chem species database object.  (In other words, we combine the list of
+
advected tracers with the list of KPP chemical species and remove duplicate entries).
+
|Bob Yantosca
+
|Completed 09 May 2016
+
 
+
|-valign="top"
+
|Store the indices of each species in the KPP chemical reaction matrix in the GEOS-Chem species database object.
+
|Bob Yantosca
+
|Completed 09 May 2016
+
 
+
|-valign="top"
+
|Remove family tracer fields of the <code>Input_Opt</code> object, namely : <code>TRACER_N_CONST, TRACER_CONST, TRACER_COEFF, ID_EMITTED</code>
+
|Bob Yantoscao
+
|Completed 19 May 2016
+
 
+
|-valign="top"
+
|Create mapping vectors in the <code>State_Chm</code> object to store the ID numbers of species that are advected, dry-deposited, wet-deposited, and/or included in the KPP chemical mechanism
+
|Bob Yantosca
+
|Completed 19 May 2016
+
 
+
|-valign="top"
+
|Remove all 1-D loop indexing variables (JLOOP, KLOOP, KTLOOP, JLOP, IXSAVE, IYSAVE, IZSAVE) that were used by SMVGEAR
+
|Melissa Sulprizio
+
|Completed 19 May 2016
+
 
+
|-valign="top"
+
|Removal of SMVGEAR input files (globchem.dat, mglob.dat) and associated subroutines (readchem.F, reader.F)
+
|Melissa Sulprizio
+
|In progress
+
 
+
|-valign="top"
+
|Removal of <code>Input_Opt%TCVV</code> and <code>Input_Opt%XNUMOL</code> fields
+
|Lizzie Lundgren
+
|In progress
+
 
+
|-valign="top"
+
|Store all species concentrations in State_Chm%Species (thus making State_Chm%Tracers redundant)
+
|GCST
+
|In progress
+
 
+
|-valign="top"
+
|Remove tracerid_mod.F and related tracer ID flags (<code>IDTxxxx</code>, <code>IDxxxx</code>) from GEOS-Chem.
+
|GCST
+
|To be done at the Code-a-Thon
+
 
+
|-valign="top"
+
|Rely totally on the GEOS-Chem species database for looking up a species index from its name.
+
|GCST
+
|Imminent
+
 
+
|-valign="top"
+
|Update the GEOS-Chem Makefiles so that a fresh version of KPP will be built (using a custom chemical mechanism that you specify) each time GEOS-Chem is compiled.
+
|GCST
+
|TBD
+
 
+
|-valign="top"
+
|Attach the new KPP prod/loss diagnostics to GEOS-Chem Chem’s netCDF diagnostic output capability.
+
|GCST
+
|TBD
+
 
+
|-valign="top"
+
|Remove the remaining family tracers (ISOPN, MMN). Henceforth,  FlexChem will only work with individual species.
+
|GCST
+
|TBD
+
 
+
|-valign="top"
+
|Validate FlexChem with additional debugging, unit testing, and benchmarking
+
|TBD
+
|TBD
+
 
+
|-valign="top"
+
|Update GEOS-Chem documentation and user manual for v11-01
+
|TBD
+
|TBD
+
 
+
|}
+
 
+
--[[User:Bmy|Bob Yantosca]] ([[User talk:Bmy|talk]]) 20:17, 19 May 2016 (UTC)
+

Latest revision as of 20:24, 4 August 2022

This content has been migrated to: