Difference between revisions of "FlexChem"

From Geos-chem
Jump to: navigation, search
(Milestones)
(Milestones)
Line 130: Line 130:
  
 
|-valign="top"  
 
|-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  
+
|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).
advected tracers with the list of KPP chemical species and remove duplicate entries).
+
 
|Bob Yantosca
 
|Bob Yantosca
 
|Completed 09 May 2016
 
|Completed 09 May 2016

Revision as of 20:17, 19 May 2016

Page is under construction.jpg

Overview

The clean and flexible reimplementation of the Kinetic PreProcessor package (aka KPP)—known as FlexChem—is nearing full integration into GEOS-Chem. Most of the remaining FlexChem development work will focus on replacing legacy infrastructure—which prevents GEOS-Chem from operating efficiently in high-performance computing (HPC) environments—with newer, more efficient algorithms.

More information will be posted here soon!

--Bob Yantosca (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.

Task Developer Status
Added FlexChem into v11-01c. Mike Long Completed 14 Dec 2015
Enabled the “tropchem” mechanism. Mike Long Completed 14 Dec 2015
Restored the OH and HO2 diagnostics (ND43) \ Melissa Sulprizio Completed 18 Dec 2015
Removed CSPEC array and replaced with State_Chm%Species Melissa Sulprizio Completed 22 Dec 2015
Enabled a temporary workaround for family tracers (ISOPN, MMN) Mike Long Completed 25 Jan 2016
Enabled FAST-JX photochemistry Mike Long Completed 25 Jan 2016
Enabled the "benchmark" chemistry mechanism Melissa Sulprizio Completed 29 Jan 2016
Fixed HBr and HOBr hetchem rates for the "tropchem" mechanism Melissa Sulprizio Completed 04 Feb 2016
Fixed unit conversions for heterogeneous chemistry Mike Long Completed 18 Feb 2016
Restored the broken J-value diagnostic (ND22) Melissa Sulprizio Completed 15 Mar 2016
Parallelized the main KPP driver loop; fixed other minor issues Bob Yantosca Completed 30 Mar 2016
Enabled the SOA and SOA-SVPOA mechanisms Lizzie Lundgren Completed 01 Apr 2016
Added more parallelization fixes Bob Yantosca Completed 18 Apr 2016
Merged FlexChem with v11-01f Melissa Sulprizio Completed 20 Apr 2016
Added KPP repository to Bitbucket (https://bitbucket.org/gcst/kpp) Mike Long Completed 19 Apr 2016
Created new gckpp* files from the updated KPP solver package Melissa Sulprizio Completed 22 Apr 2016
Enabled the UCX mechanism Melissa Sulprizio Completed 26 Apr 2016
Introduced a prod/loss diagnostic into the KPP solver package Mike Long Completed 29 Apr 2016
Fixed various other bugs and cleaned up some leftover things Melissa Sulprizio Completed 04 May 2016
Completed unit tests and 1-month benchmarks for the tropchem, benchmark, UCX, SOA, and SOA-SVPOA simulations Melissa Sulprizio
Lizzie Lundgren
Completed 05 May 2016
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
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.
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
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
Remove family tracer fields of the Input_Opt object, namely : TRACER_N_CONST, TRACER_CONST, TRACER_COEFF, ID_EMITTED Bob Yantoscao Completed 19 May 2016
Create mapping vectors in the State_Chm 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
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
Removal of SMVGEAR input files (globchem.dat, mglob.dat) and associated subroutines (readchem.F, reader.F) Melissa Sulprizio In progress
Removal of Input_Opt%TCVV and Input_Opt%XNUMOL fields Lizzie Lundgren In progress
Store all species concentrations in State_Chm%Species (thus making State_Chm%Tracers redundant) GCST In progress
Remove tracerid_mod.F and related tracer ID flags (IDTxxxx, IDxxxx) from GEOS-Chem. GCST To be done at the Code-a-Thon
Rely totally on the GEOS-Chem species database for looking up a species index from its name. GCST Imminent
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
Attach the new KPP prod/loss diagnostics to GEOS-Chem Chem’s netCDF diagnostic output capability. GCST TBD
Remove the remaining family tracers (ISOPN, MMN). Henceforth, FlexChem will only work with individual species. GCST TBD
Validate FlexChem with additional debugging, unit testing, and benchmarking TBD TBD
Update GEOS-Chem documentation and user manual for v11-01 TBD TBD

--Bob Yantosca (talk) 20:17, 19 May 2016 (UTC)