Program VERTIMEPROC

Summary

The VERTIMEPROC program computes vertical-column / time-aggregated totals of values for all the REAL variables from the specified 3D GRIDDED time stepped input file.

Note that this program is designed primarily for batch use: the control parameters are all specified via environment variables:

SDATE:
Starting date YYYYDDD for the aggregation-run (and therefore for the output file).
STIME:
Starting time HHMMSS for the aggregation-run
TSTEP:
Aggregation-length HHMMSS for the aggregation; this must be a multiple of the input-file time step, and is also the output time step.
EDATE:
Last date YYYYDDD for the aggregation (and therefore the date of the last time step written to the output file).
ETIME:
Last time HHMMSS for the aggregation (and therefore the time of the last time step written to the output file).
Defaults for these values are taken from the input file. The aggregation operation is defined as adding all the values starting at the indicated date&time and ending strictly before the next output time step. For example, if INPFILE starts at 2014123:000000, has a one-hour (10000) time step, and 85 time steps (so has three-and-a-half days of data, with last time step at 2014126:120000), then with the default 24-hour time step, the defaults would be SDATE:STIME=2014123:000000 and EDATE:ETIME=2014125:000000. There will be three output time steps:
  1. 2014123:000000 for data from 2014123:000000 through 2014123:230000
  2. 2014124:000000 for data from 2014124:000000 through 2014124:230000
  3. 2014125:000000 for data from 2014125:000000 through 2014125:230000
If TSTEP is set to twelve hours (120000), there will be seven output time steps (and data for input-step 85 will not go into the time-aggregation).

The program's "splash screen" gives the program-summary, preconditions, copyright statement, version, etc.; the program will only prompt you whether to continue (after it has displayed the splash screen:

Continue with program? (Y/N) [Y]
NOTE that this vertical/temporal aggregation only makes sense for 3-D time stepped smkmerge-output emissions files and not much else, due to the fact that the emissions units are mass-per-grid-cell-per-unit-time, for which the aggregated result will have units of ("pure") mass per grid cell. For something like concentration files (where the units are "interpolatable", e.g., are micrograms per cubic meter, or are parts per million by volume), the result of this kind of aggregation would be nonsense. See program vertintegral for that case.

Requires Fortran-90 for compilation. Uses OpenMP shared memory parallelism when supported by the compiler and processor architecture, and is structured for efficiency on microprocessor based shared memory systems (which is pretty much everything these days—even cell phones!) Source code vertimeproc.f90 is available under the GNU GPL License, Version 2, and can be downloaded here as part of the I/O API distribution.

Usage

    setenv  OMP_NUM_THREADS  <number of threads / processor cores>
    setenv  <INPFILE>  <path name for input  EMIS_3D file>
    setenv  <OUTFILE>  <path name for output EMIS_2D_AGG file>

    setenv  <SDATE>    <starting date    for the run (YYYYDDD)>
    setenv  <STIME>    <starting time    for the run (HHMMSS)>
    setenv  <EDATE>    <ending   date    for the run (YYYYDDD)>
    setenv  <ETIME>    <ending   time    for the run (HHMMSS)>
    setenv  <TSTEP>    <Aggregation step for the run (HHMMSS)>
    
    vertimeproc [and respond to the "Continue with program?" prompt]
    

See Also:


Previous: UTMTOOL

Up: Related Programs

To: Models-3/EDSS I/O API: The Help Pages