You can specify which GEOS-Chem Classic diagnostic outputs you would like to archive with the HISTORY.rc configuration file.

Sample HISTORY.rc diagnostic input file

A simplified HISTORY.rc file is shown below.

# EXPID allows you to specify the beginning of the file path corresponding
# to each diagnostic collection.  For example:
#   EXPID: ./GEOSChem
#      Will create netCDF files whose names begin "GEOSChem",
#      in this run directory.
#   EXPID: ./OutputDir/GEOSChem
#      Will create netCDF files whose names begin with "GEOSChem"
#      in the OutputDir sub-folder of this run directory.
EXPID:  ./OutputDir/GEOSChem
# To disable a collection, place a "#" character in front of its name
# NOTE: These are the "default" collections for GEOS-Chem.
# But you can create your own custom diagnostic collections as well.
COLLECTIONS:  'SpeciesConc' ,
              'SpeciesConcSubset' ,
              'ConcAfterChem' ,
# %%%%% THE SpeciesConc COLLECTION %%%%%
# GEOS-Chem species concentrations (default = advected species)
# Available for all simulations
SpeciesConc.template:           '%y4%m2%d2_%h2%n2z.nc4' ,
SpeciesConc.frequency:          00000000 060000 ,
SpeciesConc.duration:           00000001 000000 ,
SpeciesConc mode:               'instantaneous' ,
SpeciesConc.fields:             'SpeciesConcVV_?ADV?'
# %%%%% THE SpeciesConcSubset COLLECTION %%%%%
# Same as the SpeciesConc collection, but will subset data in the horizontal
# and vertical dimensions so that the netCDF diagnostic files will cover
# a smaller region of the globe.  This can save disk space and memory.
# NOTE: This capability will be available in GEOS-Chem "Classic" 12.5.0
# and later versions.
# Available for all simulations
SpeciesConcSubset.template:     '%y4%m2%d2_%h2%n2z.nc4',
SpeciesConcSubset.frequency:    060000,
SpeciesConcSubset.duration:     00000001 000000,
SpeciesConcSubset.mode:         'instantaneous',
SpeciesConcSubset.LON_RANGE:    -40.0 60.0,
SpeciesConcSubset.LAT_RANGE:    -10.0 50.0,
SpeciesConcSubset.levels:       1 2 3 4 5,
SpeciesConcSubset.fields:       'SpeciesConcVV_?ADV?',
# %%%%% THE ConcAfterChem COLLECTION %%%%%
# Concentrations of OH, HO2, O1D, O3P immediately after exiting the KPP solver
# or OH after the CH4 specialty-simulation chemistry routine.
# OH:       Available for all full-chemistry simulations and CH4 specialty sim
# HO2:      Available for all full-chemistry simulations
# O1D, O3P: Availalbe for full-chemistry simulations using UCX mechanism
ConcAfterChem.template:         '%y4%m2%d2_%h2%n2z.nc4',
ConcAfterChem.frequency:        00000100 000000,
ConcAfterChem.duration:         00000100 000000,
ConcAfterChem.mode:             'time-averaged',
ConcAfterChem.fields:           'OHconcAfterChem',

In this HISTORY.rc file, we are requesting three collections (SpeciesConc, SpeciesConcSubset, and ConcAfterChem). Each collection represents a set of netCDF files that will contain the same diagnostic fields.



List of diagnostic collections in the HISTORY.rc file.

To turn off a collection, place a comment character (#) before its name. For example:

COLLECTIONS:  #'SpeciesConc',

turns off the SpeciesConc collection.


Determines the date and time format of the netCDF file names that will be created for diagnostic collection <collection-name>.

The string %y4%m2%d2_%h2%n2z.nc4 will print YYYYMMDD_hhmmz.nc4 to the end of each netCDF filename, where:

  • YYYYMMDD is the date in year/month/day format

  • hhmm is the time in hour:minutes format.

  • z denotes “Zulu”, which is an abbreviation for UTC time.

  • .nc4 denotes that the data file is in the netCDF-4 format.


Determines how often the diagnostic fields belonging to collection <collection-name> collection will be written to a netCDF file. For example:

  • 010000 schedules diagnostic archival each hour.

  • 00000100 000000 schedules diagnostic output each month.

  • 00000001 000000 (or 240000) schedules diagnostic output each day.

  • … etc. …


Determines how often a new netCDF file will be created for collection <collection-name>. For example:

  • 010000 creates a new netCDF each hour.

  • 00000100 000000 creates a new netCDF file each month. month.

  • 00000001 000000 (or 240000) creates a new netCDF file each day.


Determines the averaging method for collection <collection-name>. Accepted values are:


Data will be archived as instantaneous “snapshots” at the frequency specified in <collection-name>.frequency.


Data will be time-averaged with the frequency specified in <collection-name>.frequency.


A list of the diagnostic fields that will be included in collection <collection-name>.

A single underscore _ denotes a species-based diagnostic field. To request output for a single species, list the species name immediately after the underscore, such as:

SpeciesConc.fields:   'SpeciesConcVV_NO'
                      ... etc ...

You may also use a wildcard such as ?ADV?, which requests all advected species:

SpeciesConc.fields:    'SpeciesConcVV_?ADV?'
                       ... etc ...

The complete wildcard list is shown below. Wildcards are case-insensitive.

  • ?ADV?: Only the advected species

  • ?AER?: Only the aerosol species

  • ?ALL?: All GEOS-Chem species

  • ?DRYALT?: Only the dry-deposited species whose concentrations we wish to archive at a given altitude above the surface. (In practice these are only O3 and HNO3.)

  • ?DRY?: Only the dry-deposited species

  • ?FIX?: Only the inactive (aka “fixed”) species in the KPP chemical mechanism

  • ?GAS?: Only the gas-phase species

  • ?HYG?: Only aerosols that undergo hygroscopic growth (sulfate, BC, OC, SALA, SALC)

  • ?LOS?: Only chemical loss species or families

  • ?KPP?: Only the KPP species

  • ?PHO?: Only the photolyzed species

  • ?VAR?: Only the active (aka “variable”) species in the KPP chemical mechanism

  • ?WET?: Only the wet-deposited species

  • ?PRD?: Only chemical production species or families

  • ?DUSTBIN?: Only the dust bin number

  • ?PHOTOBIN? Number of a given wavelength bin for photolysis

To include fields from the State_Chm object in collection <collection-name>, precede the field name with Chem_:

... etc ...

To include fields from the State_Met object in collection <collection-name>, precede the field name with Met_:

... etc ...

Both Chem_ and Met_ specifiers are case-insensitive.


Optional. Restrict data fields of collection <collection-name> to the range min_lon, max_lon.


Optional. Restrict data fields of collection <collection-name> to the range min_lat, max_lat.


Optional. Restrict data fields of collection <collection-name> to the specified levels (e.g., 1,2,3,4,5 or 1-5).


Signifies the end of the definition section for collection <collection-name>.