Check GCHP emission diagnostics
Because GCHP uses the MAPL library’s
History component for diagnostic archiving, all emission entries must
be entered individually in both the HISTORY.rc
and HEMCO_Diagn.rc
template files. These template files are located in the
run/GCHP folder of the GEOS-Chem “science codebase”
repository.
This example demonstrates how you can cross-check the GCHP emission diagnostic entries. This is especially important if you are adding new emissions diagnostics (so that you won’t forget to update one file or the other).
Source code
Script location: gcpy/examples/diagnostics/check_gchp_emission_diags.py
Usage
First, clone the GCHP source code (if you haven’t done so already).
Then navigate to the run/GCHP folder, which is the top-level
folder for GCHP run directory template files.
$ git clone --recurse-submodules https://github.com/geoschem/GCHP
$ cd gchp/run
Activate your GCPy environment with mamba or conda:
$ mamba activate gcpy_env # If using mamba, or
$ conda activate gcpy_env # If using conda
Use one of these commands to check GCHP emissions diagnostics for a given simulation type:
$ python -m gcpy.examples.diagnostics.check_gchp_emission_diags . carbon
$ python -m gcpy.examples.diagnostics.check_gchp_emission_diags . fullchem
$ python -m gcpy.examples.diagnostics.check_gchp_emission_diags . TransportTracers
$ python -m gcpy.examples.diagnostics.check_gchp_emission_diags . tagO3
You will then see output similar to this (fullchem example shown).
===============================================================================
Common to both HISTORY.rc and HEMCO_Diagn.rc
===============================================================================
#EmisCH4_Anthro
#EmisCH4_BioBurn
#EmisCH4_Ship
#EmisCH4_Total
#EmisSESQ_Biogenic
#InvAEIC_ACET
#InvAEIC_ALD2
#InvAEIC_ALK4
#InvAEIC_BCPI
#InvAEIC_C2H6
#InvAEIC_C3H8
... etc ...
EmisACET_BioBurn
EmisACET_Biogenic
EmisACET_Ocean
EmisACET_Total
EmisACR_BioBurn
EmisACR_Total
EmisACTA_BioBurn
EmisACTA_Total
EmisALD2_Anthro
... etc ...
===============================================================================
In HISTORY.rc but not in HEMCO_Diagn.rc
===============================================================================
===============================================================================
In HEMCO_Diagn.rc but not in HISTORY.rc
===============================================================================
#EmisNO_Fert
#InvCEDS_ALK6
#InvGTChlorine_HCl
The output indicates that some diagnostics in HEMCO_Diagn.rc
are not present in HISTORY.rc, and should be added there
for consistency. A comment before the emission entry means that the
diagnostic will be disabled by default.