History Control

From GEOS-5
Revision as of 17:21, 6 April 2020 by Todling (talk | contribs)
Jump to navigation Jump to search

This section provides a brief overview of the GEOS GCM output control. At its highest level, model output is controlled through a resource file named HISTORY.rc; many times, this file comes in templated format, which means it contains entries that are filled in at runtime, in such cases, the file is typically found with an extension "tmpl" appended to its name.

The output of GEOS GCM is subset in files, referred to as COLLECTIONS. An example of a COLLECTION table is provided below:


COLLECTIONS: 'geosgcm_prog'
            'geosgcm_surf'
            'geosgcm_moist'
            'geosgcm_turb'
            'geosgcm_gwd'
            'geosgcm_tend'
            'geosgcm_budi'
            'geosgcm_buda'
            'geosgcm_landice'
            'geosgcm_meltwtr'
            'geosgcm_snowlayer'
            'geosgcm_tracer'
            ::


The table follows MAPL's (and MPEU's) convention of starting with a name (COLLECTION) and editing with two colons (::). The particular example above would be found in a file with the extension "tmpl' to indicate it is a template file (meaning, it has entries in a format >>>ENTRY<<< which get replaced by something meaningful at runtime.

Users can control freely the collections (or output streams) they want by simply commenting or uncommenting existing collections --- a "#" sign is a comment, which the reading software ignores.

Each collection defines its own meta-information. For example, the output stream <<geosgcm_prog>> in the COLLECTION table above is associated with the following entries in the HISTORY resource file:


 geosgcm_prog.template:  '%y4%m2%d2_%h2%n2z.nc4',
 geosgcm_prog.archive:   '%c/Y%y4',
 geosgcm_prog.format:    'CFIO',
 geosgcm_prog.frequency:  060000,
 geosgcm_prog.grid_label: PC@HIST_IMx@HIST_JM-DC
 geosgcm_prog.vscale:     100.0,
 geosgcm_prog.vunit:     'hPa',
 geosgcm_prog.vvars:     'log(PLE)' , 'DYN'          ,
 geosgcm_prog.levels:     1000 975 950 925 900 875 850 825 800 775 750 725 700 650 600 550 500 450 400 350 300 250 200 150 100 70 50 40 30 20 10 7 5 4 3 2 1 0.7 0.5 0.4 0.3 0.2 0.1 0.07 0.05 0.04 0.03 0.02,
 geosgcm_prog.fields:    'PHIS'     , 'AGCM'         ,
                         'SLP'      , 'DYN'          ,
                         'U;V'      , 'DYN'          ,
                         'T'        , 'DYN'          ,
                         'PS'       , 'DYN'          ,
                         'ZLE'      , 'DYN'          , 'H'   ,
                         'OMEGA'    , 'DYN'          ,
                         'Q'        , 'MOIST'        , 'QV'  ,
                         'QITOT'    , 'AGCM'         , 'QI'  ,
                         'QLTOT'    , 'AGCM'         , 'QL'  ,
                         'RH2'      , 'MOIST'        , 'RH'  ,
                         'O3'       , 'CHEMISTRY'    ,
                         ::

Combined with the stream name, the template entry defines the filename, that is, on 010000 UTC of 01April2010 the file will be written out with the name: geosgcm_prog.20100401_0100z.nc4; the archive entry specifies a directory where the files will land; the format makes it complaint with the CFIO standard in GEOS; the frequency specifies how often this stream will be written out; the vertical units are defined in pressure, as opposed to model index levels; the levels specifies desired levels for the model output, and fields gives a list of fields to be written. The variable grid_label defines the resolution of the output: the notation @HIST_IM and @HIST_JM means that these entries will be defined at setup time (as opposed to runtime).

Considerable more detail about GEOS GCM output stream and conventions can be found under: https://gmao.gsfc.nasa.gov/pubs/docs/Bosilovich785.pdf