EPA/600/8-90/083a
                                                             JANUARY 1991
     THE REGIONAL OXIDANT MODEL (ROM)  USER'S GUIDE
                              PART 1:
                    THE ROM PREPROCESSORS
                                 by
L. MILICH
T. BOEHM
C. COATS
J. EICHINGER
  S. FUDGE
 D. JORDAN
C MAXWELL
 D. OLERUD
  R.TANG
A VAN METER
 R. WAYLAND
  J. YOUNG
                      Computer Sciences Corporation
                     Research Triangle Park, NC 27709

                                 and
  O. BULLOCK*
   J. NOVAK*
           T. PIERCE*
          S. ROSELLE*
                 K. SCHERE*
                   Atmospheric Sciences Modeling Division
            Atmospheric Research and Exposure Assessment Laboratory
                     Research Triangle Park, NC 27711

                         Contract No. 68-01-7365

                           Technical Monitor
                             Joan Novak*
                   Atmospheric Sciences Modeling Division
            Atmospheric Research and Exposure Assessment Laboratory
                     Research Triangle Park, NC 27711

            *On assignment from the National Oceanic and Atmospheric Administration,
                         U.S. Department of Commerce
   ATMOSPHERIC RESEARCH AND EXPOSURE ASSESSMENT LABORATORY
               OFFICE OF RESEARCH AND DEVELOPMENT
              U.S. ENVIRONMENTAL PROTECTION AGENCY
                 RESEARCH TRIANGLE PARK, NC 27711

-------
                     NOTICE

     Mention of trade names or commercial products
does not constitute endorsement or recommendation for use.

-------
                                         FOREWORD
Within  the Atmospheric Research  and Exposure Assessment Laboratory,  the Atmospheric Sciences
Modeling Division (ASMD) conducts intramural and extramural research programs to develop predictive
models on local, regional, and global scales for assessing changes in air quality and air pollutant exposures, as
affected by changes in ecosystem management and regulatory decisions.  The ASMD research activities are
designed to:
          develop, evaluate, and validate air quality simulation and photochemical and meteorological/cli-
          matological models that describe air quality and atmospheric processes affecting the ultimate
          disposition of airborne pollutants on local, urban, and regional scales;
          perform and direct interagency  research necessary to support ecological risk assessment  by
          producing quantitative evaluations of changes in regional air quality due to global climate fluc-
          tuations;
          develop and  apply fluid  modeling techniques that describe atmospheric  physical processes
          affecting buoyant and dense gas pollutant dispersion under unique meteorological situations,
          terrain features, and source configurations;
          implement modeling software design and systems within stated requirements of quality control
          .and  assurance to  support atmospheric dispersion  modeling,  meteorological/climatological
          research, and predictive applications;
          for the user community, develop and provide evaluated improvements to air quality simulation
          models, meteorological models, pollutant exposure models, and related model input parameters;
      •   provide technical guidance on applying and evaluating air quality simulation models that are used
          to assess, develop, or revise  air pollution  control strategies  for attainment/maintenance of
          ambient air quality standards;
          provide applications support with available  models of monitoring and exposure field studies,
          other atmospheric research programs, and receptor-oriented research programs; and
      •   maintain communications with the EPA Research, Program, and Regional Offices, and with the
          international and national scientific community to incorporate and disseminate state-of-the-
          science developments pertaining to  meteorological/climatological aspects of environmental
          quality and exposure assessment.

The Regional Oxidant Model  (ROM) is a 3Vi-layer Eulerian grid model that calculates hourly concentra-
tions of ozone and other chemical species for episodes extending up to about one month long. The physical
processes that  ROM simulates include  photochemistry, spatially- and temporally-varying wind fields,
nocturnal jets  and temperature inversions, terrain effects,  dry deposition, cumulus cloud effects, and
emissions of anthropogenic and biogenic ozone precursors. Dispersion processes are based on atmospheric
turbulence principles and K-theory closure.
                                                ill

-------
There are several limitations inherent in the model.  Among the most important of these are: (1) the ROM
supports no pollutant wet removal processes; (2) the physics are standardized to represent summer meteoro-
logical conditions; (3) the ROM does not take into account any aqueous-phase chemistry; (4) cumulus cloud
processes are such that when a cloud is created in a grid cell, it remains there for a full hour (i.e. cloud physics
are not considered), and neither the cloud nor its pollutants are adverted; (5) the ROM actually consists of
three linked, two-dimensional models, and, as such, cannot be expected to model regions that contain high,
complex, mountainous terrain; and (6) the ROM is currently configured to run on domains in eastern North
America on the scale of 1000 km2.  This regional scale is germane since long-range transport of precursors
will have a significant effect on local ozone concentrations.  A major limitation  imposed by the regional
scale, multilayer, multispecies approach concerns the amount of CPU time required.

We advise users of ROM to interpret its results in terms of analysis of different emission control strategies
on ozone concentration, rather than assuming the results to be an accurate snapshot of a specific pollution
event.
                                                rv

-------
                                         ABSTRACT
The Regional Oxidant Model (ROM) determines hourly concentrations and fates of ozone and 34 other
chemical species over a scale of 1000 km x 1000 km for ozone "episodes" of up to one month's duration.

The model structure, based on phenomenological concepts, consists of 3Yz layers. The surfaces separating
the layers respond to variations in space and time in the meteorological phenomena simulated in each layer.
The model simulates many physical and chemical processes that affect the  motion and distribution of
chemical concentrations; among these are: horizontal transport, photochemistry, nighttime wind shear and
nocturnal  jet; cumulus  cloud effects and mesoscale vertical motion; terrain and mesoscale eddy effects;
subgrid scale chemistry processes, natural sources of hydrocarbons, NOX and stratospheric ozone; and dry
deposition.

The ROM is a complex model that requires users to have expertise in photochemical grid modeling. Meteo-
rologists, engineers, and computer scientists familiar with this type of modeling will  find this User's Guide
relevant and helpful for running the ROM.

-------
                                          PREFACE
One of the research activities of the Atmospheric Sciences Modeling Division (ASMD) focuses on the
development, evaluation, validation, and application of air quality simulation, photochemical, and meteoro-
logical models capable of describing air quality and atmospheric processes affecting the disposition of
airborne pollutants, on scales ranging from local to global.  Within the Division, the Modeling Systems
Analysis  Branch  (MSAB)  supports the other Branches  in  the ASMD  by providing the computer
programming and system analysis needed in the development of the models.  The MSAB  operates the
Facility for Advanced Research Model Operation and  Analysis (Research Modeling Facility) to provide
proper expertise in the application and interpretation of advanced dispersion models for EPA regulatory
applications, and establishes definitive scientific standards for model evaluation and policy analysis that are
consistent with standards followed in the research and model development efforts.

The Regional Oxidant Model (ROM) simulates regional scale photo-oxidant motion and three-dimensional
distribution using meteorological observations, turbulence theory, and chemical rates of reaction. Although
ozone is the principal modeled species, 34 other chemical concentrations may be predicted.

Comments and suggestions regarding this publication should be directed to the address below:

                 Chief, Modeling Systems Analysis Branch
                 Atmospheric Sciences Modeling Division (MD-80)
                 U.S. Environmental Protection Agency
                 Research Triangle Park, NC. 27711
                                                VI

-------
                                        GLOSSARY


DDD        Three-digit Julian day number

episode      A model period made up of several three-day scenarios

EST         Eastern Standard Time (GMT - 5 hours); all model times are in EST unless otherwise stated

GMT        Greenwich Mean Time

HH          Two-digit hour on a 24-hour clock, e.g., 23 = 11 p.m. EST

Julian        Cumulative day-number calendar; 001 = January 1,365 = December 30 or 31

MM         Two-digit month, e.g., 10 represents October, or
             Two-digit minutes in HHMMSS string

MMM        Three-letter month, e.g., AUG represents August

NCCIBM1    The EPA's IBM 3090 computer, used for running the ROM Core Model

scenario      A model period starting at 1200 EST and continuing for 72 hours

55           Two-digit seconds

YY          Two-digit year, e.g., 85 represents the year 1985

Z           "Zulu" time, i.e., GMT; used as a suffix on the time of meteorological observations
                                             VII

-------
This page is intentionally left blank.

-------
                                     TABLE OF CONTENTS
Notice	      ii
Foreword	     iii
Abstract	      v
Preface	     vi
Glossary	     vii
Table of Contents	     ix
List of Tables	    riii
List of Figures	   xxiii

1 Introduction	      1
2 An Overview of the Regional Oxidant Model (ROM)	      5
2.1  A General Description of the Modeling System	      5
2.2  General Model Characteristics	      5
2.2.1 Physical Processes within Layers 0,1,2 and 3	      5
2.2.2 ROM Chemistry	      8
2.2.3 System Components	„	      9
2.2.4 ROM Limitations	     18
2.3  Input Requirements	     19
2.4  Suitability of the ROM for Assessment Activities	     20
2.5  Performance Evaluations	     21

3 Meteorology Data Preprocessing	     25
3.1  Buoy Data	     25
3.1.1 The Data (1980 to Present)	     25
3.1.2 Buoy Data Preprocessing	.'.	     27
3.1.3 Summary	     28
3.2 Surface Meteorology Data	     28
3.2.1 Parameter Descriptions for Surface Data	     29
3.2.2 United States Data Preprocessing	     29
                                                ix

-------
3.2.3 Canadian Data Preprocessing 	     30
3.2.4 Surface Data Merging	     30
3.2.5 Surface Data Quality Control	     31
3.2.6 Summary	     32
3.3  Upper-Air Data Preprocessing	     34
3.3.1 The Data (1983 to Present)	     34
3.3.2 Parameter Descriptions for Upper-Air Data	     34
3.3.3 United States Data Preprocessing	     35
3.3.4 Canadian Data Preprocessing	     36
3.3.5 Upper-Air Data Merging	     36
3.3.6 Upper-Air Data Quality Control	     36
3.3.7 Summary	     38
3.4  Preprocessor BUOY_CRCT	     40
3.5  Preprocessor BUOYJNTP	     44
3.6  Preprocessor BUOY_RFMT	     49
3.7  Preprocessor BUOY_STAT	     55
3.8  Preprocessor BUOY_WNDW	     59
3.9  Preprocessor COPYTAPE (Data Tape to VAX-System Tape Copy)	     64
3.10 Preprocessor COUNT_STNPERHR (Meteorology Quality Control) 	     67
3.11 Preprocessor DEL	     71
3.12 Preprocessor OFFTAPE	     77
3.13' Preprocessor R WND_CAN_CLCT	     81
3.14 Preprocessor RWND_END	     88
3.15 Preprocessor R WND_RFMT	     93
3.16 Preprocessor RWND_US_CLCT	     97
3.17 Preprocessor RWND_WNDW	    103
3.18 Preprocessor R WND_V2	    108
3.19 Preprocessor SFCCAN_CLCT	    113
3.20 Preprocessor SFCCAN_WNDW	    119
3.21 Preprocessor SFC_RFMT	    125
3.22 Preprocessor SFCR_HRFTLL	    131
3.23 Preprocessor SFCUS_CLCT	    136
3.24 Preprocessor SFCUS_CLD_DMTP	    143
3.25 Preprocessor SFCUS_WNDW	    148
3.26 Preprocessor SFC_VRFY	    153
3.27 Preprocessor STAT_RFMT	    159

-------
3.28 Preprocessor XTRACTLL...'	    163

4 The Anthropogenic Emissions Database	«	    169
4.1 An Overview of FREDS	    170
4.1.1 The Hydrocarbon Preprocessor	    170
4.1.2 The Model Data Extraction Module	    170
4.1.3 The Speciation Module	    171
4.1.4 The Spatial Allocation Module	    171
4.1.5 The Temporal Allocation Module	    172
4.1.6 The Model Input Preprocessor	    172
4.1.7 The Quality Control Module	    172
4.2 FREDS Data Output	    172

5 Anthropogenic Emissions Data Preprocessing 	    173
5.1 Data Merging and Sorting	    175
5.2 Emissions Inventory Reduction	  175
5.3 Quality Control	    177
5.4 Summary for 1985 and 2005 NAPAP Data	    177
5.5 Preprocessor ARMERG (Area-Source Emissions)	    179
5.6 Preprocessor COPYTAPE (Data Tape to VAX-System Tape Copy)	    186
5.7 Preprocessor FINDCT (Point-Source Emissions Quality Control)	    190
5.8 Preprocessor FINDPT (Point-Source Emissions Quality Control)	    194
5.9 Preprocessor MBEXTR (Mobile-Source Emissions)	    197
5.10  Preprocessor MBMERGE (Mobile-Source Emissions)	    202
5.11  Preprocessor PTEXTR (Point-Source Emissions)	    207
5.12  Preprocessor PTMERG (Point-Source Emissions)	    215
5.13  Preprocessor QAOUTP (Point-Source Emissions Quality Assurance)	    219
5.14  Preprocessor QASRCE (Point-Source Emissions Quality Assurance)	    224
5.15  Preprocessor QASTACK (Point-Source Emissions Quality Assurance)	    229
5.16  Program RETFAC (Reformats The Temperature Adjustment File)	    233
5.17  Preprocessor TOPEMI (Point-Source Emissions Quality Assurance)	    234
5.18  Preprocessor WINDOWAR (Area-Source Emissions)	    238
5.19  Preprocessor WINDOWMB (Mobile-Source Emissions)	    243
5.20  Preprocessor WINDOWPT (Point-Source Emissions)	    249
                                             XI

-------
6 Biogenic Emissions: Sources and Preprocessing of Data	    255
6.1 Biomass Density by Vegetation Class	    255
6.1.1 Natural Vegetation Area	    257
6.1.2 Agricultural Crop Area	    258
6.1.3 Urban Area	:	    259
6.1.4 Water and Barren Areas	    260
6.2 Adjustment of Biomass Density	    260
6.2.1 Growing Season	    260
6.2.2 Layering of Forest Biomass	    260
6.3 Emission Factors	    261
6.3.1 Canopy	    261
6.3.2 Noncanopy	    262
6.4 Adjustment of Emission Factors	    263
6.4.1 Tingey Temperature and Solar Intensity Corrections	    263
6.4.2 Layered Correction Factors for Forest Biomass Classes	    265
6.5 Calculation of Biogenic Emissions	    266
6.6 Quality Control	    266
6.7 Biogenics Emissions Preprocessing: The Biogenic Emissions Inventory System (BEIS)	    267
6.7.1 SAS Routines to Process Biogenic Emissions	   267
6.7.2 SAS Data Sets	    269
6.8 Preprocessor ROMREG	    271
6.9 Preprocessor NBIOMASS 	    277

7 Miscellaneous Preprocessors and Other Programs	    287
7.1 Preprocessing Ozone Boundary Conditions	    287
7.2 Preprocessing ROM Chemistry	    291
7.2.1 Preprocessor CVCHEM	    293
7.3 Preprocessing Roadway Digital Line Data	    299
7.3.1 Preprocessor LINE_C (Emissions)	    299
7.3.2 Preprocessor LINE_CR (Emissions)	    304
7.4 Preprocessor MASK (Meteorology and Emissions)	    309
7.5 Preprocessor TEMPROC (Meteorology)	    315
7.6 The PFMFCOPY Program	    322
7.7 SHOWMET (Meteorology Quality Control)	    323


 Index	 Index-1

-------
                                 LIST OF TABLES

Because we believe that a "normal" List of Tables is not useful (due to the large number of tables and the
fact that many are repeated), we formatted the List of Tables unconventionally. Preceding a normal listing
are, in an alphabetized, non-numbered format, (1) a list of input and output files for the ROM preproces-
sors where each file is listed only at its first occurrence; (2) a list of control card variables for each prepro-
cessor; and (3) a list of I/O file space requirements for each preprocessor.

BUOY_AVG5Y.DAT parameters	     50
BUOYJVfMA^MMMaYKDAT parameters	     51
BUOY~A/MM1MMM2yy_CRCT.DAT parameters	     41
BUOYlMMM1MMM2rrIlNTP.DAT parameters	     45
BUOY_MMMiMMM2yy_SORT.DAT parameters	     50
BUOY~MMMiMAfM2YyIwNDW.DAT parameters	     40
BUOY_STAT.LOG parameters	     56
BUOY_STATyy.DAT parameters 	    161
BUOY_XTABLE.DAT parameters	     60
BUOYDAT parameters	    324
BUOYDAT stage 1 parameters	    316
BUOYDAT stage 2 parameters	    317
BUOYYKDAT parameter	     78
CANID_XTABLE.DAT parameters	    119
CARDIN.CPR variables	'.	    284
CNPBIOFC.SSD parameters	    272
ERRORJTUS.DAT parameters	    100
GCNBIO~MM.DAT parameters	    282
GCNPY.SSD parameters	    273
GCNPYRM.SSD parameters	    279
GNCBIOMM.DAT parameters	    283
GNCNPY.SSD parameters	    274
GNCNPYRM.SSD parameters	    280
GUTBIOMM.DAT parameters	    284
GUTREE.SSD parameters	    274
GUTREERM.SSD parameters	    280
LINE_C input tape file space requirements	    302
LINE1.DAT data record parameters	    306
LINE1.DAT header record parameters	    305
MBSAZ, MBSUZ, and MBWKZ parameters	    198
METCOND.DAT parameters	     94
NCBIOFC.SSD parameters	    273
PHOTORATES.DAT parameters	    295
POINTZ.DAT parameter	    190
PTE3.DAT parameters	    310
QAPOINT.DAT parameters	    221
QASOURCE.DAT parameters	    226
RATECB4-2.DAT parameters	    296
RAWLINES3.DAT data record parameters	    305
RAWLINES3.DAT header record parameters 	    304

                                        xiii

-------
RMCNBFC.SSD parameters	    278
RMNCBFC.SSD parameters	    279
RWND_YTCAN_CLCT.DAT parameters	     84
RWNDjmJS_CLCT.DAT parameters	     99
RWND~mJSMMM_RWND.DAT and RWND_lYCANA/M3f_RWND.DAT parameters	     72
RWND~ynJSMMM~SORTl.DAT and RWNDJYCANMAfM~SORTl.DAT parameter	     89
SEANPT.CSO parameters	    210
SFC_MMAfYY_RFMT.DAT "hours" header parameters	    127
SFC_MMA/YY_RFMT.DAT file header parameters	    127
SFC~MAfA/yy~RFMT.DAT parameters	    128
SFCJtfMMyrjSORT.DAT parameters	    126
SFclMMMYi{yRFY.DAT;l parameters	    132
SFC_MMMyy_VRFY.DAT;2 parameters	    133
SFC~MMA/Yr_VRFY.DAT parameters	     68
SFCCANJV/MM1MMM2yH:_CLCT.DAT parameters	    115
SFCCAN_MMA/yr_WNDW.DAT data parameters	    122
SFCCAN_MMM1Y_WNDW.DAT header parameters	    121
SFCUS_MMM1MMM2m_CLCT.DAT parameters	    139
SFCUS_MMMyy_CLCT.DAT parameters	    149
SFCUS_MMM}YJNTP.DAT parameters	    145
SFCUS_MA/MYy_RFMT.DAT parameters	    155
SFCUS~MMMyy~WNDW.DAT parameters	    144
STACKS.CSO parameters	    211
STNS_US_DEGFRAC.LIS parameters	    148
SURMET1 parameters	    323
SURMET1 stage 1 parameters	    315
SURMET1 stage 2 parameters	    316
SURMETM parameters	     52
USPOINTZ.RAW and CAPOINTZ.RAW parameters	    215
WINDOWMB tape parameter	    244
XTR_BUOYyy.DAT parameters	     60
ra/MA/_RWND_DEL.DAT parameters	     90
 BUOY.STAT control card variables	    57
 BUOY_INTP control card variables	    46
 BUOY~WNDW control card variables	    61
 COPYTAPE control card variable	    65
 COUNT_STNPERHR control card variables	    69
 DEL control card variables	    74
 FINDCT control card variable	'.	   . 191
 FINDPT control card variable	    195
 LINE_C control card variables	    301
 LINE_CR control card variables	    306
 MASK control card variable	    311
 OFFTAPE control card variables	    78
 PTEXTR control card variables	    211
                                       XIV

-------
QAOUTP control card variables	   221
QASRCE control card variables	   226
RWND.END control card variable	    90
RWND_CAN_CLCT control card variables	    85
RWND_US_CLCT control card variables	   100
RWND_V2 control card parameters	   110
RWND_WNDW control card variable	   105
SFC_VRFY control card variables	   157
SFCCAN_CLCT control card variables	   116
SFCCAN_WNDW control card variables	   123
SFCR_HRFILL control card variable	   134
SFCUS_CLCT control card variables	   140
SFCUS_CLD_INTP control card variable	   146
SFCUS_WNDW control card variables	   151
STAT_RFMT control card variable	   161
TEMPROC control card variables	   318
TOPEMI control card variables	   235
WINDOWAR control card variables	   240
WINDOWMB control card variables	   245
WINDOWPT control card variables	   251
XTRACTLL control card variables	   165
ARMERG I/O file space requirements	    193
BUOY_CRCT I/O file space requirements	     42
BUOYJNTP I/O file space requirements	     47
BUOY_RFMT I/O file space requirements	     53
BUOY_STAT I/O file space requirements	     57
BUOY_WNDW I/O file space requirements	     62
COUNT_STNPERHR I/O file space requirements	     70
CVCHEM I/O file space requirements	    297
DEL I/O file space requirements	     79
DEL I/O file space requirements for May 1988 U.S. data	     75
FINDCT I/O file space requirement	    192
FINDPT I/O file space requirements	    196
LINE_C I/O file space requirements	    302
LINE_CR I/O file space requirements	    307
MASK I/O file space requirements	    312
MBEXTR I/O file space requirements	    200
MBMERGE I/O file space requirements	    205
NBIOMASS I/O file space requirements	    285
Ozone preprocessing I/O file space requirements	    291
PTEXTR I/O file space requirements	    212
PTMERG I/O file space requirements	    217
QAOUTP I/O file space requirements	    222
QASRCE I/O file space requirements	    227
QASTACK I/O file space requirements	    231
                                          xv

-------
ROMREG I/O file space requirements	    276
RWND.RFMT sample I/O file space requirements	     95
RWND_CAN_CLCT I/O file space requirements for 1988 data	     86
RWND_END I/O file space requirements for May 1988 U.S. data	     91
RWND_US_CLCT I/O space requirements for 1983 data	    101
RWND_V2 sample I/O file space requirements	    Ill
RWND_WNDW I/O file space requirements for September 1988 U.S data	    106
SFC_RFMT I/O file space requirements	    129
SFC_VRFY I/O file space requirements	    158
SFCCAN_WNDW I/O file space requirements	    124
SFCR_HRFILL I/O file space requirements	    135
SFCUS_CLD_INTP I/O file space requirements	    146
SFCUSJWNDW I/O file space requirements	    152
STAT_RFMT I/O file space requirements	    162
TEMPROC I/O file space requirements	    319
TOPEMI I/O file space requirements	    236
WINDOWAR I/O file space requirements	    241
WINDOWMB I/O file space requirements	    246
WINDOWPT I/O file space requirements	    252
XTRACTLL I/O file space requirements 	    166
2.1  Functional descriptions of the ROM2.1 input processor network	     12
2.2  ROM2.1 input processors by functional category	     15
2.3  Initial mean tropospheric background concentrations, precursor species	     19


3.1  Preprocessor routines for buoy observations	     28
3.2  Preprocessor routines for surface meteorology observations	     33
3.3  Preprocessor routines for upper-air meteorology observations	     39
3.4  BUOY_MMA/iMMA/2lY_WNDW.DAT parameters	     40
3.5  BUOY_MMM1A/A/M2yr_CRCT.DAT parameters	     41
3.6  BUOY_CRCT I/O file space requirements	     42
3.7  BUOY_MMMiMMM2lY_CRCr.DAT parameters	     44
3.8  BUOY_MMM1MMM2yr_INTP.DAT parameters	     45
3.9  BUOY_INTP control card variables	     46
3.10 BUOY_INTP I/O file space requirements	     47
3.11 BUOY_MAfM1MMM2Yy_SORT.DAT parameters	:	'.	     50
3.12 BUOY_AVGyy.DAT parameters	     50
3.13 B\JOYJfMMlMMM2YY.DAT parameters	     51
3.14 SURMETM parameters	     52
3.15 BUOY_RFMT I/O file space requirements	     53
                                          XVI

-------
3.16 BUOY_AfMM1MMM2lY_CRCr.DAT parameters	     55
3.17 BUOY_STAT.LOG parameters	     56
3.18 BUOY.STAT control card variables	     57
3.19 BUOY_STAT I/O file space requirements	     57
3.20 BUOY_XTABLE.DAT parameters	     60
3.21 XTR_BUOYYKDAT parameters	     60
3.22 BUOY_MMMiMMM2lY_WNDW.DAT parameters	     61
3.23 BUOY_WNDW control card variables	     61
3.24 BUOY_WNDW I/O file space requirements	     62
3.25 COPYTAPE control card variable	     65
3.26 Tape file space requirements	     66
3.27 SFC_MMMYy_VRFY.DAT parameters	     68
3.28 COUNT_STNPERHR control card variables	     69
3.29 COUNT_STNPERHR I/O file space requirements	     70
3.30 RWND_mJSMMA/_RWND.DAT and RWNDJYCANMA/M_RWND.DAT parameters
	     72
3.31 DEL control card variables	     74
3.32 DEL I/O file space requirements for May 1988 U.S. data	     75
3.33 BUOY1Y.DAT parameter	     78
3.34 OFFTAPE control card variables	   78
3.35 DEL I/O file space requirements	     79
3.36 Tape File Space Requirements	     79
3.37 Tape parameters	,	     83
3.38 WBAN conversion file parameters	     83
3.39 RWND_yyCAN_CLCT.DAT parameters	     84
3.40 RWND_CAN_CLCT control card variables	     85
3.41 RWND_CAN_CLCT I/O file space requirements for 1988 data	     86
3.42 Tape File Space Requirements	     86
3.43 RWND_YyUSMMM_SORTl.DATandRWND_yTCANMAfM_SORTl.DATparameter...     89
3.44 ra/MAf_RWND_DEL.DAT parameters	     90
3.45 RWND.END control card variable	     90
3.46 RWND_END I/O file space requirements for May 1988 U.S. data	     91
3.47 METCOND.DAT parameters	     94
3.48 RWND.RFMT sample I/O file space requirements	     95
3.49 Tape parameters	     98
3.50 RWND_yyUS_CLCT.DAT parameters	     99
                                         xvu

-------
3.51 ERRORJYUS.DAT parameters	    100
3.52 RWND_US_CLCT control card variables	    100
3.53 RWND_US_CLCT I/O space requirements for 1983 data	    101
3.54 Tape File Space Requirements	    102
3.55 RWNDJYUS_CLCT.DAT parameters	    105
3.56 RWND_WNDW control card variable	    105
3.57 RWND_WNDW I/O file space requirements for September 1988 U.S data	    106
3.58 Sorted upper-air data files' parameters	    109
3.59 RWND_V2 control card parameters	    110
3.60 RWND_V2 sample I/O file space requirements	    Ill
3.61 Tape parameters	    114
3.62 SFCCAN_MMM1MMM2ir*_CLCr.DAT parameters	    115
3.63 SFCCAN_CLCT control card variables	    116
3.64 SFFCAN_CLCT output file space requirements	    117
3.65 SFCCAN_CLCT input tape file space requirements	    117
3.66 CANID_XTABLE.DAT parameters	    119
3.67 SFCCANJfMM^MMzYYxjCLCTDAT parameters	    120
3.68 SFCCAN_MMM1Y_WNDW.DAT header parameters	    121
3.69 SFCCAN_MMMlT_WNDW.DATdata parameters	    122
3.70 SFCCAN_WNDW control card variables	    123
3.71 SFCCAN_WNDW I/O file space requirements	    124
3.72 SFC_MMMYF_SORT.DAT parameters	    126
3.73 SFC_MMMY7_RFMT.DAT file header parameters	    127
3.74 SFCJl/MA/yy_RFMT.DAT "hours" header parameters	    127
3.75 SFC_MMA/Yy_RFMT.DAT parameters	    128
3.76 SFC_RFMT I/O file space requirements	    129
3.77 SFC_MMM1T_VRFY.DAT;1 parameters	    132
3.78 SFC_MMMJT_VRFY.DAT;2 parameters	    133
3.79 SFCR_HRFILL control card variable	:	    134
3.80 SFCR_HRFILL I/O file space requirements	    135
3.81 Tape parameters	    138
3.82 SFCUS_MMA/iA/MAf2Yli_CLCr.DAT parameters	    139
3.83 SFCUS_CLCT control card variables	:	    140
3.84 SFCUS_CLCT output file space requirements	    141
3.85 SFCUS_CLCT input tape file space requirements	    141
3.86 SFCUS_MMAfJY_WNDW.DAT parameters	    144
                                         XVlll

-------
3.87 SFCUS_AfMAflT_INTP.DAT parameters	    145
3.88 SFCUS_CLD_INTP control card variable	    146
3.89 SFCUS_CLD_INTP I/O file space requirements	    146
3.90 STNS_US_DEGFRAC.LIS parameters	    148
3.91 SFCUSJV/MA/yr_CLCT.DAT parameters	    149
3.92 SFCUS_MMMJr_INTP.DAT parameters	    150
3.93 SFCUS_WNDW control card variables	    151
3.94 SFCUS_WNDW I/O file space requirements	    152
3.95 SFCUS_MMAfyy_RFMT.DAT parameters	    155
3.96 SFC_MMM1Y_VRFY.DAT parameters	    156
3.97 SFC_VRFY control card variables	    157
3.98 SFC_VRFY I/O file space requirements	    158
3.99 BUOY_STAT.LOG parameters	    160
3.100 BUOY_STAnr.DAT parameters	    161
3.101 STAT_RFMT control card variable	    161
3.102 STAT_RFMT I/O file space requirements	    162
3.103 BUOYYKDAT parameters	    164
3.104 XTR_BUOY1Y.DAT parameter	    165
3.105 XTRACTLL control card variables	    165
3.106 XTRACTLL I/O file space requirements	    166

4.1 1985 NAPAP anthropogenic emissions inventory coverage	    169

5.1 ROM chemical species	    176
5.2 Preprocessor programs for anthropogenic emissions data	    178
5.3 Canadian area-source file parameters	    180
5.4 U.S. area-source file parameters	    181
5.5 Merged area-source file parameters	    192
5.6 ARMERG I/O file space requirements	    193
5.7 COPYTAPE control card variable	    187
5.8 COPYTAPE tape file space requirements	    188
5.9 POINTZ.DAT parameter	    190
5.10 FINDCT control card variable	    191
5.11 FINDCT I/O file space requirement	    192
5.12 POINTZ.DAT parameter	    194
5.13 FINDPT control card variable	    195
                                          XK

-------
5.14 FINDPT I/O file space requirements	   1%
5.15 MBSAZ, MBSUZ, and MBWKZ parameters	   198
5.16 MBSAZ, MBSUZ, and MBWKZ parameters	   199
5.17 MBEXTR I/O file space requirements	   200
5.18 Canadian mobile-source file parameters	   203
5.19 Merged mobile-source data file parameters	   204
5.20 MBMERGE I/O file space requirements	   205
5.21 POINTZ.DAT parameters	   209
5.22 SEANPT.CSO parameters	   210
5.23 STACKS.CSO parameters	.'.	   211
5.24 PTEXTR control card variables	   211
5.25 PTEXTR I/O file space requirements	   212
5.26 USPOINTZ.RAW and CAPOINTZ.RAW parameters	   215
5.27 POINTZ.DAT parameters	   216
5.28 PTMERG I/O file space requirements	   217
5.29 POINTZ.DAT parameters	   220
5.30 QAPOINT.DAT parameters	   221
5.31 QAOUTP control card variables	   221
5.32 QAOUTP I/O file space requirements	   222
5.33 POINTZ.DAT parameters	   225
5.34 QASOURCE.DAT parameters	   226
5.35 QASRCE control card variables	   226
5.36 QASRCE I/O file space requirements	   227
5.37 POINTZ.DAT parameters	   230
5.38 QASTACK I/O file space requirements	   231
5.39 QAPOINT.DAT parameters	   234
5.40 TOPEMI control card variables	   235
5.41 TOPEMI I/O file space requirements	   236
5.42 Area-source tape parameter	   239
5.43 WINDOWAR control card variables	   240
5.44 WINDOWAR I/O file space requirements	   241
5.45 WINDOWAR input tape file space requirements	   241
5.46 WINDOWMB tape parameter	   244
5.47 WINDOWMB control card variables	   245
5.48 WINDOWMB I/O file space requirements	   246
5.49 WINDOWMB input tape file space requirements	   246
                                           xx

-------
5.50 WINDOWPT tape parameter	    250
5.51 WINDOWPT control card variables	    251
5.52 WINDOWPT I/O file space requirements	    252
5.53 WINDOWPT input tape file space requirements	    252

6.1 Vegetation classes in the biogenic emissions inventory system	    257
6.2 Forest biomass density estimates	    258
6.3 Layers for forest biomass classes	    261
6.4 Canopy emission factors at 30°C 	    262
6.5 Noncanopy emission factors at 30°C and estimated percent composition of emissions	     263
6.6 Isoprene temperature and solar intensity adjustment coefficients	    264
6.7 Nonisoprene temperature adjustment coefficients	    265
6.8 CNPBIOFCSSD parameters	    272
6.9 NCBIOFC.SSD parameters	    273
6.10 GCNPY.SSD parameters	    273
6.11 GNCNPY.SSD parameters	    274
6.12 GUTREE.SSD parameters	    274
6.13 ROMREG I/O file space requirements	    276
6.14 RMCNBFC.SSD parameters	    278
6.15 RMNCBFC.SSD parameters	    279
6.16 GCNPYRM.SSD parameters	    279
6.17 GNCNPYRM.SSD parameters	    280
6.18 GUTREERM.SSD parameters	    280
6.19 Leaf area indices	    281
6.20 GCNBIOMM.DAT parameters	    282
6.21 GNCBIOMM.DAT parameters	    283
6.22 GUTBIOMM.DAT parameters	    284
6.23 CARDIN.CPR variables 	'.	    284
6.24 NBIOMASS I/O file space requirements	   285

7.1 Ozone parameters	    290
7.2 Ozone preprocessing I/O file space requirements	    291
7.3 Regional estimates of meteorological parameters, summer conditions	   293
7.4 METCOND.DAT parameters	   294
7.5 PHOTORATES.DAT parameters	   295
7.6 RATECB4-2.DAT parameters	   296
                                           joa

-------
7.7 CVCHEM I/O file space requirements	    297
7.8 U.S. Geodata tape parameter	    300
7.9 LINE_C control card variables	    301
7.10 LINE_C I/O file space requirements	    302
7.11 LINE_C input tape file space requirements	    302
7.12 RAWLINES3.DAT header record parameters	    304
7.13 RAWLINES3.DAT data record parameters	    305
7.14 LINE1.DAT header record parameters	    305
7.15 LINE1.DAT data record parameters	    306
7.16 LINE_CR control card variables	    306
7.17 LINE_CR I/O file space requirements	    307
7.18 PTE3.DAT parameters	    310
7.19 PF195 parameter	    311
7.20 MASK control card variable	    311
7.21 MASK I/O file space requirements	    312
7.22 SURMET1 stage 1 parameters	    315
7.23 SURMET1 stage 2 parameters	    316
7.24 BUO YD AT stage 1 parameters	    316
7.25 BUOYDAT stage 2 parameters	    317
7.26 PF192 parameters	  317
7.27 TEMPROC control card variables	:	    318
7.28 TEMPROC I/O file space requirements	    319
7.29 SURMET1 parameters	    323
7.30 BUOYDAT parameters	    324
7.31 SURMETM parameters	    324
7.32 GKS Supported Devices	    326
7.33 SHOWMET prompts 	    329
                                            XXII

-------
                                  LIST OF FIGURES

2.1 The three-and-a-half layers of the ROM	.-.	      6
2.2 Components of the ROM	     10
2.3 Structure and final output files of the ROM 2.1 processor network	     11
2.4 NEROS, SEROS, and ROMNET modeling domains	     22

3.1 Flow of routines for meteorology input data	     26

4.1 Simplified flowchart of FREDS processing for the ROM	    171

5.1 Flow of routines for meteorology input data	    174

6.1 The biogenic emissions inventory system	    256
6.2 Canadian agricultural class assignments	    259

7.1 Ozone monitoring stations (ID numbers) for the determination of ROMNET ozone
   boundary conditions	    289
7.2 Terminal display of graphics devices for SHOWMET	    327
7.3 SHOWMET station key	    328
7.4 Sample ROMNET plot for SHOWMET	    332
7.5 Sample ROMNET windowed plot for SHOWMET	    332
                                           xnu

-------
This page is intentionally left blank.

-------
                                         SECTION 1
                                      INTRODUCTION
Although air quality levels in the United States for most criteria pollutants have improved over the past
decade, harmful levels of photochemical smog still persist in many urban areas. Concentrations of ozone, a
major component of photochemical smog, often exceed the air pollution standard established by the Clean
Air Act. Implementing VOC and NOX emission control programs can bring some areas closer to the primary
ozone standard, but the effectiveness of control strategies must be evaluated before they are actually applied.
Because mathematical modeling is a very powerful tool, the U.S. Environmental Protection Agency (EPA)
has developed the Regional Oxidant Model (ROM) to predict the ozone concentration changes that would
result from specified emissions changes for a given region.

The initial development of a regional (wlOOOkm) air quality simulation model began in the late 1970's after
the realization that photochemical smog often extended beyond individual urban areas to entire sections of
the United States. Interstate transport of ozone (03) and its precursors was observed during field programs,
especially in the northeast of the country. Since multiday chemical effects and long-range transport of ozone
and its precursors was beyond the scope of the existing urban-scale photochemical models, the need for an
appropriate simulation model to test the effectiveness of particular emission control strategies on regional
and urban airshed  ozone concentrations  became clear.   The Regional Oxidant Model (ROM) has been
developed and enhanced over the past eight years at the EPA in response to this need. The first generation
ROM (ROM1.0) became operational in 1984. The initial model formulation and algorithm testing is docu-
mented in a three-part volume titled/I Regional Scale (1000km) Model of Photochemical Air Pollution: Part 1
- Theoretical Formulation; Part 2 - Input Processor Network Design] Part 3 - Tests of Numerical Algorithms.1

The ROM is a  sophisticated regional-scale model that predicts hourly ozone concentrations for episodes
extending up to about a month in duration; each episode is modeled as a series of three-day executions. The
model domain, divided into a set of grid cells approximately 19 km by 19 km each, encompasses an area on the
order of 1000 km by 1000 km. For much of eastern North America, the ROM can model the regional vari-
ability of the chemical and physical processes that affect photochemicaUy-produced ozone concentrations on
a regional scale. The ROM models:
 1. Lamb, 1983, Lamb, 1984a, and Lamb and Laniak, 1985, respectively.

                                               1

-------
      •   horizontal winds;
         the photochemistry of airborne chemical species (including the nighttime chemistry of products
         and precursors of photochemical reactions);
         nocturnal jets and nocturnal stable stratifications;
         cumulus cloud effects on vertical mass transport and photochemical reaction rates;
         mesoscale vertical motion and eddy effects;
      •   terrain effects on horizontal flows, and on the deposition and diffusion of chemical species;
      •   sub-grid-scale chemical processes (resulting from emissions smaller than  the model's grid can
         resolve);
         emissions of biogenic and anthropogenic ozone precursors; and
      •   dry removal processes (including the dry deposition of ozone).

The ROM system is composed of a Core Model, which solves the sets of equations that describe the above
processes, and a series of over 30 processors that prepare the input data needed by the core model.  ROM 1.0,
the first version of the ROM, emerged in 1984 and was used for a limited set of applications for the Northeast
Corridor Regional Modeling Project. ROM 2.0 became operational in 1987; it was created from ROM 1.0 by
changing or adding several features: (1) The Demerjian chemical mechanism was replaced with version 4.0 of
the Carbon Bond Mechanism (CBM 4.0), which simulates some 70 reactions among 28 chemical species.  (2)
Biogenic hydrocarbon  emissions were added to the list of emission types modeled; ROM 1.0 modeled only
anthropogenic emissions.  (3) The code was modified to allow atmospheric layer thicknesses  to vary over
space and time; in ROM1.0, these thicknesses remained constant.  (4) The ability to simulate the effects of
nocturnal jets and nighttime inversions was added.

Application requirements for EPA's Regional Ozone Modeling for Northeast Transport (ROMNET) project
have prompted us to upgrade ROM2.0 to produce ROM2.1 (Young et al., 1989).  For the ROMNET appli-
cation, we have expanded the model's domain in the northeastern U.S. from 60 by 42 cells to 64 by 52 cells in
order to include major urban emitters in Ohio and Virginia. As a result, the design of ROM2.1 allows users
to increase or reduce the numbers of columns and rows in the grid more easily than before. ROM2.1 also can
be adapted more easily to other modeling domains in eastern North America. Some of the other modifica-
tions include an updated biogenic hydrocarbon processor, an improved wind fields processor, an upgraded
Carbon Bond Mechanism (CBM 4.2) in the ROM's chemistry solver; expanded use of buoy data and the use
of mobile-source emissions data; and changes  that allow the ROM system to use computer resources  more
efficiently. We have also added features that should allow outside users to apply the ROM more easily.

The Regional Oxidant Model (ROM) User's Guide is a four-pan document:  Pan 1 - The ROM Preproces-
sors (this volume); Part 2 - The ROM Processor Network (EPA-600/8-90/083b); and Part 3 - The Core Model
(EPA-600/8-90/083c).   This volume, Part 1,  presents the steps necessary to  prepare  raw emissions and
meteorology data that are used by the Processor network.  In Section 2, we present a broad overview of the

-------
ROM. Beginning with Section 3, we describe the various components of the preprocessing operations: Sec-
tion 3 itself describes meteorology preprocessing; Section 4 introduces the anthropogenic emissions database,
and Section 5 describes anthropogenic emissions preprocessing; Section 6 describes biogenic emissions
preprocessing; and Section 7 describes the remaining miscellaneous preprocessing requirements.

In Part 2 of this User's Guide, Section 1 discusses the five standard file types that are used in the ROM and the
processor network. Section 2 presents the ROM  Processor Network. Section 3 discusses some aspects of
regional dependencies, and describes modeling domain characteristics. Section 4 consists of references and a
bibliography pertinent to the ROM. There are four appendices at the end  of Part 2: Appendix A consists of
a list of domain dimensions and cell sizes that are currently (or in the near future, will become) operational.
Appendix B shows the input and output data files  for all processors, and Appendix C illustrates the proces-
sor's subprogram hierarchy. Appendix D describes  previous ROM2.1 emissions control strategy applications.

The ROM User's Guide, Pan 3, describes the structure and execution of the Core Model.

The code of the ROM preprocessors, processor network, and Core Model is available on magnetic tape. The
ROM User's Guide, Part 4 (EPA-600/8-90/083d), accompanies the code, and consists of a set of benchmark
data sets as well as a tutorial to guide you through the code installation and benchmark tests.

Note that work continues to upgrade the ROM; while the revised code may be made available to interested
users, no updates to this User's Guide are planned at present.

-------
This page is intentionally left blank.

-------
                                         SECTION 2

         AN OVERVIEW OF THE REGIONAL  OXIDANT MODEL (ROM)


   2.1  A GENERAL DESCRIPTION OF THE MODELING SYSTEM

   The system under study by the ROM is the set of chemical and physical processes resulting in the trans-
   port and transformation of ozone (03) on spatial scales of 1000 km. Ozone is produced by chemical
   reactions in the presence of sunlight among anthropogenic, biogenic, and geogenic emissions of nitrogen
   oxides and hydrocarbons.  The system is three-dimensional  and complex.  The relationship of 03 pro-
   duction to emitted precursor species is nonlinear.

   2.2  GENERAL MODEL CHARACTERISTICS

   The ROM was designed to simulate most of the important chemical and physical processes that are
   responsible for the photochemical production of 03 over a domain of 1000 km and for episodes of typi-
   cally around 15 days in duration.  These processes include (1) horizontal transport, (2) atmospheric
   chemistry and subgrid-scale chemical processes, (3) nighttime wind shear and turbulence associated with
   the low-level nocturnal jet, (4) the effects of cumulus clouds on vertical mass transport and photochemi-
   cal reaction rates, (5) mesoscale vertical motions induced by terrain and the large-scale flow, (6) terrain
   effects  on  advection, diffusion,  and deposition,  (7) emissions of natural and anthropogenic ozone
   precursors, and (8) dry deposition. The processes are mathematically simulated in a three-dimensional
   Eulerian model with 3Vz vertical layers, including  the boundary layer and the capping inversion or cloud
   layer.1  Horizontal grid resolution is V4° longitude by V6°  of latitude, or about 18.5 km x 18.5 km.  Cur-
   rent model domains include the northeastern United States and the southeastern U.S./Gulf Coast area.

       2.2.1 Physical Processes within Layers 0.1.2 and 3

       The meteorological data are used to objectively model regional winds and diffusion.  The top three
       model layers are prognostic (predictive) and are free to locally expand and contract in response to
       changes in the physical processes occurring within them. During an entire simulation period, hori-
       zontal advection and diffusion and gas-phase chemistry are modeled in the upper three layers.  The
       bottom layer, layer 0, is a shallow diagnostic surface layer designed to approximate the subgrid-scale
       effects on chemical reaction rates from a spatially heterogeneous emissions distribution.  ROM pre-
1. Layer 0, the "hair layer, has a layer thickness thai is always Vio of the thickness of layer 1; the thicknesses of layers 1,2, and 3 vary.

                                              5

-------
dictions from layer 1 are used as surrogates for surface concentrations.  The time scale of output

concentrations is 30 minutes, although typically 1- and 8-hour daytime averages are used for analysis

in the public policy sector.  Figure 2.1 shows the ROM layers during the day and at night, and

describes some of their features.
                       Subsidence Inversion
                                                    Cloud layer
                       Subsidence Inversion
                                                    Old doud layer

                         WIGHT
                                                 . ; Ok) mixed layer
                                                    Radiation Inversion/
                                                    nocturnal let laver
                                                           ^  '
                                                          layer
          Layer Functions
 Cloud layer
- downward transport of stratospheric ozone
- upward transport by cumulus clouds
- gas-phase photochemistry
- long-range transport by the free atmosphere
 Mixed layer
- gas-phase photochemistry
- turbulence and wind shear effects on
  transport and dHfuslon
- deposition on mountainous terrain

 - lake-and marine-layer effects
 Surface layer
 - subgrld-scale effects on reaction rates;
  segregation of fresh and aged pollutants
  	— J-l	laHInn
 -grouno ooposmon
 - spatial variations in mean concentrations
  due to Ine, point, and area sources
 Otd doud layer
 - downward transport of stratospheric ozone
 - dark gas-phase chemistry
 Old mixed layer
 - transport of aged gas-phase reactants
  and products
 - dark gas-phase chemistry
 Radiation Irrverslon/nocturnaf jet layer
 - transport of aged pollutants and reactants
  by the nocturnal jet
 - transport of nighttime emissions from
  tall stacks and warm cities-
 - deposition on mountainous terrain
 - downward transport during jet breakdowns
 - nighttime shallow mixed layer over
  urban heat islands
 Surface  layer
 - calms in rural areas
 - ground deposition
 - reservoir of nighttime emissions of
  smal. low-level sources
                         Figure 2.1. The three-and-a-half layers of the ROM.


 Layers 1 and 2 model the depth of the well-mixed layer during the day. Some special features of layer

 1 include the modeling of (1) the substantial wind shear that can exist in the lowest few hundred

 meters above ground in local areas where strong winds exist and the surface heat flux is weak, (2) the

 thermal internal boundary layer that often exists over large lakes or near sea coasts, and (3) deposi-

 tion onto terrain features that protrude above the layer.  At night, layer 2 represents what remains of

 the daytime mixed layer.  As stable layers form near the ground and suppress turbulent vertical

 mixing, a nocturnal jet forms above the stable layer and can transport aged pollutant products and

 reactants considerable distances.  At night, emissions from tall stacks and warm cities are injected

 directly into layers 1 and 2.  Surface emissions  are specified as a mass flux through the bottom of

 layer 1.

-------
During the day, the top model layer, layer 3, represents the synoptic-scale subsidence inversion char-
acteristic of high ozone-concentration periods; the base of layer 3 is typically 1 to 2 km above the
ground. Relatively clean tropospheric air is assumed to exist above layer 3 at all times. If cumulus
clouds are present, an upward flux of 03 and precursor species is injected into the layer by penetrative
convection. At night, O) and the remnants of other photochemical reaction products may remain in
this layer and be transported long distances downwind. These processes are modeled in layer 3.

When cumulus clouds are present in a layer 3 cell, the upward vertical mass flux from the surface is
partially diverted from injection into layer 1 to injection directly into the cumulus cloud of layer 3. In
the atmosphere, strong thermal vertical updrafts, primarily originating near the surface in the lowest
portion of the mixed layer, feed growing fair weather cumulus clouds with vertical air currents that
extend in one steady upward motion from the ground to well above the top of the mixed layer. These
types of clouds are termed "fair weather cumulus" since atmospheric conditions are such that they do
not grow to the extent that precipitation forms. The dynamic effects of this transport process and
daytime cloud evolution can have significant effects on the chemical fate of pollutants.  For example,
fresh emissions from the surface layer can be injected into a warm thermal and rise, essentially
unmixed, to the top of the mixing layer where they enter the base of a growing cumulus cloud. Within
the cloud, the chemical processes of ambient pollutant species are suddenly altered by the presence of
liquid water and the attendant attenuation of sunlight. The presence of fair weather cumulus clouds
implies that the atmosphere above the earth's boundary layer is too stably stratified for thermals to
penetrate higher.  In this case the air comprising the tops of these clouds returns to the mixed layer
and is heated on its descent since it is being compressed by increasing atmospheric pressures. Ulti-
mately, the air again arrives at the surface level where new emissions can  be injected into it and
ground deposition may occur, and the process may begin again.  The time required for one complete
cycle is typically 30 to 50 minutes with perhaps one-tenth of the time spent in the cloud stage.

Within the ROM system, a submodel parameterizes the above cloud flux process and its impact on
mass fluxes among all the model's layers.  In the current implementation of the chemical kinetics,
liquid-phase chemistry is not modeled, and thus part of the effects from the cloud flux processes are
not accounted for in the simulations.  Future versions of the chemical kinetics may include liquid-
phase reactions. The magnitude of the mass flux proceeding directly from the surface layer to the
cloud layer is modeled as being proportional to the observed amount of cumulus cloud coverage and
inversely proportional to the observed depth of the clouds.

Horizontal transport within the ROM system is governed by hourly wind fields that  are interpolated
from periodic wind observations made from upper-air soundings and surface measurements. During
the nighttime simulation period, the lowest few hundred meters of the atmosphere above the ground

-------
may become stable as a radiation inversion forms. Wind speeds increase just above the top of this
layer, forming the nocturnal jet  This jet is capable of carrying O& other reaction products, and
emissions injected aloft considerable distances downwind. This phenomenon is potentially signifi-
cant in modeling regional-scale air quality and is implicitly treated by the model, where the definition
of layer 1 attempts to account for it

Because standard weather observations do not have the spatial or temporal resolution necessary to
determine with confidence the wind fields in layer 1, a submodel within the ROM system was devel-
oped to simulate the nighttime flow regime in layer 1 only. This prognostic flow submodel is acti-
vated only when a surface inversion is present over most of the model domain. At all other times the
flow in layer 1 is determined from interpolation of observed winds. The nighttime flow regime within
layer 1 is influenced by buoyancy, terrain, warm cities, pressure-gradient forcing, and frictional forces,
all of which are accounted for in the model's flow formulation. Solution of the wind submodel equa-
tions produces estimates of the wind components as well as the depth of the inversion layer for all grid
cells in layer 1.

2.2.2 ROM Chemistry

The chemical kinetic mechanism embedded in the current version of the ROM is the Carbon Bond IV .
(CB-IV) set of reactions (Gery et al., 1989). This mechanism simulates the significant reaction path-
ways responsible for gas-phase production and destruction of the constituents of photochemical smog
on regional scales.  The mechanism consists of 82 reactions encompassing 33 individual species. The
ROM's chemical solution scheme makes no a priori assumptions concerning local steady states.
Therefore, all species are adverted, diffused, and chemically reacted -in the model simulations.

The CB-IV contains a standard set  of reactions for atmospheric inorganic chemical species, including
03, NO, NO& CO, and other intermediate and radical species. Organic chemistry is partitioned
along reactivity lines based on the  carbon structures of the organic molecules. Nine individual cate-
gories of organics are represented to account for the chemistry of the hundreds of organic molecules
existing in the ambient atmosphere:  ETH, an explicit representation of ethene; FORM, an explicit
representation of formaldehyde; OLE, a double-bonded lumped structure including two carbons
(e.g., olefins); PAR, a single-bond, single-carbon structure (i.e., paraffins); ALD2, the oxygenated
two-carbon structure of the higher aldehydes; TOL, the aromatic structure of molecules with only one
functional group (e.g., toluene); XYL, the structure of molecules with multifunctional aromatic rings
(e.g., xylene); ISOP, the five-carbon isoprene molecule; and NONR, a single-carbon organic structure
not significantly participating in the reaction sequence. MTHL, methanol, is also included in the
mechanism; it is used only in future-year scenarios, when we expect that methanol-powered automo-
biles will be common.
                                         8

-------
Three classes of biogenic hydrocarbons are included in a separate natural area source emissions
inventory used by the ROM: (1) isoprene, a molecule principally emitted by deciduous trees, is
treated by the ISOP species in CB-IV; (2) monoterpenes, a class of natural hydrocarbons emitted
principally by coniferous trees, is not treated explicitly in CB-IV. The surrogate monoterpene mole-
cule, a-pinene, which consists of 10 carbons, is apportioned to the existing CB-IV categories as 0.5
OLE, 1.5 ALD2, and 6 PAR; (3) unidentified hydrocarbons (gas chromatography analysis did not
identify specific hydrocarbon compounds) are tentatively treated as 50% terpenes, 45% PAR, and 5%
NONR (Pierce et al., 1990a).  These unidentified compounds can comprise as much as 40% of the
biogenic hydrocarbons.

2.2.3 System Components

The components of the ROM are shown in Figure 2.2.  The raw input data to the ROM (refer to
Section 2.3) are manipulated by the preprocessors and a hierarchical network of 35 processors that
range in  function from simple reformatting of emissions data to generating the complex wind fields
that drive the atmospheric transport These processors are interconnected by their requirements for
and production of data.  The ultimate product of the processor network is a collection of data files
that can  be categorized into two types of standard input files: processor files (PF) and model files
(MF).  PFs contain partially processed data required as input to higher level processors. MFs con-
tain the parameter fields that are transformed into the variables required by the model algorithms;
however, they also provide input to a number of higher level processors.  The processor network
ultimately produces several large data files for the core model; these contain initial-condition and
boundary-condition concentrations as well as the data used to model all physical and chemical pro-
cesses affecting species concentrations in a given episode.  These files combined contain tens of mil-
lions of  Core Model  input values; simulating one day, for example, requires nearly 100  billion
computations with these millions of values.

The processors are organized into nine distinct hierarchical stages, numbered 0-8. Stage 0 proces-
sors produce output files such as the gridded land use data. Stage 1 processors interface directly with
the preprocessed input data sets which have undergone extensive quality control. Subsequent stages
transform the input data into the gridded fields of temporally and  spatially varying parameter values
needed by the highest stages of the processing network. Processors at any stage can interface directly
with the B-Matrix compiler, described below, by production of model input files.  This multistage
organization is important to  the network because  it clearly  delineates  the sequence of program
execution. Processors at the same stage may execute simultaneously. A processor at any given stage,

-------





O K
w °

O LU

*•
J






UJ
_J
LZ

~
u.
o.
LU
CO
<
CD
<
(-
<
Q
t

                                                  o>
                                                  +•>
                                                  <*-!
                                                  o
                                                  CO
                                                  e
                                                  0)
                                                  O
                                                  O,
                                                  E
                                                  O
                                                  O

                                                  Cvj
                                                  c\3
                                                  O)

                                                  Or
                                                  -F-M
                                                  UH
10

-------
however, must wait until all processors from lower stages along its input data paths have been com-
pleted. Formal definition of all data/processor relationships and automation of processor executions
are essential to ensure consistency and validity of MFs.

Figure 2.3 shows the ROM2.1 processor network. It consists of three interrelated parts: the initial-
condition and boundary-condition (IC/BC) processors; the meteorology processors, which process
topography and land use data in addition to meteorology data; and the emissions processors.  The
network transforms the raw data input files into the four core model input files shown on the right:
ICON (initial-condition  concentration  data),  BCON  (boundary-condition concentration data),
BTRK [diffusivity and backtrack (advection transport) information], and BMAT (parameterization
for vertical fluxes, meteorological parameters necessary for chemistry rate constant adjustments, and
parameterized emissions source strengths). Table 2.1 summarizes the functions of all the processors
in the ROM 2.1 network.  Table 2.2 reorganizes Table 2.1 to summarize the role of particular pro-
cessors within functional categories.
          Figure 2.3. Structure and final output files of the ROM 2.1 processor network.
                                         11

-------
   TABLE 2.1. FUNCTIONAL DESCRIPTIONS OF THE ROM2.1 INPUT PROCESSORS
Processor    Stage
Function in ROM2.1
  P01G        2        Interpolates profiles of upper-air meteorological parameters at inter-
                          vals of 50 m from hourly rawinsonde vertical profiles

  P02G        1        Writes to the file ICON the gridded initial-condition concentrations for
                          each layer and species simulated by the core model, using P21G's
                          clean-air concentrations as initial-condition concentrations

  P03G        1        Prepares surface meteorology data (e.g., mixing ratio, virtual tempera-
                          ture, and wind speed) for use in higher-stage processors

  P04G        2        Computes gridded surface roughness, and hourly gridded Monin-
                          Obukhov length, surface heat flux, friction velocity, surface tempera-
                          ture, surface relative humidity, and surface wind speed

  P05G        2        Uses surface observations to compute hourly gridded values for the
                          fraction of sky covered by cumulus clouds, and also calculates cumu-
                          lus cloud-top heights

  P06G        0        Computes the smoothed terrain elevation for each Iff lat. by 15' long.
                          ROM domain grid cell, and also for a larger domain that extends
                          three grid cells beyond the ROM domain. In addition, it computes
                          average terrain elevations in a finer-resolution domain (cells 5' lat.
                          by 5' long.) for the terrain penetration calculation. Finally, it com-
                          putes the north-south and east-west components of the terrain eleva-
                          tion gradient (slope)

  P07G        3        Computes hourly gridded wind fields in the cold layer, hourly gridded
                          terrain penetration fractions, hourly gridded cold layer growth rates,
                          and hourly gridded thicknesses for layers 0 and 1

  P08G        4        Computes hourly gridded cell thicknesses for layers 2 and 3, and various
                          parameters used to specify volume fluxes between these two layers

  P09G        5        Computes hourly gridded atmospheric density, temperature, cloud
                          cover, solar zenith angle, and water vapor concentration

  P10G        7        Computes hourly gridded emissions source functions in layers 0,1, and
                          2 for combined anthropogenic and biogenic sources, and also com-
                          putes the plume volume fraction in layer 0

  PUG        5        Computes hourly gridded horizontal winds for each layer, using rawin-
                          sonde vertical profiles and surface-station wind observations

                                                                              (continued)
                                      12

-------
                              TABLE 2.1. (CONTINUED)
Processor    Stage
                      Function in ROM2.1
  P12G


  P13G


  P14G



  P15G


  P16G


  P17G


  P19G


  P21G


  P22G
  P23G
  P24G
  P25G
Computes hourly gridded volume fluxes through all model layer bound-
  aries, and cumulus cloud vertical flux parameters

Computes the total length of highway line-emissions sources within
  each grid cell

Prepares files containing hourly emissions values and stack descriptions
  for all major point sources, and combined hourly gridded emissions
  values for minor point sources, area sources, and mobile sources

Computes hourly gridded effective deposition velocities for a set of
  representative species

Interpolates between rawinsonde observations to produce hourly
  upper-air profiles at 25-mb resolution

Computes hourly gridded elevations (above MSL) for the tops of layers
  0,1,2, and 3, and local time derivatives of these elevations

Computes hourly gridded values of fractional sky coverage  at the terrain
  surface for all cloud types combined

Computes daytime and nighttime tropospheric background (clean-air)
  concentrations in each layer for each chemical species

Computes and writes to the file BCON the gridded boundary-condition
  concentrations for each species, layer, and advection time step simu-
  lated by the core model, for the north, south, east, and west bound-
  aries

Computes hourly gridded upper-boundary-condition concentrations
  (C-infinity) for a set of representative species

Equilibrates background concentrations of all modeled chemical spe-
  cies with averaged observed ozone concentrations on the north,
  south, east, and west boundaries, for both daytime and nighttime
  conditions in each layer

Computes the fraction of each grid cell in each land use category recog-
  nized by the model
                                                                             (continued)
                                      13

-------
                             TABLE 2.1. (CONCLUDED)
Processor    Stage
                              Function in ROM2.1
  P26G
  P27G
        Computes hourly gridded mobile-source VOC, NO*, and CO emissions
           parameters, adjusted for daily average temperature

        Prepares hourly gridded biogenic emission rates for isoprene, paraffin,
           olefin, high molecular weight aldehydes (RCHO, R > H), nonreac-
           tive hydrocarbons, NO, and NO2.
  P29G



  P31G


  P32G



  P33G


  P34G


  P36G


  P38G



  P39G
  P40G
  P41G
0
Computes hourly gridded 30-min backtrack (advection) cell locations
  and horizontal diffusivities for each layer simulated by the core
  model

Allocates annual point-source emissions data between a weekday-
  emissions file, a Saturday-emissions file, and a Sunday-emissions file

Calculates hourly gridded horizontal eddy diffusivities for layers 1,2,
  and 3, and also produces parameter fields needed to compute interfa-
  cial volume fluxes across layer boundaries

Generates hourly gridded locations and strengths of constant-source
  emitters for a tracer emissions species

Converts all point-, area-, and mobile-source data files from GMT to
  LST

Applies NOX and VOC emission controls at the county level for area-
  and mobile-source emissions data

Reads the backtrack and diffusivity hourly gridded MF files and com-
  putes the BTRK file parameters for each advection time step simu-
  lated by the core model

Reads all meteorology hourly gridded MF files except the backtrack and
  diffusivity files read by P38G and computes the intermediate meteo-
  rology (IMET) file parameters for each advection time step simu-
  lated by the core model

Reads the intermediate meteorology (IMET) file and the emissions
  sources hourly gridded MF files and computes the BMAT parame-
  ters for each advection time step simulated by the core model

Applies NOX and VOC emission controls to point-source emissions
  data, at a state, county, point, or individual-boiler level
                                      14

-------
	TABLE 2.2.  RDM2.1 INPUT PROCESSORS BY FUNCTIONAL CATEGORY
 Stage	Meteorology processors	

   1    Prepares surface meteorology data (e.g., mixing ratio, virtual temperature, and wind speed)
          for use in higher-stage processors; processor P03G
   1    Interpolates between rawinsonde observations to produce hourly upper-air profiles at
          25-mb resolution; processor P16G
   1    Computes hourly gridded values of fractional sky coverage at the terrain surface for all
          cloud types combined; processor P19G
   2    Interpolates profiles of upper-air meteorological parameters at intervals of 50 m  from
          hourly rawinsonde vertical profiles; processor P01G
   2    Computes gridded surface roughness, and hourly gridded Monin-Obukhov length, surface
          heat flux, friction velocity, surface temperature, surface relative humidity, and surface
          wind speed; processor P04G
   2    Uses surface observations to compute hourly gridded values for the fraction of sky covered
          by cumulus clouds, and also calculates cumulus cloud-top heights; processor P05G
   3    Computes hourly gridded wind fields in the cold layer, hourly gridded terrain penetration
          fractions, hourly gridded cold layer growth rates, and hourly gridded thicknesses for lay-
          ers 0 and 1; processor P07G
   4    Computes hourly gridded cell thicknesses for layers 2 and 3, and various parameters used to
          specify volume fluxes between these two layers; processor POSG
   5    Computes hourly gridded atmospheric density, temperature, cloud cover, solar zenith angle,
          and water vapor concentration; processor P09G
   5    Computes hourly gridded horizontal winds for each layer, using rawinsonde vertical profiles
          and surface-station wind observations; processor PUG

   5    Computes hourly gridded elevations (above MSL) for the tops of layers 0,1, 2, and 3, and
          local time derivatives of these elevations; processor P17G
   5    Calculates hourly gridded horizontal eddy diffusivities for layers 1, 2, and 3, and also pro-
          duces parameter fields needed to compute interfacial volume fluxes across  layer bound-
          aries; processor P32G
   6    Computes hourly gridded volume fluxes through all model layer boundaries, and cumulus
          cloud vertical flux parameters; processor P12G
   6    Computes hourly gridded effective deposition velocities for a set of representative species;
          processor P15G
   6    Computes hourly gridded 30-min backtrack (advection) cell locations and horizontal diffu-
          sivities for each layer simulated by the core model; processor P29G
   7    Reads the backtrack and diffusivity hourly gridded MF files and computes  the BTRK file
          parameters for each advection time step simulated by the core model; processor P38G
   7    Reads all meteorology hourly gridded MF files except the backtrack and diffusivity files read
          by P38G and computes the intermediate meteorology (IMET) file parameters for each
          advection time step simulated by the core model; processor P39G
   8    Reads the intermediate meteorology (IMET) file and the emissions sources hourly gridded
          MF files and computes the BMAT parameters for each advection time step simulated by
          the core model; processor P40G
                                                                               (continued)
                                       15

-------
                              TABLE 2.2 (CONTINUED)
Stage                                 Emissions processors
  0    Computes the total length of highway line-emissions sources within each grid cell; processor
          P13G

  0    Allocates annual point-source  emissions  data  between  a weekday-emissions file,  a
          Saturday-emissions file, and a Sunday-emissions file; processor P31G

  0    Converts all point-, area-, and mobile-source data files from GMT to LST; processor P34G

  0    Applies NO* and VOC emission controls at the county level for area- and mobile-source
          emissions data; processor P36G

  0    Applies NO* and VOC emission controls to point-source emissions data, at a state, county,
          point, or individual-boiler level; processor P41G

  1    Computes hourly gridded mobile-source VOC, NO*, and CO  emissions parameters,
          adjusted for daily average temperature; processor P26G

  2    Prepares files containing hourly emissions values and stack descriptions for all major point
          sources, and combined hourly gridded emissions values for minor point sources, area
          sources, and mobile sources; processor P14G

  6    Prepares hourly gridded biogenic emission rates for isoprene, paraffin, olefin, high molecu-
          lar weight aldehydes (RCHO, R  > H), nonreactive hydrocarbons, NO, and NOa; pro-
          cessor P27G

  6    Generates hourly gridded locations  and strengths of constant-source emitters for a tracer
          emissions species; processor P33G

  7    Computes hourly 'gridded emissions source functions in layers 0,  1, and 2 for combined
          anthropogenic and biogenic sources, and also computes the plume volume fraction in
          layer fr, processor P10G

                                                                              (continued)
                                       16

-------
                               TABLE 2.2  (CONCLUDED)
 Stage                          Initial/boundary conditions processors

   0    Computes daytime and nighttime tropospheric background (clean-air) concentrations in
           each layer for each chemical species; processor P21G

   1    Writes to the file ICON the gridded initial-condition concentrations  for each layer and
           species simulated by the core model, using P21G's clean-air concentrations as initial-
           condition concentrations; processor P02G

   1    Computes hourly gridded upper-boundary-condition concentrations (C-infinity) for a set of
           representative species; processor P23G

   1    Equilibrates background concentrations of all modeled chemical species with averaged
           observed ozone concentrations on the north, south, east, and west boundaries, for both
           daytime and nighttime conditions in each layer; processor P24G

   2    Computes and writes to the file BCON the gridded boundary-condition concentrations for
           each species, layer, and advection time step simulated by the core model, for the north,
           south, east, and west boundaries; processor P22G

 Stage                                  Land use processor

   0    Computes the fraction of each grid cell in each land use category recognized by the model;
           processor P25G

 Stage                                  Terrain processor

   0    Computes the smoothed terrain elevation for each 10* latitude by 15' longitude ROM
           domain grid cell, and also for a larger domain that extends three grid cells beyond the
           ROM domain. In addition, it computes average terrain elevations in a finer-resolution
           domain (cells 5' latitude by 5' longitude) for the terrain penetration calculation. Finally,
           it computes the north-south and east-west components of the terrain elevation gradient
           (slope); processor P06G
The program that serves as the interface between the model input files and the algorithms describing
the governing processes in the Core Model is called the B-Matrix Compiler (BMC) because it func-
tions similarly to a computer language compiler that transforms high-level language commands into a
machine or algorithm-specific  representation.   The  BMC mathematically  combines  physical
parameters such as layer thicknesses, air densities, etc., into the complex coefficients required for
solution of the governing equations. These coefficients can no longer be equated with  physical
quantities; they are purely mathematical entities related specifically to the form of the finite differ-
ence algorithms used by the ROM.
                                        17

-------
       The Core Model of the ROM system consists of a set of algorithms that solves the coupled set of
       finite difference equations describing the governing processes in each layer of the model. These gov-
       erning equations are expressed in a form that allows the chemical kinetics, advection, and vertical flux
       to be treated independently. The chemistry module exchanges information with algorithms of the
       governing equations via two vectors: (1) a vector that contains the net production rate of each species,
       and (2) a vector that contains the net destruction rate. Such design simplifications enhance the flexi-
       bility of the model and are not limited to the interchanges of the chemical mechanism; they apply to
       all theoretical formulations of the physical and meteorological processes (i.e., to all the processors).

       Currently, we are running the ROM Core Model on the EPA's IBM® 3090 computer, and the ROM
       processor network on the EPA's VAX" cluster.2  Running the ROM requires significant  CPU
       resources; a typical three-day simulation (72 hours, 144 model time steps) requires about 9.5 hours of
       CPU on the IBM 3090 plus about 12 hours on the VAX cluster.

       2.2.4 ROM Limitations

       There are several limitations inherent in the model. Among the most important of these are: (1) the
       model is designed to represent only summer meteorological conditions; (2) the ROM does not take
       into account any aqueous-phase chemistry; (3) cumulus cloud processes are such that when a cloud is
       created in a grid cell, it remains there for a full hour (Le. cloud physics are not considered), and the
       cloud is not advected; (4) the ROM actually consists of three two-dimensional models that are
       linked,3 and, as such, cannot be expected to model regions that contain high, complex, mountainous
       terrain such as the Rocky Mountains or Sierra Nevada; (5) the ROM, with its current 18.5 km x 18.5
       km grid resolution,  is not designed to provide detailed information at local scales that are signifi-
       cantly influenced by local source distributions; and (8) the ROM is currently configured to run only
       on domains in eastern North America on the scale of 1000 km.  This regional scale is germane since
       long-range transport of ozone precursors will have a significant effect on local ozone concentrations.

       We advise users of ROM to interpret its results in terms of analysis  of different emission control
       strategies on ozone concentration, rather than assuming the results to be an accurate snapshot of a
       specific pollution event
2. IBM is a registered trademark of the International Business Machines Corporation. VAX is a trademark of the Digital Equipment
  Corporation.
3. The three models represent layer 3, layer 2, and a combined layer 1 and 0.

                                               18

-------
2.3  INPUT REQUIREMENTS

The ROM system requires five types of "raw" data inputs: air quality, meteorology, emissions, land use,
and topography.

Air quality data consist of hourly ozone observations obtained from the U.S. Environmental Protection
Agency's National Air Data Branch.  These  hourly observations are used to specify the initial and
upwind-boundary ozone concentrations required by the ROM. Initial conditions are derived from the
mean tropospheric background concentrations listed in Table 2.3 (Killus and Whitten, 1984), and com-
puted using the temperature-dependent rate constants calculated by the ROM system. Background con-
centrations are used since ROM simulations begin on relatively-low ozone days, several days prior to
observations of ozone levels > 120 ppb. The model is initialized with clean tropospheric conditions for
all species two to four days before the start of the period of interest (an ozone episode of typically about 15
days in duration).  Thus,  the initial condition field has effectively been transported out of the model
domain in advance of the portion of the episode of greatest interest (i.e., high ozone days).

TABLE 23.     INITIAL MEAN TROPOSPHERIC  BACKGROUND  CONCENTRATIONS,  PRE-
             .  CURSOR SPECIES
Species
CO
N02
NO
Ethanol
Olefins

Concentration (ppm)
0.1
1.0x10-3
1.0x10-3
3.5xl(H
2.1xl(H

Species
Aldehydes
Formaldehyde
Toluene
Xylene
Paraffins
All others
Concentration (ppm)
1.12x10-3
1.4x10-3
1.4xl(H
1.05xl(H
7.42x10-3
1.0x10-16
The twice-daily (daytime and nighttime) gridded equilibrated concentrations for the 35 species used in
the ROM, for the north, south, east, and west boundaries of each model layer are derived as follows: each
boundary is assigned a single value for ozone, based on average ambient measurements at rural
monitoring sites. The remaining 34 species are then equilibrated to this ozone concentration, generating
the set of concentration values for that boundary.

Meteorology input data consist of the  regular hourly surface and upper-air observations from U.S.
National Weather Service and Environment Canada. Surface-weather station reports include wind speed
and direction, air temperature and dew point temperature, atmospheric pressure, and cloud amounts and
heights.  Twice-daily sounding data from the upper-air observation network are included in the meteo-
rology database, and consist of atmospheric pressure, wind speed and direction, and air temperature and
dew point temperature.  Additional meteorology data are obtained from the National Climatic Data
                                           19

-------
Center and consist of buoy and Coastal Marine Automated Station data; parameters typically reported
are wind speed and direction, and air and sea temperatures.  Meteorology data are used to specify the
meteorological parameters in ROM simulations.

Emissions input data consist of annual point-source emissions, with stack parameters and seasonal, day-
type factors; area-source emissions for typical summertime Saturdays, Sundays, and a "generic" weekday;
and mobile-source emissions.  Most recently, anthropogenic emissions data have been provided from the
National Acid Precipitation Program (NAPAP) 1985 emissions inventory with 20-km spatial resolution.
Species included are CO, NO, NO2, and nine hydrocarbon reactivity categories.  Biogenic emissions data
are also input, including isoprene explicitly, monoterpenes divided among the existing reactivity classes,
and unidentified hydrocarbons (refer to Section 2.2.2).

Land use input data consist of 11 land use categories in V4-degree longitude by Ve-degree latitude grid
cells.  Data are provided for the U.S. and Canada as far as 55 °N.   The land use categories are (1) urban
land,  (2) agricultural land, (3) range land, (4) deciduous forests, (5) coniferous  forests, (6) mixed forest
with wetlands, (7) water, (8) barren land, (9) nonforested wetland, (10) mixed agricultural land and range
land,  and (11) rocky, open places occupied by low shrubs and lichens. The data were obtained from the
EPA  laboratory in Las Vegas, NV. 'Land use data are used to obtain biogenic emissions estimates as a
function of the area of vegetative land cover, and for the determination of surface heat fluxes.

Topography input data consist of altitude matrices of elevations for 30" x 30" cells in a 7% x 7*/2 grid. The
data are obtained from the GRIDS database operated by the U.S. Environmental Protection Agency's
Office of Information Resources Management  Topography data are used in  the calculation of layer
heights.

2.4 SUITABILITY OF THE ROM FOR ASSESSMENT ACnvnTES

The ROM was designed to predict regional patterns of maximum 03 concentrations over multi-day peri-
ods.  The ROM has performed adequately in this regard for the northeastern United States. Evaluation
efforts have been included in the ROM development and testing since the initial phases of the program.
The ROM program has undergone formal EPA scientific peer review approximately every three years
since the inception of the program nearly ten years ago. The original developers of the model performed
rigorous tests on its components, including the numerical  solution procedures that were used to solve
horizontal and vertical transport and the set of chemical reactions. The chemical kinetic mechanism was
tested against hundreds of smog chamber data sets. The transport algorithms were subjected to tests
using analytically derived flow fields.  Tests of the full model with ambient 03 data began with the first
generation ROM in which an episode from August 1979 in the northeastern United States was modeled.
Results from the series of evaluation studies indicate (1) that the ROM predicts ozone sufficiently well to
                                            20

-------
be accepted by the EPA in assessing changes in maximum hourly ozone for alternative emission reduction
strategies; and (2) that the model can be recommended for use in regulatory analyses, with some caveats.
These caveats include the following:

      •  model biases vary from day to day and from area to area within the modeling domain, based on
         comparisons with observations;
      •  model performance degrades during some situations that have dynamic mesoscale wind flow
         conditions; and
      •  during episodic conditions, the model generally underpredicts regional background (remote
         rural) 03 concentrations.

2.5  PERFORMANCE EVALUATIONS

The Regional Oxidant Model was designed for regional analyses of alternative strategies that differen-
tially control emissions of NO* and hydrocarbons. The primary objective in applications of the ROM is
to assess the effectiveness of these regional emission control strategies in reducing maximum hourly 03
concentrations. The level of the National Ambient Air Quality Standard (NAAQS) for 03 is 0.12 ppm
(120 ppb) for 1 hour, and has been set at a level designed to protect human respiratory systems from acute
03 damage.  The ROM therefore operates on a 1-hour time scale, but can also predict 7- or 8-hour aver-
age 03 concentrations, the time scale of exposure most indicative of damage to crops and trees.  These
averaged 03 concentrations can be studied to determine the impact of the various emissions controls on
terrestrial systems.  States containing the most severe ozone nonattainment areas are required to provide
a computer-modeled demonstration of attainment of the ozone NAAQS.  The demonstration must
include the anticipated change in ozone concentrations in  future years, as well as the impact of proposed
emission controls.

Emission control strategies for mitigating acidic deposition may also involve the reduction of NO* from
major industrial sources. Thus, emission control strategies consider the effects of all currently-proposed
legislation that affects ozone precursor emissions.

The ROM is being used in a separate EPA program, the Regional Ozone Modeling for Northeast Trans-
port (ROMNET) program, to assess the effectiveness of various emission control strategies in lowering
03 concentrations  to nationally-mandated levels for the protection of human health, forests,  and crops.
As  pan of the ROMNET program, the ROM is also being used to provide regionally-consistent initial
and upwind boundary conditions to smaller-scale urban models for simulations of future years.

Thus far, all model simulations have been performed in one or more of three domains. Two domains are:
the northeastern United States (NEROS) and  the southeastern United  States (SEROS); both are the
same number of grid cells, 60 cells in the east-west direction and 42 cells in the north-south direction, for
                                           21

-------
a total domain size of approximately 1100 km by 780 km.  The ROMNET domain consists of 64 cells in
the east-west direction, and 52 cells in the north-south direction, for a total domain size of approximately
1200 km by 960 km. The three domains are shown in Figure 2.4.
  45 N
  38 N
                                                                                      3SN
                                                                                      28 N
 Figure 2.4.  NEROS, SEROS, and ROMNET modeling domains for the ROM; dots represent grid cell
            corners.
 The most complete testing of ROM2.0 was accomplished in an evaluation with the 50-day (July 12 to
 August 31,1980) NEROS database (Schere and Wayland, 1989). Tests against ambient data were rela-
 tively stressful, given that complex flow situations were known to exist in the northeastern United States
 during the model application period. ROM2.0 underestimated the highest values and overestimated the
 lowest.  The model showed good performance (an overall 2% overprediction) in predicting maximum
 daily 03 concentrations averaged over aggregate groups of monitoring stations. A key indicator of model
 performance on the regional scale is the accuracy of simulating the spatial extent and location, as well as
 the magnitude, of the pollutant concentrations within plumes from significant source areas. In ROM2.0
 performance analyses, plumes from the major metropolitan areas of the Northeast Corridor, including
 Washington DC, Baltimore, New York, and Boston, could be clearly discerned in the model predictions
                                            22

-------
under episodic conditions. Generally the plumes were well characterized by the model, although there
was evidence of a westerly transport bias and underprediction of 63 concentrations near the center of the
plume.  Using aircraft data, ROM2.0 was found to underpredict the regional tropospheric burden of
ozone.

The evaluation of ROM2.1 (Pierce et al., 1990b), unlike that of ROM2.0, was based on routinely-archived
data from state and local agency monitoring sites rather than  on an intensive field-study period.  The
evaluation consisted of comparisons of observed and modeled 03 concentrations during selected episodes
(totalling 26 days) of high ozone observed during the summer of 1985. ROM2.1 underestimated the
highest values and slightly overestimated the lowest; underestimates of the upper percentiles tended to be
more prevalent in the southern and western areas of the ROMNET domain.  The model showed good
performance (an overall 1.4% overprediction) in predicting maximum daily 03 concentrations averaged
over aggregate groups of monitoring stations. ROM2.1 appears to correct for the westerly transport bias
of high-ozone plumes in the Northeast Corridor seen in ROM2.0.  As with ROM2.0, model performance
degraded as a function of increasingly-complex mesoscale wind fields.

The ROM was tested for its ability to predict changes in 03 concentrations effected by changes in pre-
cursor emissions. We assume that if the model performs well in an absolute sense, it should also perform
well in a relative sense (i.e., under conditions of reduced emissions).  In general, the results provided by -
the ROM2.0 control strategy simulations have shown that controlling VOC emissions alone reduces peak
03 concentrations in and downwind of urban areas. Controlling NO* alone can have mixed effects on 03
concentrations. Increases in maximum 03 concentrations of up to 20% were observed close to some
urban areas, while localized decreases in maximum 03 concentrations, from 5% to 10%, were observed in
rural areas. Preliminary results from ROM simulations employing combined VOC and NOX emissions
controls indicate that these controls are more effective than VOC controls alone in some remote rural
areas, although the effects can vary with meteorological conditions.
                                           23

-------
This page is intentionally left blank.

-------
                                        SECTIONS

                      METEOROLOGY DATA PREPROCESSING
Sections 3.1,3.2, and 3.3 are a guide to the flow of preprocessing programs that take the raw buoy, surface, and
upper-air meteorology data, perform quality control on them, and prepare them for input into the meteorol-
ogy processors. Since human visual inspection of the data is required at various stages of the procedure, we do
not recommend the use of a concatenated batch run stream that would take all the raw data and produce
finalized data sets. We suggest that each routine be run individually.  Descriptions of the programs begin in
Section 3.4; these include sample batch run streams that are specific for each program.  The programs are
presented in alphabetical order.

Summaries of the flow of programs are tabularly listed in Sections 3.1.3 (buoy), 3.2.6 (surface), and 3.3.7 (up-
per air). A chart showing the flow of programs is shown in Figure 3.1.

All U.S. data sets discussed below can be obtained from the National Climatic Data Center (NCDC) -
E/CC42, Attn: User Services Branch, Federal Building, Asheville, NC. 28801. The NCDC telephone number
is (704)259-0682. Canadian data can be obtained from the Canadian Climate Centre (CCC), 4905 Dufferin
St., Downsview, Ontario M3H 5T4. The telephone number of the CCC Digital Archive is (416)739-4335. All
data files referenced in this document (TD-1171,3280,6200; and TDF-1440) have format documentation that
you can request from the NCDC or the CCC

   3.1 BUOY DATA

   Roughly one-fourth of the ROMNET domain consists of the Atlantic Ocean and its bays and inlets, or is
   part of the Great Lakes system.  We use approximately 30 buoys to provide surface meteorological data
   over water areas in the ROMNET domain.

       3.1.1 The Data (1980 to Present)

       The  National Data Buoy Center (NDBC), part of the NCDC, processes both buoy and Coastal
       Marine Automated  Stations (C-MAN) data. These data are stored in TD-1171 format, with a fixed
       record length and block size.
                                             25

-------
    BUOY DATA
SURFACE DATA
UPPER-AIR DATA
STAGED
           STAGE 1
                      STAGE 2
                                  STAGE 3
                                             STAGE 4
                                                        STAGE 5
                                                                   STAGE 6
        Figure 3.1.  How of programs for meteorology input data.  VAX-specific programs are shown in
                    broken-line boxes; arrows with broken-line shafts imply that the path exists only if
                    errors or omissions are encountered.
                                                26

-------
       3.1.2 Buoy Data Preprocessing

       The hourly buoy data are put through a series of programs that manipulate them so that their final
       format is the same as the standard surface meteorology data file (refer to Section 3.2.1 for the surface
       meteorology data file list), with three exceptions: (1) Sea surface temperature (SST) replaces the dew
       point (#16); (2) the difference between SST and air temperature (SST - T) replaces the station pres-
       sure (#17); and (3) the cloud data (#4 - #11) are reported as missing.  Buoy data are reported in
       Greenwich Mean Time (GMT).

       Data processing proceeds as follows:  The data are read from the NCDC tape by OFFTAPE, win-
       dowed spatially1 by XTRACTLL, and then windowed temporally (by months) by BUOY_WNDW.
       Latitude and longitude coordinates, if missing, are added by BUOY_CRCT. Temporal interpolation
       and quality control are performed by BUOYJNTP. Statistics are calculated by BUOY_STAT. After
       the data have been sorted by the VAX system's SORT utility,2 the final hourly data set is prepared by
       BUOY_RFMT in the SURMET1 format that can be read by the meteorology processors. An exam-
       ple of this format is shown in the P03G processor documentation, Section (Part 2, Section 3.4).

       Since  monthly-averaged SSTs are sometimes helpful, processing of the statistics produced by
       BUOY_STAT is conducted. The log file from that program is read by STAT_RFMT to prepare the
       monthly-averaged data file. The date and time associated with each report is the first hour, reported
       as GMT, of the month for which the data have been averaged, in a year/month/day/hour field.  The
       monthly-averaged data file is then reformatted to a SURMETl-type file by BUOY_RFMT.

       Note that buoy data prior to 1988 are all on one tape, while buoy data for 1988 and  later are on two
       tapes - fixed buoys on one tape and Coastal Marine Automated Stations (C-Man) data on another.
       When you receive two tapes of data, you should process  the data in parallel until after both data sets
       are sorted. These data sets must then be merged before you run BUOY_RFMT.

       The data sets from BUOY_RFMT require human intervention to produce the final data set. Many
       buoys report air temperature but not sea surface temperature, and thus cannot be used as data points
       to determine the sea surface temperature field needed by P04G. Since SST and air temperature are
       highly correlated, we think that the air temperature data  can be used to "improve" upon the SST field
       that would be produced by using only observed SST values. Our general approach involves plotting
1.  Currently, XTRACTLL windows the northern Eastern Seaboard and the Great Lakes areas.
2.  For more information on the SORT utility, refer to the VMS Son/Merge Utility Manual, Order Number AA-LA09A-TE. Digital
   Equipment Corporation, Corporate User Publications - Spit Brook, ZK01-3/735 110 Spit Brook Rd., Nashua, NH 03062.

                                             27

-------
      the buoy SST, T, and (SST - T) data, and then using meteorological experience to estimate the SST
      for those stations with missing data. The missing SST reports are then manually changed to the
      estimated values, while the (SST - T) field is left with a "missing" flag.

      3.1.3 Summary

      Table 3.1 below shows the sequence of programs to produce the final hourly data set for the buoy
      observations.

                TABLE 3.1. PREPROCESSOR PROGRAMS FOR BUOY OBSERVATIONS °
       ROUTINE (.FOR)
    INPUT (.DAT)
        OUTPUT (.DAT)
COMMENTS
        OFFTAPE
        XTRACTLL
        BUOY_WNDW
        BUOY_CRCT
        BUOYJNTP
        SORT
        BUOY_RFMT
        BUOY_STAT*
        STAT_RFMT*
        BUOY_RFMT*
        manually adjusted''
RAW DATA TAPES
NDBOT
XTR_NDBC
NDBC1T
XTR_NDBC
BUOY_A»»/iAttttf2>Y_SORT
BUOY_Att/MjAtt»/2lY_INTP
BUOY_STAT.LOG
                           sorted
                           reformatted
BUOY_STAT.LOG
                           BUOY_AM«/iAVG
                           final averaged data set
       a MMMi is the beginning month of the data, MMMi the ending month.
       * These final four programs are all that are required for the monthly-averaged data.

   3.2 SURFACE METEOROLOGY DATA

   Both Canadian and U.S. surface meteorology data are required for the ROM. The data are reported
   hourly during the hours of operation of airports,3 and are specified in Local Standard Time (LST). These
   data arrive on tapes in different formats, thus requiring separate processing in the early stages. The major
   disparities between the two data sets involve the station identification and cloud data. The U.S. data set
   uses WBAN numbers as station identifiers, while the Canadians use their own identification system.  The
   U.S. data set reports layered cloud information every three hours only, while the Canadian data generally
   report this information every hour. Depending on the record length and block size of the data on tape, the
   surface data preprocessing programs may require slight modifications (Le., changing the RECL and BLKSZE
   parameters).
3.  Some smaller airports close during the night.
                                              28

-------
   The sequence of programs that process raw surface meteorological data involves initial parallel manipu-
   lation of U.S. and Canadian data. The programs that process the surface data for both the United States
   and Canada, merge them, and perform quality control on the merged set, are described below, beginning
   with Section 3.2.2.

       3.2.1  Parameter Descriptions for Surface Data

       All U.S. and Canadian stations in the final data set contain the 17 surface data parameters below:
        1 - Station WBAN number.4
        2 - Station latitude (° N).
        3 - Station longitude (°  W).
        4 - Opaque sky cover in percent; "-99." if indeterminate.
        5 - Total sky cover in coded form:
                   0   =   Clear                                   5    =   Scattered
                   1   =   Partial obscuration                      6    =   Broken
                   2   =   Thin scattered                          7    =   Overcast
                   3   =   Thin broken                            8    =   Obscured
                   4   =   Thin overcast                          -99    =   Indeterminate.
        6 - Amount, in percent, of lowest cloud layer. A missing report is coded as "-99.". A missing value
           indicates that either the report was incomplete, or that this level could not  be seen due to
           obscuring phenomena at the surface. If more than three cloud layers exist, this layer is the lowest"
           of the three most significant cloud layers.
        7 - Cloud base of lowest layer in meters. A value of "-8888." means that clear conditions existed at
           this level and at all levels above it A missing report is coded as "-9999.".
        8 - Amount, in percent, of second-lowest cloud layer. A missing report is coded as "-99.". If reports
           for  lower levels exist, a missing report here implies an overcast at a lower level, and the remaining
           columns for cloud reports should also be "-99.".
        9 - Same as 7, but for the second-lowest level.
        10 - Amount, in percent, of the third-lowest layer. A missing report is coded as "-99.".
        11 - Same as 7, but for the third-lowest layer.
        12 - Sea level pressure in millibars (mb), -9999.0 = missing.5
        13 - Wind direction in degrees, -9999.0 =  missing.
        14 - Wind speed in m-s-1, -9999.0 = missing.
        15 - Temperature in degrees Celsius, -9999.0 = missing.
        16 - Dew point in degrees Celsius, -9999.0 = missing.
        17 - Station pressure in millibars, -9999.0 =  missing.
4.   Canadian data have either (1) a converted WBAN number, or (2) a pseudo-WBAN number that we created.
5.   1000 mb = 105 Pa = ios N-m-2

                                                29

-------
      3.2.2 United States Data Preprocessing

      The U.S. data are in TD-3280 format, and therefore have variable block sizes and record lengths. A
      year's worth of data typically arrives on four tapes, with the data organized such that an entire year's
      data for an individual station is followed by a year's data for the next station, and so on. Thus, it is a
      CPU-intensive procedure to extract data for synoptic purposes. The desire to conserve CPU time
      must be balanced with the need to keep the output data sets a reasonable length.

            •   The first program of the sequence allows you to choose which months of data are to be
                extracted. This program, SFCUS_CLCT.FOR,  needs to be run for each of the raw tapes. The
                output files  are called  SFCUS_MMM^fMM2lT*_CLCT.DAT, where MMMl is the
                beginning month of the data, MMM2 the ending month, IT the year; the * is replaced by a
                character that indicates from which tape* the data were extracted.
            •   The   next  program to  run  is   SFCUS_WNDW.FOR;  it  reads   the   output  files
                SFCUS_MMA/^/AfAf2lY*_CLCT.DAT and performs several operations on the  data.
                With the help of the look-up file STNS_US_DEGFRAC.LIS, station latitude and longi-
                tude are added to the data, and the file is windowed for a particular region with boundaries
                that you declare. The times of the meteorological observations are converted from LST to
                GMT, and a particular month of data is windowed, again as requested by you.  Regardless
                of how many files are read, only one file, SFCUS_MMM1T_WNDW.DAT, is output.
            •   Because the  ROM processor P05G needs layered cloud data at every  hour, the three-
                hourly cloud data given in  the TD-3280 format is not sufficient.  SFCUS_CLD_INTP.FOR is
                employed to duplicate cloud layer reports on both sides of a standard reporting hour, if no
                layered cloud information otherwise exists.  SFCUS_MMM1Y_INTP.DAT is the name of
                the output file.
            •   The VAX system's SORT utility is then applied to the data to produce a synoptic data set,
                called SFCUS_M3fA/lY_SORT.DAT, which awaits merger with the Canadian surface
                data.

       3.2.3 Canadian Data Preprocessing

       The Canadian data are in fixed record (TDF-1440) format

            •   SFCCAN_CLCT.FOR7 creates SFCCAN_MMMtMMAf2YYt_CLCT.DAT.
            •   The Canadian station identifiers are converted to WBAN numbers when these data sets
                are read by SFCCAN_WNDWPOR. In addition to this, all the other functions performed by
                its U.S. counterpart are also performed by this program in producing the single data set
                SFCCAN_MMA/yy_WNDW.DAT.
            .   The VAX system's SORT utility then creates SFCCAN_MMA/1T_SORT.DAT.
6.  Usually you will have a choice of one of four surface data tapes, named A, B, C, or D.
7.  Parallels the U.S. data's preprocessor SFCUS_CLCT.FOR.

                                             30

-------
       3.2.4 Surface Data Merging

       The VAX system's MERGE utility8 is used to combine the U.S. and Canadian data sets  into
       SFC_MMAflT_SORT.DAT.

       3.2.5 Surface Data Quality Control

       At this point the record header and record format of the data must be modified to the required header
       and body format through SFC_RFMT.FOR to produce SFC_MMM1Y_RFMT.DAT.

       In this format, the quality assurance program SFC_VRFY.FOR is able to apply the Barnes Objective
       Analysis routine (Barnes, 1973) to the data to weed out dubious temperature, dew point, pressure, or
       wind values. The resultant data set, SFCJMMMIY_VRFY.DAT, is stripped of its file header infor-
       mation (which is not needed by the ROM processors), and is the final data set.

       You should track the output log of SFC_VRFY.FOR to see how many stations are discarded. Normally,
       you should not expect to see more than five or six stations per hour to be flagged for erroneous data.
       However, the program probably will discard all stations along a major discontinuity, such as a strong
       cold front. Since one of the built-in assumptions of the ROM is that the modeling domain consists of
       a single airmass, elimination of these stations is consistent with this premise. SFC_VRFY.FOR may also
       discard sub-synoptic scale wind data; you should expect to see, therefore, discarding of winds in areas
       with thunderstorms.

       The resultant data are in a final form, called SFC_MMAfrT_VRFY.DAT, and can be processed by
       the ROM, but should be passed through one more quality control step.  You begin this step by
       examining the initial line of each of the data set's first few hours, sampling from both daylight and
       night periods. These initial lines are parameterized as YYMMMDDHH (# of STATIONS). You can
       see approximately how many stations are reporting for each hour (this number will probably vary over
       the course of a day). You can then call the routine COUNT.STNPERHR.FOR, which requires that you
       declare two criteria: your lower- and upper-bound estimates of the number of stations, which you
       determine from your initial examination of how many stations are reporting for each hour. An
       appropriate rule of thumb is to assign these bounds at ?10% of the lowest and highest number of
       stations observed during your examination.  The routine flags hours that have less than the lower-
       bound number of stations, as well as hours that are entirely missing from the data set;  and it flags
       hours that exceed the  upper bound, in case two hours have been concatenated. If hours are  flagged,
8.   For more information on the MERGE utility, refer to the VMS Son/Merge Utility Manual, Order Number AA-LA09A-TE. Digital
    Equipment Corporation, Corporate User Publications - Spit Brook, ZK01-3035 110 Spit Brook Rd., Nashua, NH 03062.

                                              31

-------
      you must investigate the flagged data to evaluate whether correction is necessary.9 If you determine
      that crucial data are missing (i.e. some stations are not reporting for that hour; the flagged hour is
      entirely missing; or there are too few stations reporting for the modeling region), you can run the
      routine SFCR_HRFTLL.FOR, which copies the existing data from an earlier or later hour to the missing
      data's location.  This routine also requires that you declare a number (of stations) as a lower-bound
      criterion.10 Only if the actual number of stations is less than the criterion will missing information be
      replaced by a prior or following hour's data.  For example, if two consecutive hours of data are miss-
      ing, the first hour will be filled by data from the hour preceding the gap, the second by data from the
      hour following the gap. If three hours are missing, the first two hours take on the data values of the
      preceding hour, while the third hour is filled by the following hour. We do not recommend that you use
      this routine if the data gap exceeds five or six hours; violating this limit will introduce major inaccuracies
      into your data set.

      The final surface data quality control check is to  plot all U.S., Canadian, and buoy data with the
      output quality control program SHOWMET (see Section 7.7). This routine displays wind speed and
      direction, air temperature and dew point, and pressure. You will usually find that the plots of the
      buoy, U.S., and Canadian data sets are coherent; on occasion, the land-sea or U.S.-Canada boundaries
      will show data discontinuities. If the plot does  not appear to be coherent, you have cause to question
       the input data. There may be an obvious time shift in one set of data reports, for example.  Your staff
       meteorologist can assist you in determining whether the raw data can be corrected.

       3.2.6 Summary

       Table 3.2 on the next page summarizes the flow of programs that read U.S. and Canadian surface
       data, perform quality control procedures on  them, and produce the final hourly surface meteorology
       data that are input to the ROM.
9.   The routine always flags hour 0; it is not sufficiently sophisticated to recognize the continuity between hour 23 and hour 0.
10.  Not necessarily the same lower-bound number as you declared for COUNT_STNPERHR.FOR.

                                                32

-------
Q
00
2





I
I
pi



(s
Pt
etf

2
ex
C


i
0!



1
C


1
fc
K
B.
<
   a
   3
   8
   3
   CO


   I
g


O
     II
     §
      f
     g£
             w
             Sp
                         DUO
                  I  I
                  CO CO CO CO CO CO
                    £

                    K



                    II
                  w
                  O
                  tf
                  u
                          a: w
                & K § g g
                co co U 10 co
                                a

                                CO
                                *
                                o

-------
   3.3 UPPER-AIR DATA PREPROCESSING

   Both Canadian and U.S. upper-air data are required for the ROM. The data are reported every 12 hours
   (at the nominal times of 0000 GMT and at 1200 GMT), and are specified in GMT**. These data arrive on
   tapes in different formats, thus requiring separate processing in the early stages.  The U.S. data set uses
   WBAN numbers as station identifiers, while the Canadians use their own identification system. Depend-
   ing on the record length and block size of the data on tape, the upper-air data preprocessing programs may
   require slight modifications (Le., changing the RECL and BLKSZEparameters).

       3.3.1 The Data f 1983 to Present)

       The upper-air data used in ROM processors have two distinct origins. The United States data (incl-
       uding some extraneous sites such as Monterrey, Mexico, the Bahamas, Bermuda, etc.) are originally
       found on raw  data tapes in TD-6200 format, with variable block sizes and record  lengths.  The
       Canadian data, on the other band, arrive with a format of fixed record lengths, in a CCC format
       designated as "UAS-UAW.  Besides the format distinction, the major difference in the two data sets
       is the wind field information. As a rule, the U.S. data report winds at each level that measurements
       are taken,*2 while the  Canadian data reported winds at mandatory levels^ only through  1987.14
       Additionally, surface winds are not regularly reported in the Canadian data.  Because the two data
       types are so different, they are treated separately in the initial stages of processing.

       The sequence  of programs that process raw upper-air meteorological data involves initial parallel
       manipulation of U.S. and Canadian data. The programs that process the upper-air data for both the
       U.S. and Canada, merge them, and perform quality control on the merged set, are described below.

       3.3.2  Parameter Descriptions for Upper-Air Data

       All U.S. and Canadian stations in the final data set contain the 14 upper-air data parameters below:
        1-YY
        2-A/MM
        3-DD
        4-/Was GMT
        5 - Station WBAN number^
tl.  The nominal up/>er-o^«>tm<^j times of 0000 and 1200 GMT are times of the release of the balloon, with a tolerance of ± 1 hour.  If
    the reported time is not one of these times, then it is the actual time of release.
12.  Technically called "significant levels."
13.  Surface, 850 mb, 70»mb, 500 mb, 300 mb, 250 mb and 200 mb pressure levels.
14.  1988 Canadian data repotted significant-level winds.
15.  Canadian data have either (1) a convened WBAN number, or (2) a pseudo-WBAN number that we created.

                                                34

-------
        6 - Current level number and total number of pressure levels reported.
        7 - Atmospheric pressure at the current level in mb; -9999.0 = missing.
        8 - Height of the current level in whole meters.
        9 - Temperature of the level in degrees Celsius and tenths; -9999.0 = missing.
       10 - Dew point of the level in degrees Celsius and tenths; -9999.0 = missing.
       11 - Relative humidity of the level in whole percent; -9999.0 = missing.
       12 - Wind direction in degrees from North; -9999.0 = missing.
       13 - Wind speed in m»s-i; -9999.0 = missing..
       14 - Latitude and longitude of the station in degrees and fractions.

       3.3.3 United States Data Preprocessing

       Sounding information for a given year is found on at most two data tapes.  Each tape is organized by
       station; thus, an entire year's worth of data is given for each site before a new station is encountered.
       The variable record and block lengths require reading the tape one record at a time. This means that
       it take nearly as much CPU time to extract only a month of data as it does to extract the entire year of
       data. This, in addition to the frequent hardware problems that can occur in reading tapes, led to the
       decision to extract the entire year's worth of data for the stations in the area of interest.

             •   The program that collects the needed data is RWND_US_CLCT, which requires you to
                 declare the latitude  and longitude boundaries  of the modeling domain, as well as the
                 pressure level at which the soundings are to be truncated. Currently the program is set up
                 to produce one file from either one or two input tapes, but will require modification if, at
                 some future time, the NCDC produces the data on more than two tapes. The program's
                 output is a large file named RWND_yyUS_CLCT.DAT, where YYrepresents the year for
                 which the data were extracted.
             •   The next program,  RWND_WNDW, temporally windows the  data  by month (since
                 months are convenient delineating periods, and windowing reduces disk storage require-
                 ments). It also eliminates data at times other than OOZ, 06Z, 12Z, and 18Z,*6 and includes
                 only those soundings that  are within a ±1 hour tolerance of a "standard hour" sounding
                 that reported early or late. RWND_YnJSMMM_WNDW.DAT is the name of the resul-
                 tant data set, where MMM is the month abbreviation.
             •   At this point the actual sounding data need to be massaged so that they can be used by the
                 ROM processors. This data manipulation is performed by RWND_RFMT. This routine
                 (1) deletes levels that have missing data, (2) ensures that no two levels occupy the same
                 height, (3) deletes soundings with a missing surface temperature or dew point (a very
                 uncommon occurrence), and (4) vertically interpolates missing temperatures, dew points,
                 or winds.  A simple linear interpolation is used to fill these missing levels whenever possi-
16. Z stands for Zulu time, equivalent to GMT. Sounding data are reported in Zulu time.

                                               35

-------
         ble, though the situation is more complicated for missing surface winds.  In this case a
         simplified Ekman spiral (but one that is still based on a 45° shear)  is assumed and the
         lowest reporting wind is used to approximate the top of the spiral. The name of the
         resultant data set is RWND_1YUSMMM_RFMT.DAT.
      •   This file is then sorted by the VAX system's SORT utility to produce a chronologically
         ordered data set, RWND_YnJSMMM_SORT.DAT, which awaits merger with the pre-
         processed Canadian data.


33.4 Canadian Data Preprocessing

      •   The Canadian upper-air data station identification scheme is unique to Canada. To assure
         compatibility with the U.S. data, the extraction program RWND_CAN_CLCT converts
         from the Canadian stations' identifiers to WBAN numbers. The program also performs
         the same functions as does the corresponding U.S. routine, RWND_US_CLCT. The out-
         put file is called RWND_yYCAN_CLCT.DAT, and is named in parallel to its U.S. equiv-
         alent, as are the subsequent files produced by this sequence of programs.
      •   The same programs that are used to window temporally (RWND_WNDW) and to refor-
         mat the U.S. data (RWND_RFMT) are used at this point to produce two data files, named
         RWND_yKCANAfA/Af_WNDW.DAT and  RWND_IYCANMMM_RFMT.DAT.   (In
         fact, the quirks in the Canadian data are the primary reason for including the sections of
         code that treat missing or duplicate sounding levels in the programs described earlier for
         the U.S. data.)
      •   The VAX system's SORT utility is used to produce RWNDJTCANM/l/M_SORT.DAT.


3.3.5 Upper-Air Data Merging

After the U.S. and Canadian data have been sorted, they are combined by the VAX system's MERGE
utility to produce RWND_YYMMM.DAT.

33.6 Upper-Air Data Quality Control

The quality control program RWND_V2 is then executed on the merged data set. This program tests
the sounding data against established sounding criteria, which are:

      •   Out-of-bounds layer-thickness based superadiabatic lapse rates for layers >200 m AGL:
         dJ/dz < -0.015 °Qm, dz > 100 m (s  1.5 x the adiabatic lapse rate);
         d7/dz<-0.022 °Gta, 50 m < dz < 100 m;
         dJ/dz< -0.030 °C/m, dz<50m;
         where T = temperature, z - geopotential height
         Out-of-bounds positive lapse rates (i.e. a temperature inversion) based on the layer thick-
         ness as a function of layer height, calculated as an exponentially-decaying empirical func-
         tion.

                                      36

-------
      •    Out-of-bounds pressure surfaces (P < 200 mb or P > 1050 mb).
      •    Out-of-bounds heights (H < 0 m or H > 14000 m).
      •    Out-of-bounds relative humidities (RH < 0% or RH > 100%).
      •    Unexpected surface dry air (P > 950 mb and RH < 15%).
      •    If either wind speed or direction equals zero, but the other of the dyad does not.
      «    Out-of-bounds wind direction, dd (dd < 0°  or dd  > 360°).
      •    Out-of-bounds wind speeds (< 0, or > a height-based empirical formula).
      •    Out-of-bounds wind shear (based on an exponential empirical function).
      •    It ensures that pressure decreases with height rather than increasing with it.

RWND_V2 flags questionable data; it then plots hodographs for flagged wind data and soundings for
flagged thermodynamic data.  You must manually examine these plots to determine the appropriate
course required to correct (or accept) these data.  Three courses of action can be followed; the first
two require you to manually create the data file JWMMrT_RWND_DEL.DAT.  This data file must
contain the date and time of the sounding, the station identification, and a flag indicating which
course of action you have followed.

      •    Delete the entire sounding.
      •    Delete all the winds from the sounding while keeping the thermodynamic variables.
      •    The most common course of action is to make manual changes to the windowed data sets
          (RWND_1TUSMMM_WNDW.DAT   or   RWND_yTCANMMM_WNDW.DAT)  to
          modify questionable data points. Here, you need to determine that the erroneous data are
          (a) simply due to a keypunch error, and correct them, or (b) that the erroneous data are
          truly incorrect, in which case remove the data and replace them with a "missing" flag.
          When you determine that a keypunch  error is likely, you should attempt to determine
          which station(s) violate the continuity premise of the data you are questioning, and con-
          sider whether you can legitimately correct the typographical error. For example, you can
          replace a reported surface temperature of 28 °C for a station, when surrounding stations
          report temperatures that range from 17 "C  to20°C, with 18 °C.  You may, alternatively,
          want to discard the station's data (replacing them with the appropriate "missing" flag) from
          the windowed data set if you cannot determine how to  correct the data. For example, a
          station may report a dew point temperature higher than a dry-bulb temperature  (replace
          the temperature and dew point parameters with the "missing" flag), or consistently report
          winds as calm while also reporting a wind direction (replace the wind speed parameter
          with the "missing" flag).

Your staff meteorologist can help you determine which of these three courses to follow, and how to
correct your data if that is necessary.
                                       37

-------
      If you judge all sounding data to be correct, you must still create MMM1T_RWND_DEL.DAT and
      enter a single line of 9's as the uninterrupted series, 99999999 99999. The two sets of 9's are sepa-
      rated by two blanks, and are followed by any flag character.

      After correcting/accepting the two windowed data sets, the corrected/accepted versions are  then
      reprocessed through the reformatting, sorting, and merging stages to produce the revised version of
      The RWND_YKW/M.DAT and the MM3fJT_RWND_DELDAT  files are then read  by  the
      RWND_END routine.  Again, the MMM1T_RWND_DEL.DAT contains a single line of data for
      each sounding that you have determined to have incorrect information, consisting of the date and
      time of the sounding, the station identification, and a flag that indicates your chosen course of action.

                If the flag is an X , R WND_END ignores the entire sounding.
                If the index is an W , only the winds are ignored.

      For example, "85081012 13840 W" indicates that the 12Z sounding of August 10, 1985 for  station
      13840 must have its wind field data removed in the final data set. The RWND_YKl/MM.DAT file
      header information, which is unnecessary for later processing, is also removed.  If the data  file
      MMA/yy_RWND_DEL.DAT consists only of a single line of 9's and a flag character (i.e., all  sound-
      ings are judged correct), then only the header information is removed.

      The output file from RWND_END, RWM5JrYMMAf_VRFY.DAT, is now ready for  the ROM
      processors.

      3.3.7 Summary

      Table 3.3 on the next page summarizes the flow of programs that read U.S. and Canadian upper-air
      data, perform quality control procedures on them, and produce the final upper-air meteorology data
      that are input to the ROM.
17. This is necessary in part because some procedures, e.g., interpolation of wind direction from an Ekman spiral, introduce additional
   layers into the data set.

                                              38

-------
CO

CD

O
3
O
a


I
ac

2
O
O
0!

O
      8





      5
   S
.2
•3
  I!
  8
   I

   5
   3
   CO
   D
       ?
       Q
       o6e6ate6
          |K,K,J

          iii^
       06060606
      [L
      £060606
          eie6ai\
            5 ?
            i 3
s
g
I
                     I
                  a


                  a;
                      i i
                 a: as
                          _§>

                          73
                          a
                          CP
                       3

                       •3
                          i
                          i
i  i
o.  IS
     ?  u
     OS  Q
       ill
            I
            V
                                      o
                     1
                     Q




                     DC
                •a ta



                3. D'



                II
                Q
                Z


                S1


                B:

-------
3.4 PREPROCESSOR BUOY_CRCT
 I.    PREPROCESSOR FUNCTION
      This preprocessor adds latitude and longitude values to buoy reports that do not include these
      data.
 II.    I/O COMPONENTS
      A. Input Files
         1.  Standard Input Files
             None
         2.  Nonstandard Input Files
             One nonstandard file, BUOY_MMM1MMA/21Y_WNDW.DAT, that contains the data
             shown in Table 3.4 (note that sea level pressure is repeated) is required as input. The file
             is output by preprocessor BUOY_WNDW. The READ and FORMAT statements for the
             file are listed below.

                         100 READ (15, 150, END = 999) ITINE, ID, LAT, LON, ADATA, SLP,
                           I                      UDIR, WSPD, TEMP, SST,  PR
                         150 FORMAT (18, 1X, 15, 1X,  F5.2,  1X, F6.2, A42, 1X,  5F7.1, 1X,
                           &       F7.1)
                     TABLE3.4. BUOYJ/MMiMMM2lYWNDW.DATPARAMETERS
Pann
No.
1
2
3
4
5
6
7
8
9
10
11
Pann
Name
ITIME
ID*
LATn
LONn
ADATA^,
suv,
WDIR^
WSPD^
TEMP^,
SSTM
PR^,
Unit
GMT

' N
. w

mb
deg
m-s-1
°C
°C
mb
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Char*42
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
Buoy identifier in WBAN format
Latitude
Longitude
Missing cloud reports
Sea level pressure
Wind direction
Wind speed
Air temperature
Sea surface temperature
Sea level pressure
              Note: n = station number (one or more digits); h = hour, missing values are either -99. or -9999.
                                          40

-------
     B.  Output Files

         1.  Standard Output Files

            None

         2.  Nonstandard Output Files

            BUOY_CRCT outputs one nonstandard file, BUOY_MMMiMMM2yy_CRCT.DAT, that
            contains the data shown in Table 3.5 (note that sea level pressure is repeated). The file is
            input to  preprocessor  BUOYJNTP.   The WRITE and FORMAT statements  for
            BUOY_MMA/1MMA/2lY_CRCr.DAT are listed below.

                           WRITE  (16,  150) ITIME,  ID, LAT, LON, ADATA, SLP, WDIR, USPO,
                          &              TEMP,  SST, PR
                        150 FORMAT (18, 1X, 15, 1X,  F5.2, 1X, F6.2, A42, 1X, 5F7.1, 1X,
                          &       F7.1)
                     TABLE 3J. BUOY_MAfMiMAfA/2IY_CRCT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
Farm
Name
ITIME
H5n
LATn
LONn
ADATA^,
SLP^
WDER^
WSPD^
TEMP^,
SST^
PR*/,
Unit
GMT

' N
. w

mb
deg
m-s-1
°C
ec
mb
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Char*42
RealM
Real*4
RealM
RealM
RealM
RealM
Description
Date and time as YYMMDDHH
Buoy identifier in WBAN format
Latitude
Longitude
Missing cloud reports
Sea level pressure
Wind direction
Wind speed
Air temperature
Sea surface temperature
Sea level pressure
             Note: n = station number (one or more digits); h = hour; missing values are either -99. or -9999.
III.    CONTROL CARDS
     None
                                        41

-------
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
                                                1   £Qe
                                                0   files
                                                1   file
                                                1   file
                                                3   files
A. Memory Requirements (1 block = 512 bytes)

            FORTRAN source files:
            FORTRAN INCLUDE files:
            Object files:
            Executable file:
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C. Space Requirements: Log and Print Files

        BUOY_CRCT.LOG      3 blocks
        Print Files:              None
     D.  Space Requirements: Input and Output Files

         Table 3.6 shows the input file and output file space requirements.

                           TABLE 3.6. I/O FILE SPACE REQUIREMENTS
 3  blocks
 0  blocks
 3  blocks
_6  blocks
12  blocks
                                                  VAX 8650
                                                  ± 00:06:00
                                                     523
                                                    4154
                                                     603
                                                    3755
File
Group
Input
Output
File
Name
BUOY_AfMW1MAfM2lY_WNDW.DAT
BUOY_MMMiMMM2YY_CRCr.DAT
File
Type.
Nonstd
Nonstd
Storage
(in blocks)
±50000
±50000
Scenario
Data Span
7 months
7 months
     E.  Space Requirements: Tape Files

         None

 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     BUOY CRCT.LNK follows:
     $ LINK USER2$DISK:[DAO.BUOYJBUOY_CRCT.OBJ,
     (end of link stream)
                                       42

-------
VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     BUOY_CRCT.COM follows:


      I  ACCOUNTING CODE
      SET VERIFY
      !  RUN STREAM in USER2SDISK:[DAO.BUOY]BUOY CRCT.COM
      ASSIGN MET27:[SCRATCH.DAO]BUOY APROCT88 UNDU.DAT     INPUT
      ASSIGN NET27:[SCRATCH.DAO]BUOY~APROCT88~CRCT.DAT     OUTPUT
      RUN USER2SDISK:[DAO.BUOY]BUOY_CRCT.EXE ~

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A.  Main Program


         BUOY_CRCT


     B.  Subroutines


         None


     C.  Functions


         None



     D.  Block Data Files


         None



VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A.  Subroutines


         None


     B.  Functions


         None



IX.  INCLUDE FILES


     None
                                      43

-------
3.5  PREPROCESSOR BUOYJNTP

 I.    PREPROCESSOR FUNCTION

      This preprocessor interpolates buoy data over periods that have data missing.  We use a linear
      interpolation algorithm over no more than five consecutive hours at a time. BUOY_INTP also
      performs simple quality control; each hour's data is compared with data from the previous hour
      and the following hour, as well as with the mean of these two adjacent hours. If, in all three cases,
      the tolerances that you specify in the control cards are exceeded, the hour's data are replaced by the
      mean of the adjacent hours' values.

 II.    I/O COMPONENTS

      A.  Input Files

          1.  Standard Input Files

             None

          2.  Nonstandard Input Files

             One nonstandard  file, BUOY_MMMiMMM2YYjCRCT.DAT, that contains  the data
             shown in Table 3.7 is required as input. The file is output by preprocessor BUOY_CRCT.
             The READ and FORMAT statements for the file are listed below.

                             READ (UNIT1N, 150, END =  160)  ITIME, BUOYID,  LAT, LOW, ADATA,
                            &                          PR, DIR, SPD,  T, H20TMP
                         150 FORMAT  (18, 1X, 15, 1X, F5.2,  IX, F6.2, A42,  1X, 5F7.1)
                      TABLE 3.7. BUOY_AfAfM1AfA/Af2lY.CRCT.DAT PARAMETERS
Parm
No.
1
2
3
4
5
6
7
8
9
10
Parm
Name
ITIME
BUOYIDrt
LATn
LONW
ADATA^,
PR^
DIRn^i
SPD,^
Tnji
H20TMP^
Unit
GMT

e N
. w

mb
deg
m-s-1
°C
°C
Data
Type
IntegerM
IntegerM
RealM
RealM
CharM2
RealM
RealM
RealM
RealM
RealM
Description
Date and time as YYMMDDHH
Buoy identifier in WBAN format
Latitude
Longitude
Missing cloud reports
Sea level pressure
Wind direction
Wind speed
Air temperature
Sea surface temperature
               Note: n = station number (one or more digits); h = hour missing values are either -99. or -9999.
                                          44

-------
         B. Output Files


            1.  Standard Output Files


                None


            2.  Nonstandard Output Files


                BUOYJNTP outputs one nonstandard file, BUOY_MMMiMMM2lT_INTP.DAT, that

                contains the data shown in Table 3.8. The file is input to preprocessors BUOY_STAT and

                BUOY_RFMT. W       The    WRITE    and   FORMAT   statements    for

                BUOY_MMM1MMM21Y_INTP.DAT are listed below.


                                WRITE (UNITOUT, 850)  TINDAT(L), OLDID,  OLDLAT,  OLDLON,
                               &                   ADATA,  SLP(L), UDIR(L), USOUT(L),
                               &                   TMPOUT(L), SSTOUT(L), TDELTA
                            850 FORMAT (18,  IX, 15, IX, F5.2,  1X, F6.2, A42, IX,
                               &       5F7.1, 1X, F7.1)


                          TABLE 3.8. BUOYJMMIIfiMMM2lY_INTP.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
1
8
9
10
11
Farm
Name
TIMDAT
OLDIDB
OLDLATn
OLDLONn
ADATA^/,
SLP^
WDIR^
WSOUT^,
TMPOUT^
SSTOUT^
TDELTA^
Unit
GMT

" N
. w

mb
deg
m-s-i
°C
ec
ec
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Char*42
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
Buoy identifier in WBAN format
Latitude
Longitude
Missing cloud reports
Sea level pressure
Wind direction
Wind speed
Air temperature
Sea surface temperature
(Sea surface temp.) - (air temp.)
                 Note: n = station number (one or more digits); h = hour; missing values are either -99. or -9999.


   III.   CONTROL CARDS


         Three control cards are used in the format shown below.  Table 3.9 defines the control card vari-

         ables.
18. Prior to input to BUOY_RFMT, the file must be sorted using the VAX system's SORT utility.

19. If the raw buoy data arrive on two tapes, you will have two sorted data sets. Prior to being input to BUOY_RFMT, these must first
   be sorted as above, then merged using the VAX system's MERGE utility.


                                              45

-------
    BEGTIM, ENDTIM
    TOTHR
    TMPTOL, SSTTOL, WSPDTOL
                        TABLE 3.9. CONTROL CARD VARIABLES
Variable
Name
BEGTIM
ENDTIM
TOTHR
TMPTOL
SSTTOL
WSPDTOL
Unit
GMT
GMT
h
°C
°C
m-s-i
Description
Beginning time of processing as YYMMDDHH
Ending time of processing as YYMMDDHH
Total number of hours to be processed
Air temperature tolerance
Sea surface temperature tolerance
Wind speed tolerance
Note: if specified tolerances are exceeded, the hour's data are replaced by the mean of the adjacent hours' values.
     Example:

     88040100 88103123
     5136
     5.0 2.0 6.0
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A. Memory Requirements (1 block = 512 bytes)

                FORTRAN source files:
                FORTRAN INCLUDE files:
                Object files:
                Executable file:
                 1   file
                 0   files
                 1
                 1
                 3
file
file
files
42  blocks
 0  blocks
18  blocks
18  blocks
78  blocks
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:
                       VAX 8650
                       ± 00:06:00
                          549
                         4262
                          875
                         3755
     C. Space Requirements: Log and Print Files
        BUOYJNTP.LOG
        Print Files:
30 blocks
None
                                      46

-------
     D.  Space Requirements: Input and Output Files

         Table 3.10 shows the input file and output file space requirements.

                             TABLE 3.10. I/O FILE SPACE REQUIREMENTS
File File
Group Name
Input BUOY_MMAfiMMM2Yy_CRCT.D
Output BUOY_MMMiMMM2lT_INTP.D^
File
Type
AT Nonstd
tfT Nonstd
Storage
(in blocks)
±50000
±51000
Scenario
Data Span
7 months
7 months
     E.  Space Requirements: Tape Files

         None

V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     BUOY INTP.LNK follows:
       ! ACCOUNTING CODE
      ASSIGN
      ASSIGN
      ASSIGN
      ASSIGN
      LINK -
      / EXECUTABLE
      A1. -
      A2. -
      A3. -
      AA
USER USER2$DISK:[DAO.BUOY]BUOY INTP.06J
USER DISWVAXSET: [ROMOBJ.UTILIO]GREG.OBJ
USER DISK$VAXSET:[RONOBJ.UTILIO]JUNIT.OBJ
USER DISKSVAXSET:[ROMOBJ.UTILIO]JULIAN.OBJ
A1
A2
A3
A4
    = USER2$DISK:[DAO.BUOY]BUOY INTP.EXE -
     (end of link stream)

VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION
     BUOY INTP.COM follows:
       ! ACCOUNTING CODE
       SET VERIFY
       ! RUN STREAM in USER2$DISK:CDAO.BUOY]BUOY INTP.COM
       ASSIGN MET27:[SCRATCH.DA01BUOY_APROCT88_CRCT.DAT       INPUT
       ASSIGN MET27:[SCRATCH.DAO]BUOY APROCT88 INTP.DAT       OUTPUT
       RUN USER2SDISK: [DAO.BUOY1BUOYJNTP.EXE ~
       88040100  88103123         !  TIME SPAN
       5136                      !  TOTAL HOURS IN TIME SPAN
       5.0  2.0 6.0              !  TEMP, SST AND WSPD TOLERANCES

     (end of run stream)
                                           47

-------
VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

     A. Main Program

        BUOY_INTP

     B. Subroutines

        None

     C. Functions

        None

     D. Block Data Files

        None


VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A. Subroutines

        USER2$DISK:[ROMLIB.UTILIO]

        GREG

     B. Functions

        USER2$DISK:[ROMLIB.UTILIO]

        JUNIT
        JULIAN

 IX.  INCLUDE FILES

     None

-------
3.6 PREPROCESSOR BUOY_RFMT

 I.    PREPROCESSOR FUNCTION

      This preprocessor performs the final reformatting to the SURMETl-type arrangement on (1) the
      hourly buoy data, and (2) the monthly-averaged buoy data.

 II.    I/O COMPONENTS

      A.  Input Files

1.  Standard Input Files

   None

2.  Nonstandard Input Files

   Either of the two nonstandard files below is required each time BUOY_RFMT is run.

a.  BUOY_MMMi3/MM2yy_SORT.DAT (Hourly buoy data)

   BUOY_A/3fMiMMM2YK_SORT.DAT is the result of using the VAX system's SORT utility on
   BUOY_MMMiMMM2YYJNTP.DAT, the output from preprocessor BUOYJNTP.  (Recall that if
   the raw buoy data arrive on two  tapes, you will have two sorted data sets that must be system
   MERGED prior to being used as input to this preprocessor.) The READ and FORMAT statements
   to input the file are listed below, and its parameters are shown in Table 3.11.
                           160 READ (UNITIN, 180, END = 999) OATIHE, UBAN, INFO
                           180 FORMAT (18.8, IX, 15.5, A99)
                                        49

-------
        TABLE 3.11. BUOY_MMMiMAffl/2IY_SORT.DAT PARAMETERS
Farm
No.
1
2 •
3









Farm
Name
DATIME
WBANn
INFO*/,
LATn
LONB
ADATA^,
PR^
DIR^
SPD^
Tn^
SST^,
TDELT^,
Unit
GMT


0 N
o W

mb
deg
m-s-1
°C
°C
°C
Data
Type
Integer*4
Integer*4
Char*99
Real*4
Real*4
Char*42
Real*4
Real*4
Real*4
Real*4
Real'4
Real*4
Description
Date and time as YYMMDDHH
Buoy identifier in WBAN format
Data stream, comprising:
Latitude
Longitude
Substitution for missing cloud reports
Sea level pressure
Wind direction
Wind speed
Air temperature (AT)
Sea surface temperature (SST)
(SST) - (AT)
 Note: n <= station number (one or more digits); h = hour; missing values are either -99. or -9999.


b.  BUOY_STATYKDAT (Monthly-averaged buoy data)


   BUOY_AVGyy.DAT, containing  the data shown  in Table 3.12, is written by

   STAT_RFMT. The READ and FORMAT statements are listed below.


               160 READ (UNITIN, 180, END = 999) DATIHE, WBAN, INFO
               180 FORMAT (18.8. 1X,  15.5,  A99)


                TABLE 3.12. BUOY AVGIT.DAT PARAMETERS
Farm Farm
No. Name
1
2
3







DATTME
WBAN,,
INFO*
LATn
LONn
ADATAn
BDATAn
MTB
MSSTn
DELTn
Unit
•GMT


e N
. w


ec
ec
°c
Data
Type
Integer*4
Integer*4
Char*99
Real*4
Real*4
Char*44
Char*20
Real*4
Real*4
Real*4
Description
First hour of the month as YYMMDDHH
Buoy identifier in WBAN format
Data stream, comprising:
Latitude
Longitude
Substitution for cloud data
Substitution for pressure and wind data
Monthly average air temperature (AT)
Monthly average sea surface temperature (SST)
Monthly average (SST) - (AT)
Note: n = station number (one or more digits); missing values are either -99. or -9999.
                            50

-------
B.  Output Files

    1.  Standard Output Files

       None

    2.  Nonstandard Output Files

       One of the two files below is output each time BUOY_RFMT is run; the files contain the
       finalized buoy data.

       a. BUOY_MMMiMMM2YY.DAT (Hourly buoy data)

          The WRITE and FORMAT statements for this file are listed below, and its parame-

          ters are shown in Table 3.13.
                           WRITE (UNITOUT, 200)  OLDTIM,  I
                        200 FORMAT (18.8, 5X, 13)

                           WRITE (UNITOUT, 230)  STNID(K), ADATA(K)
                        230 FORMAT (15.5. A99)
                   TABLE 3.13. mJOY_MMMiMMM2YY.VA.T PARAMETERS
Farm
No.
1
2
3
4









Farm
Name
OLDTIM
I
STNIDn
ADATA^,
LATn
LONn
CLDMED^,
PR^
DIR^,
SPD^
T/tf
SST^
TDIF^
Unit
GMT



0 N
o W

mb
deg
m-s-1
"C
°C
•c
Data
Type
Integer*4
Integer*4
Integer*4
Char*99
Real*4
Real*4
Char*42
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
No. of buoys reporting for this hour
Buoy identifier in WBAN format
Data stream, comprising:
Latitude
Longitude
Substitution for missing cloud reports
Sea level pressure
Wind direction
Wind speed
Air temperature (AT)
Sea surface temperature (SST)
(SST)-(AT)
        Note: n - station number (one or more digits); h = hour; missing values are either -99. or -9999.


       b.  SURMETM (Monthly-averaged buoy data)


           The WRITE and FORMAT statements for this file are listed below, and its parame-

           ters are shown in Table 3.14.
                                    51

-------
                                WRITE (UNITOUT, 200) OLDTIM, I
                             200 FORMAT (18.8, 5X,  13)

                                URITE (UNITOUT, 230) STNID(K), ADATA(K)
                             230 FORMAT (15.5, A99)
                                TABLE 3.14. SURMETM PARAMETERS
Farm Farm
No. Name
1
2
3
4







OLDTIM
I
STNE>rt
ADATAn
LATW
LONn
CLDSn
PWn
MATn
MSSTW
TDIFn
Unit
GMT



0 N
. w


°C
°C
•c
Data
Type
Integer*4
Integer*4
Integer*4
Char*99
Real»4
Real*4
Char*44
Char*20
Real*4
Real*4
Real*4
Description
First hour of the month as YYMMDDHH
No. of buoys reporting for this hour
Buoy identifier in WBAN format
Data stream, comprising:
Latitude
Longitude
Substitution for cloud data
Substitution for pressure and wind data
Monthly average air temperature (AT)
Monthly average sea surface temperature (SST)
Monthly average (SST) - (AT)
             Note: n «= station number (one or more digits); missing values are either -99. or -9999.
III.    CONTROL CARDS
      None
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A. Memory Requirements (1 block = 512 bytes)

                  FORTRAN source files:
                  FORTRAN INCLUDE files:
                  Object files:
                  Executable file:
1   file
0   files
1   file
i   file
3   files
 6   blocks
 0   blocks
 3   blocks
_9  blocks
18   blocks
      B. Execution Time Requirements:
                   Charged CPU time (hh:mm:ss):
                   Buffered I/O count:
                   Direct I/O count:
                   Peak working-set size:
                   Peak virtual size:
       VAX 8650
       ± 00:04:00
           871
          8621
           603
          3755
                                         52

-------
     C. Space Requirements: Log and Print Files

        BUOY_RFMT.LOG      3 blocks
        Print Files:               None

     D. Space Requirements: Input and Output Files

        Table 3.15 shows the input file and output file space requirements.

                           TABLE 3.15. I/O FILE SPACE REQUIREMENTS
File
Group
Input


Output


File
Name
BUOY_MMMiMMM2YY_IWTP.DJ
or
BUOY_AVGIT.DAT
BUOY_MMJtfiMMA/2lY.DAT
or
SURMETM
File
Type
^T Nonstd

Nonstd
Nonstd

Nonstd
Storage
(in blocks)
±50000

±100
±46000

±100
Scenario
Data Span
7 months
7 months

7 months
7 months

     E. Space Requirements: Tape Files

        None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    BUOY_RFMT.LNK follows:


    $ !  ACCOUNTING CODE
    S LINK   USER2SOISK:[DAO.BUOY]BUOY IMTP.OBJ, -
    $       DISWVAXSET: [ROHOBJ.UTILIOUUNIT.OBJ
    (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    BUOY_RFMT.COM for hourly data follows:
    $ 'ACCOUNTING CODE
    $ SET VERIFY
    $ ASSIGN MET27:[SCRATCH.DAO]BUOY APROCT88 INTP.DAT
    $ ASSIGN MET27:[SCRATCH.DAO]BUOY~APROCT887DAT
    $ RUN USER2SOISK: [DAO.BUOY]BUOY_RFMT.EXE

    (end of run stream)
INPUT
OUTPUT
                                        53

-------
VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED




     A. Main Program




        BUOY_RFMT



     B. Subroutines




        None




     C. Functions




        None





     D. Block Data Files




        None






VIII. I/O AND UTELITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED




     A. Subroutines




        None




     B. Functions




        USER2$DISK:[ROMLIB.UTILIO]




        JUNIT





 IX.  INCLUDE FILES




     None
                                    54

-------
3.7 PREPROCESSOR BUOY_STAT


 I.    PREPROCESSOR FUNCTION

      This preprocessor computes the statistics of monthly-averaged buoy (1) air temperatures, (2) sea

      surface temperatures, and (3) air-sea temperature differences.



 II.   I/O COMPONENTS


      A.  Input Files


          1.  Standard Input Files


             None


          2.  Nonstandard Input Files


             One nonstandard  file, BUOY_MMMiA/A/M2YK_INTP.DAT, that  contains the data

             shown in Table 3.16 is required as input. The file is output by preprocessor BUOY_INTP.

             The READ and FORMAT statements for the file are listed below.


                            READ (UNITIN,  150, END = 160) ITIME, BUOYID, LAT, LON,
                            &                          T. H20TMP, TDELTA
                         150 FORMAT  (18,  1X, IS, 1X, F5.2, 1X,  F6.2, 64X, 2F7.1, F8.1)


                     TABLE 3.16. BUOYJfAfflf1AfAfM2*Y.CRCT.DAT PARAMETERS
Parm
No.
1
2
3
4
5
6
7
Parm
Name
ITIME
BUOYID,,
LATn
LONB
TM
H20TMP^,
TDELTA^,
Unit
GMT

0 N
. w
"C
ec
•c
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
Buoy identifier in WBAN format
Latitude
Longitude
Air temperature
Sea surface temperature
(Sea surface temp.) - (air temp.)
              Note: n = station number (one or more digits); h = hour; missing values are either -99. or -9999.


      B.  Output Files


          1.  Standard Output Files


             None


          2.  Nonstandard Output Files


             None (the statistics are written to the log file).




                                          55

-------
         3.  Log File


            BUOY_STAT outputs to the log file BUOY_STAT.LOG that contains the data shown in

            Table 3.17. The file is input to preprocessor STAT_RFMT. The WRITE and FORMAT

            statements are listed below.


                        WRITE (6, 333) OLOID, OLDLAT, OLOLON, OLOMON
             333        FORMAT ('  STATISTICAL SUMMARY FOR BUOY ',15,' (', F5.2,1,1
                  &            ,F6.2, ')  MONTH: ',  12.2,' FOLLOWS:  ')
                        PRIMT *, '  '

                          WRITE (6, 340) K
             340          FORMAT ('  HOUR: ', 12)
WRITE (6, 620) AVTMP, TCNT(K)
620
FORMAT (< AVG TEMP : ',
F7.1, ' BASED ON ',14,' REPORTS')
WRITE (6, 621) AVSST, SCNT(K)
621
FORMAT (' AVG SST : '
F7.1, ' BASED ON ',14,' REPORTS')
WRITE (6, 622) AVDELT, DCNT(K)
622

Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
FORMAT (' AVG DELT : ',
TABLE 3.17. BUOY
Farm Data
Name Unit Type
DUMMY Char*80
OLDIDn Integer*4
OLDLATn c N Real*4
OLDLONB * W RealM
OLDMONn IntegerM
K GMT IntegerM
AVTMP,, °C Real*4
TCNTn IntegerM
AVSSTW °C RealM
SCNTW Integer*4
AVDELTB °C RealM
DCNTW IntegerM
F7.1, ' BASED ON ',14,' REPORTS')
STAT.LOG PARAMETERS

Description
Dummy record
Buoy identifier in WBAN format
Latitude
Longitude
Month as MM
Hour as HH
Hourly averaged air temperature (AT)
Number of reports averaged
Hourly averaged sea surface temperature (SST)
Number of reports averaged
Averaged (SST) - (AT)
Number of reports averaged
              Note: n = station number (one or more digits); missing values are either -99. or -9999.


III.    CONTROL CARDS


      One control card is used in the format shown below.  Table 3.18 defines the control card variables;

      they are used in spatially windowing the buoy data.


      MINLAT, MAXLAT, MINLON, MAXLON
                                          56

-------
                         TABLE 3.18. CONTROL CARD VARIABLES
Variable
Name
MINLAT
MAXLAT
MDSTLON
MAXLON

Unit
e N
0 N
• w
. w

Description
Southern latitude boundary
Northern latitude boundary
Eastern longitude boundary
Western longitude boundary
     Example:
     20.0 50.0 64.0 99.0

IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A Memory Requirements (1 block = 512 bytes)
                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                 1   file
                 0   files
                 1   file
                 1   file
                 3   files
         21   blocks
          0   blocks
         12   blocks
         18  blocks
         51   blocks
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:
                        VAX 8650
                        ± 00:02:00
                            212
                           3278
                         .   597
                           3660
     C. Space Requirements: Log and Print Files
        BUOY_STAT.LOG
        Print Files:
1353 blocks
None
     D. Space Requirements: Input and Output Files
        Table 3.19 shows the input file and output file space requirements.

                           TABLE 3.19. I/O FILE SPACE REQUIREMENTS
           File
          Group
 File
Name
File
Type
 Storage .
(in blocks)
 Scenario
Data Span
          Input   BUOY_MMA/iA/MM2yy_INTP.DAT     Nonstd    ±51000      7 months
          Output  BUOY_STAT.LOG                   Nonstd     ±1300      7 months
                                       57

-------
     E.  Space Requirements: Tape Files

         None


 V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     BUOY_STAT.LNK follows:


     $  ! ACCOUNTING CODE
     $  ASSIGN / USER USER2SDISK:[DAO.BUOY]BUOY STAT.OBJ              A1
     $  ASSIGN / USER DISKSVAXSET:[ROMOBJ.UTILIO]JUNIT.OBJ             A2
     $  LINK -
       / EXECUTABLE = USER2SDISK:[DAO.BUOY]BUOY STAT.EXE -
       A1, -
       A2

     (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     BUOY_STAT.COM follows:


     $  r ACCOUNTING CODE
     $  SET VERIFY
     $  ! RUN STREAM in USER2SDISK:[DAO.BUOY]BUOY_STAT.COM
     *  ASSIGN MET27:[SCRATCH.DAO]BUOY APROCT88 INTP.DAT      INPUT
     $  RUN USER2$DISK:[DAO.BUOY]BUOY STAT.EXE ~
     20.0  50.0  64.0  99.0

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A Main Program


         BUOY.STAT


     B. Subroutines


         None


     C. Functions


          None



     D.  Block Data Files


          None
                                         58

-------
VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A Subroutines

        None

     B. Functions

        USER2$DISK:[ROMLIB.UTILIO]

        JUNIT

 IX.  INCLUDE FILES

     None

3.8 PREPROCESSOR BUOYJVNDW

 I.   PREPROCESSOR FUNCTION

     This preprocessor (1) windows buoy data by time, and (2) modifies the original buoy identifiers to
     a WBAN-type.  The preprocessor outputs the data in a pre-SURMETl format, and provides a'
     variable for each SURMET1 field.

 II.   I/O COMPONENTS

     A. Input Files

         1.  Standard Input Files

            None

        2.  Nonstandard Input Files

            a.  BUOY_XTABLEDAT

               BUOY_XTABLE.DAT is the "look-up" file that contains our pseudo-WBAN identi-
               fiers for the buoys. The READ and FORMAT statements for this file are listed below,
               and its parameters are shown in Table 3.20.

                           50  READ (UNITX, 60.  END = 70) BUOYIDOQ, FAKEID(K)
                           60  FORMAT (1X, AS, 2X, 15.5)
                                      59

-------
                     TABLE 3.20. BUOY XTABLE.DAT PARAMETERS
        Farm
        No.
Farm
Name
Unit
Data
Type
Description
        1     BUOYID
        2     FAKEID
                     Char*5      Original buoy identifier
                     Integer*4    Pseudo-WBAN buoy identifier
      b.  XTR_BUOYyy.DAT

          This file contains the buoy parameters output by preprocessor XTRACTLL. The

          READ and FORMAT statements for the file are listed below, and its parameters are

          shown in Table 3.21.
                        80 READ (UNITIN, 100, END = 999) ID, YR,  MON, DAY, HR,  LAT,
                         &                          ALAT, LON, ALON, TEMP,  SST,
                         &                          SLP, ADIR, ASPD
                       100 FORMAT (9X, US, 2X, 14, 312.2, 2X, F3.1, A1, F4.1, A1, 3X,
                         &       F4.1. 4X.  F4.1, F5.1, A3, A4)


                      TABLE 3.21. XTR BUOYJT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Farm
Name
ID*
YR
MON
DAY
HR
LATn
ALAT
LONn
ALON
TEMP^,
SST^
siA/,
ADIR^,
ASPD^,
Unit




GMT




°C
°C
mb
deg
kts
Data
Type
Char'5
Integer*4
Integer*4
Integer*4
Integer*4
Real*4
Char*l
Real*4
Char'l
Real*4
Real*4
Real*4
Char*3
Char*4
Description
Buoy identifier
Year
Month
Day
Hour
Latitude
Latitude hemisphere indicator
Longitude
Longitude hemisphere indicator
Air temperature
Sea surface temperature
Sea level pressure
Wind direction string
Wind speed string
        Note: n = station number (one or more digits); h = hour; missing values are either -99. or -9999.


B. Output Files


   1.  Standard Output Files


       None
                                   60

-------
         2.  Nonstandard Output Files


            BUOY_WNDW outputs one nonstandard file, BUOY_MMMjMAfM2lT_WNDW.DAT,

            that contains the data shown in Table 3.22 (note that sea level pressure is repeated). The

            file is input to preprocessor BUOY_CRCT.  The WRITE and FORMAT statements for

            BUOYJl/MM1MMM2YY"_WNDW.DAT are listed below.


                       WRITE (UNI TOUT, 150) DATIME, NEUID, LAT,  LON. CLDMIS,  SLP,
                      &                  UDIR, USPD, TEMP,  SST, SLP
                    150 FORMAT (18.8, 1X,  15.5, 1X, F5.2, 1X, F6.2, 1X, A41,  1X,
                &             5F7.1. F8.1)


                    TABLE 3.22. BUOYJt/MM1AfAfM2JY_WNDW.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
Farm
Name
DATIME
NEWIDn
LATn
LONn
CLDMIS^,
SIA/,
WDIR^,
WSPD^,
TEMP^,
SST^y,
SUV,
Unit
GMT

Q N
. w

mb
deg
m-s-1
°C
ec
mb
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Char»41
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
Buoy identifier in WBAN format
Latitude
Longitude
Missing cloud reports
Sea level pressure
Wind direction
Wind speed
Air temperature
Sea surface temperature
Sea level pressure
             Note: n — station number (one or more digits); h = hour; missing values are either -99. or -9999.


III.    CONTROL CARDS


      One control card is used in the format shown below. Table 3.23 defines the control card variables.
      BEGMON, ENDMON
                          TABLE 3.23. CONTROL CARD VARIABLES
       Variable
        Name
Unit
Description
      BEGMON
      ENDMON
               Beginning month of output as MM
               Ending month of output as MM
      Example:

      04,10
                                        61

-------
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
                                                 1   file
                                                 0   files
                                                 1   file
                                                 1   file
                                                 3   files
A. Memory Requirements (1 block = 512 bytes)

            FORTRAN source files:
            FORTRAN INCLUDE files:
            Object files:
            Executable file:
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files

         BUOY_WNDW.LOG    6 blocks
         Print Files:              None
     D.  Space Requirements: Input and Output Files

         Table 3.24 shows the input file and output file space requirements.

                           TABLE 3.24. I/O FILE SPACE REQUIREMENTS
 9   blocks
 0   blocks
 9   blocks
12  blocks
30   blocks
                                                  VAX 8650
                                                  ± 00:08:00
                                                      605
                                                     6108
                                                      597
                                                     3660
File
Group
Input
Output
File
Name
XTR_BUOYYKDAT
BUOY_M3fA/1MMM2lY_WNDW.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
±80000
±50000
Scenario
Data Span
lyear
7 months
     E.  Space Requirements: Tape Files

         None

 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     BUOY WNDW.LNK follows:
     $ LINK USER2$DISK:B>AO.BUOY]BUOY WNDU.OBJ, -
           DISK*VAXSET:[ROMOBJ.UTILIO]JUNIT.OBJ

     (end of link stream)
                                       62

-------
VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     BUOY_WNDW.COM follows:


      !  ACCOUNTING CODE
      SET VERIFY
      !  RUN STREAM in USER2SOISK:CDAO.BUOY]BUOY UNOU.CON
      ASSIGN MET27:[SCRATCH.DA03XTR_BUOY88.DAT ~           INPUT
      ASSIGN MET27:[SCRATCH.DAO]BUOY XTABLE.DAT            XTABLE
      ASSIGN NET27:[SCRATCH.DAO]BUOY APROCT88_UNDU.DAT      OUTPUT
      RUN USER2$DISK:[DAO.BUOY]BUOY UNDU.EXE
      04, 10

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A.  Main Program


         BUOY_WNDW


     B.  Subroutines


         None


     C.  Functions


         None



     D.  Block Data Files


         None



VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A.  Subroutines


         None


     B.  Functions


         DISK$VAXSET:[ROMLffi.UTILIO]


         JUNJT


IX.  INCLUDE FILES


     None
                                       63

-------
3.9 PREPROCESSOR COPYTAPE (Data tape to VAX-system tape copy)

 I.    PREPROCESSOR FUNCTION

      This preprocessor copies a raw data tape onto a VAX-system tape in order to ensure that valuable
      data are not lost. You need to understand the limitations of this preprocessor. One feature of this
      program is that a parity error will not stop the copying of a tape - the bad tape block on the original
      will not be written to the copy. However, no message stating that this has occurred is written to the
      log file. Therefore, we recommend that you use a scanning routine to compare the data on the
      original tape to the data on the copy. If such a routine is unavailable, you should monitor the error
      counts on the tape drives, Although an increase in the error count does not necessarily indicate a
      bad copy, no increase in the error count guarantees a good copy.

 II.   I/O COMPONENTS

      A.  Input Files

          1.  Standard Input Files

             None

          2.  Nonstandard Input Files

             Any ASCII tape can be used as input.

      B.  Output Files

          1.  Standard Output Files

             None

          2.  Nonstandard Output Files

             The output is written to a VAX-system tape. The program is hard-coded to skip the label
             of the system tape.

 III.   CONTROL CARDS

      One control card is used in the format  shown below.  Table 3.25 defines the control card variable.

      IFILE
                                          64

-------
                          TABLE 3.25. CONTROL CARD VARIABLE
      Variable
        Name
Unit
Description
        IFILE
          Number of files to be copied; this number represents the
          minimum number of files to be copied. A number greater
          than the actual number of files on the original tape guaran-
          tees that the entire original tape is copied.
     Example:

     99


IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A.  Memory Requirements (1 block s= 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                         2  files
                         0  files
                         2  files
                         1  file
                         5  files
           12   blocks
           0   blocks
           9   blocks
           _9   blocks
           30   blocks
     B.  Execution Time Requirements (Representative Values for a 72-Hour Scenario):

                                                         VAX 8650
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files
                               ±00:00:15 per tape
                                   392
                                 27219
                                   530
                                  4564
         COPYTAPE.LOG
         Print Files:
       24 blocks
       None
     D.  Space Requirements: Input and Output Files

         None

     E.  Space Requirements: Tape Files

         Two tapes are required, an original and a blank VAX-system tape. Table 3.26 shows the input
         file and output file space requirements for a representative tape.
                                        65

-------
                            TABLE 3.26. TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Output
Tape
Number
B20012
102479
File
Number
1
1 (label)
2
Record
Length (bytes)
495
80
495
Block
Size (bytes)
24750
80
24750
V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     COPYTAPE.LNK follows:


     $ ASSIGN USER2$DISK:[DAO.NETTAPEJCOPYTAPE.OBJ                   A1
     $ ASSIGN USER2$OISK:[DAO.METTAPE]VATAPE.OBJ                    A2
     S LINK -
      /EXECUTABLE  = USER2SDISK:tDAO.METTAPE3COPYTAPE.EXE -
      /MAP = MET1:[S01SJCOPYTAPE.NAP -
      A1, -
      A2

     (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     COPYTAPE.COM follows:


     $ {ACCOUNTING  CODE
     $ SET VERIFY
      ASSIGN MLAB: SYSSPRINT
      TAPE SELECT  ADRIVE BTAPE
      TAPE LOAD ADRIVE B20012
      MOUNT/NOWRITE/FOREIGN/DENSITY=6250/BLOCKSIZE=12000  -
      ADRIVE B20012 OLDTAP:
      TAPE SELECT  BDRIVE 102479
      TAPE LOAD/RING BDRIVE 102479
      MOUNT/WRITE/FOREIGN/DENSITY=6250/BLOOCSIZE=12000  -
      BDRIVE 102479 COPTAP:
      SHOW DEV/FULL ADRIVE
       SHOW DEV/FULL BDRIVE
       SHOW LOGICAL OLDTAP
      SHOW LOGICAL COPTAP
       !  SET NAGTAPE/SKIP-FILESM OLDTAP:     I Use this line only if
       !                                    ! old tape has label
       RUN USER2SDISK: D>AO.NETTAPE]COPYTAPE.EXE
      99
      RUN USER2SDISK:[BROJ TSCAN.EXE
     ADRIVE
       RUN USER2SDISK:[BRO]TSCAN.EXE
      DRIVE
      3REUIND OLDTAP:
      MEUIND COPTAP:
       SHOW DEV/FULL ADRIVE
       SHOW DEV/FULL  BDRIVE
       DISMOUNT OLDTAP:
       DEALLOCATE ADRIVE
       DISMOUNT COPTAP:
       DEALLOCATE TAPEDRIVE
       DEALLOCATE BDRIVE

     (end of run stream)



                                            66

-------
VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

     A. Main Program

        COPYTAPE
     B. Subroutines

        USER2$DISK:pAO.METTAPE]

        VATAPE
     C. Functions

        None

     D. Block Data Files

        None

VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A. Subroutines

        None

     B. Functions

        None

IX. INCLUDE FILES

    None

3.10 PREPROCESSOR COUNT_STNPERHR (METEOROLOGY QUALITY CONTROL)

 I.   PREPROCESSOR FUNCTION

     This preprocessor scans the output of preprocessor SFC_VRFY and flags hours that have either
     an unusually nigh or an unusually low number of reporting stations. A message is also written for
     each hour that does not numerically follow the previous hour; thus, COUNT_STNPERHR writes
                                    67

-------
     a message at the start of each day to indicate a possible data gap. You should ignore those reports
     that provide no useful information. If a data gap is present, or if some hours have only partial data,
     then you will need to run an additional preprocessor, SFCR_HRFTLL.

     We intend preprocessor COUNT_STNPERHR to be a guide that can alert you to potential prob-
     lems.  As such, you are required to set your own standards as to what constitutes a data-poor hour
     and what does not You will need some prior knowledge of the input file in order to input proper
     values for the control cards. You must manually examine many hours of data in the input file to
     gain an idea of the normal daily variation in the number of reporting stations. You should also run
     program SHOWMET for one hour of data to ensure that there is adequate spatial coverage of
     stations for an arbitrary hour and for your needs. You will have a benchmark for setting the limits
     of the control cards after taking these steps.

II.   I/O COMPONENTS

     A.  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            COUNT_STNPERHR uses one nonstandard input file, SFC_MMMyy_VRFY.DAT, and
            reads the parameters shown in  Table 3.27.   This file is  output  by preprocessor
            SFC_VRFY; its READ and FORMAT statements are listed below.

                             READ (12, 30,  END - 99) DATINE, NUMSTN
                          30 FORMAT (18.8,  5X, 13)
                             READ (12, 31)  NOGUASH
                          31 FORNAT(AI)
                         TABLE 3.27. SFC MMMYY VRFY.DAT PARAMETERS
Pann Parm
No. Name
1 DATIME
2 NUMSTN
3 HOGWASH
Data
Unit Type
GMT Integer*4
Integer*4
Char*l

Description
Date and time as YYMMDDHH
No. of stations reporting for this hour
Dummy variable: skips hourly data
                                         68

-------
     B.  Output Files

         1.  Standard Output Files

            None

         2.  Nonstandard Output Files

            None; the output is written to the log file.

III.   CONTROL CARDS

     One control card is used to input control data in the format shown below. Table 3.28 defines the
     control card variables.
     MINSTA, MAXSTA
                          TABLE 3.28. CONTROL CARD VARIABLES
       Variable
        Name
Unit
Description
      MINSTA
      MAXSTA
             Minimum number of stations reporting per hour
             Maximum number of stations reporting per hour
     ' Example:

      285,315
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A.  Memory Requirements (1 block = 512 bytes)
                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
      B.  Execution Time Requirements:
                  Charged CPU time (hh:mm:ss):
                  Buffered I/O count:
                  Direct I/O count:
                  Peak working-set size:
                  Peak virtual size:
                           1   file
                           0   files
                           1   file
                           i   file
                           3   files
            3   blocks
            0   blocks
            6   blocks
           _6  blocks
           15   blocks
                                 VAX 8650
                                 ± 00:01:20
                                     193
                                    3390
                                     530
                                    3771
                                       69

-------
     C.  Space Requirements: Log and Print Files

        COUNT_S1TSfPERHR.LOG    9 blocks
        Print Files:                  None

     D.  Space Requirements: Input and Output Files

        Table 3.29 shows the input file and output file space requirements.

                          TABLE 3.29. I/O FILE SPACE REQUIREMENTS
File File File Storage
Group Name Type (in blocks)
Input SFC_3/A/Afyy_VRFY.DAT Nonstd 46278
Output N/A
Scenario
Data Span
1 month

     E. Space Requirements: Tape Files

        None


 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    COUNT_STNPERHR.LNK follows:


    $ LINK   USER2$DISK:[DAO.ROMUORK]COUNT_STNPERHR.OBJ

    (end of link stream)


 VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    COUNT STNPERHR.COM follows:
    $ !  PREP0001
    % ASSIGN MET27:[SCRATCH.DAO]SFC_APR88 VRFY.DAT
    S RUN USER2$OISK:[DAO.ROMUORK]COUNT STMPERHR.EXE
      285, 315
INPUT
     (end of run stream)

VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A  Main Program

         COUNT_STNPERHR

     B.  Subroutines


         None
                                       70

-------
      C.  Functions

         None

      D.  Block Data Files

         None

VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

      A  Subroutines

         None

      B.  Functions

         None

 IX.  INCLUDE FILES

     None

3.11  PREPROCESSOR DEL

 I.    PREPROCESSOR FUNCTION

      This preprocessor is an alternative to your interactive (manual) correction of the upper-air data
      following your inspection of the plots from preprocessor RWND_V2. Rather than enter an editor
      to make line-by-line corrections, DEL offers an automated course of action. DEL has two modes
      of operation: (1) it replaces erroneous data with the "missing" value -9999.0 for all nonsurface data;
      (2) it replaces erroneous surface temperature, dew point, and humidity data with "appropriate"
      data. Note that these appropriate data are fully discussed in Section 3.3.6.

 II.    I/O COMPONENTS

      A.  Input Files

         1. Standard Input Files

            None
                                         71

-------
   2.   Nonstandard Input Files

       One nonstandard file, RWND_1TUSMMM_RWND.DAT for U.S. data, or, for Canadian
       data, RWND_yyCANAfMAf_RWND.DAT, is the input to the preprocessor.  The file
       consists of a single month's data, including station identification codes, the date and time
       (as GMT) of the observation, the pressure level and its geopotential height, and meteoro-
       logical parameters associated with that level -- temperature, dew point, relative humidity,
       wind direction, and wind speed.  Both  mandatory (including standard) and significant
       pressure levels are currently reported (see Section 3.3.1 for definitions). The READ and
       FORMAT statements follow, and the file's parameters are shown in Table 3.30.

                    READ(8,201/EMD=6)IYfIMfID,IH,ISTA,lI(I)/N/P(I),H(I),T(I),TD(n,
                   & RH(I),UD(I),WS(I),ALA(I),ALO(I)
                 201 FORMAT(4I3,I6,K,I2,7F8.1,2F7.2)

      TABLE 3JO. RWND  YYVSMMM RWND.DAT AND RWND YYCANMMM  RWND.DAT
                                    ~ PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Farm
Name
IY
IM
ED
IH
ISTA
II
N
Pm,II
Hm,II
Tm,II .
TDm>II
RHm,n
WDmiI,
WVH
AlAn
ALOm
Unit



GMT



mb
m
•c
"C
%
deg
m-s-1
c N
. w
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Year as YY
Month as MM
Day as DD
Hour as HH
Station identifier
Level indicator
Number of levels
Pressure at level II
Height at level II
Temperature at level II
Dew point at level II
Relative humidity at level II
Wind direction at level II
Wind speed at level II
Station latitude
Station longitude
       Note: m = upper-air station number (one or more digits)

B.  Output Files

    1.  Standard Output Files

       None
                                     72

-------
         2.  Nonstandard Output Files


             RWNDJTUSMA/3/JJPDT.DAT or RWNDJYCANMMM_UPDT.DAT are generated

             as corrected versions of the input data. These files contain parameters identical to those of

             the input files above, and are produced by the following WRITE and FORMAT state-

             ments:


                            WRITE(9,202)IYfIM,ID,IH,ISTA,II(J),N,P(J)fH(J),T(J),TD(J),
                            & RH(J),UD(J)>US(J),ALA(J),ALO(J)
                         202 FORMAT(4(1X.I2.2>,1X,I5.5,2X,2I2.2,7F8.1,2F7.2)

HI.   CONTROL CARDS

      Four control cards are used, in the format shown below:

      KST,KYMDH,IDX,MMM,NNN
      HT
      HTT
      HHTT,TTPP,DDPP,RRHH

      The iterative code that effects the changes in the data files is listed below, and the control card
      variables are shown in Table 3.31.

                   READ(5,50,END=6) KST.KYMOH.IDX.MMM.NNN
                   IFUDX.E0.1.0R.IDX.E0.3) READ(5,51) 
-------
                              TABLE 331. CONTROL CARD VARIABLES
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
Note
Farm
Name Unit
KST
KYMDH
rox™
MMHn
NNNm
HTm>MMM m
HTTm)NNN m
HHTTm m
TTPPm °C
DDPPm 'C
RRHHn %
IDX = 1 => erroi
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
leous nonsurfac
Description
Station ID (99999 =*• end of control data)
Date and hour as YYMMDDHH
Index (see note below)
No. of levels of thermodynamic data
No. of levels of wind data
Height of each thermodynamic level
Height of each wind level
Height of surface level for thermodynamic data
Temperature at the surface
Dew point at the surface
Relative humidity at the surface
e temperature data
                          2  =>• erroneous nonsurface wind data
                          3  «=> erroneous nonsurface temperature and wind data
                          7  =* erroneous surface temperature, dew point, and humidity data
                  m = upper-air station identifier (one or more digits)

     Example:

      3937 88051012  1  3  0
      3039. 3179. 3214.
     12717 88052012 2  0  1
      1042.
     12912 88050812 700
      33. 23.6 21.4 87.0


IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION, U.S. DATA

     A.  Memory Requirements (1 block = 512 bytes)
                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
1   file
0   files
1   file
1   file
3   files
 8   blocks
 0   blocks
 8   blocks
_9   blocks
25   blocks
                                         74

-------
     B.  Execution Time Requirements (Representative Values for a One-Month Data Span):

                                                        VAX 8650
                Charged CPU time (hh:mm:ss):              00:04:31
                Buffered I/O count:                          249
                Direct I/O count:                           2673
                Peak working-set size:                        592
                Peak virtual size:                           4286

     C.  Space Requirements: Log and Print Files

        DEL.LOG:                 282 blocks
        Print Files:                 None

     D.  Space Requirements: Input and Output Files

        Table 3.32 shows the input file and output file space requirements for May 1988 data. Note
        that both the input and output storage requirements will vary from month to month.

               TABLE 332. I/O FILE SPACE REQUIREMENTS FOR MAY 1988 U.S. DATA
File
Group
Input
Output
File
Name
RWND_88USMAY_WNDW.DAT
RWND_88USMAY_UPDT.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
17444
17444
Scenario
Data Span
1 month
1 month
     E. Space Requirements: Tape Files

        None


V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     DEL.LNK follows:

     $ ASSIGN USER2$DISK:[RTT.ROW A
     $ LINK A:DEL
     (end of link stream)


VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     DEL.COM for U.S. data follows:
                                       75

-------
        ! ACCOUNTING CODE
        SET VERIFY
        !
        ! RUN STREAM IS  IN THE FILE USER2SOISK:[RTT.ROM1DEL.RUNMAY88US
        !
        ASSIGN MET25:[RTT]RUND US88MAY WNOW.DAT      INPUT1
        ASSIGN MET25:rRTTlRHND~US88MAY~UPDT.DAT      OUTPUT
        RUN USER2SDISK:[RTT.RON]DEL
        3860  88051500  1    4   0
        6068. 6131.  6291.  6823.
        3860  88052112  1    1   0
        6800.
        3860  88052312  1    1   0
       10322.
        3879  88050812  1    1   0
        6539.
       94823  88051100  1    4   0
       4182.  4195.  4220.  4245.
       94823  88051612  1    1   0
        817.
       99999  99999999  9   99  99

      (end of run stream)


VII.   MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A Main Program


         DEL


      B.  Subroutines


         None


      C. Functions


         None


      D. Block Data Files

         None


VIII.  I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


      A Subroutines


         None
                                          76

-------
      B.  Functions

         None

 IX.  INCLUDE FILES

     None

3.12 PREPROCESSOR OFFTAPE

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts buoy data from tape and writes them to a disk file.

 II.    I/O COMPONENTS

      A.  Input Files

         1.   Standard Input Files

             None

         2.   Nonstandard Input Files

             Any ASCII tape with a fixed block size can be used as input.  In practice, we only use the
             copy (from preprocessor COPYTAPE) of the original National Buoy Data Center tape.

      B.  Output Files

         1.   Standard Output Files

             None

         2.   Nonstandard Output Files

             OFFTAPE produces one nonstandard file, BUOY1Y.DAT, that contains the parameter
             shown in Table 3.33. The WRITE statement for this file is listed below.

                      URITE(OUTU) BUF(CI-1)*RCOSZ+1:I*RCOSZ)
                                        77

-------
                              TABLE 3.33. BUOYIT.DAT PARAMETER
             Farm    Farm                 Data
             No.     Name     Unit       "type                 Description

              1       BUF             Char* 10640   Data stream, written as 80 characters per
                                                   record
III.    CONTROL CARDS

      One control card is used in the format shown below. Table 3.34 defines the control card variable.

      Be, RCDSZ, PARCND, IRPT

                         TABLE 334. CONTROL CARD VARIABLES           	

       Variable
        Name            Unit                          Description

       IBC               bytes       Block size of input tape
       RCDSZ            bytes       Output record size
       PARCND                    Parity error condition code:
                                    T =>• terminate on parity error
                                    S => skip bad block and continue processing
       IRPT                        Number of files to skip before beginning processing


      Example:

      10640
      152
      T
      1


 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

      A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:            2  files        18  blocks
                 FORTRAN INCLUDE files:        0  files         0  blocks
                 Object files:                     2  files        12  blocks
                 Executable file:                   1  file        15  blocks
                                                5  files        45  blocks
                                       78

-------
    B.  Execution Time Requirements (per tape):

                                                        VAX 8650
                 Charged CPU time (hh:mm:ss):             ± 00:02:00
                 Buffered I/O count:                          1468
                 Direct I/O count:                           13225
                 Peak working-set size:                         603
                 Peak virtual size:                            3755

    C.  Space Requirements:  Log and Print Files

        OFFTAPE.LOG          6 blocks
        Print Files:               None

    D.  Space Requirements:  Input and Output Files

        Table 3.35 shows the input and output file space requirements.

                           TABLE 3.35. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
N/A
BUOYYKDAT
File
Type
Nonstd
Storage
(in blocks)
±180000
Scenario
Data Span
lyear
     E.  Space Requirements: Tape Files

        One input tape is required. Table 3.36 shows the input file space requirements for a repre-
        sentative tape.

       	TABLE 336. TAPE FILE SPACE REQUIREMENTS	

          File          Tape          File          Record                Block
         Group      Number       Number      Length (bytes)          Size (bytes)

         Input          101229       1 (label)           80                     80
                                   2                80                  10640
V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    OFFTAPE.LNK follows:

    $ LINK  USER2SDISK:[SER.STREAM.TAPES]OFFTAPE.06J,  -
           USER2SOISK:[DAO.METTAPE]VATAPE.06J

    (end of link stream)
                                       79

-------
VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     OFFTAPE.COM follows:
        ACCOUNTING CODE

        This program copies a file from tape to disk.

        EXPECTED INPUT:

          integer - BLOCKSIZE IN BYTES
            integer - RECORDSIZE IN BYTES
          Character*! - STATUS ON PARITY ERROR  (T TO TERMINATE, S TO SKIP)
          integer - NUMBER Of INPUT FILES TO SKIP

        Additionally the program expects to read from "INTAPE"
        and write to "OUTDISK"
     $
     $ TAPE SELECT DRIVE1 101229
     $ TAPE LOAD/NORING DRIVE1  101229
     $ MOUNT/NOWRITE/FOREIGN/BLOCKSIZE=10640 DRIVE1 101229 INTAPE:
     $ ASSIGN MET27:[SCRATCH.DA01BUOY88.DAT   OUTDISK
     $ RUN USER2SDISK:[SER.STREAM.TAPES]OFFTAPE.EXE
     10640
     152
     T
     1
       i
       3REWIND INTAPE:
       DISMOUNT INTAPE:
       DEALLOCATE DRIVE1
       EXIT

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A Main Program


         OKFTAPE


      B. Subroutines


         USER2$DISK:[DAO.METTAPE]


         VATAPE


      C. Functions


         None



      D. Block Data Files


         None
                                           80

-------
VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

      A.  Subroutines

         None

      B.  Functions

         None

 IX.  INCLUDE FILES

     None

3.13 PREPROCESSOR RWND_CAN_CLCT

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts (windows) rawinsonde data from the Canadian upper-air data tape, and
      stores the windowed data on .the VAX disk. Latitude and longitude control cards define the hori-
      zontal extent of the windowing, while the vertical extent is controlled  by another control card.
      RWND_CAN_CLCTalso calculates the dew points from the sounding data, which are reported as
      dry-bulb temperatures and relative humidities.

 II.    I/O COMPONENTS

      A.  Input Files

         1.   Standard Input Files

             None

         2.   Nonstandard Input Files

             a.  Canadian Upper-Air Data File

                A VAX system tape, created by the COPYTAPE preprocessor (see Section 3.9), con-
                tains the Canadian  upper-air data (referenced as Tape 100640 in the run stream
                                        81

-------
                     below).20 These data contain a uniquely-Canadian station identification code, (which
                     is converted to a pseudo-WBAN identifier using the next nonstandard input file), the
                     date and time (as GMT) of the observation, the pressure level and its geopotential
                     height, and meteorological parameters associated with that level - temperature, rela-
                     tive humidity, wind direction, and wind speed. Both mandatory (including standard)
                     and  significant  pressure levels are  currently  reported  (see  Section 3.3.1 for
                     definitions). The data currently exist as two separate record types within a single file;
                     the first 90 records contains  the meteorological variables (listed as ELEM(l) to
                     ELEM(6) in Table 3.37, Tape Parameters, below) for the mandatory and significant
                     levels.  The second record type contains wind data at levels where there are significant
                     changes (ELEM(7) to ELEM(IO)), and consists of 120 records. Each fixed-length
                     record is read from the tape using the following READ and FORMAT statements:

                          READ ,  J  = 1,90), SRC
                     250  FORMAT (A7,  13, 312.2, 13, 90(F6.0,A1>, 6X,  AD

                 b.  WBAN Conversion File

                     This file contains a WBAN or pseudo-WBAN identifier for each Canadian upper-air
                     station in the modeling domain. The pseudo-WBAN identifiers were assigned arbi-
                     trarily  at Computer Sciences Corporation.  The file's READ and FORMAT state-
                     ments follow, and Table 3.38 shows its parameters.

                              READ (UTABLE,  300,  END = 350) CANID. WBAN,  LAT, ION
                     300      FORMAT <1X, A7,  2X, 15.5, 2X, F5.2, 2X, F6.2)
20.  COPYTAPE may not always be successfully executed on all Canadian upper-air data tapes. Our experience has shown that these
    data will sometimes be recorded as one Qle that spans two tapes, with no E-O-F marker on the first tape. If you receive data in this
    format, and you want to make a copy of the original tape, you must use the VAX system's COPY routine. Further information about
    this routine can be obtained from the VMS DCL Dictionary, publication number AA-LA12A-TE, available from Digital Equipment
    Corporation, Corporate User Publications, ZK01-3/J35,110 Spit Brook Road, Nashua, NH 03062.

                                                 82

-------
                TABLE 3.37. TAPE PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Farm
Name"
STNID
YR
MON
DAY
HR
ELEM(l),
VALUED),
ELEM(2),
VALUE(2)/
ELEM(3),-
VALUE(3),
ELEM(4),
VALUE(4),
ELEM(5),
VALUE(5),
ELEM(6);
VALUE(6),
ELEM(7),-
VALUE(7)/
ELEM(8),
VALUE(8),
ELEM(9)/
VALUE(9),
ELEM(IO),
VALUE(IO),
F/
SRQ
Unit*




GMT

0.01 kPa

m

0.1 °C

%

deg

m-s-1

0.01 kPa

m

deg

m-s-1


Data
Type
Char*7
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Integer*4
Real*4
Char*l
Char*l
Description
Station identifier
YearasnY(e.g.,988)
Month as MM
DayasDD
Hour as HH
Atmospheric pressure
Value
Altitude above sea level
Value
Temperature
Value
Relative humidity
Value
Wind direction
Value
Wind speed
Value
Pressure
Value
Altitude above sea level
Value
Wind direction
Value
Wind speed
Value
Flag (not used)
Source code (not used)
ELEM(l) - ELEM(6) are parameters and data for mandatory and significant levels.
ELEM(7) - ELEM(IO) are wind data at levels where there are significant changes.
i represents a discrete pressure level
0.1 mb = 0.01 kP a


      TABLE 338. WBAN CONVERSION FILE PARAMETERS
Farm
No.
1
2
3
4
Farm
Name
CANID
WBAN
LAT
LON
Unit

e N
. w
Data
Type
Char*7
Integer*4
Real*4
Real*4
Description
Station identifier
Pseudo-WBAN number
Station latitude
Station longitude
                        83

-------
     B.  Output Files


         1.  Standard Output Files


            None


         2.  Nonstandard Output Files


            RWND_CAN_CLCT generates RWND_YyCAN_CLCT.DAT, which contains extracted

            data, dew points, and no flags.  This file is produced by the following WRITE and FOR-

            MAT statements, and Table 3.39 shows its parameters.
                         MITE (UN I TOUT ,260) I YEAR, OLDNON, OLDDAY, OLDHR, UBAN,
                 &             L, 1C, PR(L). HT(L), T(L), TD(L), RH(L), UDIRCL),
                 &             USPO(L), LAT, LON
            260          FORMAT (4<1X,I2.2), 1X, 15.5,  2X, 212.2, 7F8.1, 2F7.2)


                         TABLE 3J9.RWND WCAN CLCT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Farm
Name
IYEAR
OLDMON
OLDDAY
OLDHR
WBAN
L
K
PRL
HTL
TL
TDL
KHL
WDIRL
WSPDL
LAT
LON
Unit



GMT



mb
m
°C
°C
%
deg
m-s-1
0 N
. w
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real'4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Year as IT
Month as MM
Day as DD
Hour as HH
Station identifier
Level indicator
Number of levels
Pressure
Geopotential height
Temperature
Dew point
Relative humidity
Wind direction
Wind speed
Station latitude
Station longitude
             Note: L = level number (one or more digits).


III.    CONTROL CARDS


      Four control cards are used; the second and third define the region boundaries.  The cards are

      input in the following format:
                                          84

-------
     IFILE ENDFILE
     MINLAT MAXLAT MINLON MAXLON
     PMIN
     TOTBLK

     The boundaries for your particular modeling domain (if it is not the ROMNET region) can be
     ascertained from Chapter 3 of Sellars et al. Table 3.40 defines the control card variables for the
     ROMNET region.

                           TABLE 3.40. CONTROL CARD VARIABLES
Farm
No.
1
2
3
4
5
6
7
8
Farm
Name
IFILE
ENDFILE
MINLAT
MAXLAT
MINLON
MAXLON
PMIN
TOTBLK
Unit


0 N
0 N
. w
• w
. mb

Data
Type
Integer*4
Integer*4
Real*4
Real*4
Real*4
RealM
Real*4
Integer*4
Description
Number of files to skip
Number of the last rawinsonde file
Latitude of southern bound
Latitude of northern bound
Longitude of eastern bound
Longitude of western bound
Minimum sounding pressure
Maximum number of blocks to process
     Example (for ROMNET):

     0102
     25.055.060.0105.0
     200.
     100000
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A.  Memory Requirements (1 block = 512 bytes)
                FORTRAN source files:
                FORTRAN INCLUDE files:
                Object files:
                Executable file:
4   files
0   files
4   files
1   file
9   files
41  blocks
 0  blocks
24  blocks
19  blocks
84  blocks
                                     85

-------
    B. Execution Time Requirements:

                                                       VAX 8650
                Charged CPU time (hh:mm:ss):              00:00:51
                Buffered I/O count:                          259
                Direct I/O count:                             493
                Peak working-set size:                         615
                Peak virtual size:                            2934

    C. Space Requirements: Log and Print Files

       RWND_CAN_CLCT.LOG:   9 blocks
       Print Files:                 None

    D. Space Requirements: Input and Output Files

       Table 3.41 shows the input file and output file space requirements for 1988 data. Note that the
       output storage requirement will vary.

                   TABLE 3.41. I/O FILE SPACE REQUIREMENTS FOR 1988 DATA
File
Group
Input
Output
File
Name
STNS_CAN_RWND.DAT
RWND_88CAN_CLCT.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
3
5564
Scenario
Data Span
N/A
1 year
    £.  Space Requirements: Tape Files

        Table 3.42 shows the input tape file space requirements.
                      TABLE 3.42. INPUT TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Tape
No.
100640
File
No.
2
Record Length
(in bytes)
1 = 656
2 = 866
Block Size
(in bytes)
19024
V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     RWND_CAN_CLCT.LNK follows:

     $ ASSIGN USER2SOISK: [DAO.ROMWORK] A
     $ LINK A:RUND CAN CLCT, [ROMLIB.UTILI01ADATE.OBJ,-
      [ROMLIB.UTILI01JUNIT.OBJ, [DAO.METTAPE1VATAPE.OBJ

     (end of link stream)


                                       86

-------
VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


      RWND_CAN_CLCT.COM follows:


      $ !ACCOUNTING CODE
      $ SET VERIFY
      $ ASSIGN HET27:[SCRATCH.DA03RWND 88CAN_CLCT.DAT    OUTPUT
      $ ASSIGN HET27:[SCRATCH.DAO]STNS~CAN RWND.DAT      XTABLE
      $ TAPE SELECT TAPEDRIVE 100640
      $ TAPE LOAD TAPEDRIVE 100640
      S MOUNT/NOWRITE/FOREIGN/DENSITY=6250/BLOCKSIZE-19024  -
       TAPEDRIVE 100640 SFCTAP:
      $ SHOW DEV/FULL TAPEDRIVE
      $ RUN USER2$DISK:[DAO.ROMUORK]RWND_CAN CLCT.EXE
       01  02
       22.0 55.0 60.0  105.0
       200.0
       100000
      $ SHOW DEV/FULL TAPEDRIVE
      S DISMOUNT SFCTAP:
      $ DEALLOCATE TAPEDRIVE

      (end of run stream)



VII.   MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

      A.  Main Program

         RWND_CAN_CLCT

      B.  Subroutines

         VATAPE

      C.  Functions

         None

      D.  Block Data Files

         None

VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

      A  Subroutines

         DISK$VAXSET:[ROMLffi.UTILIO]

         ADATE

      B.  Functions

         JUNIT

IX.  INCLUDE FILES

     None
                                        87

-------
3.14 PREPROCESSOR RWND_END

 I.    PREPROCESSOR FUNCTION

      This preprocessor modifies the upper-air data set as a result of your inspection of the plots from
      preprocessor RWND_V2.  It differs from preprocessor DEL in that it modifies the data set one
      sounding at a time, while DEL can  modify one or more levels within specific soundings.
      RWND_END has two modes of operation: (1) it deletes an entire sounding from the data set; (2)
      it replaces dubious wind data in a sounding with the "missing" flag -9999.0, while retaining all the
      thermodynamic variables.

 II.    I/O COMPONENTS

      A.  Input Files

          1.  Standard Input Files

             None

          2.  Nonstandard Input Files

            a.  RWND_mJSMA/A/_SORTl.DAT or RWND_yyCANMMM_SORTl.DAT

              RWND_1TUSMMM_UPDT.DAT or RWNDJYCANMMM_UPDT.DAT are gener-
              ated as corrected versions of the input data by preprocessor DEL. These files are then
              reformatted by RWND_RFMT, and sorted by the VAX SORT utility, resulting in a
              chronologically ordered data set. The contents of these files includes the station identi-
              fication codes, the date and time (as GMT) of the observation, the pressure level and its
              geopotential  height,  and  meteorological parameters associated  with that  level  -
              temperature, dew point, relative humidity, wind direction, and wind speed.  Both man-
              datory (including standard) and significant pressure levels are currently reported (see
              Section 3.3.1  for definitions). The READ and FORMAT statements follow,  and the
              file's parameters are shown in Table 3.43.

                          READ  (UNIT1,  1200,  END = 999) YR,NON,DAr,HR,WBAN,LEV,NLEV,PR(I),
                         £ HKD.TCn.TDm.RIKn.MXD.WSa^LATd^LONd)
                      1200 FORMAT <4(1X,I2.2>, 1X, 15.5, 2X,  212.2, 7F8.1,  2F7.2)
                                          88

-------
TABLE 3.43.  RWND YYUSMMM SORT1.DAT AND RWND ITCANAfMM_SORTl.DAT
             PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Farm
Name
YR
MON
DAY
HR
WBAN
LEV
NLEV
PRittj,
HTm,f.
Tm/,
TEW
RHmX
WEW
WSm/.
LATm
LONm
Unit



GMT



mb
m
°C
°C
%
deg
m-s-1
0 N
. w
Data
Type
IntegerM
IntegerM
IntegerM
IntegerM
IntegerM
IntegerM
IntegerM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
Description
Year as YY
Month as MM
Day as DD
Hour as HH
Station identifier
Level indicator
Number of levels
Pressure at level L
Height at level L
Temperature at level L
Dew point at level L
Relative humidity at level L
Wind direction at level L
Wind speed at level L
Station latitude
Station longitude
  Note: m = upper-air station number (one or more digits); L = level number

 b.  ra/MM_RWND_DEL.DAT

    To accomplish the removal of questionable data, you must prepare a data file containing
    the date, the time, and the station ID (the WBAN number) of each sounding to be
    modified.  In addition, a one-character flag must be included on each line indicating
    whether the entire sounding is to be deleted (flag = A), or whether only the winds are to
    be reported as "missing" (flag = W). This file must be in chronological and numerical
    order for RWND_END to execute properly. The READ and FORMAT statements
    follow, and the file's parameters are shown in Table 3.44.

           READ (UNIT2, 1100, END = 100) COATE, CUBAN, FLAG
        1100 FORMAT (18, 2X, 15, 2X, A1)
                               89

-------
                         TABLE 3.44. YYMMM RWND DEL.DAT PARAMETERS
Farm
No.
1
2
3


Farm
Name
CDATE
CWBAN
FLAGm


Data
Unit Type
GMT Integer*4
Integer*4
Char*l



Description
Date and time as YYMMDDHH
Station identifier
Flag:
W reports winds as "missing"
A deletes the entire sounding
            Note: m = upper-air station number (one or more digits)

      B.  Output Files

         1.  Standard Output Files

            None
         2.  Nonstandard Output Files

            RWND_yyUSMMM_VRFY.DATor RWND_YTCANMMM_VRFY.DAT are generated
            as modified versions of the input data. These files contain parameters identical to those of
            the input files above, and are produced by the following WRITE and FORMAT state-
            ments:
                          WRITE (UNITOUT, 1200) YR,MON,DAY,HR,UBAN,I.NLEV,
                         & PR(I).HT,RH(I),WD
-------
     Example:

     0


IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION, U.S. DATA
     A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                1   file
                0   files
                1   file
                1   file
                3   files
 9   blocks
 0   blocks
 8   blocks
10   blocks
27   blocks
     B.  Execution Time Requirements (Representative Values for a One-Month Data Span):

                                                         VAX 8650
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files
                       00:04:32
                          442
                         2565
                          592
                         4286
         RWND_END.LOG:
         Print Files:
3 blocks
None
     D.  Space Requirements: Input and Output Files

         Table 3.46 shows the input file and output file space requirements for May 1988 data. Note
         that both the input and output storage requirements will vary from month to month.

                TABLE 3.46. I/O FILE SPACE REQUIREMENTS FOR MAY 1988 U.S. DATA
File
Group
Input

Output
File
Name
RWND_88USMAY_SORT1.DAT
88MAY~RWND DEL.DAT

RWND_88USMAY_VRFY.DAT
File
Type
Nonstd
Nonstd

Nonstd
Storage
(in blocks)
17420
17421
17419
. Scenario
Data Span
1 month

1 month
     E.  Space Requirements: Tape Files

         None
                                        91

-------
 V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     RWND_END.LNK follows:


     $ ASSIGN USER2SOISK:[RTT.ROM]  A
     S LINK A:RUND_END, [RONLIB.UTILIO]JUNIT.OBJ

     (end of link stream)



VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     RWND_END.COM for U.S. data follows:


     $ !  ACCOUNTING CODE
     $ SET VERIFY
     $ ASSIGN MET25:[RTT]RWND US88NAY SORT1.DAT        INPUT1
     $ ASSIGN USER2*DISK:[RTT?ROM]HAY88 RUND DEL.DAT    INPUT2
     S ASSIGN NET25:[RTT]RUND US88MAY VRFY.DAT         OUTPUT
     $ RUN USER2$OISK:[RTT.ROM]RWND END.EXE
     0

     (end of run stream)



VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A  Main Program


         RWND_END


     B.  Subroutines


         None


     C.  Functions


         None



     D.  Block Data Files


         None



VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A.  Subroutines


         None
                                       92

-------
      B.  Functions

         DISK$VAXSET:[ROMLIB.UTILIO]

         JUNIT

 IX.  INCLUDE FILES

     None

3.15  PREPROCESSOR RWND_RFMT

 I.    PREPROCESSOR FUNCTION

      This preprocessor interpolates wind speed, wind direction, and thermodynamic variables from
      existing upper-air data to replace missing data. It uses a simplified Ekman spiral to replace missing
      surface winds; other missing winds are linearly interpolated, as are missing thermodynamic vari-
      ables. RWND_RFMT also discards inappropriately-reported data from mandatory levels that lie
      beneath the terrain surface, as well as discarding an entire sounding if the surface temperature is
      missing.

 II.    I/O COMPONENTS

      A. Input Files

          1.  Standard Input Files

             None

         2.  Nonstandard Input Files

             RWND_lYUSMAflW_WNDW.DAT and RWNDJYCANMMAf_WNDW.DAT are pro-
             duced by preprocessor RWND_WNDW and contain the parameters shown in Table 3.47.
             The READ and FORMAT statements for either input file are listed below.

                          READ 
-------
                              TABLE 3.47. METCOND.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
Farm
Name
DATIME
STNID
LEVM
NLEVm
PRm,Z,
HTm>z.
Tm/.
TDm>i,
R*W
WDm>/,
ws^
LATm
LONOT
Unit
GMT



mb
m
°C
°C
%
o
m-s-1
c N
. w
Data
Type
Char*12
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
RealM
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
WBAN station identifier
Level indicator
Number of levels
Pressure
Height
Temperature
Dew point
Relative humidity
Wind direction
Wind speed
Latitude
Longitude
              Note: m = upper-air station number; L - level.


      B.  Output Files

         1.   Standard Output Files


             None


         2.   Nonstandard Output Files


             RWND_yjUSMMA/_RFMT.DAT is identical to the input file, except that some missing

             data may have been interpolated and added, and/or may have been deleted. The WRITE

             and FORMAT statements are listed below.
                            WRITE (UNITOUT.BOO) DATIME(L),  STNIO(L), LEV,  NLEV,
                          & PR(L), HT(L), T
-------
IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

     A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:            3   files         45  blocks
                 FORTRAN INCLUDE files:        0   files          0  blocks
                 Object files:                      3   files         27  blocks
                 Executable file:                   1   file         19  blocks
                                                 7   files         91  blocks

     B. Execution Time Requirements (Representative Values for a One-Month Data Span):

                                                        VAX 8650
                 Charged CPU time (hh:mm:ss):              00:03:28
                 Buffered I/O count:                          330
                 Direct I/O count:                           2485
                 Peak working-set size:                         545
                 Peak virtual size:                             924

     C Space Requirements: Log and Print Files

        RWND_RFMT.LOG     15 blocks
        Print Files:               None

     D. Space Requirements: Input and Output Files

        Table 3.48 shows the input file and output file space requirements.

                       TABLE 3.48. SAMPLE I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File File Storage
Name Type (in blocks)
RWND_88USSEP_WNDW.DAT Nonstd ±5500
RWND_88USSEP_RFMT.DAT Nonstd ±5500
Scenario
Data Span
1 month
1 month
     E.  Space Requirements: Tape Files

         None

 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     RWND_RFMT.LNK follows:

     $ ASSIGN USER2$OISK:[RTT.RCM]  A
     $ LINK A:RUND_RFMT.  [ROMLIB.UTILIOJADATE.OBJ.-
      [ROMLIB.UTILIOJJUNIT.OBJ

     (end of link stream)


                                        95

-------
VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    RWND_RFMT.COM follows:


      !  ACCOUNTING CODE
      !  RUN STREAM IS IN THE FILE USER2SOISK: [RTT.ROMRWND RFNT.RUN
      SET VERIFY
      ASSIGN MET25:[RTT]RWND US88APR_WNDW.DAT  INPUT
      ASSIGN NET25:[RTTjRUND~US88APR_RFNT.DAT  OUTPUT
      RUN USER2SDISK:[RTT.RON]RUND_R FMT.EXE

    (end of run stream)


VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A.  Main Program


         RWND_RFMT


     B.  Subroutines


         None


     C  Functions


         None



     D.  Block Data Files


         None


VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A.  Subroutines


         DISK$VAXSET:[ROMLIB.UTILIO]


         ADATE


     B.  Functions


         DISKSVAXSET:[ROMLffi.UTILIO]


         JUNIT


 IX.  INCLUDE FILES


     None



                                      96

-------
   3.16 PREPROCESSOR RWND_US_CLCT

    I.    PREPROCESSOR FUNCTION

         This preprocessor reads rawinsonde data from the U.S. upper-air data tape (TD6200 from the
         NCDC), and extracts only those stations with a WBAN identification number, storing these data
         on the VAX disk.  RWND_US_CLCT thus excludes soundings from unorthodox sites such as
         ships or other mobile platforms. Latitude and longitude control cards define the horizontal extent
         of the windowing you require, while the vertical extent is controlled by another control card. The
         preprocessor also calculates the dew points from the sounding data, which are reported as dry-bulb
         temperatures and relative humidities.

    II.   I/O COMPONENTS

         A. Input Files

             1.  Standard Input Files

                 None

             2.  Nonstandard Input Files

                 U.S. Upper-Air Data File

                 A VAX system tape, created by the COPYTAPE preprocessor (see Section 3.9), contains
                 the U.S. upper-air data (referenced as Tape 100326 in the run stream below).2i  These data
                 consist of the station identifier, the date and time (as GMT) of the observation, the pres-
                 sure level and its geopotential height, and meteorological parameters associated with that
                 level - temperature, relative humidity, wind direction, and wind speed. Both mandatory
                 (including standard) and significant pressure levels are reported (see Section 3.3.1  for
                 definitions).  Each fixed-length record is read from the tape using the following READ
                 and FORMAT statements:
21.  COPYTAPE may not always be successfully executed on all U.S. upper-air data tapes. Our experience has shown that these data will
    sometimes be recorded as one file that spans two tapes, with no E-O-F marker on the first tape. If you receive data in this format,
    and you want to make a copy of the original tape, you must use the VAX system's COPY routine. Further information about this
    routine can be obtained from the VMS DCL Dictionary, publication number AA-LA12A-TE, available from Digital Equipment
    Corporation, Corporate User Publications, ZK01-3/735,110 Spit Brook Road, Nashua, NH 03062.

                                                97

-------
         READ  (UNITIN,300,END=999,IOSTAT=IOST,ERROft=800> BUFFER
     300 FORMAT  (A)
         READ  
-------
B.  Output Files

    1.  Standard Output Files

       None


    2.  Nonstandard Output Files

       a.  RWND_yyUS_CLCT.DAT


           This file contains the extracted data from the tape, the calculated dew points, and no

           flags.  The file is produced by the following WRITE and FORMAT statements, and

           Table 3.50 shows its parameters.
                      WRITE (UNITOUT,600) IYEAR, MONTH, DAY,  HOUR, UBAN, L, K,
                     & PRESS(L),  HGT(L), TEMP(L), TDU), RH(L), UD(L), WS(L),
                     & LAT, LOW
                  600 FORMAT (4(1X, 12.2), 1X, A5, 2X, 212.2,  7F8.1, 2F7.2)


                     TABLE 3.50. RWND ITUS  CLCT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Farm
Name
IYEAR
MONTH
DAY
HOUR
WBAN
L
K
PRESSL
HGTL
TEMPj.
TDL
RH/,
WDL
WSj.
LAT
LON
Unit



GMT



mb
m
°C
°C
%
deg
m-s-1
0 N
. w
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Char*5
Integer*4
IntegerM
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Year as YY
Month as MM
Day as DD
Hour as HH
Station identifier
Level indicator
Number of levels
Pressure
Geopotential height
Temperature
Dew point
Relative humidity
Wind direction
Wind speed
Station latitude
Station longitude
        Note: L = level number (one or more digits).
                                     99

-------
            b.  ERROR_mJS.DAT

                This file contains the location of errors encountered during the data extraction pro-
                cess.  We generally do not encounter such errors, however. Such errors are recorded
                by -the IERR parameter, which is reported in the .LOG file.  You can also check
                whether this file's size equals zero; if it does not, errors have been found. The file is
                produced by the following WRITE statement, and Table 3.51 shows its parameters.

                          WRITE (UNITERR,*) RECORD, UBAN, NBEG,  IERR, IBLOCK, I FILE
                            TABLE 3.51. ERROR 1TUS.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
Farm
Name Unit
RECORD
WBAN
NBEG bytes
IERR
BLOCK
IFILE
Data
Type
Char*2672
Char*5
Integer*4
Integer*4
Integer*4
Integer*4
Description
Record string
Station identifier
Size of record
Error count
Block number of error
File number of error
III.    CONTROL CARDS

      Two control cards input the region boundaries; they are used in the following format:

      MINLAT MAXLAT MINLON MAXLON
      PMIN

      The boundaries for your particular modeling domain (if it is not the ROMNET region) can be
      ascertained from Chapter 3 of Sellars et al. Table 3.52 defines the control card variables for the
      ROMNET region.

                              TABLE 3.52. CONTROL CARD VARIABLES
Farm
No.
1
2
3
4
5
Farm
Name
MINLAT
MAXLAT
MINLON
MAXLON
PMIN

Unit
0 N
p N
. w
. w
mb
Data
Type
Real*4
Real*4
Real*4
Real*4
Real*4

Description
Latitude of southern bound
Latitude of northern bound
Longitude of eastern bound
Longitude of western bound
Minimum sounding pressure
                                         100

-------
     Example (for ROMNET):

     25.055.060.0105.0
     200.

IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

     A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:


     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files

         RWND_US_CLCT.LOG:    14 blocks
         Print Files:                 None
     D.  Space Requirements: Input and Output Files

         Table 3.53 shows the input file and output file space requirements for 1983 data. Note that the
         output storage requirement varies year by year, but will require storage of the magnitude
         shown.

                    TABLE 3.53. I/O FILE SPACE REQUIREMENTS FOR 1983 DATA
3
0
3
1
7
files
files
files
file
files





29
0
20
15
64
blocks
blocks
blocks
blocks
blocks
VAX 8650










01:05:43
1725
23743
508
1450










File
Group
Input
Output

File
Name

ERROR_83US.DAT
RWND 83US CLCT.DAT

File
Type

Nonstd
Nonstd

Storage
(in blocks)
0
0
260000
260000
Scenario
Data Span

lyear
1 year

                                       101

-------
     E.  Space Requirements: Tape Files

         Table 3.54 shows the input tape file space requirements.
                        TABLE 3.54. INPUT TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Tape
No.
100326
File
No.
2
Record Length
(in bytes)
7236
Block Size
(in bytes)
12000
V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     RWND_US_CLCT.LNK follows:


                 $ ASSIGN USER2$OISK:[RTT.ROM] A
                 $ LINK A:RWND_US CLCT,  [ROMLIB.UTILIOJADATE.OBJ,-
                   [ROMLIB.UTILIOTJUNIT.OBJ

     (end of link stream)



VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     RWND_US_CLCT.COM follows:


     $  ! ACCOUNTING CODE
     .$  SET VERIFY
     S  !
     S  ! RUN STREAM IS IN THE FILE USER2SOISK:[RTT.RON1RUND  US CLCT.RUN
     *  !                                             ~ ~
     S  ASSIGN MET25:[RTT1RUND_83US CLCT.DAT  OUTPUT
     $  ASSIGN MET25:[RTT]ERROR83US7DAT      ERRCHK
     $  ASSIGN MLAB: SYSSPRINT
     S  8TINUSE
     S  TAPE SELECT TAPEDRIVE 100326
     »  SHOW TINE
     $  TAPE LOAD TAPEDRIVE 100326
     $  SHOW TINE
     $  MOUNT/NOWRITE/FOREIGN/DENSITY=6250/BLOCKSI2E=12000 -
        TAPEDRIVE 100326 R1TAP:
     $  SHOW DEV/FULL TAPEDRIVE
     $  SHOW TIME
     $  SET MAGTAPE/SKIP=FILES:1 R1TAP:
     S  SHOW TINE
     S  RUN USER2SOISK:[RTT.ROMJRUND US_CLCT.EXE
        25.0  55.0  60.0  105.0
      200.0
     %  SHOW DEV/FULL TAPEDRIVE
     $  3REUIND R1TAP:
     *  DISMOUNT R1TAP:
     S  DEALLOCATE TAPEDRIVE

      (end of run stream)
                                          102

-------
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

     A Main Program

        RWND_US_CLCT

     B. Subroutines

        None

     C. Functions

        None

     D. Block Data Files

        None

VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A Subroutines

        DISK$VAXSET:[ROMLIB.UTILIO]

        ADATE
     B. Functions

        JUNIT

 IX.  INCLUDE FILES

     None

3.17 PREPROCESSOR RWND_WNDW

 I.   PREPROCESSOR FUNCTION

     This preprocessor extracts (windows) by month the rawinsonde data from the U.S. upper-air data
     file RWND_mJS_CLCT.DAT or RWNDJrTCAN_CLCT.DAT, the Canadian upper-air data
     file. RWND_WNDW ignores soundings that are not at standard times (i.e., at OOZ, 06Z, 12Z, or
     18Z); however, it accepts soundings that are within one hour of a standard time. When the pro-
                                     103

-------
         gram accepts such a sounding, it modifies the actual release time of the rawinsonde to that of the
         standard time.  This section is written for the windowing of  U.S. data; the requirements for
         windowing Canadian data are identical; however, file sizes will be smaller.

   II.    I/O COMPONENTS

         A. Input Files

            1.  Standard Input Files

                None

            2.  Nonstandard Input Files

                One nonstandard file, RWND_1YUS_CLCT.DAT for U.S. data22, is the input to the pre-
                processor. The file contains station identification codes, the date and time (as GMT) of
                the observation, the pressure level and its geopotential height, and meteorological
                parameters associated with that level - temperature, dew point, relative humidity, wind
                direction, and wind speed. Both mandatory (including standard) and significant pressure
                levels are currently reported (see Section 3.3.1 for definitions).  The READ and FOR-
                MAT statements follow, and the file's parameters are shown in Table 3.55.

                           READ (UMITIM,  150) YR(1), MONO), DAY(1), HR(1), WBANd), LEV(1),
                          &             NLEVC1), ADATAd)
                        150 FORMAT  (4(1X,I2.2),  1X, AS, 2X, 212.2, A70)

         B. Output Files

             1.  Standard Output Files

                 None

             2.  Nonstandard Output Files

                 RWND_WNDW generates RWND_miSMMM_WNDW.DAT.   This file  contains
                 parameters identical to those of the input file, but includes only a single month's data.
                 This file is produced by the following WRITE and FORMAT statements:
22.  The Canadian input file RWND_WCAN_CLCT.DAT contains the same data.

                                              104

-------
                      WRITE (UNITOUT, 150) YR(1), MONO), DAY(1>,  HR(1), UBAN(1), LEVC1),
                     &             NLEV(1), ADATA(I)
                   150 FORMAT (4(1X,I2.2), 1X, AS, 2X, 212.2, A70)


                         TABLE 335. RWND  YYVS CLCT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8









Farm
Name
YR
MON
DAY
HR
WBAN
LEV
NLEV
ADATAj.
PRESSL
HGTL
TEMP/,
TDr
RHL
WDL
WSL
LAT
LON
Unit



GMT




mb
m
°C
°C
%
deg
m-s-1
0 N
. w
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Char*5
Integer*4
Integer*4
Char*70
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Year as YY
Month as MM
Day as DD
Hour as HH
Station identifier
Level indicator
Number of levels
Data stream
Pressure
Geopotential height
Temperature
Dew point
Relative humidity
Wind direction
Wind speed
Station latitude
Station longitude
            Note: L = level number (one or more digits).


III.    CONTROL CARDS


      One control card is used, in the format shown below. It selects the month for windowing. Table

      3.56 describes the control card variable.


      TARMON
                              TABLE 336. CONTROL CARD VARIABLE
              Farm   Farm
              No.    Name
Unit
Data
Type
Description
                1  TARMON
         Integer*4   The number of the month for windowing
      Example:

      09
                                        105

-------
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION, U.S. DATA
     A. Memoiy Requirements (1 block = 512 bytes)

                FORTRAN source files:
                FORTRAN INCLUDE files:
                .Object files:
                Executable file:
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C. Space Requirements: Log and Print Files

        RWND_WNDW.LOG:      4 blocks
        Print Files:                None
     D. Space Requirements: Input and Output Files

        Table 3.57 shows the input file and output file space requirements for September 1988 data.
        Note that the output storage requirement will vary.

            TABLE 337. I/O FILE SPACE REQUIREMENTS FOR SEPTEMBER 1988 U.S. DATA
5
0
5
_1
11
files
files
files
file
file





34
0
20
13
67
blocks
blocks
blocks
blocks
blocks
VAX 8650










00:04:20
313
5286
529
927










           File
          Group
 File
Name
File
Type
 Storage
(in blocks)
 Scenario
Data Span
          Input   RWND_88US_CLCT.DAT
                   Nonstd
          260000
               lyear
          Output RWND_88USSEP_WNDW.DAT    Nonstd
                               5500
                      1 month
     E.  Space Requirements: Tape Files

         None


 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     RWND WNDW.LNK follows:
                                      106

-------
      $ ASSIGN USER2$DISK:[RTT.ROM]  A
      $ LINK A:RUNO WNDU,  [ROMLIB.UTILIO]ABATE.OBJ,-
        [ROMLIB.UTILIOJJUNIT.OBJ, [ROMLIB.UTILIOJGREG.OBJ,-
        [ROMLIB.UTILIO]JULIAN.OBJ

      (end of link stream)



VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


      RWND_WNDW.COM for U.S. data follows:


        !  ACCOUNTING CODE
       SET VERIFY
        !
        !  RUN STREAM IS IN THE FILE  USER2SDISK:[RTT.ROM]RWND_WNDW.RUN
        !
       ASSIGN MET27: [SCRATCH.DAWRWNO_88US_CLCT.DAT   INPUT
       ASSIGN MET25:[RTT]RWND 88USSEP WNDU.DAT        OUTPUT
        !
        !  ASSIGN MET27:[SCRATCH.DAO]RUND 88CAN CLCT.DAT  INPUT
        !  ASSIGN MET25:IRTT]RUND 88CANSEP WNDWTDAT       OUTPUT
        !
       RUN USER2SDISK:[RTT.ROH]RWND WNDW.EXE
       09

      (end of run stream)



VII.   MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A.  Main Program


          RWND_WNDW


      B.   Subroutines


          None


      C.   Functions


          None



      D.  Block Data Files


          None
                                          107

-------
VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A,  Subroutines

         DISK$VAXSET:[ROMLEB.UTILIO]

         ADATE
         GREG
     B.  Functions

         JUNIT
         JULIAN

 IX.  INCLUDE FILES

     None

3.18 PREPROCESSOR RWND_V2

 I.   PREPROCESSOR FUNCTION

     This preprocessor facilitates the validation of upper-air data by plotting (for human interpreta-
     tion) skew-T/log-P thermodynamic diagrams and/or 3-D hodographs of questionable rawinsonde
     soundings. The data can thus be checked for inappropriate conditions such as superadiabatic lapse
     rates, excessively large vertical wind shear, unnaturally deep inversion layers, etc.

 II.   I/O COMPONENTS

     A  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            RWND_miSMMM_WNDW.DAT and RWM)JTCANMMM_WNDW.DAT are pro-
            duced by preprocessor RWND_WNDW, checked by RWND_RFMT, and are then sorted
            by  the  VAX  SORT  utility.   The files  that  are  input  to RWND_V2  are
            RWND_yjTJSA/A/M_SORT.DAT and RWNDJTCANA/A/M_SORT.DAT; these files
            contain the parameters shown in Table 3.58. The READ and FORMAT statements for
            either input file are listed below.

                                       108

-------
                         READ{8,201,END=6)IY,IM,IDfIHfISTA,I,N.P(I),H(I),T(I),TD(I),RH(I),
                        $ UD(t),US(I)
                     201 FORMAT(4I3,I6,K,I2,7F8.0)

                     TABLE 3.58. SORTED UPPER-AIR DATA FILES' PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Farm
Name
IY
IM
ID
IH
ISTA
L*
Nm
Pmj
H«/
Tm>/
TDm>/
ItfW
WDm>/
ws^
Unit



GMT



mb
m
°C
CC
%
0
m-s-1
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Year as YY
Month as MM
DayasDD
Hour as HH
WBAN station identifier
Level indicator
Number of levels
Pressure
Height
Temperature
Dew point
Relative humidity
Wind direction
Wind speed
              Note: m = upper-air station number, / = level.

      B.  Output Files

         1.   Standard Output Files

             None

         2.   Nonstandard Output Files

             RWND_V2 produces a plot file each time it is run (e.g., R88_04V2.OUT in the run stream
             that follows).

III.    CONTROL CARDS

      Three control cards are used, in the format shown below. Table 3.59 describes the control card
      variables.

      TPLAP, ISDEX, KSTA, KCAN
      NSTRT NSTOP
      MODE
                                         109

-------
                             TABLE 3.59.  CONTROL CARD PARAMETERS
Farm
No.
1
2


3
4


5
6
7
Farm
Name Unit
TPLAP °Cm-i
ISDEX


KSTA
KCAN


NSTRT GMT
NSTOP GMT
MODE
Data
Type
Real*4
Integer*4


Integer*4
Integer*4


Integer*4
Integer*4
Char*4
Description
Lapse rate criterion
Station flag:
= 0=> check all
>0=*- check only one
WBAN station identifier a
Canadian data flag:
= 0=>- exclude
> 0=*- include
Start date/time as YYMMDDHH
End date/time as YYMMDDHH
Program operation mode *
             a.   Even if ISDEX = 0, a value is required here.
             b.   MANUAL displays each output plots on your terminal, and lets you decide whether or not to print the
                 plot; AUTO saves all plots to the output file.


     Example

     -0.015,0,03937,0
     88042200 88042423
     AUTO


IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A  Memory Requirements (1 block = 512 bytes)

                  FORTRAN source files:
                  FORTRAN INCLUDE files:
                  Object files:
                  Executable file:
     B.  Execution Time Requirements:
                  Charged CPU time (hh:mm:ss):
                  Buffered I/O count:
                  Direct I/O count:
                  Peak working-set size:
                  Peak virtual size:
 8   files
 0   files
 8   files
_1   file
17   files
 86   blocks
  0   blocks
 59   blocks
140  blocks
285   blocks
        VAX 8650
         00:02:25
            225
           1293
            693
           3000
                                         110

-------
     C.  Space Requirements: Log and Print Files

         RWND_V2.LOG         Variable (±15 blocks)
         Print Files:               Variable (±2300 blocks)


     D.  Space Requirements: Input and Output Files

         Table 3.60 shows the input file and output file space requirements.

                         TABLE 3.60. SAMPLE I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output

RWND.
File
Name
_88USSEP_SORT.DAT
R88_04V2.OUT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
±5500
±2300
Scenario
Data Span
1 month
1 month
     E.  Space Requirements: Tape Files

         None


V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     RWND_V2.LNK follows:


     $ LINK USER2SOISK:[RTT.ROMJRWND V2.0BJ, -
      USER2$OISK:tRTT.ROMJMAICOPY.OBJ,  -
      USER2SOISK: [RTT.ROM1QARA062.0BJ, -
      USER2$DISK:[RTT.ROM)SKEWT3.0BJ,  -
      USER2$D1SK:[RTT.ROM]HDGRAF2.0BJ, -
      USER2$DISK:[RTT.ROM]LISTNC.OBJ,  -
      USER2SDISK:[RTT.ROMJHOD03D.OBJ,  -
      USER2$OISK:[RTT.ROM]NUMTXT.OBJ,  -
      USER2SOISK:[BRO.RUSS30306JLIB.OLB, -
      USER2SDISIC:[UGL1UGT.OLB

     (end of link stream)


VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     RWND_V2.COM follows:


     $ ! ACCOUNTING CODE
     $ ! RUN STREAM IS IN THE FILE USER2SOISK:[RTT.ROMJRWND V2.RUN
     $ SAVE VERIFY = F$VERIFY<"YES")
     $ ASSIGN MET25:[RTT]RUND_US88APR SORT.DAT  INPUT1
     $ DEFINE/USER MODE SYSSOUTPUT MET25:[RTT]R88_04V2.0UT
     S RUN USER2SOlSK:[RTT.ROM]RWND_V2
     -0.015.0,03937,0
     88042200  88042423
     AUTO
     $ IF SAVE_VERIFY THEN SET VERIFY
     $ IF .NOT. SAVE_VERIFY THEN SET NOVERIFY
     $ EXIT

     (end of run stream)
                                          111

-------
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

     A Main Program

        RWND_V2

     B. Subroutines
MAKOPY
QARAOB2
SKEWI3
HDGRAF2
LISTNC
HODO3D
NUMTXT

      C.  Functions

         None

      D.  Block Data Files

         None

VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

      A  Subroutines

         USER2$DISK:[BRO.RUSS3D]

         OBJLIB.OLB
         USER2$DISK:[UGL]

         UGT.OLB
         Note that this subroutine is part of a modified Tektronix PLOT-10/Advanced Graphing II
         package, which must be purchased by you directly from a Tektronix dealer before we are able
         to supply the modifications.

      B.  Functions

         None

 IX.  INCLUDE FILES

     None
                                      112

-------
3.19 PREPROCESSOR SFCCAN_CLCT

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts the surface meteorological data from the  TDF-1440 format tapes
      acquired from the Canadian Climate Centre (CCC). SFCCAN_CLCT (1) converts some units to
      conform with SURMETl-type units, and (2) adjusts cloud data to conform with the SURMET1
      format.

 II.    I/O COMPONENTS

      A.  Input Files

          1.   Standard Input Files

              None

          2.   Nonstandard Input Files

              Surface meteorology data tapes from the CCC supply the data for SFCCAN_CLCT. Two
              tapes contain each year's data. As a precaution against losing valuable data, a system tape
              copy is made for each original tape via the COPYTAPE preprocessor, and all processing
              proceeds on the copies.  The READ and FORMAT statements for the tapes are listed
              below, and the parameters that are on the tapes are shown in Table 3.61.

                         130 READ (UNITIN..150,END=900) ABLOCK
                         150 FORMAT (A)
                             READ (BUFFER(M),170) STNID,1YR,IRON,IDAY.(DATAU), 1 = 1,6)
                         170 FORMAT (4X,A5,3I2.2,6A80)
                             READ (DATA(I),190) IHR,ADIR,AUS,AT,ATD,ASLP,ASTNPR,
                            &                 (ACOOCJ),J=1,4),ATCOV,AOPCOV,AAMT<1>,
                            &                 ATYP(1),ABASE(1),AAMT(2),ATYP(2),ABASE(2),
                            I                 AAMT<3),ATYP<3>,ABASE<3>.AAMT(4),ATYP(4>,
                            &                 ABASE(4),AUD,ADUM
                        190  FORMAT 
-------
                               TABLE 3.61.  TAPE PARAMETERS
Farm Farm
No. Name
1

2


3
4
5
6
7
























ABLOCK

BUFFER


STNID
IYR
IMON
IDAY
DATA
THRn*
ADIR^,
AWS^,
ATn,/,
ATD^/,
ASUV,
ASTNPR^
ACOD(J)^,
ATCOV^,
AOPCOV^
AAMT(1)^
ATYP(l)^
ABASE(l)^
AAMT(2)^,
ATYP(2)^
ABASE(2)^
AAMT(3)^
ATYP(3)^
ABASE(3)^
AAMT(4)^
ATYP(4)^
ABASE(4)^
AWD^
ADUM^,
Unit










LST

kt
op
°F
mb
in.Hg
1/10
1/10
1AO
1/10

102ft
mo

102ft
1/10

102ft
1/10

102ft
lOdeg

Data
Type
Char*(MAXBLK)

Char*(MAXREC)


Char*5
Integer*4
Integer*4
Integer*4
Char*80
Integer*4
Char*2
Char*3
Char*3
Char*3
Char*5
Char*4
Char'l
Char*l
Char*l
Char*l
Char*l
Char*3
Char'l
Char*l
Char*3
Char*l
Char'l
Char*3
Char*l
Char*l
Char*3
Char*2
Char*4
Description
Variable holding the data for an
entire tape block of length MAXBLK
Variable array equivalenced to
ABLOCK, length = MAXREC,
dimension = MAXBLK/MAXREC
Canadian station identifier
Year (IT)
Month (MM)
Day (/>/>)
Data string comprising:
Hourasfltf
Wind direction (16-pt WBAN code)
Wind speed
Temperature
Dew point
Sea level pressure
Station pressure
Cloud layer/sky condition,/ = 1, 4
Total sky cover
Total opaque sky cover
Amount of cloud layer 1
Type of cloud layer 1
Height of cloud layer 1
Amount of cloud layer 2
Type of cloud layer 2
Height of cloud layer 2
Amount of cloud layer 3
Type of cloud layer 3
Height of cloud layer 3
Amount of cloud layer 4
Type of cloud layer 4
Height of cloud layer 4
Wind direction
Dummy variable
         Note: n = surface station number (one or more digits); h = hour; for sky cover, - represents overcast.




B.  Output Files




    1.   Standard Output Files




        None
                                      114

-------
2.   Nonstandard Output Files


    SFCCAN_CLCT outputs  one nonstandard  file  for  each of the  two input tapes,

    SFCCAN_MMMiMA/M2yKc_CLCT.DAT, where x ranges from A to B. The output files

    are used by preprocessor SFCCAN_WNDW. The file is written in two steps: (1) a header

    step, and (2) a data step. The first two WRITE statements below form the header step,

    while the third is the data step. The file parameters are shown in Table 3.62.


                 WRITE (UNITOUT, 370} IYR, IMOW, IDAY, IHR,  STNID,  OPCOV,
                &                  TCOV,  AMT1, BASE1, AMT2, BASE2,  AMT3,
                &                  BASE3, SLP, WO, US, T,  TO, STNPR
             370 FORMAT (412.2, 1X, A5, IX,  2F4.0, 3(1X, F4.0, F6.0),  1X,
                &       5F7.1. 1X, F7.1)


           TABLE 3.62. SFCCAN_AMfAfiAfAfM2lYjc_CLCT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7

Farm
Name
IYR
IMON
IDAY
IHR
STNID,,
OPCOV^
TCOV^

Data
Unit Type
IntegerM
IntegerM
IntegerM
LST IntegerM
Char*5
% RealM
% RealM

Description
Year as YY
Month as MM
DayasDD
Hour as HH
Canadian station identifier
Opaque sky cover
Total sky cover:
0 = clear









1 = partial obscuration








8
9
10
11
12
13
14
15
16
17
18
19








AMTl^,
BASEl^,
AMttnfi
BASE2*/,
AMT3^,
BASE^h
SLP,^
WD^
WSn^,
Tnfi
TD^
STNPR^,








% RealM
m RealM
% RealM
m RealM
% RealM
m RealM
mb RealM
deg RealM
m-s-1 RealM
°C RealM
°C RealM
mb RealM
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base










Coverage, secondrlowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure

layer







    Note: n •= surface station number (one or more digits); h = hour; missing values are either -99. or -9999.
                                 115

-------
III.   CONTROL CARDS

     Two control cards are used in the format shown below.  Table 3.63 defines the control card vari-
     ables.

     IF1LE, ENDFILE
     BEGMON, ENDMON, TARYR

                         TABLE 3.63. CONTROL CARD VARIABLES
Variable
Name Unit
IF1LE
ENDFILE
BEGMON
ENDMON
TARYR
Description
Number of files to skip to reach data
Number of the last data file to process
Number of the first month to be extracted
Number of the last month to be extracted
Year of the data to be extracted
      Example:

      01,02
      04,10,1988
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
1  file
0  files
1  file
1  file
3  files
42  blocks
 0  blocks
21  blocks
24  blocks
87  blocks
      B. Execution Time Requirements (per tape):
                  Charged CPU time (hh:mm:ss):
                  Buffered I/O count:
                  Direct I/O count:
                  Peak working-set size:
                  Peak virtual size:
       VAX 8650
       ± 00:35:00
         2037
        16625
          597
         3660
      C. Space Requirements: Log and Print Files

         SFCCAN_CLCT.LOG     24 blocks
         Print Files:              None
                                       116

-------
     D.  Space Requirements: Input and Output Files

         Table 3.64 shows the approximate output file space requirements.

                         TABLE 3.64.  OUTPUT FILE SPACE REQUIREMENTS
File
Group
Output
File
Name
SFCCAN MMMiMMM2YYA_CLCT.DAT
SFCCAtijfMM1MMM2YYBjCLCr.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
80000
40000
120000
Scenario
Data Span
4 months
4 months
     E.  Space Requirements: Tape Files

         Two tapes per year contain the Canadian surface meteorology data.  Table 3.65 shows the

         space requirements for a representative tape.

                        TABLE 3.65. INPUT TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Tape
Number
102400
File
Number
1
Record Length
(in bytes)
495
Block Size
(in bytes)
24750
V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFCCAN_CLCT.LNK follows:


    $ LINK  USER2JDISK: tDAO.ROHWORK]SFCCAN CLCT.OBJ. -
            DISKSVAXSET: [ROHOBJ.UTILIO] JUUAN.OBJ,  -
            DISK$VAXSET:[ROMOBJ.UTILIO]JUNIT.OBJ,  -
            DISKSVAXSET:[ROMOBJ.UTILIO]ADATE.OBJ,  -
            USER2SDISK: [DAO.HETTAPEWTAPE.OBJ

    (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFCCAN CLCT.COM follows:
    $ (ACCOUNTING CODE
    S SET VERIFY
    $ ASSIGN MET27:tSCRATCH.DAO]SFCCAN APROCT88B CLCT.DAT
    % ASSIGN MLA8: SYSJPRINT
    $ TAPE SELECT TAPEDRIVE 102400
    $ TAPE LOAD TAPEDRIVE 102400
    % HOUNT/NC5WRITE/FOREIGN/DENSITY=6250/BLOCKSIZE=24750 -
      TAPEDRIVE 102400 SFCTAP:
    $ SHOW DEV/FULL TAPEDRIVE
    % RUN USER2$DISK:tDAO.ROMWORIC]SFCCAN CLCT.EXE
       01. 02
OUTPUT
                                         117

-------
       04, 10, 1988
    $ SHOW DEV/FULL TAPEDRIVE
    $ 8REWIND SFCTAP:
    $ DISMOUNT SFCTAP:
    S DEALLOCATE TAPEDRIVE

    (end of run stream)


VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A. Main Program


        SFCCAN_CLCT


     B. Subroutines


        SIGNCK


     C. Functions


        None



     D. Block Data Files


        None



VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A. Subroutines


        DISKSVAXSET:[ROMLIB.UTILIO]


        ADATE


        USER2$DISK:pAO.METTAPE]


        VATAPE


     B. Functions


        JULIAN

        JUNIT


 IX.  INCLUDE FILES


     None
                                      118

-------
3.20 PREPROCESSOR SFCCAN_WNDW

 I.    PREPROCESSOR FUNCTION

      This preprocessor (1) spatially and temporally windows the data output from SFCCAN_CLCT, (2)
      adds latitude and longitude coordinates to each station, (3) converts the time parameter from LST
      to GMT, and (4) converts a station's Canadian identifier to a WBAN or pseudo-WBAN number.

 II.    I/O COMPONENTS

      A.  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            a.  CANID_XTABLE.DAT

                CANID_XTABLE.DAT is the "look-up" file that contains the WBAN or our pseudo- .
                WBAN identifiers for Canadian stations, as well as the stations' geographical coordi-
                nates and time offset from GMT. The READ and FORMAT statements for this file
                are listed below, and its parameters are shown in Table 3.66.

                            READ (UNITX, 120, END = 130} NEUID(K),  LAT(K), LON(K),
                           &                       ISHIFTdC), UBAN(K)
                        120 FORMAT (IX,  AS, 2X, F5.2, 2X, F6.2, 9X,  12, 2X, 15.5)
                           TABLE 3.66. CANTO XTABLE.DAT PARAMETERS
Parm
No.
1
2
3
4
5
Parm
Name
NEWTD,,
LATW
LONrt
ISHIFTn
WBAN,,
Data
Unit Type
Char*5
0 N RealM
0 W RealM
h IntegerM
Integer*4

Description
Canadian identifier
Station latitude
Station longitude
Offset from GMT
WBAN or pseudo-WBAN identifier
             Note: n •= surface station number (one or more digits).
                                        119

-------
b.
   SFCCANJMMMi3fMM2FK:_CLCT.DAT, where x ranges from A to B, is output by

   SFCCAN_CLCT. The file's parameters are shown in Table 3.67, and its READ and

   FORMAT statements are listed below.


            HO READ (UNITIN, 150)  (DUNNY(I), 1  = 1,2)
            150 FORMAT  (A4)

            160 READ (UNITIN, 180,  END = 888) DAT I ME,  ID, ADATA
            180 FORMAT  (18.8, 1X, AS, A86)


       TABLE 3.67. S¥CCAN_MMMiMMM2YYx_CLCT.DAT PARAMETERS _
Farm
No.
1
2
3
4











Farm
Name
DUMMY
DATIME
ADATA^
OPCOV^
TCOV^








AMTl^,
BASEl^,
BASE2n>,
AMTSn^
STNPR^,
Unit
LST
*








m
m
m
mb
deg
m-s-1
°C
°C
mb
Data
Type
CharM
IntegerM
Char*5
Char*86
RealM
RealM








RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
Description
Dummy variable (skips the header record)
Date and time as YYMMDDHH
Canadian station identifier
Data stream, comprising:
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
 Note: n = surface station number (one or more digits); h = hour, missing values are either -99. or -9999.
                            120

-------
B.  Output Files

    1.  Standard Output Files

       None

    2.  Nonstandard Output Files

       SFCCAN_WNDW produces SFCCAN_MMV/yr_WNDW.DAT, a nonstandard file that
       is sorted and merged with the U.S. surface data; the resultant file is input to preprocessor
       SFC_RFMT. SFCCAN_MMWIT_WNDW.DAT is written in two steps: (1) a header step,
       and (2) a data step. The first WRITE statement below forms the header step, while the
       second forms the data step. The file header parameters are shown in Table 3.68, while the
       data parameters are shown in Table 3.69.

                    WRITE (UNI TOUT, 100) I HEAD, TOTFIL, XDAY, XTIME, PROGNH
                 100 FORMAT (1X, 15.5,  '###', 11,  ' FILES WINDOWED TO 1  ON ', A6,
                   &       '/', A6, ' BY ',  A)
                    WRITE (UNITOUT, 240) ZTIHE, STNID, STNLAT, STNLON, ADATA
                 240 FORMAT (18.8, IX,  15.5, 1X, F5.2, 1X,  F6.2, A86)
             TABLE 3.68. SFCCAN  MMMYY WNDW.DAT HEADER PARAMETERS
Farm
No.
1
2
3
4
5
Farm
Name
MEAD
TOTFIL
XDAY
XTIME
PROGNM
Data
Unit Type
Integer*4
Integer*4
Char*8
LST Char*8
Char*64

Description
Number of output header lines
Number of input data files
Date of program execution as YYMMDD
Time of program execution as HH
Program name
                                    121

-------
                  TABLE 3.69. SFCCAN MMMYY WNDW.DAT DATA PARAMETERS
Farm
No.
1
2
3
4
5












8
9
10
11
12
13
14
15
16
17
18
19
Farm
Name
ZTIME
STNIDn
STNLATn
STNLONB
ADATA^,
OPCOV^,
TCOV^










AMTl^,
BASEl^
AMTZ^/,
BASE2n>A
AMTS^
BASES^,
SLP,^
\ITT\ .
TT J^/M^I
W On/|
T/^A
TD^
STNPR^/,
Unit
GMT

c N
. w

%











%
m
%
m
%
m
mb
deg
m-s-1
°C
°C
mb
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Char*86
Real*4
Real*4










Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real'4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
WBAN/pseudo-WBAN identifier
Station latitude
Station longitude
Data stream, comprising:
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 as indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
            Note: n = surface station number (one or more digits); h = hour; missing values are either -99. or -9999.

III.   CONTROL CARDS

     Three control cards are used in the format shown below. Table 3.70 defines the control card
     variables.

     BEGTIM, ENDTEM
     MINLAT, MAXLAT, MINLON, MAXLON
     TOTFIL
                                      122

-------
                         TABLE 3.70. CONTROL CARD VARIABLES
Variable
Name
BEGTIM
ENDTIM
MINLAT
MAXLAT
MINLON
MAXLON
TOTF1L
Unit
GMT
GMT
0 N
0 N
0 W
. w

Description
Beginning time for which data will be extracted as

YYMMDDHH
Ending time for which data will be extracted as YYMMDDHH
Southern window boundary
Northern window boundary
Eastern window boundary
Western window boundary
Number of input data sets to be processed





     Example:

     88040100,88043023
     25.0 55.0 60.0 110.0
     2
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
                                                 2   files
                                                 0   files
                                                 1   file
                                                 1   file
                                                 4   files
         12   blocks
         0   blocks
         9   blocks
         12  blocks
         33   blocks
A. Memory Requirements (1 block = 512 bytes)

            FORTRAN source files:
            FORTRAN INCLUDE files:
            Object files:
            Executable file:
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C. Space Requirements: Log and Print Files

        SFCCAN_WNDW.LOG   45 blocks
        Print Files:              None
     D. Space Requirements: Input and Output Files

        Table 3.71 shows the approximate input and output file space requirements.
VAX 8650
± 00:04:00
    426
  16790
    538
   3750
                                       123

-------
                            TABLE 3.71. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
SFCCAN_MAfMiAfMM2yyA_CLCT.DAT
SFCCANJflfM13fMM2lTBjCLCT.DAT
SFCCAN JlfMJ/yr_WNDW.DAT
File
Type
Nonstd
Nonstd
Nonstd
Storage
(in blocks)
±80000
± 40000
±120000
±13000
Scenario
Data Span
4 months
4 months
1 month
     E.  Space Requirements: Tape Files

         None


 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFCCAN_WNDW.LNK follows:


    $ LINK USER2SOISK:[DAO.RONWORIC]SFCCAN WNDW.OBJ,  -
            USER2$DISK:[DAO.DONLIB]IHSHFT.OBJ, -
            DISttVAXSET:[ROMOBJ.UTILI0]ADATE.OBJ,  -
            DISKSVAXSET:[ROMOBJ.UTIL10]JUNIT.OBJ

    (end of link stream)


VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFCCAN WNDW.COM follows:
       !ACCOUNTING CODE
       SET VERIFY
       ASSIGN MET27: [SCRATCH.DAO]CANID XTABLE.DAT             XTABLE
       ASSIGN MET27:[SCRATCH.DAO]SFCCAN APROCT88B CLCT.DAT     INPUT1
       ASSIGN MET27:[SCRATCH.DA01SFCCAN~APROCT88A~CLCT.DAT     INPUT2
       ASSIGN MET27:[SCRATCH.DAO]SFCCAN~JUN88 WNDW.DAT         OUTPUT
       RUN USER2SOISK:CDAO.ROMUORiaSFCCAN WNDU.EXE
       88060100  88063023
       25.0 55.0  60.0  110.0
       2

     (end of run stream)
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A, Main Program

         SFCCAN WNDW
                                         124

-------
     B. Subroutines
        USER2$DISK:pAO.DONLIB]
        IHSHFT
     C. Functions
        None
     D. Block Data Files
        None
VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED
     A Subroutines
        DISK$VAXSET:[ROMLIB.UnLIO]
        ADATE
     B. Functions
        DISK$VAXSET:[ROMLffi.UTILIO]
        JUNIT
 IX.  INCLUDE FILES
     None

3.21 PREPROCESSOR SFC_RFMT
 I.   PREPROCESSOR FUNCTION
     This preprocessor reformats the surface meteorology input data to conform with the SURMET1
     format; it also adds header records that assist you in tracking the provenience of the output file.

 II.   I/O COMPONENTS
     A  Input Files
         1. Standard Input Files
           None
                                     125

-------
2.  Nonstandard Input Files

   SFC_RFMT uses one nonstandard input file, SFC_MMM1Y_SORT.DAT, that contains
   the data shown in Table 3.72. This file is output by the VAX system SORT and MERGE
   routines on the output files from preprocessor SFCUS_CLD_INTP for U.S. data, and
   from preprocessor SFCCAN_WNDW for Canadian data.  The READ and FORMAT
   statements for this file are listed below.
                    READ (UNITIN,  60) HEADER
                 60 FORMAT (A108)
                 160 READ (UNITIN,  180, END = 999) DATIME, UBAN, INFO
                 180 FORMAT (18.8,  1X, 15.5, A99)
                 TABLE 3.72. SFC MMMYY SORT.DAT PARAMETERS
Parm Parm
No. Name
1 DATIME
2 WBANn
3 INFO
SLAT^
SLON^
lOPAQ^
TOTCOV^/,










AMTl^
HTl^
AMTZ,^
HTZ,^
AMTSn^
HTS^
SLP^
WDIR^
WSPD^
Tnji
TD^A
STNPR^
Unit
GMT


0 N
. w
%











%
m
%
m
%
m
mb
deg
m-s-1
ec
ec
mb
Data
Type
Integer*4
Integer*4
Char*99
Real*4
Real*4
Real*4
Real'4










Real*4
Real*4
Real*4
Real*4
Real*4
RealM
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
Station WBAN identifier
Data stream, comprising:
Latitude
Longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud layer base
Coverage, second cloud layer
Second cloud layer base
Coverage, third cloud layer
Third cloud layer base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
    Note: n = station number (one or more digits); h •= hour; missing values are either -99. or -9999.
                                126

-------
B. Output Files


   1.  Standard Output Files


       None


   2.  Nonstandard Output Files


       SFC_RFMT outputs one nonstandard file, SFC_MMMYK_RFMT.DAT, that contains the

       data shown in Table 3.73, Table 3.74, and Table 3.75. Note that the file contains both file

       headers and an "hours" header in addition to the data parameters. The WRITE and

       FORMAT statements for SFC_MAfAflY_RFMT.DAT are listed below.


                  WRITE (UNITOUT, 60) HEADER
               60 FORMAT (A108)

                  WRITE (UNITOUT, 100) J,  XDAY,  XTIME, PROGNM
               100 FORMAT (1X,  15.5,  ' ###  FILE  REFORMATTED ON ', A6, '/', A6,
                 &      ' BY ', A)

                  WRITE (UNI TOUT, 200) OLDTIM,  I
               200 FORMAT (18.8, 5X,  13)

                  WRITE (UNITOUT, 230) STNID(K), ADATA(K)
               230 FORMAT (15.5, A99)


            TABLE 3.73. SFCJ/MAflYJtFMT.DAT FILE HEADER PARAMETERS


        Farm    Farm                  Data
         No.     Name         Unit     Type                Description


         1      HEADER               Char* 108 Previous header information
         2      J                      Integer*4 Record number of the new header

         3      XDAY                 Char*8   Date of processing as MMDDYY

         4      XTIME         EST    Char*8   Time of processing as HHMMSS

         5      PROGNM              Char*64  Program name
           TABLE 3.74. SFC MMMYY RFMT.DAT "HOURS" HEADER PARAMETERS
Farm
No.
Farm
Name
Unit
Data
Type
Description
         1      OLDTIM       GMT   Integer*4   Date and hour as YYMMDDHH
         2      I                       Integer*4   No. of reports at OLDTIM
                                  127

-------
                       TABLE 3.75. SFC MMMYY RFMT.DAT PARAMETERS
Farm
No.
1
2 .


























Farm
Name
STNIDn
ADATA
SLAT^
SLON^
lOPACv,
TOTCOV^










AMTl^,
HTl,^
AMTZ,,^
HT2^
AMTS^/,
HTS^
SLP,^
WDIR^,
WSPD^i
Tnji
TD^/,
STNPR^
Data
Unit Type
Integer*4
Char*99
0 N Real*4
0 W Real*4
% Real*4
Real*4










% Real*4
m Real*4
% Real*4
m Real*4
% Real*4
m Real*4
mb Real*4
deg Real*4
m-s-i Real*4
°C Real*4
°C Real*4
mb Real*4
Description
Station WBAN identifier
Data stream, comprising:
Latitude
Longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud layer base
Coverage, second cloud layer
Second cloud layer base
Coverage, third cloud layer
Third cloud layer base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
            Note: n ~ surface station number (one or more digits); h = hour; missing values are either -99. or -9999.

III.   CONTROL CARDS

     None

IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

     A  Memory Requirements (1 block = 512 bytes)
                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
1  file
0  files
1  file
1  file
3  files
21  blocks
 0  blocks
12  blocks
15  blocks
48  blocks
                                       128

-------
                                                        VAX 8650
                                                        ± 00:06:00
                                                            768
                                                           6886
                                                            507
                                                           3750
    B.  Execution Time Requirements:
            Charged CPU time (hh:mm:ss):
            Buffered I/O count:
            Direct I/O count:
            Peak working-set size:
            Peak virtual size:

C. Space Requirements: Log and Print Files

   SFC_RFMT.LOG        3 blocks
   Print Files:               None
    D.  Space Requirements: Input and Output Files

        Table 3.76 shows the input file and output file space requirements.

                          TABLE 3.76. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
SFC_MMAflT_SORT.DAT
SFC_MMM1Y_RFMT.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
±50000
±50000
Scenario
Data Span
1 month
1 month
     E.  Space Requirements: Tape Files

        None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    SFC_RFMT.LNK follows:

    $ LINK  USER2SDISK:[DAO.ROMWORK]SFC RFMT.OBJ, -
           DISK$VAXSET:tROMOBJ.UTILIO)JUNIT.OBJ. -
           0ISKSVAXSET:[ROHOBJ.UTILI0]ADATE.OBJ

    (end of link stream)
                                       129

-------
VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFC_RFMT.COM follows:


    $ (ACCOUNTING CODE
    $ SET VERIFY
    $ ASSIGN HET27:[SCRATCH.DAOJSFC OCT88 SORT.DAT         INPUT
    $ ASSIGN MET27:[SCRATCH.DA01SFC~OCT88~RFMT.DAT         OUTPUT
    $ RUN USER2SDISK: [DAO.ROMUORias7c_RFMT.EXE

    (end of run stream)



VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A. Main Program


        SFC_RFMT


     B. Subroutines


        None


     C Functions


        None


     D. Block Data Files


        None


VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A. Subroutines


        DISK$VAXSET:[ROMLD3.UnLIO]


        ADATE

     B. Functions


        DISKSVAXSET:[ROMLIB.irnLIO]


        JUNIT

 IX.  INCLUDE FILES


     None
                                     130

-------
   3.22  PREPROCESSOR SFCR_HRFILL

    I.    PREPROCESSOR FUNCTION

         This preprocessor reads the output of SFC_VRFY and looks for hours with data that are totally or
         partially missing. If only one hour is found to have data missing, the data are filled with the data for
         the previous hour.23  If more than one consecutive hour has data missing, the first half of the
         period (including the center hour, if there is one) is filled with data from the last hour that has data.
         The second half of the period is filled with data from the next hour that has data.

         Preprocessor COUNT_STNPERHR should be run before executing this preprocessor.  If any
         short or missing hours exist the log of COUNT_STNPERHR shows the number of stations that
         report for those hours. The control card used in SFCR_HRFILL must be a number greater than
         the maximum number of stations in the hours that have partial data (where you want to replace
         these data), but less than the number that corresponds to the hour (among the data that you want
         to keep without change) that reports with the least number of stations. For example, you find an
         hour that reports with 155 stations and one that reports with 255 stations, while all other hours
         report with 300+ stations; you run program SHOWMET (Section 7.7) on the hour with 255 sta-
         tions, and find good geographical representation and no obvious errors, and you decide to keep
         these data rather than replacing them. However, the data spread for the hour with 155 stations
         reporting is  deficient, and you decide to replace these data.  The number to be  input into the
         control card  must be greater than 155 but less than 255. However, there may be times when you
         cannot use this procedure, and you must develop your own quality control routines. For example,
         all hours  except 2 report with 300+ stations; 1 of the 2 hours reports with 255 stations, the other
         with 260  stations. You run SHOWMET on both hours, and find that the hour with 255 stations
         has good geographical representation, and you decide to keep it. However, the  hour with 260
         stations reports no data from two states, and you decide to replace this hour. This preprocessor
         cannot accomplish the replacement of the hour with 260 reporting stations without also replacing
         the hour  with 255 stations.
         In practice, we have found that this preprocessor rarely needs to be used.

    II.   I/O COMPONENTS

         A. Input Files
             1.  Standard Input Files

                None
23.  Note that hours with partially missing data have the data that do exist replaced by the Tilling" data.

                                             131

-------
2.   Nonstandard Input Files

    SFCR_HRFBLL uses one nonstandard input file, SFC_MMAflY_VRFY.DAT;l,  that
    contains the data shown in Table 3.77.  This file is output by preprocessor SFC_VRFY,
    and its READ and FORMAT statements are listed below.
                     READ (10, 200, END
                 200 FORMAT (218)
2) IDATE, NUMSTA
                     READ (10, 202) (DUMMY,  1=1, IDATE)
                 202 FORMAT (A1)
                     READ (10, 202) (DUMMY,  I = 1, NUMSTA)
                     READ (10, 201) (TEXT(I), I = 1,  NUMSTA)
                 201 FORMAT (A104)


                 TABLE 3.77. SFCJMMM1YVRFY.DAT;! PARAMETERS
Farm Farm
No. Name
1 IDATE
2 NUMSTA^
3 DUMMY^,
SLON^









HOT&
HGT2n^
AMTS,^
WSPD^
STNPR^
Data
Unit Type
GMT Integer*4
Integer*4
Char*l
Char* 104
Integer*4
0 N Real*4
0 W Real*4
% Real*4
Real*4









% Real* 4
m Real'4
% Real*4
m RealM
% Real*4
m Real*4
mb Real*4
deg Real*4
m-s-i Real*4
°C Real*4
°C Real*4
mb Real'4
Description
Date and time as YYMMDDHH
No. of stations reporting for this hour
Dummy variable (see note below)
Character string comprising:
Station WBAN identifier
Station latitude
Station longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
    Note: the DUMMY variable is used to skip header lines and data-short hours; n
    more digits); h = hour; missing values are either -99. or -9999.
                     = surface station number (one or
                                  132

-------
B.  Output Files

    1.  Standard Output Files

       None

    2.  Nonstandard Output Files

       SFCR_HRFILL outputs one nonstandard file, SFC_MMM1Y_VRFY.DAT;2, that con-

       tains the data shown in Table 3.78. This file is in the final SURMET1 format, and is input

       to processors P03G, P05G, P08G, P09G, P16G, P19G, and P27G.  The WRITE and

       FORMAT statements for SFC_MMA/yY_VRFY.DAT;2 are listed below.

                       WRITE  (11, 200) JDATE, NUMSTA
                    200 FORMAT (218)
                       WRITE  (11, 201) (TEXT(I), 1=1, NUMSTA)
                    201 FORMAT (A104)


                   TABLE 3.78. SFC  MMMYY VRFY.DAT;2 PARAMETERS
Pann
No.
1
. 2
3













Pann
Name
JDATE
NUMSTA^,
TEXT^,
SLON^
OPQ5«^
TOTS^y^,








HGTV
HGT^
HGT3^
&Lj±fth
\VT^TR i.
WSPD^
STNPR^,
Unit
GMT
0 N
. w








m
m
m
mb
deg
m-s-1
°C
°C
mb
Data
Type
Integer*4
Integer*4
Char* 104
Integer*4
Real*4
Real*4
Real*4
Real*4








Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Date and time as YYMMDDHH
No. of stations reporting for this hour
Character string comprising:
Station WBAN identifier
Station latitude
Station longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 — thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
       Note: n = surface station number (one or more digits); h = hour, missing values are either -99. or -9999.
                                   133

-------
III.    CONTROL CARDS

      One control card is used to input control data in the format shown below. Table 3.79 defines the
      control card variable.

      MINSTA

                           TABLE 3.79. CONTROL CARD VARIABLE
       Variable
        Name
             Unit
Description
       MINSTA           Threshold for the minimum number of stations reporting per hour;
                          hourly reports with the number of reporting stations falling below this
                          threshold will have their data replaced.
      Example:

      250


 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
                                                  3   files
                                                  0   files
                                                  3   files
                                                  1   file
                                                  7   files
A. Memory Requirements (1 block = 512 bytes)

            FORTRAN source files:
            FORTRAN INCLUDE files:
            Object files:
            Executable file:
      B. Execution Time Requirements:
                  Charged CPU time (hh:mm:ss):
                  Buffered I/O count:
                  Direct I/O count:
                  Peak working-set size:
                  Peak virtual size:

      C  Space Requirements: Log and Print Files

          SFCR_HRFILL.LOG     3 blocks
          Print Files:               None
      D.  Space Requirements: Input and Output Files

          Table 3.80 shows the input file and output file space requirements.
               12  blocks
                0  blocks
               12  blocks
               _9  blocks
               33  blocks
                                                   VAX 8650
                                                   ± 00:01:30
                                                       783
                                                      6579
                                                       522
                                                      3885
                                         134

-------
                           TABLE 3.80. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
SFC_MMM1Y_VRFY.DAT;1
SFC_ACWM5Y_VRFY.DAT;2
File
Type
Nonstd
Nonstd
Storage
(in blocks)
46278
46278
Scenario
Data Span
1 month
1 month
     E.  Space Requirements: Tape Files

         None


 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     SFCR_HRFILL.LNK follows:


     S LINK USER2$OISK:[DAO.ROHWOR«SFCR HRFILL.OBJ, -
          USER2SOISK:[DAO.ROMWORK.LIB1NHSKIP.OBJ, -
          USER2SDISK: [DAO.RONWORIC.LIB]NEXTHR.OBJ

     (end of link stream)


 VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     SFCR_HRFILL.COM follows:


      ! PREP0001
      SET VERIFY
      ! RUN STREAM IS IN USER2SDISK: [DAO.ROMWOROSFCR HRFILL.COM
      ASSIGN MET27:[SCRATCH.DAOJSFC APR85 VRFY.OAT;1 ~      SFCMET1
      ASSIGN HET27:[SCRATCH.DAO)SFC~APR85~VRFY.DAT;2       SFCMET2
      RUN USER2$OISK:[DAO.ROMWORK]SFCR HRFILL.EXE
      250

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A  Main Program


         SFCR_HRF1LL


     B.  Subroutines


         None
                                        135

-------
     C. Functions

        USER2$DISfc[DAO.ROMWORKLIB]

        NEXTHR
        NHSKIP
     D. Block Data Files

        None

VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A Subroutines

        None

     B. Functions

        None

 IX.  INCLUDE FILES

     None

3.23 PREPROCESSOR SFCUS_CLCT

 I.   PREPROCESSOR FUNCTION

     This preprocessor extracts the surface meteorological data from the TD-3280 format tapes
     acquired from the National Climatic Data Center (NCDC). SFCUS_CLCT (1) windows data
     given latitude and longitude delimiters, (2) converts some units to conform with SURMETl-type
     units, and (3) adjusts cloud data to conform with the SURMET1 format.

 II.   I/O COMPONENTS

     A  Input Files

         1.  Standard Input Files

            None
                                      136

-------
             2.  Nonstandard Input Files

                 Surface meteorology data tapes from the NCDC supply the data for SFCUS_CLCT. The

                 tapes are in TD-3280 format, where the data are organized by station rather than by time.

                 The NCDC archives each year of U.S. surface data on four tapes, all of which need to be

                 processed for the ROMNET modeling region.24  As a precaution against losing valuable

                 data, a system tape copy is made for each original tape via the COPYTAPE preprocessor,

                 and all processing proceeds on the copies. The READ and FORMAT statements for the

                 tapes are listed below, and the parameters that are on the tapes are shown in Table 3.81.


                                READ (UNITIN,  150, END = 777) BUFFER
                           150   FORMAT (A)
                                READ (BUFFER(NBEG:NBEG+3), 200, ERR = 320) MBYTES
                           200   FORMAT (14)
                                READ (BUFFER(NBEG+4:NBEG+NBYTES-1), 220, ERR = 330) RECTYP,
                                &      STNID,  ELMTYP, EUNITS,  IYEAR, IMON, SRC1, SRC2,  IDAY,
                                &      HUM, (ITIME(J), IVALUE(J),  FLAGKJ), FLAG2CJ), J =  1, HUM)
                          220   FORMAT (A3, 18,  A4, A2, 14, 12,  A1, A1,  12, 13, 100(12, 2X, A6,
                              &       A1, A1))


                 Note that an entire block of data is read into BUFFER (CHAR* 12000), and then the

                 record length of the individual records is obtained by reading NBYTES (INTEGER*4).


          B. Output Files

             1.  Standard Output Files

                 None


             2.  Nonstandard Output Files

                 SFCUS_CLCT outputs  one nonstandard file  for  each  of the four  input tapes,25

                 SFCUS_MMA/1MMM2yKc_CLCT.DAT, where x ranges from A to D. The output files are

                 used by preprocessor SFCUS_WNDW.  The file is written in two steps: (1) a header step,

                 and (2) a data step. The first two WRITE statements below form the header step, while

                 the third is the data step.  The file parameters are shown in Table 3.82.


                                WRITE (UNITOUT,  228)  IYR, OLDMON,  OLDDAY, K,
                              &      OLDID,  lOPAO(K). TOTCOV(K), COVLOU(K),
                              &      LOUHT(K),  COVMID(K). MIDHT(K),  COVHKK),
                              &      HIHT(K),  SLPR(K).  UDIR(K),  WSPD(K),
                              &      TEHP(K),  DEUPT(K), STNPR(K)
                            228  FORMAT (412.2,  1X, 18.8,  IX, 2F4.0, 3(1X, F4.0, F6.0),
                              t       1X, 5F7.1, IX. F7.1)
24.  Note that WBAN identification numbers for eastern North America are assigned first digits that can be either a 0, 1, 2, 5 or a 9.
    Second and third digits refer to the stations' geographical coordinates in units of 10* latitude  and longitude respectively.  Thus,
    stations that are geographically adjacent may be spatially far apart on the tapes because of the numerical ordering of the stations on
    the tapes.

25.  ERRORyyi.DAT is written only if an error occurs in reading MBYTES, and in practice is never written provided that the tape data
    are error-free.

    PRTESTYKt.DAT reports unidentified element types encountered when reading ELMTYP. The only element we ever found in this
    file was a sixth cloud layer, which would have a marginal effect on the ROM.


                                                 137

-------
                     TABLE 3.81. TAPE PARAMETERS
 Farm
 No.
        Farm
        Name
               Unit
 Data
 Type
Description
 1
 2
 3
4
5
6
7
8
9
10
11
12
13
14
        CLHT^
        CLTY^
      RECTYP
      STNIDW
      ELMTYP^,
        ALTP^     in. Hg
                     102ft
                     °F
                     10-2 mi
                     in.Hg
                     mb
                     °F
                     °F
                     knots
                     knots
        HZVS^,
        PRES^,
        PWTH^,
        RHUM^,
 WTND^
EUNITS^,
        IMONn
        SRCl^
        NUM«
        IVALUE^,
                     GMT
Char*3    Type of data (always HLY)
Char*8    Station WBAN identifier
Char*4    Element type, as follows:
           Altimeter setting
           Sky condition, prior to 1951
           Sky condition and cloud coverage for
              layer Y
           Ceiling height
           Cloud type and height for layer V
           Fractional amount of sky covered by
              first 2 / first 3 cloud layers
           Dew point temperature
           Horizontal visibility
           Station pressure
           Present weather
           Relative humidity
           Sea level pressure
           Dry bulb temperature
           Wet bulb temperature
           Total fractional sky/opaque cloud
              coverage
           Wind direction and speed in 16 point
              WBAN code
           Wind direction and speed
Char*2    Units code
Integer*4  Year
Integer*4  Month
Char'l    Source code 1
Char* 1    Source code 2
Integer*4  Day
Integer*4  No. of reports of ELMTYP for the day
Integer*4  Time of report
Integer*4  Value of ELMTYP at ITIME
Char*l    Measurement value quality flag
Char*l    Quality flag
Note: n — surface station number (one or more digits); h = hour; missing values are typically represented by all
9's in IVALUE, or by the total absence of the IVALUE field.
                            138

-------
                    TABLE 3.82. S¥CUS_MMMiMMM2YYx_CUJT3)AT PARAMETERS
Farm
No.
1
2
3
4
5
6
7










8
9
10
11
12
13
14
15
16
17
18
19
Farm
Name
IYR
OLDMON
OLDDAY
K
OLDIDM
lOPAQ^
TOTCOV^/,










COVLOW^
LOWHT^,
COVMID^
MIDHT^/,
COVHL^,
HIHT^/,
SLPR^,
WDIR^,
WSPD^
TEMPn,/,
DEWPT^,
STNPR^
Data
Unit Type
Integer*4
Integer*4
IntegerM
LST Integer*4
Integer*4
% Real*4
Real*4










% Real*4
m Real*4
% Real*4
m Real*4
% Real*4
m Real*4
mb Real*4
deg Real*4
m-s-i Real*4
°C Real*4
°C Real*4
mb Real*4
Description
Year as YY
Month as MM
DayasDD
Hour as HH
Station WBAN identifier
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 — obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
            Note: n •= surface station number (one or more digits); h = hour; missing values are either -99. or -9999.





III.    CONTROL CARDS





      One control card is used in the format shown below. Table 3.83 defines the control card variables.





      BEGMON, ENDMON, TARYR
                                        139

-------
                         TABLE 3.83.  CONTROL CARD VARIABLES
      Variable
       Name
Unit
Description
     BEGMON
     ENDMON
     TARYR
               Number of the first month to be extracted
               Number of the last month to be extracted
               Year of the data to be extracted
     Example:

     04,10,1988
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                        1  file
                        0  files
                        1  file
                        1  file
                        3  files
       69   blocks
        0   blocks
       30   blocks
       27  blocks
      126   blocks
     B. Execution Time Requirements (per tape):
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:
                               VAX 8650
                               ± 00:45:00
                                  531
                                10593
                                  511
                                 3750
     C.  Space Requirements: Log and Print Files

         SFCUS_CLCT.LOG      9 blocks
         Print Files:              None
     D.  Space Requirements: Input and Output Files
         Table 3.84 shows the output file space requirements.
                                       140

-------
                        TABLE 3.84. OUTPUT FILE SPACE REQUIREMENTS
File
Group
Output








File
Name
^^^^aa^BaS^AT
SFCUS~M3/MiA/M3/2yyC~CLCT.DAT
SFCUS~A/MA/1MMA/21TD~CLCT.DAT
ERROR1TA.DAT
PRTEST1YA.DAT
ERRORyKB-DAT
PRTESTVyB.DAT
ERROR1YC.DAT
PRTESTYYC.DAT
ERROR1TD.DAT
PRTEST1TD.DAT
File
Type
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Storage
(in blocks)
50661
44244
41463
39468
24 max
3 max
24 max
3 max
24 max
3 max
24 max
3 max
175944
Scenario
Data Span
4 months
4 months
4 months
4 months
4 months
4 months
4 months
4 months
4 months
4 months
4 months
4 months
     E. Space Requirements: Tape Files

        Four tapes per year contain the U.S. surface meteorology data.  Table 3.85 shows space

        requirements for a representative tape.


                      TABLE 3.85. INPUT TAPE FILE SPACE REQUIREMENTS
File
Group
Tape
Number
File
Number
Record Length
(in bytes)
Block Size
(in bytes)
         Input
101144
Variable, 1230 max
Variable, 12000 max
V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION
    SFCUS CLCT.LNK follows:
    $ LINK   USER2$OISK:D)AO.ROMWORK]SFCUS CLCT.OBJ, -
            DIS«VAXSET:CROMOBJ.UTILIO] JULIAN.OBJ, -
            DISttVAXSET:[ROHOBJ.UTILIO]JUNIT.OBJ, -
            DISK$VAXSET:[ROMOBJ.UTILIOJADATE.OBJ

    (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION
    SFCUS CLCT.COM follows:
                                       141

-------
     S !ACCOUNTING CODE
     $ SET VERIFY
     $ ASSIGN MET27: [SCRATCH.DA01SFCUS SEPOCT880_CLCT.DAT OUTPUT
     $ ASSIGN MET27:[SCRATCH.DA01ERROR88D.DAT DUMP
     $ ASSIGN MET27:[SCRATCH.DA01PRTEST88D.DAT TMPDAT
     $ ASSIGN MLAB: SYSSPRINT
     $ TAPE SELECT TAPEDRIVE 101144
     S TAPE LOAD TAPEDRIVE 101144
     $ MOUNT/NOWRITE/FOREIGN/DENSITY=6250/BLOCICSIZE=12000 -
       TAPEDRIVE 101144 SFCTAP:
       SHOW DEV/FULL TAPEDRIVE
       SET MAGTAPE/SKIP=FILES:1 SFCTAP:
       RUN USER2$OISK:[DAO.ROMWOROSFCUS CLCT.EXE
       09. 10, 1988
       SHOW DEV/FULL TAPEDRIVE
       3REWIND SFCTAP:
       DISMOUNT SFCTAP:
       DEALLOCATE TAPEDRIVE

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A.  Main Program


         SFCUS_CLCT

      B.  Subroutines


         None


      C.  Functions


         None


      D. Block Data Files


         None


VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


      A Subroutines


         DISK$VAXSET:[ROMLffi.UTILIO]


         ADATE

      B.  Functions


         DISK$VAXSET:[ROMLIB.UTILIO]


         JULIAN
         JUNIT

 IX.   INCLUDE FILES


      None
                                          142

-------
3.24 PREPROCESSOR SFCUS_CLD_INTP

 I.    PREPROCESSOR FUNCTION

      Layered cloud data are routinely reported from surface observation sites at three-hourly intervals.
      This preprocessor copies each three-hourly cloud report to the hours immediately preceding and
      following the report SFCUS_CLD_INTP also eliminates ground-level fog and other obscuring
      phenomena from the input data.  The removal of these data prevents the potential masking of
      higher clouds, which are of greater importance in the ROM.

 II.    I/O COMPONENTS

      A.  Input Files

          1.  Standard Input Files

             None

          2.  Nonstandard Input Files

             SFCUS_CLD_INTP uses one nonstandard input file, SFCUS_MMM1T_WNDW.DAT,
             that contains  the data shown in Table 3.86.  This file is output by preprocessor
             SFCUS_WNDW. The READ and FORMAT statements for this file are listed below.

                       140 READ (UNITIN,160,END=888) YRDAY, HR, ID, ADATA,  AMT1, HT1,
                          &                      AMT2, HT2, AMT3, HT3,  BDATA
                       160 FORMAT 
      B.  Output Files

          1.  Standard Output Files

             None

          2.  Nonstandard Output Files

             SFCUS_CLD_rNTP outputs one nonstandard file, SFCUS_A/A/M1Y_WNDW.DAT, that
             contains the data shown in Table 3.87. This file is sorted by the VAX SORT utility, and
             merged with the sorted Canadian data using the VAX MERGE utility; the resultant file is
             input to preprocessor SFC_RFMT.   The WRITE and  FORMAT statements  for
             SFCUS_A/A/Myy_WNDW.DAT are listed below.

                           WRITE (UNITOUT.200) OLDTIME, OLDID, OLADAT, OLAMT1, OLHT1,
                          I                 OLAMT2,  OLHT2, OLAMT3, OLHT3, OLBDAT
                       200 FORMAT (I8.8>1X,I5.5,A22,3(1X,F4.0,F6.0),A44)

                                         143

-------
TABLE 3.86. SFCUS MMMYY WNDW.DAT PARAMETERS
Farm
No.
1
2
3
4














5
6
7
8
9
10
11






Note: n =
Farm
Name
YRDAY
HR
E>njt
ADATA
SLAT^
SLON^,
lOPAQnj
TOTCOV^










AMTl^
HTl^/,
AMTZ^
HTZ^y,
AMTS^,
HT3«^
BDATA
SLP^y,
WDIR^
WSPD^
TX/,
TD^A
STNPR^,
Data
Unit Type
IntegerM
GMT IntegerM
IntegerM
Char»22
0 N RealM
0 W RealM
% RealM
RealM










% RealM
m RealM
% RealM
m RealM
% RealM
m RealM
CharM4
mb RealM
deg RealM
m-s-i RealM
°C RealM
°C RealM
mb RealM
Description
DateasYKWMDZ)
Hourasffif
Station ID WBAN (integer) number
Data stream, comprising:
Latitude
Longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Data stream, comprising:
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
surface station number (one or more digits); h = hour; missing values are either -99. or -9999.
               144

-------
                          TABLE 3.87. SFCUS MMMYY INTP.DAT PARAMETERS
Farm
No.
1
2
3














4
5
6
7
8
9
10






Farm
Name
OLDTIME
OLDID^
OLADAT
SLAT^/,
SLON^
IOPACV,
TOTCOV^










OLAMTl^
OLHTl^,
OLAMT^
OLHTZ^,
OLAMTS^A
OLHTS^,
OLBDAT
SLP^,
WDm^,
WSPD^
Tnji
TD^y,
STNPR^/,
Data
Unit Type
IntegerM
IntegerM
Char*22
0 N RealM
0 W RealM
% RealM
RealM










% RealM
m RealM
% RealM
m RealM
% RealM
m RealM
CharM4
mb RealM
deg RealM
m-s-i RealM
°C RealM
°C RealM
mb RealM
Description
Date and time as YYMMDDHH
Station ID WBAN (integer) number
Data stream, comprising:
Latitude
Longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Data stream, comprising:
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
             Note: n •= surface station number (one or more digits); h = hour; missing values are either -99. or -9999.

III.   CONTROL CARDS

      One control card is used to input control data in the format shown below. This card cuts off the
      ultimate hour's data in the input file so that it is not written to the output file; this step eliminates
      future data redundancy. Table 3.88 defines the control card variable.

      ENDTIM
                                           145

-------
                         TABLE 3.88. CONTROL CARD VARIABLE
      Variable
       Name
Unit
Description
     ENDTIM   hour as GMT   Noninclusive ending date and time for output file as YYMMDDHH


     Example:

     88080100 for July data


IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                             1   file
                             0   files
                             1   file
                             1   file
                             3   files
             21   blocks
              0   blocks
             12   blocks
             15   blocks
             48   blocks
     B. Execution Time Requirements (Representative Values for a One-Month Data Span):

                                                       VAX 8650
                 Charged CPU time (hh:mm:ss):              00:06:00
                 Buffered I/O count:                          612
                 Direct I/O count:                           4842
                 Peak working-set size:                        507
                 Peak virtual size:                           3750

     C. Space Requirements:  Log and Print Files

        SFCUS_CLD_INT.LOG:  3 blocks
        Print Files:              None

     D. Space Requirements:  Input and Output Files

        Table 3.89 shows the input file and output file space requirements.

                           TABLE 3.89. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
SFCUSJI/MA/1YWNDW
SFCUSJtfMMlTJNTP
File
Type
Nonstd
Nonstd
Storage
(in blocks)
34146
34146
Scenario
Data Span
1 month
1 month
                                       146

-------
     E.  Space Requirements: Tape Files

         None

 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     SFCUS_CLD_INT.LNK follows:


     $ LINK   USER2$OISK:[DAO.ROMWORK]SFCUS_WNDW.OBJ,  -
            USER2$DISK:[DAO.DONLIB]IHSHFT.OBJ.  -
            DISK$VAXSET:[ROHOBJ.UTILIO]JUNIT.OBJ, -
            DISK$VAXSET:[ROMOBJ.UTILI0]AOATE.OBJ

     (end of link stream)


 VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     SFCUS_CLD_INT.COM follows:

     $ ! ACCOUNTING CODE
     $ SET VERIFY
     $ ASSIGN WORK_SCRATCH:SFCUS_JUL88 WNDW.DAT         INPUT
     $ ASSIGN UORK_SCRATCH:SFCUS_JUL88JNTP.DAT         OUTPUT
     $ RUN USER2SDISK:[DAO.ROMUORKJSFCUS_CLD_INTP.EXE
      88080100

     (end of run stream)

VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

     A.  Main Program

         SFCUS_CLDJNTP

     B.  Subroutines

         None

     C.  Functions

         IHSHFT

     D.  Block Data Files

         None

VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A.  Subroutines

         DISK$VAXSET:[ROMLIB.UTILIO]

         ADATE

     B.  Functions

         DISK$VAXSET:[ROMLIB.UTILIO]

         JUNIT

 IX.  INCLUDE FILES

     None
                                       147

-------
3.25 PREPROCESSOR SFCUSJWNDW

 I.    PREPROCESSOR FUNCTION
      This preprocessor (1) windows surface meteorological data by time and by region, (2) adds latitude
      and longitude coordinates to each record, (3) converts the time in each record from LST to GMT,
      and (4) for the ROMNET region, produces a single output file from four meteorology data input
      files.
 II.    I/O COMPONENTS
      A. Input Files
         1. Standard Input Files
            None
         2. Nonstandard Input Files
            a.  STNS_US_DEGFRAC.LIS
                STNS_US_DEGFRACLIS is a station "look-up" file that contains (1) the latitude
                and longitude coordinates for all surface  meteorology stations east of the Rocky
                Mountains, and (2) the difference, in hours, between GMT and LST. The READ and
                FORMAT statements for this file are listed below, and its parameters are shown in
                Table 3.90.
                              READ (UNITX,  120, END = 130) NEWID(K),  LAT(IC), ALAT(K), LON(K),
                             &                        ALON(K),  ISHIFT(K)
                          120 FORMAT (1X, 15.5. 14X, F5.2, A1, IX, F6.2, A1, 8X,  12)

                          TABLE 3.90. STNS US DEGFRAC.LIS PARAMETERS
Farm
No.
1
2
3
4
5
6
Pann
Name
NEWIDn
LATn
ALATn
LONn.
ALONW
ISHIFX,
Unit

o
N
o
W
h
Data
Type
Integer*4
Real*4
Char*l
Real*4
Char'l
Integer*4
Description
Station WBAN identifier
Latitude
Hemisphere indicator
Longitude
Hemisphere indicator
Hour shift, LST -+ GMT
             Note: n = surface station number

             b.  SFCVS_MMMiMMM2YYx_CLCT.DAT(x = A-D)

                 These four files contain the surface meteorology parameters, and are output by
                 SFCUS_CLCT. The READ and FORMAT statements for the files are listed below,
                 and their parameters are  shown in  Table 3.91.  Note that the Char*4 variable
                 DUMMY is used to bypass the file header information.
                                         148

-------
                       140 READ (UNITIN,  150) (DUMMY(I),  1=1,2)
                       150 FORMAT (A4)
                       160 READ (UNITIN,  180, END = 888)  DATIME, PREID, ID, ADATA
                       180 FORMAT (18.8,  1X, 13, 15.5, A86)


                    TABLE 3.91. SFCUS MMMYY CLCT.DAT PARAMETERS
Parm
No.
1
2
3
4
























Parm
Name
DATIME
PREID,,
BDn
ADATA
lOPAQ^
TOTCOV^










COVLOW^
LOWHT^/,
COVMID^/,
MIDHT^,
COVHL^,
HIHT^
SLP^,
WDIR^
WSPD^,
TA*
TD^
STNPR^,
Data
Unit Type
LST Integer*4
Char*3
Integer*4
Char*86
% Real*4
Real*4










% Real*4
m Real*4
% Real*4
m Real*4
% Real*4
m Real*4
mb Real*4
deg Real*4
m-s-1 Real*4
eC Real*4
°C Real*4
mb Real*4
Description
Date and hour as YYMMDDHH
WBAN ID prefix
WBANID
Data stream, comprising:
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
        Note: n = surface station number (one or more digits); h - hour; missing values are either -99. or -9999.


B.  Output Files


    1.   Standard Output Files


        None
                                       149

-------
2.   Nonstandard Output Files

    SFCUS_WNDW outputs one nonstandard file, SFCUS_MMMIT_WNDW.DAT, that

    contains the data shown in Table 3.92. The file is input to SFCUS_CLD_INTP.  The

    WRITE and FORMAT statements for SFCUS_MMAfYK_WNDW.DAT are listed below.

                WRITE (UNITOUT, 100) I HEAD, TOTFIL, XDAY, XTIME,  PROGNN
             100 FORMAT (1X,  IS.5,  '###", II, '  FILES WINDOWED  TO 1 ON ', A6,
               & '/', A6,  ' BY '.  A)
                WRITE (UNITOUT, 240) ZTIME, ID, STNLAT, STNLON, ADATA
             240 FORMAT (18.8, 1X,  15.5, IX, F5.2,  1X, F6.2, A86)


                TABLE 3.92. SFCUS MMMYY INTP.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
























Farm
Name
HEAD
TOTFIL
XDAY
XTIME
PROGNM
ZTIME
ID,^
STNLAT^
STNLON^,
ADATA^,
lOPAQ^/,
TOTCOV^/,










COVLOW^
LOWHT^,
COVMID^
MIDHT^,
COVHL^,
HIHT,^
SLP^
WDIR^
WSPD^
T^/,
TD^/,
STNPR^,
Data
Unit Type
Integer*4
Integer*4
Char*8
LST Char*8
Char*64
GMT Integer*4
Integer*4
0 N Real*4
0 W Real*4
Char*86
% Real*4
Real*4










% Real*4
m Real'4
% Real*4
m Real*4
% Real*4
m Real*4
mb Real*4
deg Real*4
m-s-i Real*4
°C Real*4
°C Real»4
mb Real*4
Description
No. of header lines per input file
Total number of input files
Date of program run as YYMMDD
Local time of program run as HH
Program name
Date and hour as YYMMDDHH
Station WBAN identifier
Latitude
Longitude
Data stream, comprising:
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
    Note: n = surface station number (one or more digits); h = hour; missing values are either -99. or -9999.
                                 150

-------
III.   CONTROL CARDS

     Three control cards are used in the format shown below.  Table 3.93 defines the control card
     variables.

     BEGTIM, ENDTIM
     MINLAT, MAXLAT, MINLON, LAXLON
     TOTFIL

                         TABLE 3.93. CONTROL CARD VARIABLES
Variable
Name
BEGTIM
ENDTIM
MINLAT
MAXLAT
MINLON
MAXLON
TOTFIL
Unit
GMT
GMT
c N
0 N
. w
. w

Description
Beginning date and time of output as YYMMDDHH
Ending date and time of output as YYMMDDHH
Southern latitude boundary of output
Northern latitude boundary of output
Eastern longitude boundary of output
Western longitude boundary of output
Number of input data files
      Example:

      S8070100 88080100
      25.0 55.0 60.0 110.0
      4
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A  Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
      B.  Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:
1  file
0  files
1  file
1  file
3  files
12  blocks
 0  blocks
 9  blocks
12  blocks
33  blocks
      VAX 8650
      ± 00:06:00
          629
        13731
          535
         3750
                                      151

-------
     C. Space Requirements: Log and Print Files

        SFCUS_WNDW.LOG     15 blocks
        Print Files:               None

     D. Space Requirements: Input and Output Files

        Table 3.94 shows the input file and output file space requirements.

                            TABLE 3.94. I/O FILE SPACE REQUIREMENTS
File
Group
Input





Output
File
Name
SFCUS_MA/M1MMA/2IYA_CLCr.DAT
SFCUS_MMMiA/MAf2lTB_CLCT.DAT
SFCUS_MMMiMMM2YYC CLCT.DAT
SFCUS MMMiMMM2YYD CLCT.DAT
STNS US DEGFRAC.LIS

SFCUS_Mft/AfYr_WNDW.DAT
File
Type
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd

Nonstd
Storage
(in blocks)
50661
44244
41463
39468
30
175866
34146
Scenario
Data Span
4 months
4 months
4 months
4 months


1 month
     E.  Space Requirements: Tape Files

         None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFCUS_WNDW.LNK follows:


    SLINK  USER2$DISK:[DAO.ROMWORK]SFCUS WNDU.OBJ,  -
            USER2$DISK:rDAO.ROMVOWC]IHSHFT.OBJ, -
            DISKSVAXSET:[ROMOBJ.UTILIO]JUNIT.OBJ, -
            DISKSVAXSET:[ROMOBJ.UTILIOJADATE.OBJ

    (end of link stream)


VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    SFCUS CLD INT.COM follows:
     $  (ACCOUNTING CODE
     $  SET VERIFY
     $  ASSIGN MET27:[SCRATCH.DAOJSTNS US DEGFRAC.LIS
     S  ASSIGN WORK SCRATCH:SFCUS MAYAUG88A CLCT.DAT
     *  ASSIGN WORK~SCRATCH:SFOJS~MAYAUG88B~CLCT.DAT
     $  ASSIGN WORK~SCRATCH:SFCUS~NAYAUG88C~CLCT.DAT
     $  ASSIGN WORK~SCRATCH:SFCUS~MAYAUG88D~CLCT.DAT
     $  ASSIGN UORK~SCRATCH:SFCUS_JUL88_WNDW.DAT
     $  RUN USER2$DTSK:[DAO.ROMWORK]SFCUS WNDW.EXE
       88070100  88080100
       25.0  55.0  60.0  110.0
       It

     (end of run stream)
XTABLE
INPUT1
INPUT2
INPUTS
INPUT*
OUTPUT
                                          152

-------
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED
     A.  Main Program
         SFCUS_WNDW
     B.  Subroutines
         None
     C.  Functions
         IHSHFT
     D.  Block Data Files
         None
VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED
     A.  Subroutines
         DISK$VAXSET:[ROMLffi.UTILIO]
         ADATE
     B.  Functions
         DISK$VAXSET:[ROMLffi.UTILIO]
         JUNIT
 IX.  INCLUDE FILES
     None

3.26  PREPROCESSOR SFC_VRFY

 I.   PREPROCESSOR FUNCTION

     This preprocessor replaces questionable surface meteorology parameter values with a "missing"
     flag. It compares observed magnitudes of winds, sea level pressure, air temperatures, and dew
     point temperatures against Barnes-analyzed values (Barnes, 1973) at the same points.  If an
     observed parameter departs from the Barnes-analyzed value by greater than a margin that you
     define in the preprocessor's control card, then the observed parameter is replaced with the "miss-
     ing" flag.
                                       153

-------
II.    I/O COMPONENTS


      A. Input Files


         1.  Standard Input Files


             None


         2.  Nonstandard Input Files


             SFC_VRFY uses one nonstandard input file, SFC_MMM1Y_RFMT.DAT, that contains

             the data shown in Table 3.95. This file is output by preprocessor SFC_RFMT, and its

             READ and FORMAT statements are listed below.


                         40 READ (UNITIN, 50) HUM
                         50 FORMAT (14.4)
                            READ (UNITIN, 60) DUMMY
                         60 FORMAT (A8)

                            READ (UNITIN, 205, END =  3) IY,  IM, ID, IH, NSTA
                        205 FORMAT (412.2, 18)

                            READ (UNITIN, 206, END =  999) UBAN(N), SLAT(N), SLON(N),
                             &   OPQSKY(N), TOTSKY(N), COVI(N), NGT1(N), COV2CN), HGT2(N),
                             &   COV3(N), HGT3(N), SLVP(N), UDIR(N), WSPD(N),  TEMP(N),
                             &   DEUP(N), STAP(N)
                        206 FORMAT (15.5, F6.2, F7.2, F5.0,  F4.0, 3(F5.0, F6.0),  F8.1,
                  &                 4F7.1, F8.1)


      B. Output Files


         1.  Standard Output Files


             None


         2.  Nonstandard Output Files


             SFC_VRFY outputs one nonstandard file, SFCJWMM1T_VRFY.DAT, that contains the

             data shown in Table 3.%.  This file is in the final SURMET1 format, and is input to

             processors P03G, P05G, P08G, P09G, P16G, P19G, and P27G.  The WRITE and FOR-

             MAT statements for SFC_MA/Afyy_VRFY.DAT are listed below.


                          WRITE (UNITOUT, 205) IY, IM, ID, IN,  NSTA
                      205 FORMAT (412.2, 18)
                          WRITE (UNITOUT, 206) WBAN(N), SLAT(N), SLON(N), OPQSKY(N),
                         &      TOTSKY(N), COVI(N), HGTUN), COV2(N), HGT2(N),  COV3(N),
                         &      HGT3(N), SLVP(N), UOIR(N), USPD(N), TEMP(N), DEUP(N),
                         &      STAP(N)
                      206 FORMAT (15.5, F6.2,  F7.2, F5.0, F4.0, 3(F5.0, F6.0). F8.1,
                         &       4F7.1, F8.1)
                                           154

-------
            TABLE 3.95. SFCUS MMMYY RFMT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8a
8b
9
10
11
12










13
14
15
16
17
18
19
20
21
22
23
24
Farm
Name
NUM
DUMMY
IY
IM
ID
m
NSTA
WBAN^
\IL7l> AIM .
D*»l^»/f
SLAT^
SLON^,
OPQSKY^
TOTSKY^/,










COVl^
HGTl^
COV2^/,
HGTZ^
covs^
HGT3^
SLVP^
WDIR^,
WSPD,^
TEMP^A
DEWP^
STAP^,
Data
Unit Type
Integer*4
Char*8
Integer*4
Integer*4
Integer*4
GMT Integer*4
Integer*4
Char*4
Integer*4
0 N Real*4
0 W Real*4
% Real*4
Real*4










% Real*4
m Real*4
% Real*4
m Real*4
% Real*4
m Real*4
mb Real*4
deg Real*4
m-s-1 Real*4
°C Real*4
°C RealM
mb Real*4
Description
Number of header lines
Dummy variable
Year as YY
Month as MM
Daya&DD
Hour as HH
Number of reports at time IH
Station ID non-WBAN format
Station WBAN identifier
Latitude
Longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
Note: n = surface station number (one or more digits); h = hour; missing values are either-99. or -9999.
                              155

-------
                           TABLE 3.96. SFC MMMYY VRFY.DAT PARAMETERS
Farm
No.
1
2 .
3
4
5
6a
6b
7
8
9
10










11
12
13
14
15
16
17
18
19
20
21
22
Farm
Name
IY
IM
ID
IH
NSTA
WBAN^
WBAN^
SLAT^
SLON^y,
OPQSKY^,
TOTSKY^,










AMTl^y,
HGTl^
AMTZ^/,
HGT2n^i
AMT3^,
HGT3^/,
SLVP^.
WDIR^,
WSPD^
TEMP^A
DEWP^
STAP^
Data
Unit Type
Integer*4
Integer*4
Integer*4
GMT Integer*4
Integer*4
Char*4
Integer*4
0 N Real*4
0 W Real*4
% Real*4
Real*4










% Real*4
m Real*4
% Real*4
m Real*4
% Real*4
m Real*4
mb Real*4
deg Real*4
m-s-i Real*4
°C Real*4
°C Real*4
mb Real*4
Description
Year as IT
Month as MM
DayasDD
Hour as HH
Number of reports at time IH
Station ID non-WBAN format
Station WBAN identifier
Latitude
Longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
              Note: n «= surface station number (one or more digits); h = hour; missing values are either -99. or -9999.

III.   CONTROL CARDS

      One control card is used to input control data in the format shown below.  This card defines the
      margin of difference that the program permits between the observed values and the Barnes-
      analyzed values before it replaces data with a "missing" flag.  Table 3.97 defines the control card
      variables.
                                            156

-------
     SLVPDF, WINDDF, TEMPDF, DEWPDF

                         TABLE 3.97. CONTROL CARD VARIABLES
Variable
Name
SLVPDF
WINDDF
TEMPDF
DEWPDF
Example:
3.0 4.0 4.0 4.0
Unit
mb
m-s-1
°C
°C


Description
Deviation margin for sea level pressure
Deviation margin for winds
Deviation margin for air temperature
Deviation margin for dew point temperature


IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A. Memory Requirements (1 block = 512 bytes)

                FORTRAN source files:
                FORTRAN INCLUDE files:
                Object files:
                Executable file:
                 1   file
                 0   files
                 1   file
                 1   file
                 3   files
42  blocks
 0  blocks
21  blocks
21  blocks
82  blocks
     B. Execution Time Requirements (Representative Values for a One-Month Data Span):

                                                       VAX 8650
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C. Space Requirements: Log and Print Files
                        ± 01:00:00
                          1193
                          8205
                           703
                          3755
        SFC_VRFY.LOG
        Print Files:
261 blocks
None
     D. Space Requirements: Input and Output Files

        Table 3.98 shows the input file and output file space requirements.
                                      157

-------
                          TABLE 3.98. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output

SFC
SFC
File
Name
MMMYY_KFMT
MMMYY_VRFY
File
Type
Nonstd
Nonstd
Storage
(in blocks)
46278
46278
Scenario
Data Span
1 month
1 month
     E. Space Requirements: Tape Files

        None


 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFCUS_CLD_INT.LNK follows:


    $ LINK   USER2$DISK:[DAO.ROMWORKJSFC VRFY.OBJ, -
            DISKSVAXSET: [ROHOBJ.UTILIO]JUNIT.OBJ

    (end of link stream)


VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    SFCUS_CLD_INT.COM follows:


    S !ACCOUNTING CODE
    $ SET VERIFY
    $ ASSIGN WORK SCRATCH:SFC JUL88 RFNT.OAT          SFCIN
    $ ASSIGN HET27:[SCRATCH.DAOJSFC~JUL88 VRFY.DAT     SFCOUT
    $ RUN USER2$DISK:[DAO.ROMUORK]SFC VRFY.EXE
      3.0, 4.0, 4.0, 4.0

    (end of run stream)


VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A. Main Program


        SFC_VRFY


     B. Subroutines


        None


     C. Functions


        None
                                       158

-------
     D. Block Data Files

        None

VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A Subroutines

        None

     B. Functions

        DISK$VAXSET:[ROMLIB.UTILIO]

        JUNIT

 IX.  INCLUDE FILES

     None

3.27 PREPROCESSOR STAT_RFMT

 I.   PREPROCESSOR FUNCTION

     This preprocessor reformats the statistical data that are contained in BUOY_STAT.LOG into an
     intermediate form from which preprocessor BUOY_RFMT produces a SURMETl-type format.

 II.   I/O COMPONENTS

     A. Input Files

        1.  Standard Input Files

            None

        2.  Nonstandard Input Files

            One nonstandard file, BUOY_STAT.LOG, that contains the data shown in Table 3.99 is
            required as input. The file is output by preprocessor BUOY_STAT. The READ and
            FORMAT statements for the file are listed below.
                                     159

-------
                       READ (13,  120, END - 999) DUMMY
                    120 FORMAT (A80)

                       READ (DUMMY,  UO) BUOY ID, LAT, LON,  I MOW
                    140 FORMAT (30X.  15, 2X, F5.2, IX, F6.2, 10X, 12)

                       READ (13,  200) TEMP, IREP
                       READ (13,  200) SST, IREP
                       READ (13,  200) DELT, IREP
                    200 FORMAT (11X,  F7.1, 10X,  14)
                        TABLE 3.99. BUOY STAT.LOG PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
Farm
Name
DUMMY
BUOYIDW
LATn
LONW
IMONW
TEMP*
SSTn
DELTn
IREP,,
Unit


0 N
o W

CC
CC
°c

Data
Type
Char*80
Integer*4
Real*4
Real*4
Integer*4
Real*4
Real*4
Real*4
Integer*4
Description
Dummy record
Buoy identifier in WBAN format
Latitude
Longitude
Month as MM
Averaged air temperature
Averaged sea surface temperature
Averaged ((sea surface temp.) - (air temp.))
Number of reports averaged
         Note: n = surface station number (one or more digits); missing values are either -99. or -9999.


B.  Output Files


    1.  Standard Output Files


       None


    2.  Nonstandard Output Files


       STAT_RFMT outputs one nonstandard file, BUOY_STATJT.DAT, that contains the

       data shown in Table 3.100. The file is input to preprocessor BUOY_RFMT. The WRITE

       and FORMAT statements are listed below.


                     WRITE (14, 300) ITIME, BUOYID.  LAT, LON,  ADATA. BOATA,
                   &              TEMP, SST, DELT
                 300  FORMAT (18,  1X, IS,  IX, F5.2, IX, F6.2, A44, A20, 2F7.1,
                   I       1X,  F7.1)
                                      160

-------
                          TABLE 3.100. BUOY STATIT.DAT PARAMETERS
Farm Farm
No. Name
1 ITIME
2 BUOYTDn
3 LATn
4 LONn
5 ADATAn
6 BDATA,,
7 TEMPn
8 SSTW
9 DELTn
Unit
GMT

0 N
° AX/


°c
°c
"C
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Char*44
Char*20
Real*4
Real*4
Real*4
Description
First hour of the month as YYMMDDHH
Buoy identifier in WBAN format
Latitude
Longitude
Data stream representing cloud data
Data stream representing pressure and wind data
Monthly average air temperature
Monthly average sea surface temperature
Monthly average (sea surface temp.) - (air temp.)
             Note: n = surface station number (one or more digits); missing values are either -99. or -9999.

III.   CONTROL CARDS

     One control card is used in the format shown below.  Table 3.101 defines the control card variable.

     IYR

                          TABLE 3.101. CONTROL CARD VARIABLE
       Variable
        Name
Unit
 Description
         IYR
                           Year as IT
     Example:

     88


 IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A.  Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                       1   file
                       0   files
                       1
                       1
                       3
file
file
files
 6  blocks
 0  blocks
 6  blocks
_9  blocks
21  blocks
                                       161

-------
    B.  Execution Time Requirements:

                                                        VAX 8650
                 Charged CPU time (hh:mm:ss):             ± 00:00:10
                 Buffered I/O count:                           195
                 Direct I/O count:                             278
                 Peak working-set size:                         603
                 Peak virtual size:                            3755

    C.  Space Requirements: Log and Print Files

        STAT_RFMT.LOG       3 blocks
        Print Files:               None

    D.  Space Requirements: Input and Output Files

        Table 3.102 shows the input file and output file space requirements.

                          TABLE 3.102. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
BUOY_STAT.LOG
BUOY_AVGyy.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
±1300
±100
Scenario
Data Span
7 months
7 months
     E. Space Requirements: Tape Files

        None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    STAT_RFMT.LNK follows:

    $ I ACCOUNTING CODE
    $ LINK          USER2$OISK:[DAO.BUOY]STAT_RFMT.OBJ

    (end of link stream)

VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    STAT_RFMT.COM follows:


    $ ! ACCOUNTING CODE
    $ SET VERIFY
    $ ASSIGN NET27: [SCRATCH.DAO]BUOY STAT.LOG                INPUT
    $ ASSIGN MET27:[SCRATCH.DAOJBUOY~STAT88.DAT              OUTPUT
    S RUN USER2SDISK:[DAO.BUOY]STAT RFMT.EXE
      88

    (end of run stream)
                                        162

-------
VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED
     A. Main Program
        STAT_RFMT
     B. Subroutines
        None
     C. Functions
        None
     D. Block Data Files
        None
VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED
     A Subroutines
        None
     B. Functions
        None
 IX. INCLUDE FILES
    None

3.28 PREPROCESSOR XTRACTLL
 I.   PREPROCESSOR FUNCTION
     This preprocessor spatially windows buoy data.
 II.   I/O COMPONENTS
     A Input Files
        1.  Standard Input Files
           None
                                   163

-------
   2.   Nonstandard Input Files


       One nonstandard file, BUOYYKDAT, that contains the data shown in Table 3.103 is

       required as input. The file is output by preprocessor OFFTAPE. The READ and FOR-

       MAT statements for the file are listed below.
                     1059
                     1103
                     1105


                     1107





                     1009


                     1011

                     READ
                     READ
READ (IDEV, 1103.  IOSTAT=IOST) BUFF
FORMAT  )

READ (BUFF(10:14), 1105, ERR=2001  ) BUOYID
FORMAT  (A5)

READ (BUFF<17:20), 1107, ERR=2001  ) YEAR
FORMAT  (14)
READ (BUFF(21:22>,
READ (BUFF(23:24),
READ (BUFF(25:26),
READ (BUFF(29:31),
FORMAT (F4.0)
1107, ERR=2001 } MONTH
1107, ERR=2001 ) DAY
1107, ERR=2001 ) HOUR
1009, ERR=2001 ) LAT
READ (BUFF(32:32), 1011) ALAT
FORMAT (A1)

(BUFF(33:36), 1009, ERR=2001 ) LOW

-------
        2.  Nonstandard Output Files

           XTRACTLL  produces one nonstandard file, XTR_BUOYYKDAT, that contains the
           parameter shown in Table 3.104. The file is input to preprocessor BUOY_WNDW. The
           WRITE and FORMAT statements for this file are listed below.
                      WRITECOUTDEV, 1005,  IOSTAT=IOST) BUFF
                  1005 FORMAT(AIOO)
                          TABLE 3.104. XTR_BUOY1Y.DAT PARAMETER
             Farm   Farm                 Data
             No.    Name     Unit       Type                Description

              1     BUFF              Char* 100             Buoy data record
III.   CONTROL CARDS

     Two control cards are used in the format shown below. Table 3.105 defines the control, card vari-
     ables.

     CLABEL
     . NELAT, MELON, S WLAT, S WLON

                        TABLE 3.105. CONTROL CARD VARIABLES
Variable
Name
CLABEL
NELAT
MELON
SWLAT
SWLON

Unit

•N
"W
'N
°W

Description
Descriptive label of the following control card
Northern latitude boundary
Eastern longitude boundary
Southern latitude boundary
Western longitude boundary
     Example:
     NELAT  NELON  SWLAT  SWLON
     50.0     64.0     20.0      99.0
                                      165

-------
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A Memory Requirements (1 block = 512 bytes)

                FORTRAN source files:
                FORTRAN INCLUDE files:
                Object files:
                Executable file:
     B. Execution Time Requirements (per file):
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C. Space Requirements: Log and Print Files
1
2
1
1
5
file
files
file
file
files





9
6
6
15
36
blocks
blocks
blocks
blocks
blocks
VAX 8650





+




00:05:00
847
10630
597
3660










        XTRACTLL.LOG
        Print Files:
15 blocks
None
     D. Space Requirements: Input and Output Files

        Table 3.106 shows the input and output file space requirements.

                          TABLE 3.106. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
BUOY1Y.DAT
XTR_BUOY1Y.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
±180000
±80000
Scenario
Data Span
lyear
lyear
     E.  Space Requirements: Tape Files

         None


 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     XTRACTLL.LNK follows:
                                      166

-------
       ! ACCOUNTING CODE
       !  link in USER2»ISK:[DAO.BUOY]XTRACTLL.LNK
       ASSIGN / USER USER2$DISK:[DAO.BUOY]XTRACTLL.OBJ           A01
       ASSIGN / USER USER2SDISK:[DAO.BUOY]RDBUOY.OBJ             A02
       ASSIGN / USER USER2SDISK:[DAO.BUOY]YULIAN.OBJ             A03
       ASSIGN / USER USER2SDISK:D>AO.BUOY]WINDOU.OBJ             A04
       ASSIGN / USER DISKSVAXSET:[ROMOBJ.UTIL10]J FILE2.06J       A05
       ASSIGN / USER DISKSVAXSET:[ROMOBJ.UTILIO]JUNIT.OBJ        A06
       ASSIGN / USER OISKSVAXSET:[ROMOBJ.UTILIO]IOCL.OBJ         A07
       LINK -
       / EXECUTABLE - USER2$DISK:[DAO.BUOY1XTRACTLL.EXE -
       A01, -
       A02, -
       A03, -
       A04, -
       A05. -
       A06, -
       A07

     (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     XTRACTLL.COM follows:


       !  ACCOUNTING CODE
       SET VERIFY
       !  RUN STREAM in USER2SDISK:[DAO.BUOYJXTRACTLL.COM
       ASSIGN MET27:[SCRATCH.DAO]BUOY88.DAT            RAUFILE
       ASSIGN MET27:[SCRATCH.DAO]XTR BUOY88.DAT        XTRFILE
       RUN USER2SDISK:[DAO.BUOY]XTRACTLL.EXE
     NELAT NELON SULAT SULON
     50.0  64.0  20.0  99.0

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A. Main Program


         XTRACTLL


      B.  Subroutines


         None



      C.  Functions


         USER2$DISK;pAO.BUOY]


         RDBUOY
         YULIAN
         WINDOW


      D. Block Data Files


         None
                                           167

-------
VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A. Subroutines


        None


     B. Functions


        DISK$VAXSET:[ROMLIB.UTILIO]


        IOCL
        JFILE2
        JUNIT


 IX.  INCLUDE FILES


     USER2SDISK:pAO.BUOY]

     LLWBUF
     RECBUF
                                   168

-------
                                       SECTION 4


                  THE  ANTHROPOGENIC  EMISSIONS DATABASE
The anthropogenic emissions data that we use in the Regional Oridant Model (ROM) are derived from and
are a part of the 1985 NAPAP (National Acid Precipitation Assessment Program) Modelers' Emissions
Inventory Version 2. The 1985 NAPAP emissions inventory coverage is shown in Table 4.1.

	TABLE 4.1. 1985 NAPAP ANTHROPOGENIC EMISSIONS INVENTORY COVERAGE	

         Coverage                                     Description

Anthropogenic point sources  Stationary sources emitting >100 tons of criteria pollutants in 1985
Anthropogenic area sources   County-level area sources, stationary sources emitting <100 tons of criteria
                          pollutants in 1985
Natural area sources         Emissions of sulfur and nitrogen compounds, hydrocarbon species,  and
                          ammonia from biogenic and geophysical processes; TSP from natural sources.
Geographic domain         The 48 contiguous states; Canada south of 60 °N and  east of 125 ° W.

                          Annual Emissions Inventory      Regional Modeling Emissions Inventory

Pollutants                 S02, SO4, CO, TSP, HCL,  HF,   SO2, SO4, CO,  TSP, HCL, HF, NO,
                          NO,, NHa, VOC, THC           NO* NH3, VOC, THC, 30 VOC species
                                                        classes
Temporal resolution         Annual                        Hourly emissions  values  for  typical
                                                        weekday, Saturday, and Sunday for all
                                                        four seasons.
Spatial resolution           Latitude and longitude coordi-   Point and area sources assigned to grid
                          nates  for  point sources; area   cells of Ve0 latitude by V/ longitude
                          sources at the county level.        («19 x 19 km).
Source: Modica et al., 1989

Although one of the primary functions of the 1985 NAPAP Modelers' Emissions Inventory Version 2 is to
support regional- and national-scale acid deposition modeling efforts, these same data are used in the ROM
to model ozone concentrations. The Flexible Regional Emissions Data System (FREDS) processes U.S. and
                                            169

-------
Canadian point- and area-source data from 1985 annual inventories into a format suitable for the ROM,
providing CO, NO*, and VOC data.1  Note that area-source emissions are comprised of nonmobile and
mobile sources of pollutants.

    4.1 AN OVERVIEW OF FREDS

    FREDS consists of seven primary modules written in SAS and FORTRAN; these are outlined in Sections
    4.1.1 to 4.1.7.  FREDS extracts data from the annual inventories, allocates temporal and spatial factors,
    speciates selected pollutants, converts data to modeling format, and performs quality control checks at
    various stages of processing. Control Options Files are associated with each module; using these, we can
    specify the parameters we want to retrieve. We can also vary the allocation methodology or speciation
    chemistry by changing or replacing one or more of the allocation factor files. This design flexibility allows
    FREDS to be used for processing emission inventories for a wide variety of applications.  Point- and
    area-source data are processed separately. Figure 4.1 shows a simplified flowchart of FREDS processing
    for the ROM.2

       4.1.1 The Hydrocarbon Preprocessor

       The first module is the Hydrocarbon Preprocessor (HCPREP). The HCPREP is run on the prelimi-
       nary data, and can interconvert VOC (volatile organic compounds) and THC (total hydrocarbons).
       The ROM uses the nonmethane VOC emissions output by HCPREP. HCPREP also compensates
       for the missing mass of aldehydes in emissions estimates.

       4.1.2 The Model Data Extraction Module

       The second module in FREDS is the Model Data Extraction Module (MDEM). MDEM reformats
       and reduces the U.S. and Canadian point- and area-source emissions data into the FREDS processing
       format.
 1. Further information on, or permission to access, the NAPAP database and the FREDS can be obtained from the Emissions and
   Modeling Branch of the Air and Energy Engineering Research Laboratory, U.S. Environmental Protection Agency, MD-62, Research
   Triangle Park, NC 27711. (919)541-2612.
 2. One difference between FREDS processing for the ROM and acid deposition models is that the ROM does not require TSP as input.

                                               170

-------
         1985 Annual Point Source Emissions
                                                           1985 Annual Area Source Emissions
                               i ™    a^^fc—     —i     *^^^m-~    i
 Hydrocarbon adjustment factors—^|  Hydrocarbon Preprocessor (HCPREP) |
                          _^_^™
                              1985 NAPAP Annual Emissions Inventory
                                Model Data Extraction Module (MDEM)|
                                               P
 Speclation factors: hydrocarbons. NOx	^{Spedatlon Module (SM)
 Spatial allocation factors-
                                             I
Spatial Allocation Module (SAM)
  Temporal allocation factors-
                                 Temporal Allocation Module (TAM)
                               [    Model Input Processor (MIP)    |
                                                                                1
                                       Diagnostic/QC reports
                                     FREDS intermediate files
              1985 NAPAP Regional Modeling Emissions Inventory (Modeler's Tapes)
  Source: Modica et «!.. 1989
               Figure 4.1. Simplified flowchart of FREDS processing for the ROM.

4.1.3 The Speciation Module

After HCPREP and MDEM have been executed, three more modules must be run; these split the
annual emissions data into discrete pollutant species, grid cells, and time periods.

The speciation module splits NOX into NO (expressed as weight of NO2) and NO2 and splits the
VOCs into specific hydrocarbon classes such as olefins, paraffins, toluene, xylene, ethene (ethylene),
formaldehyde, isoprene, higher aldehydes, and nonreactive hydrocarbons.

4.1.4 The Spatial Allocation Module

The Spatial Allocation Module (SAM) allocates emissions data into the ROM grid cells (*/6 degree
latitude by !/4 degree longitude). For area sources, emissions are merged with spatial allocation fac-
tors to disaggregate county level emissions to individual grid cells. The spatial allocation factors are
based on Landsat and census  data, and take the  form of fractional multipliers.   Point-source
emissions are assigned to grid cells based on latitude and longitude or UTM coordinates.
                                         171

-------
   4.1.5 The Temporal Allocation Module

   The Temporal Allocation Module (TAM) resolves the annual emissions into 12 types of days (week-
   days, Saturday, and Sunday for each of 4 seasons) and 288 hours (24 hours for each of the 12 types of
   days).  Point-source factors are usually based on plant operating data or on the type of pollutant
   source. Area-source factors are based on various sources, e.g. climatology (as it affects residential
   heating combustion), U.S. Department of Transportation records (related to auto emissions), EPA
   Industrial Fuel use guidelines, etc. For both point and area sources, if no temporal data of any kind
   are available, uniform factors are assigned to divide the annual emissions equally between seasons,
   days, and hours.

   4.1.6 The Model Input Preprocessor

   The Model Input  Preprocessor (MIP) accepts fully resolved, area-source or point-source files that
   include the appropriate spatial, temporal, and speciation factors. The MIP concatenates input files if
   necessary, and performs the appropriate sorts to yield a complete point- or area-source modeler's file
   in SAS format The SAS modeler's tapes are converted to standard ASCII or EBCDIC format prior
   to input to the ROM.

   4.1.7 The Quality Control Module

   In addition to the diagnostic checks performed within each of the FREDS modules, data sets at all
   stages  of FREDS  processing are examined for consistency by the Quality Control Module (QCM).
   The QCM accepts any SAS-formatted emissions file and compares emissions totals with values cal-
   culated from an earlier stage of FREDS to ensure that pollutant data are not accidentally altered
   during the apportioning process.  The QCM checks national and state level  sums for ten major
   pollutants, as well as national emissions totals for up to 20 user selected source category codes. The
   QCM also checks  the temporal allocation factors to ensure that they sum to unity.

4.2 FREDS DATA OUTPUT

The  data  tapes  that  are output from FREDS  are  input into  the  ROM emissions preprocessors
(Section 5).
                                          172

-------
                                         SECTION 5
              ANTHROPOGENIC EMISSIONS DATA  PREPROCESSING
The National Acid Precipitation Assessment Program (NAPAP) raw emissions data for 1980 and 1985, as
received by the EPA on magnetic tapes from Alliance Technologies, Inc., require preprocessing prior to input
to the ROM processor network.  Preprocessing involves spatial and temporal allocations of emissions data
from one of three sources: (1) area (or nonmobile), (2) mobile, and (3) point.

The area- and mobile-source data are already in a format of hourly data (GMT) for three day typesi (Saturday,
Sunday, weekday) for each of the four seasons (winter, spring, summer, fall). Thus, there are three data files
for each season, each containing 24 hours of data.

The point-source data consist of one file containing annual data and seasonal, daily, and hourly allocation
factors. Allocation factors are applied to obtain an hourly-data format that is identical to the format of area-
and mobile-source data. These data also contain species allocation factors to be applied to  (1) NOX, to cal-
culate NO and NO2 concentrations, and (2) total hydrocarbons, to calculate the individual VOC hydrocarbon
concentrations (e.g., OLE and PAR).

Sections 5.1 to 5.4 describe how the raw anthropogenic emissions data are manipulated and checked prior to
input to the ROM processor network. The anthropogenic emissions preprocessors, as used  for the NAPAP
1985 and 2005 data, are alphabetically documented starting in Section 5.5; a chart showing the flow of pro-
grams is shown in Figure 5.1.  Section 5.16 is pertinent only if you receive data directly from the FREDS
database.
 1.  There is an assumption that all Saturdays, Sundays, or weekdays within a season are identical.

                                              173

-------
           POINT
AREA
           STAGE 0
                       STAGE 1
                                  STAGE 2
                                             STAGES
                                                        STAGE 4
                                                                   STAGES
Figure 5.1.   Flow of programs for emissions input data.  VAX-specific programs are shown in broken-line
            boxes.
                                               174

-------
   5.1 DATA MERGING AND SORTING

   The first step in emissions preprocessing is to copy the raw data tapes to VAX system tapes.  This is
   accomplished using the tape-to-tape copy program COPYTAPE.  The data on the tapes usually cover a
   larger area than the particular region to be modeled, so only the data within the specified region require
   extraction to the disk. This procedure is designated as "windowing" the necessary data for a given region,
   and is accomplished by the programs WINDOWPT, WINDOWAR, and WINDOWMB. WINDOWPT is
   designed to run on the annual point-source data, WINDOWAR on the area-source data, and WIN-
   DOWMB on the mobile-source data. Depending on the record length and block size of the data on tape,
   these programs may require slight modifications (Le., changing the RECL and BLKSZE parameters).

   1985 and 2005 Canadian and United States data are received as separate data sets, so the two sets require
   merging.2 This is done for the three data  types, using three different programs:
             preprocessor PTMERG combines the Canadian and U.S. annual point-source emissions into
             one file;
         •   preprocessor MBMERG does  the same for the mobile-source emissions; and
             preprocessor ARMERG combines the Canadian  and U.S. area-source emissions data, and
             sums those grid cells that overlap both countries.3

   The point-source and mobile-source emissions are sorted after the merge, using the VAX system's SORT
   utility:
         •   mobile-source data are sorted by county identification code and hour,
             point-source data are sorted by stack identification (state/county/plant/point) code.

   Area-source data are sorted by hour, column, and row during the execution of preprocessor ARMERG.
   All sorting facilitates processing during later stages. Section 5.4 contains a table that shows the sequence
   of preprocessing, sorting, and merging for each of the source types.

   5.2 EMISSIONS INVENTORY REDUCTION

   The ROM requires NO*, VOC, and CO as emissions data input The emissions inventory contains vari-
   ous other unneeded species. To reduce file sizes, these extraneous species are eliminated from the emis-
2.   For the 1980 emissions, no merging is necessary; only sorting is required. Also, there are no separate mobile-source emissions for
    1980, because they are incorporated into the area emissions.
3.   Area-source emissions data reported by both the U.S. and Canada stop at the international border.  Thus, summing of the two
    nations' data is necessary to obtain the correct area-source emissions for grid cells that are bisected by the border.

                                              175

-------
sions data files. The species remaining are NO, NO2, CO, ALD2, ETH, FORM, ISOP, OLE, PAR, TOL,
XYL, NONR, METH, and MTHL. Abbreviations and descriptions of all chemical species used in the
ROM are defined in Table 5.1.

                           TABLE 5.1. ROM CHEMICAL SPECIES
Symbol
ALD2
C203
CO
CRES
CRO
ETH
FORM
H202
HNO2
HN03
H02
ISOP
MGLY
N2O5
NO
N02
NO3
O
Description
High MW aldehydes
Peroxyacetyl radical
Carbon monoxide
Cresol and high MW phenols
Methylphenoxy radical
Ethene
Formaldehyde
Hydrogen peroxide
Nitrous acid
Nitric acid
Hydroperoxy radical
Isoprene structures
Methylglyoxal
Dinitrogen pentoxide
Nitric oxide
Nitrogen dioxide
Nitrogen trioxide
O3p atom
Symbol
O1D
O3
OH
OLE
OPEN

PAN
PAR
PNA
ROR
TO2
TOL
X02
XO2N
XYL
MTHL
NONR
TRAC
Description
QiD atom
Ozone
Hydroxyl radical
Olefinic carbon bond
High MW aromatic oxidation
ring fragment
Peroxyacetyl nitrate
Paraffinic carbon bond
Peroxynitric acid
Secondary organic oxy radical
Toluene-hydroxyl radical adduct
Toluene
NO to NO2 reaction
NO to nitrate (NOJ) reaction
Xylene
Methanol
Nonreactive hydrocarbons
Tracer species
      •   The reduction in the number of species is accomplished for the mobile- and area-sources by
          the programs MBEXTR (mobile extractions) and AREXTR (area extractions). The program
          AREXTR is not required for 1985 or 2005 data (it is run only if using 1980 area source data),
          since the 1985 and 2005 area-source data are already in a reduced form.
      •   The extraneous point-source species are eliminated by the program PTEXTR (goint extrac-
          tions).  Program PTEXTR also removes the temporal allocation factors for the seasons not
          currently modeled by the ROM (i.e., winter, spring, and fall), and calculates the allocations for
          the total hydrocarbon and NOX species. In addition to these tasks, PTEXTR removes the stack
          parameters  (stack height, plume height, latitude, longitude, etc.) from each individual record
          and places these parameters in a separate file. Again, this is done to aid in later processing.

 This completes the raw emissions preprocessing stage.  At this point, the area- and mobile-source emis-
 sions are hour-explicit  day-type data (e.g., weekday, 17:00 LST, summer). The point-source emissions are
 annual data with seasonal, daily, and hourly allocation factors for each species.  For example, a point
 source may have an annual SO2 emission of 64.42 tons, with a summer factor of 0.25, a weekday factor of
 0.011, and an hourly factor of 0.042. The hourly data that are input to ROM consist of the product of
 these factors and the annual emission, i.e., (64.42 x 0.25 x 0.011 x 0.042).
                                          176

-------
5.3 QUALITY CONTROL

Anthropogenic emissions processing involves several quality control preprocessors that are used to iden-
tify erroneous or missing data.  Most of this processing is performed on the point-source emissions
because these are where the majority of errors are likely to occur. We thoroughly check the annual point
source data for  (1) missing stack parameters (stack height, temperature, diameter, flow rate, etc.), (2)
those parameters that appear unrealistic (e.g., a plume rise of 10,000 feet or flow rate of 300 m-s-1), and
(3) erroneous emissions data values; if one point far exceeds all of the points in the region, it is likely that
this point is in error, points that are high in NO* emissions should not generally be high in VOC emis-
sions.  The quality control programs for point-source data (FINDCT, FTNDPT, QAOUTP, QASRCE,
QASTACK, and TOPEMI) are used to catch these types of errors.

The area- and mobile-source emissions data errors are usually found as mistakes in the emissions magni-
tude, or as spatial or temporal allocation errors. Color tiling of these data on an hourly basis highlights
inconsistencies in these areas; e.g., all of Vermont registering emissions that are ten times higher than
surrounding states implies a spatial allocation error, while higher emissions in a cell at 2 a.m. than at
midday reveals a temporal allocation error.

5.4 SUMMARY FOR 1985 AND 2005 NAPAP DATA

Table 5.2 summarizes the flow of programs that read U.S. and Canadian anthropogenic emissions data,
perform quality control procedures on the point-source data, and produce the final anthropogenic emis-
sions data that are input to the ROM.  Note that preprocessor AREXTR is not required for 1985 and
2005 data.
                                           177

-------
TABLE 5.2. PREPROCESSOR PROGRAMS FOR ANTHROPOGENIC EMISSIONS DATA
United States Data
PROGRAM INPUT
(.FOR)
COPYTAPE
WINDOWPT
WINDOWAR


WINDOWMB


































OUTPUT COMMENTS

MAGNEHCTAPE VAX SYSTEM TAPE tape backup
VAX SYSTEM TAPE USPODYTZ.RAW
VAX SYSTEM TAPE USARSAZ.RAW
USARSUZ.RAW
USARWKZJtAW
VAX SYSTEM TAPE USMBSAZ.RAW
USMBSUZ.RAW
USMBWKZ.RAW
PROGRAM
(.FOR)
PTMERG

SORT
FINDCT
FINDPT
QAOUTP
QASRCE
QASTACK
TOPEMI
ARMERG





MBMERG





SORT


PTEXTR

MBEXTR


INPUT

USPOINTZ.RAW;
CAPOINTZ.RAW
POINTZ.RAW


POINTZ.DAT



USARSAZ.RAW
USARSUZ.RAW
USARWKZ.RAW
CAARSAZ.RAW
CAARSUZ.RAW
CAARWKZ.RAW
USMBSAZ.RAW
USMBSUZ.RAW
USMBWKZ.RAW
CAMBSAZ.RAW
CAMBSUZ.RAW
CAMBWKZ.RAW
MBSAZ.RAW
MBSUZ.RAW
MBWKZ.RAW
POINTZ.DAT

MBSAZ.DAT
MBSUZJ5AT
MBWKZ.DAT
Canadian Data
PROGRAM INPUT OUTPUT COMMENTS
(.FOR)
COPYTAPE MAGNETIC TAPE VAX SYSTEM TAPE tape backup
WINDOWPT VAX SYSTEM TAPE CAPOINTZ.RAW
WINDOWAR VAX SYSTEM TAPE CAARSAZ.RAW
CAARSUZ.RAW
CAARWKZ.RAW
WINDOWMB VAX SYSTEM TAPE CAMBSAZ.RAW
CAMBSUZ.RAW
CAMBWK2.RAW
OUTPUT COMMENTS

POINTZ.RAW

POINTZ.DAT VAX system sort


various reports optional quality
control



ARSAZ.DAT
ARSUZ.DAT also sorts data
ARWKZ.DAT



MBSAZ.RAW
MBSUZ.RAW
MBWKZ.RAW


MBSAZ.DAT VAX system sort
MBSUZ.DAT
MBWKZ.DAT
SEANPTZ.CS» x is variable
STACKS-CSr
MOBLSAZ.CSX
MOBLSUZ.C& x is variable
MOBLWKZ.CS*
                             178

-------
5.5 PREPROCESSOR ARMERG (AREA-SOURCE EMISSIONS)


 I.    PREPROCESSOR FUNCTION


      The area-source emissions inventory on disk is generated from VAX system tapes by WINDO-

      WAR and exists as three files of U.S. data and three files of Canadian data. This preprocessor

      combines the Canadian data and the U.S. data files following a VAX system sort command.



 II.    I/O COMPONENTS (using summer 1985 data as an example)


      A. Input Files



         1.  Standard Input Files


             None



         2.  Nonstandard Input Files


             a.  The three Canadian data sets that are generated by WINDOWAR are used as input to

                ARMERG. The READ and FORMAT statements for the files are listed below, and

                the files' parameters are shown in Table 5.3.


                         READ(UNIT2,  4005, IOSTAT=IOST2)CCOL, CROW, CHOUR,
                         &               (CANEM(ISPC), ISPC = 1,17)
                    4005  FORNAT(2I4,  12, 17(E10.3)>


             b.  The three U.S. data sets that are generated by WINDOWAR are also input  to

                ARMERG. The READ and FORMAT statements for the files are listed below, and

                the files' parameters are shown in Table 5.4.


                         READ(UNIT1,  1005, IOSTAT=IOST)ICOL, IROW, IHOUR,
                         &               (ANEM(ISPC),  ISPC -  1,17)
                    1005  FORMAK2I4,  12, 17(E10.3))
                                         179

-------
         TABLE 53. CANADIAN AREA-SOURCE FILE PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Farm
Name
CCOL
CROW
CHOUR
CANEM(l)y^,
CANEM(2)y^,
CANEM(3)y,,
CANEM(4)V^,
CANEM(5)y^
CANEM(6)y^|
CANEM(7)y^
CANEM(8)y^|
CANEM(9)y^,
CANEM(10)y^|
CANEM(1 l)y^
CANEM(12)y^,
CANEM(13)y,A
CANEM(14)y^,
CANEM(15)y^
CANEM(16)y(/l
CANEM(17)y^,
Unit


GMT
tons-h-1
tons-h-1
tons-h'1
tons-h-1
mol-h-1
mol-h-1
mol-h-i
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
tons-h-1
tons-h'1
mol-h-1
Data
Type
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Grid column number
Grid row number
Hour as ##
NOX emissions
VOC emissions
THC emissions
CO emissions
Olefin emissions
Paraffin emissions
Toluene emissions
Xylene emissions
Formaldehyde emissions
Other aldehydes emissions
Ethylene emissions
Isoprene emissions
Nonreaaive THC emissions
Methane emissions
NO emissions
NOj emissions
Methanol emissions
Note: i = column number;/ = row number; h = hour. Units (tons) are English short tons. NO emissions are
reported as weight of NOz
                            180

-------
                    TABLE 5.4. U.S. AREA-SOURCE FILE PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Farm
Name
ICOL
IROW
IHOUR
ANEM(l)y-y,
ANEM(2)y^|
ANEM(3)y^,
ANEM(4)y^
ANEM(5)y^,
ANEM(6)y^/|
ANEM(7)y;A
ANEM(8)y^
ANEM(9)y;A
ANEM(10)y^
ANEM(ll)y^,
ANEM(12)y^
ANEM(13)y-j/l
ANEM(14)y->/,
ANEM(15)y-j/l
ANEM(16)yy,
ANEM(17)y^|
Unit


GMT
tons-h-1
tons-h-1
tons-h-1
tons-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
tons-h-1
tons-h-1
mol-h-1
Data
Type
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Grid column number
Grid row number
Hour as HH
NOX emissions
VOC emissions
THC emissions
CO emissions
Olefin emissions
Paraffin emissions
Toluene emissions
Xylene emissions
Formaldehyde emissions
Other aldehydes emissions
Ethylene emissions
Isoprene emissions
Nonreactive THC emissions
Methane emissions
NO emissions
NO2 emissions
Methanol emissions
       Note: / = column number;/ = row number; h = hour. Units (tons) are English short tons. NO emissions are
       reported as weight of NOz.

B.  Output Files

    1.  Standard Output Files

       None

    2.  Nonstandard Output Files

       ARMERG generates three sequential disk files. If no future inventory-reduction process
       is needed, these output files are named AREAWKZ.CSO, AREASAZ.CSO, and AREA-
       SUZ.CSO, and are the input files for processor P34G. In the event that the area-source
       emissions files  contain extraneous species that must be eliminated prior to input into
       P34G, the output files produced by ARMERG are named ARWKZ.DAT, ARSAZ.DAT
       and ARSUZ.DAT. This latter case occurred, e.g., for the 1980 emissions inventory. Each
       record of the output files is produced by the following WRITE and FORMAT statements,
       and the files' parameters are shown in Table 5.5.
                                   181

-------
                           URITE (UNIT3, 6005, IOSTAT=IOST) H, N, OLDHR,
                                            (OUTPUTO, J, K) K=1, 17)
                       6005 FORMAT (14, 14,  12, 17(OPE10.3)>
                      TABLE 55. MERGED AREA-SOURCE FILE PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Farm
Name
M
N
OLDHRy^
OUTPUT(l)
OUTPUT(2)
OUTPUT(3)
OUTPUT(4)
OUTPUT(5)
OUTPUT(6)
OUTPUT(7)
OUTPUT(8)
OUTPUT(9)
OUTPUT(10)
OUTPUT(11)
OUTPUT(12)
OUTPUT(13)
OUTPUT(14)
OUTPUT(15)
OUTPUT(16)
OUTPUT(17)
Unit


GMT
tons-h-1
tons-h-1
tons-h-1
tons-h-1
mol-h-1
mol-h-1
rnol-h-1
mol-lr1
mol-h'1
mol-h-1
mol-h-1
mol-h-i
mol-h-1
mol-h-1
tons-h-*
tons-h-1
mol-h-1
Data
Type
Integer*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
RealM
Real*4
RealM
RealM
RealM
Description
Grid column number + 160
Grid row number + 52
Hour as HH
NO* emissions
VOC emissions
THC emissions
CO emissions
Olefin emissions
Paraffin emissions
Toluene emissions
Xylene emissions
Formaldehyde emissions
Other aldehydes emissions
Ethylene emissions
Isoprene emissions
Nonreactive emissions
Methane emissions
NO emissions
NO2 emissions
Methanol emissions
            Note: ( = column number,;' >
            reported as weight of NOz.
row number; s = species. Units (tons) are English short tons. NO emissions are
III.    CONTROL CARDS
      None
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A.  Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                  1   file
                  0   files
                  1   file
                 1   file
                  3   files
14   blocks
 0   blocks
 8   blocks
14   blocks
36   blocks
                                        182

-------
B. Execution Time Requirements:
            Charged CPU time (hh:mm:ss):
            Buffered I/O count:
            Direct I/O count:
            Peak working-set size:
            Peak virtual size:
                             VAX 8650
                              00:31:32
                               1725
                               17719
                               14328
                               18011
C. Space Requirements: Log and Print Files
   ARMERG.LOG:
   Print Files:
     37 blocks
     None
D. Space Requirements: Input and Output Files

   Table 5.6 shows the input file and output file space requirements for summer 1985 data; note
   that these numbers are subject to change.

                      TABLE 5.6. I/O FILE SPACE REQUIREMENTS
       File
      Group
 File
Name
File
Type
 Storage
(in blocks)
 Scenario
Data Span
    Before system sort
    Input     USARWKZ.RAW     Nonstd
              USARSAZ.RAW      Nonstd
              USARSUZ.RAW      Nonstd
              CAARWKZ.RAW     Nonstd
              CAARSAZ.RAW      Nonstd
              CAARSUZ.RAW      Nonstd

    After system son
    Input     USARWKZ.DAT      Nonstd
              USARSAZ.DAT      Nonstd
              USARSUZ.DAT      Nonstd
              CAARWKZ.DAT      Nonstd
              CAARSAZ.DAT      Nonstd
              CAARSUZ.DAT      Nonstd
                            19017
                            19017
                            22617
                             2261
                             2261
                             2261
                            67434
                            19017
                            19017
                            22617
                             2261
                             2261
                             2261
                            67434
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
                              24 hours
     Output    AREAWKZ.CSO      Nonstd
              AREASAZ.CSO       Nonstd
              AREASUZ.CSO       Nonstd
                            28392
                            28392
                                                85176
                             24 hours
                             24 hours
                             24 hours
                                 183

-------
     E.  Space Requirements: Tape Files

         None



V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     ARMERG.LNK follows:


        ! ACCOUNTING CODE
       SET VERIFY
        ! RUN STREAM IS IN  FILE MET53: [EMISSIONS. SOURCE] ARMERG.LNK
       ON WARNING THEN EXIT
       EXEFILE = "MET53: [EMISSIONS. SOURCE1ARMERG.EXE"
       ASSIGN/USER MODE MET53: [EMISSIONS. SOURCE] ARNERG. OBJ                A1
       ASSIGN/USER'NODE METZAIKOMOBJ.UTILIOUFILEX.OBJ                   A2
       ASSIGN/USER'MODE MET24:tROMOBJ.umio]iocL.oBj                    A3
       ASS I GN/USER~MODE MET24 : [ROHOB J . UT I L I 0] ADATE .OBJ                   A4
       ASSIGN/USER'NODE MET24:[ROMOBJ.UTILIO]JUNIT.OBJ                   AS
       LINK -
        !  /DEBUG -
       /EXECUTABLE = MET53: [ENISSIONS.SOURCE1ARMERG.EXE  -
       A1, -
       A2, -
       A3, -
       A4, -
       A5

      (end of link stream)



VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


      ARMERG.COM follows:


        ! ACCOUNTING CODE
        SET VERIFY
        ASSIGN  MLAB: SYS SPRINT

         RUN STREAM IS IN  MET53: [EMISSIONS. SOURCE] ARMERG.COM

          *.******«***** SYSTEM  SORT FILES BY  HOUR **************

        ASSIGN  MET 14: SORTWORKO
        ASSIGN  MET16: SORTWORK1
        ASSIGN  MET52: [EMISSIONS.RNSUM85A]USARUKZ.RAW INFILE
        ASSIGN  MET52: [EMISSIONS. RNSUM85AJUSARWKZ.DAT OUTFILE
        SORT/KEY=(POSITION=9,SIZE=2) -
        INFILE  -
        DIR/FULL  INFILE
        DIR/FULL  OUTFILE
        !
        ASSIGN  METS2: [EMISSIONS. RNSUM85A]USARSAZ. RAW INFILE
        ASSIGN  MET52: [EMISSIONS. RNSUM85AJUSARSAZ.DAT OUTFILE
        SORT/KEY=(POSITION=9,SIZE=2) -
        INFILE  -
        DIR/FULL  INFILE
        DIR/FULL  OUTFILE
        I
        ASSIGN  MET52: [EMISSIONS. RNSUM85AJUSARSUZ. RAW INFILE
        ASSIGN  MET52: [EMISSIONS. RNSUM85AJUSARSUZ.DAT OUTFILE
        SORT/ICEY=
-------
        ASSIGN MET52: [EMISSIONS.RNSUM85A]CAARWICZ.RAW INFILE
        ASSIGN MET52:[EMISSIONS.RNSUM85A3CAARWICZ.DAT OUTFILE
        SORT/KEY=(POSITION=9.SIZE=2) -
        INFILE -
        DIR/FULL INFILE
        DIR/FULL OUTFILE
        !
        ASSIGN MET52:[EMISSIONS.RNSUM85A1CAARSAZ.RAW INFILE
        ASSIGN MET52:[EMISSIONS.RNSUM85AJCAARSAZ.DAT OUTFILE
        SORT/KEY=(POSITION=9,SIZE=2) -
        INFILE -
        DIR/FULL INFILE
        DIR/FULL OUTFILE
        !
        ASSIGN MET52:[EMISSIONS.RNSUM85A]CAARSUZ.RAU INFILE
        ASSIGN MET52:[EMI SSIONS.RNSUM85AJCAARSUZ.DAT OUTFILE
        SORT/KEY=(POSITION=9,SIZE=2) -
        INFILE -
        DIR/FULL INFILE
        DIR/FULL OUTFILE


           **********  MERGE SORTED U.S. AND CANADIAN FILES **********

          assign USA sorted area  input files

        ASSIGN MET52:[EMISSIONS.RNSUM85A]USARWKZ.DAT      USARWKD
        ASSIGN MET52:[EMISSIONS.RNSUM85A1USARSAZ.DAT      USARSAT
        ASSIGN MET52:[EMISSIONS.RNSUM85A]USARSUZ.DAT  .    USARSUN
        !
        ! assign Canada sorted area input files
        I
        ASSIGN MET52: [EMISSIONS.RNSUM85AJCAARUICZ.DAT      CAARWKD
        ASSIGN MET52:[EMISSIONS.RNSUM85A3CAARSAZ.DAT      CAARSAT
        ASSIGN MET52:[EMISSIONS.RNSUM85A1CAARSUZ.DAT      CAARSUN
        I
        ! assign merged area  output files
        !
        ASSIGN MET52:[EMISSIONS.RNSUM8SA]AREAUKZ.CSO      ARWKD
        ASSIGN MET52:[EMISSIONS.RNSUM85A)AREASAZ.CSO      ARSAT
        ASSIGN MET52:[EMISSIONS.RNSUM85A3AREASUZ.CSO      ARSUN
        I
      $ RUN MET53:[EMISSIONS.SOURCE]ARMERG.EXE

      (end of run stream)



VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A.  Main Program


          ARMERG


      B.  Subroutines


          None


      C.  Functions


          None
                                              185

-------
     D.  Block Data Files

         None

VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A.  Subroutines

         JFILEX
     B.  Functions

         DISK$VAXSET:[ROMLIB.ROMNET]

         ADATC
         IOCL
         JUNIT

 IX.  INCLUDE FILES

     None

5.6 PREPROCESSOR COPYTAPE (DATA TAPE TO VAX-SYSTEM TAPE COPY)

 I.   - PREPROCESSOR FUNCTION

     This preprocessor copies a raw data tape onto a VAX-system tape in order to ensure that valuable
     data are not lost. You need to understand the limitations of this preprocessor. One feature of this
     program is that a parity error will not stop the copying of a tape - the bad tape block on the original
     will not be written to the copy.  However, no message stating that this has occurred is written to the
     log file.  Therefore, we recommend that you use a scanning routine to compare the data on the
     original tape to the data on the copy. If such a routine is unavailable, you should monitor the error
     counts on the tape drives. Although an increase in the error count does not necessarily indicate a
     bad copy, no increase in the error count guarantees a good copy.

 II.   I/O COMPONENTS

      A. Input Files

         1.  Standard Input Files

             None
                                        186

-------
         2.  Nonstandard Input Files

            Any ASCII tape can be used as input.


     B.  Output Files

         1.  Standard Output Files

            None

         2.  Nonstandard Output Files

            The output is written to a VAX-system tape. The program is hard-coded to skip the label
            of the system tape.


III.   CONTROL CARDS

     One control card is used in the format shown below. Table 5.7 defines the control card variable.

     IFILE

                           TABLES.?. CONTROL CARD VARIABLE

       Variable
        Name            Unit                         Description

        IFILE                      Number of files to be copied; this number represents the
                                   minimum number of files to be copied. A number greater
                                   than the actual number of files on the original tape guaran-
                                   tees that the entire original tape is copied.


     Example:

     99

 IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

     A. Memory Requirements (1 block = 512 bytes)
                 FORTRAN source files:            2   files        12   blocks
                 FORTRAN INCLUDE files:        0   files         0   blocks
                 Object files:                      2   files         9   blocks
                 Executable file:                   i   file        _9  blocks
                                                 5   files        30   blocks
                                       187

-------
    B.  Execution Time Requirements (Representative Values for a 72-Hour Scenario):

                                                        VAX 8650
                Charged CPU time (hh:mm:ss):             ± 00:00:15 per tape
                Buffered I/O count:                          392
                Direct I/O count:                          27219
                Peak working-set size:                        530
                Peak virtual size:                           4564

    C.  Space Requirements:  Log and Print Files

        COPYTAPE.LOG       24 blocks
        Print Files:              None

    D.  Space Requirements:  Input and Output Files

        None

    E.  Space Requirements:  Tape Files

        Two tapes are required, an original and a blank VAX-system tape. Table 5.8 shows the input
        file and output file space requirements for a representative tape.

                          TABLE 5.8. TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Output
Tape
Number
B20012
102479
File
Number
1
1 (label)
2
Record
Length (bytes)
495
80
495
Block
Size (bytes)
24750
80
24750
V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    COPYTAPE.LNK follows:

    $ ASSIGN USER2»ISK:CDAO.METTAPE]COPYTAPE.OBJ                 A1
    $ ASSIGN USER2»ISK:[DAO.METTAPE3VATAPE.OBJ                  A2
    $ LINK -
      /EXECUTABLE - USER2SDISK:IDAO.METTAPEJCOPYTAPE.EXE -
      /MAP = METIrtSOISJCOPYTAPE.MAP -
      A1. "
      A2

    (end of link stream)

VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    COPYTAPE.COM follows:
                                       188

-------
     S (ACCOUNTING CODE
     $ SET VERIFY
     $ ASSIGN MLAB: SYSSPRINT
     $ TAPE SELECT AORIVE BTAPE
     S TAPE LOAD ADRIVE B20012
     $ MOUNT/NOWRITE/FOREIGN/DENSITY=6250/BLOCKSIZE=12000  -
       AORIVE B20012 OLDTAP:
     $ TAPE SELECT BDRIVE 102479
     S TAPE LOAD/RING BDRIVE 102479
     $ MOUNT/WRITE/FOREIGN/DENSITY=6250/BLOCKSIZE=12000  -
       BDRIVE 102479 COPTAP:
       SHOW DEV/FULL ADRIVE
       SHOW DEV/FULL BDRIVE
       SHOW LOGICAL OLDTAP
       SHOW LOGICAL COPTAP
       !  SET NAGTAPE/SKIP=FILES:1 OLDTAP:      ! Use this line only if
       !                                     ! old tape has label
       RUN USER2SDISK:[DAO.METTAPEJCOPYTAPE.EXE
       99
       RUN USER2SDISK:[BRO]TSCAN.EXE
     ADRIVE
       RUN USER2SDISK:[BR01TSCAN.EXE
      DRIVE
       3REWIND OLDTAP:
       3REWIND COPTAP:
       SHOW DEV/FULL ADRIVE
       SHOW DEV/FULL BDRIVE
       DISMOUNT OLDTAP:
       DEALLOCATE ADRIVE
       DISMOUNT COPTAP:
       DEALLOCATE TAPEDRIVE
       DEALLOCATE BDRIVE

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A.  Main Program


          COPYTAPE


      B.  Subroutines


          USER2$DISK:pAO.METTAPE]


          VATAPE


      C  Functions


          None



      D.  Block Data Files


          None
                                           189

-------
VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A.  Subroutines

         None

     B.  Functions.

         None

 IX.  INCLUDE FILES

     None


5.7 PREPROCESSOR FINDCT (POINT-SOURCE EMISSIONS QUALITY CONTROL)

 I.   PREPROCESSOR FUNCTION

     This preprocessor extracts all point-source records within a county that you specify. FINDCT is
     used for quality control purposes only, the extracted records are written to the log rile.

 II.   I/O COMPONENTS

     A  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            POINTZ.DAT is a sequential data file that contains the annual point-source emissions
            data; running the VAX SORT utility on the point-source data. Each record is read as a
            single string of characters using the following READ and FORMAT statements, and the
            file parameter is shown in Table 5.9.

                              REAO(INDEV,100,IOSTAT = IOSTR) LINE
                          100  FORMAHA2148)
                               TABLE 5.9. POINTZ.DAT PARAMETER
              Farm  Farm              Data
              No.  Name    Unit      Type                   Description

                                    Char*2148    Annual emissions record for point source p

                                       190

-------
     B.  Output Files

         1.  Standard Output Files

            None

         2.  Nonstandard Output Files

            None


HI.   CONTROL CARDS

     One control card is used to input control data in the format shown below. Table 5.10 defines the
     control card variable.

     TARGET

     	TABLE 5.10. CONTROL CARD VARIABLE	

            Variable
             Name           Unit                        Description

           TARGET                          AEROS state/county identification code
     Note: AEROS = Aerometric and Emissions Reporting System. For more information on AEROS, refer to AEROS
     Manual Volume 5, AEROS Manual of Coda; EPA-450/2-76-005a.

     Example:
     184140

 IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

     A  Memory Requirements (1 block = 512 bytes)
                  FORTRAN source files:            1  file          3   blocks
                  FORTRAN INCLUDE files:         0  files         0   blocks
                  Object files:                      1  file          3   blocks
                  Executable file:                    i  file         21   blocks
                                                  3  files        27   blocks

     B.  Execution Time Requirements (Representative Values for a Single County)

                                                         VAX 8650
                  Charged CPU time (hh:mm:ss):             00:01:02
                  Buffered I/O count:                           197
                  Direct I/O count:                           4535
                  Peak working-set size:                         603
                  Peak virtual size:                           3755

                                        191

-------
     C. Space Requirements: Log and Print Files

        FINDCT.LOG:           69 blocks
        Print Files:               None


     D. Space Requirements: Input and Output Files

        Table 5.11 shows the input file and output file space requirements.


                            TABLE 5.11. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
POINTZ.DAT
none
File
Type
Nonstd

Storage
(in blocks)
94065
0
Scenario
Data Span
annual

     E.  Space Requirements: Tape Files

         None



V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    FINDCT.LNK follows:


    $ LINK FINDCT,  -
      USER2SOISK:[ROMNET.UTILIO]JFILE2, -
      USER2WISK:[ROMNET.UTILI0]JUNIT, •
      USER2»ISK:[ROMNET.UTILIO]JFILE3, -
      USER2SDISK:[ROMNET.UTILIOJJFILE4, -
      USER2SDISK: [ROMNET.UTUIOIIOCL, -
      USER2SDISK:[ROMNET.UTIL10]PROGID, -
      USER2SOISK:[ROMNET.UTILI0]ADATE

    (end of link stream)



VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    FINDCT.COM follows:


       !ACCOUNTING CODE
      SET VERIFY
      ASSIGN MLAB:  SYSSPRINT
       !
       ! RUN STREAM IS IN [UAY.ROM21.EMISQA.1985]FINDCT.COM
       i
      ASSIGN MET53:[EMISSIONS.RNSUM85PJPOINTZ.DAT INFILE
       !
       ! Control card: AEROS state/county code
       !
      RUN USER2SDISK:[WAY.ROM21.EMISQA.1985lFINDCT.EXE
     184140

     (end of run stream)



                                         192

-------
VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A. Main Program


        FINDCT

     B. Subroutines


        None


     C. Functions


        None


     D. Block Data Files


        None



VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A Subroutines


        DISK$VAXSET:[ROMLffi.UTILIO]


        ADATE
        JFILE4
        PROGID

     B. Functions


        DISK$VAXSET:{ROMLIB.LmLIO]


        IOCL
        JFILE2
        JFILE3
        JUNIT


 IX. INCLUDE FILES


    None
                                   193

-------
5.8 PREPROCESSOR F1NDPT (POINT-SOURCE EMISSIONS QUALITY CONTROL)

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts an individual point-source record that you specify. FINDPT is used for
      quality control purposes only, the extracted record is written to the log file.

 II.    I/O COMPONENTS

      A. Input Files

         1.  Standard Input Files

             None

         2.  Nonstandard Input Files

             POINTZ.DAT is a sequential data file that contains the annual point-source emissions
             data; it is generated by running the VAX SORT utility on  the point-source data. Each
             record is read as a single string of characters using the following READ and FORMAT
             statements, and the file parameter is shown in Table 5.12.

                               READ(INDEV,100,IOSTAT = IOSTR) LINE
                           100 FORMATCA2148)
                               TABLE 5.12. POINTZ.DAT PARAMETER
              Farm  Farm              .  Data
              No.   Name     Unit       Type                    Description

               1   LINEp             Char*2148    Annual emissions record for point source/?

      B. Output Files

         1.  Standard Output Files

             None

         2.  Nonstandard Output Files

             None
                                         194

-------
III.    CONTROL CARDS

      One control card is used to input control data in the format shown below.  Table 5.13 defines the
      control card variable.

      TARGET
                           TABLE 5.13. CONTROL CARD VARIABLE
            Variable
              Name
Unit
Description
           TARGET
           AEROS state/county/plant/point identification code
      Note:  AEROS = Aerometric and Emissions Reporting System. For more information on AEROS, refer to AEROS
      Manual Volume S, AEROS Manual of Codes; EPA-450/2-76-005a.

      Example:

      184140000907
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A Memory Requirements (1 block = 512 bytes)

                  FORTRAN source files:
                  FORTRAN INCLUDE files:
                  Object files:
                  Executable file:
                     1   file
                     0   files
                     1   file
                     1   file
                     3   files
         3   blocks
         0   blocks
         3   blocks
        21   blocks
        27   blocks
      B.  Execution Time Requirements (Representative Values for a Single County)

                                                         VAX 8650
                  Charged CPU time (hh:mm:ss):
                  Buffered I/O count:
                  Direct I/O count:
                  Peak working-set size:
                  Peak virtual size:

      C. Space Requirements: Log and Print Files
                             00:00:03
                                175
                                186
                                514
                               2321
         FINDPT.LOG:
         Print Files:
   9 blocks
   None
      D. Space Requirements: Input and Output Files
         Table 5.14 shows the input file and output file space requirements.
                                        195

-------
                            TABLE 5.14. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
POINTZ.DAT
none
File
Type
Nonstd

Storage
(in blocks)
94065
0
Scenario
Data Span
annual

     E.  Space Requirements: Tape Files

         None



 V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     FINDPT.LNK follows:


     $ LINK FINDPT, -
      USER2SDISK:[ROMNET.UTILIO]JFILE2, -
      USER2SOISK: [ROMNET.UTILIO]JUNIT, •
      USER2$DISK:[ROMNET.UTILIO]JFILE3, -
      USER2SOISK:[ROMNET.UTILIO]JFILE4, -
      USERZNHSK: [ROMNET.UTILIO] IOCL,  -
      USER2SOISK:[ROMNET.UTILI01PROGID, -
      USER2SDISK:[ROMNET.UTILIO]ADATE

     (end of link stream)



VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     FINDPT.COM follows:


      !ACCOUNTING  CODE
      SET VERIFY
      ASSIGN MLAB: SYSSPRINT

        RUN STREAM IS IN [WAY.ROM21.EHISQA.1985]FINDPT.COM

       iSSIGN MET53:[EMISSIONS.RNSUM85P1POINTZ.DAT INFILE

        Control card: AEROS state/county/plant/point code

      RUN USER2SOISK:[WAY.ROM21.EMISQA.1985JFINDPT.EXE
     184U0000907

     (end of run stream)



VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A.  Main Program


         FINDPT
                                         196

-------
     B. Subroutines


        None


     C. Functions


        None


     D. Block Data Files


        None


VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A. Subroutines


        DISK$VAXSET:[ROMLIB.UTILIO]


        ADATE
        JFTLE4
        PROGID

     B. Functions


        DISKSVAXSET:[ROMLIB.UTILIO]

        IOCL
        JFILE2
        JFILE3
        JUNIT


IX.  INCLUDE FILES


     None



5.9 PREPROCESSOR MBEXTR (MOBILE-SOURCE EMISSIONS)


 I.   PREPROCESSOR FUNCTION


     MBEXTR reads the raw mobile-source day type (Saturday, Sunday, and weekday) emissions data

     files; it extracts from these files only those chemical species required by the ROM. The program

     creates new data files for each of the three day types.
                                     197

-------
II.   I/O COMPONENTS


     A.  Input Files


         1.  Standard Input Files


            None


         2.  Nonstandard Input Files
            MBEXTR reads three nonstandard files: MBSAZ, MBSUZ, and MBWKZ These three

            files contain the raw hourly mobile-source emissions data for Saturday, Sunday, and

            weekdays respectively. The READ and FORMAT statements for these files are as follows,

            and the files' parameters are shown in Table 5.15.


                       READ(UNIT1, 1005, IOSTAT-IOST)  ICOL, IROW, IHOUR,
                      &    (ANEM(ISPC), ISPC=1,6), NO. N02, CNTYCODE
                1005    FORMATC2I4, 12,  10X, 6(E10.3),  100X, 2(E10.3), 10X, A6)


                       TABLE 5.15. MBSAZ, MBSUZ, AND MBWKZ PARAMETERS
Farm Farm
No. Name Unit «
1 ICOL
2 IROW
3 IHOUR GMT
4 ANEM(l) tons-h-i
5 ANEM(2) tons-h-i
6 ANEM(3) tons-h-i
7 ANEM(4) tons-h-i
8 ANEM(5) tons-h-i
9 ANEM(6) tons-h-l
10 NO tons-h-l
11 NO2 tons-h-i
12 CNTYCODE
a. Units are in English short tons-fa-1; 1 ton
b. AEROS = Acrometric and Emissions 1
Data
Type Description
Integer*4 NAPAP column number
Integer*4 NAPAP row number
Integer*4 Hour
Real*4 Mobile VOC emissions
Real*4 Mobile THC emissions
Real*4 Mobile CO emissions
Real *4 Evaporative emissions of THC
Real*4 Gasoline exhaust emissions of THC
Real*4 Diesel exhaust emissions of THC
Real*4 Mobile NO emissions
Real*4 Mobile NO2 emissions
Char*6 AEROS State/County code *
= 907.20 kg. NO emissions are reported as weight of NOz.
Reporting System. For more information on AEROS, refer to
                 AEROS Manual Volume 5, AEROS Manual of Codes; EPA-450/2-7
-------
        2.  Nonstandard Output Files

            MBEXTR produces three nonstandard output files called MOBLSASZ, MOBLSUZ, and
            MOBLWKZ These three files each contain 24 hours of hourly mobile-source emissions
            data for five species: CO, NO, NO2, VOC, and THC.  Note that the hour parameter
            remains as Greenwich Mean Time (GMT).  The WRITE and FORMAT statements used
            to write these files follow, and the files' parameters are shown in Table 5.16.
                     URITE(UNIT2, 2005, IOSTAT=IOST) ICOL, IROW, I HOUR, ANEM(3), NO, N02,
                    &     ANEM<4), ANEM(5), ANEM(6), ANEMC1), ANEM(2), CNTYCODE
               2005  FORMAT(214, 12, 8C1PE10.3), A6)
                      TABLE 5.16. MBSAZ, MBSUZ, AND MBWKZ PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
Farm
Name
ICOL
IROW
IHOUR
ANEM(3)
NO
N02
ANEM(4)
ANEM(5)
ANEM(6)
ANEM(l)
ANEM(2)
CNTYCODE

Unit"


GMT
tons-h'1
tons-lr1
tons-lr1
tons-lr1
tons-lr1
tons-h'1
tons-h-1
tons-lr1

a. Units are in English short tons-h-1; 1 ton
b. AEROS = Aerometric
and Emissions I
Data
Type
Integer*4
Integer*4
Integer*4
RealM
Real*4
RealM
RealM
RealM
RealM
RealM
RealM
Char*6
= 907.20 kg.
Reporting Sys

Description
NAPAP column number
NAPAP row number
Hour
Mobile CO emissions
Mobile NO emissions
Mobile NO2 emissions
Evaporative emissions of THC
Gasoline exhaust emissions of THC
Diesel exhaust emissions of THC
Mobile VOC emissions
Mobile THC emissions
AEROS State/County code *
NO emissions are reported as weight of NO2.
tern. For more information on AEROS, refer to
                 AEROS Manual Volume S, AEROS Manual of Codes; EPA-450/2-76-005a.
III.    CONTROL CARDS
      None
IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A  Memory Requirements (1 block — 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
1   file
0   files
1   file
1   file
3   files
 8   blocks
 0   blocks
 6   blocks
16   blocks
30   blocks
                                        199

-------
    B.  Execution Time Requirements:

                                                            VAX 8650
                 Charged CPU time (hh:mm:ss):                00:30:13
                 Buffered I/O count:                            1156
                 Direct I/O count:                             17529
                 Peak working-set size:                           542
                 Peak virtual size:                              2365

    C.  Space Requirements: Log and Print Files

        MBEXTR.LOG:          7 blocks
        Print Files:               None

    D.  Space Requirements: Input and Output Files

        Table 5.17 shows the input file and output file space requirements.

                            TABLE 5.17.  I/O FILE SPACE REQUIREMENTS
File
Group
Input

Output

File
Name
MBSAZ.DAT
MBSUZ.DAT
MBWKZ.DAT
MOBLSAZ.CSO
MOBLSUZ.CSO
MOBLWKZ.CSO
File
Type
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Storage
(in blocks)
57195
57195
57195
171585
26076
26076
26076
78228
Scenario
Data Span
24 hours
24 hours
24 hours
24 hours
24 hours
24 hours
     E. Space Requirements: Tape Files

        None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    MBEXTR.LNK follows:

      ! ACCOUNTING CODE
      SET VERIFY
      ! RUN STREAM IS  IN FILE USER62SDISK:tFUG.MOBILE.PROCSJMBEXTR.INK
      ON WARNING THEN  EXIT
      EXEFILE  = "USER62JOISK: [FUG.MOBILE.PROCSJHBEXTR.EXE"
      ASSIGN/USER MODE USER62SOISK: [FUG.MOBILE.PROCSJMBEXTR.OBJ         A1
      ASSIGN/USER'MODE USERZSDISK:[ROMNET.UTILIOJJFILEX.OBJ             A2
      ASSIGN/USER'MOOE USERZSDISIC:[ROMNET.UTILIOJJFILEZ.OBJ             A3
      ASSIGN/USER'MODE USER2$OISIC:[ROMNET.UTILIO]IOCL.OBJ               A4
      ASSiGN/USER'MODE USERZSOiSK:[ROMNET.UTiLIoj JUNiT.OBj              AS
      ASSIGN/USER'MOOE USER2$DISK:[ROMNET.UTILIOIPROGID.OBJ             A6


                                          200

-------
     $ ASSIGN/USER MODE USER2SDISK:[ROMNET.UTILI01ADATE.OBJ              A7
     $ LINK -
       /EXECUTABLE = USER62WISK: [FUG. MOB I LE.PROCS3MBEXTR.EXE -
       A1, -
       A2, -
       A3, -
       A4. -
       AS, -
       A6, -
       A7

     (end of link stream)
VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     MBEXTR.COM follows:


       !  ACCOUNTING CODE
       SET VERIFY
       !  run stream is in USER62$OISK:[FUG.MOBILE.PROCS]MBEXTR.COH
       ASSIGN MLAB: SYSSPRINT
       .'assign mobile input files
       !
       ASSIGN WORK SCRATCHcMBSAZ.DAT         MOSATZ
       ASSIGN UORK~SCRATCH:MBSUZ.DAT         MOSUNZ
       ASSIGN WORK~SCRATCH.-MBWKZ.DAT         MOUKOZ
       (assign mobTle output
       !
       ASSIGN WORK SCRATCHiMOBLSAZ.CSO        NOSAT
       ASSIGN WORK~SCRATCH:NOBLSUZ.CSO        MOSUN
       ASSIGN WORK~SCRATCH:MOBLWKZ.CSO        NOUKD
       !
       RUN USER62$DISK:[FUG.PREP.MOBILE1MBEXTR.EXE
       SHOW PROCESS / ACCOUNTING

     (end of run stream)



VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A. Main Program


         MBEXTR


      B. Subroutines


         None



      C. Functions


         None



      D. Block Data Files


         None
                                          201

-------
VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A. Subroutines
        USER2$DISK:[ROMLIB.UTILIO]
        JFILEX
        PROGID
     B. Functions
        USER2$DISK:[ROMLIB.UTILIO]
        JFILE2
 IX.  INCLUDE FILES
     None

5.10 PREPROCESSOR MBMERGE (MOBILE-SOURCE EMISSIONS)

 I.   PREPROCESSOR FUNCTION

     The  mobile-source emissions inventory on disk is generated from VAX system tapes by WIN-
     DO WMB, and exists as three files of U.S. data and three files of Canadian data. This preprocessor
     appends the Canadian data to the U.S. data files; the resultant output files maintain their U.S.
     designations.

 II.   I/O COMPONENTS (using summer 1985 data as an example)  .

     A  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            The three Canadian data sets that are generated by WINDOWMB (CAMBWKZiRAW,
            CAMBSAZ.RAW, AND CAMBSUZ.RAW) are used as input to MBMERGE. The
            READ and FORMAT statements for the files are listed below, and the files' parameters
            are shown in Table 5.18.
                                      202

-------
                READCUNIT2, 4005, IOSTAT=IOST2)CCOL, CROW, CHOUR,
               &                (CANEM(ISPC), ISPC = 1,20)
           4005  FORMAK2I4, 12, 20(E10.3))

               TABLE 5.18. CANADIAN MOBILE-SOURCE FILE PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Farm
Name
CCOL
CROW
CHOUR
CANEM(%*
CANEM(2)y;/,
CANEM(3)y^,
CANEM(4)y^,
CANEM(5)y;/,
CANEM(6)y^,
CANEM(7)y^,
CANEM(8)y^,
CANEM(9)V>
CANEM(10)y^,
CANEM(ll)y;/,
CANEM(12)y^,
CANEM(13)y^,
CANEM(14)y^,
CANEM(15)y^,
CANEM(16)y^,
CANEM(17)y^,
CANEM(18)y^,
CANEM(19)y^,
CANEM(20)y^,
Unit


GMT
tons-h*1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h-1
tons-h'1
Data
Type
IntegerM
IntegerM
IntegerM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
Description
Grid column number
Grid row number
Hour as ##
NOX emissions
VOC emissions
THC emissions
CO emissions
Evaporative emissions
Gasoline vehicle exhaust
Diesel vehicle exhaust
Olefin emissions
Paraffin emissions
Toluene emissions
Xylene emissions
Formaldehyde emissions
Other aldehydes emissions
Ethylene emissions
Isoprene emissions
Nonreactive HC emissions
Methane emissions
NO emissions
N©2 emissions
Methanol emissions
       Note: i «= column number;;' = raw number; h = hour. Units are English short tons, HC = hydrocarbon.

B.  Output Files

    1.  Standard Output Files

       None

    2.  Nonstandard Output Files

       MBMERGE does not generate any independent output files, but the preprocessor pro-
       duces new USMBWKZ.RAW, USMBSAZ.RAW, and USMBSUZ.RAW files. Each file
       contains 24 hours of U.S. and Canadian mobile-source data expressed in GMT, and each is
       produced by the following WRITE and FORMAT statements:
                                   203

-------
                        WRITE(UNIT1, 3005, IOSTAT = IOST3)CCOL, CROW, CHOUR,
                        &            (CANEM(ISPC), ISPC =  1. 20), CNTYCOOE
                  3005  FORMAT(2I4,  12, 20
-------
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
                                                 1  file
                                                 0  files
                                                 1  file
                                                1  file
                                                 3  files
         5   blocks
         0   blocks
         5   blocks
         11   blocks
         23   blocks
A. Memory Requirements (1 block = 512 bytes)

            FORTRAN source files:
            FORTRAN INCLUDE files:
            Object files:
            Executable file:
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files
         MBMERGE.LOG:        6 blocks
         Print Files:               None
     D.  Space Requirements: Input and Output Files

         Table 5.20 shows the input file and output file space requirements for summer 1985 data; note
         that these numbers are subject to change.

                           TABLE 5.20. I/O FILE SPACE REQUIREMENTS
VAX 8650
 00:02:06
    272
   1012
    542
   2361
File
Group
Input

Output


File
Name
CAMBWKZ.RAW
CAMBSAZ.RAW
CAMBSUZ.RAW
USMBWKZ.RAW
USMBSAZ.RAW
USMBSUZ.RAW

File
Type
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd

Storage
(in blocks)
1901
1901
1901
5703
57195
57195
57195
171585
Scenario
Data Span
24 hours
. 24 hours
24 hours
24 hours
24 hours
24 hours

     E.  Space Requirements: Tape Files

         None
                                       205

-------
V.    LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


      MBMERGE.LNK follows:


        ! ACCOUNTING CODE
        SET VERIFY
        ! Command file is in USER62SDISK:[FUG.PREP.MOBILE]MBMERGE.LNK
        ON WARNING THEN EXIT
        ASSIGN/USER MODE USER62SOISK:[FUG.PREP.MOBILE]MBMERGE.OBJ         A1
        ASS I GN/USER JWDE MET24: [ROMOB J. UTIL10] J FI LEX. OB J                  A2
      $ ASSIGN/USER MODE MET24:[ROMOBJ.UTILIO]IOCL.OBJ                    A3
      $ ASSIGN/USER'MODE METZ^CROMOBJ.UTILIOIADATE.OBJ                  A4
      $ ASSIGN/USER~MODE MET24:[ROMOBJ.UTILIO]JUNIT.OBJ                  AS
      $ LINK -
        /EXECUTABLE = USER62SDISK:[FUG.PREP.MOBILE1MBMERGE.EXE -
        A1, -
        A2, -
        A3. -
        A4, -
        AS

      (end of link stream)



VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


      MBMERGE.COM follows:


        ! ACCOUNTING CODE
        SET VERIFY
        ! Command file is in USER2SDISK:[FUG.PREP.MOBILE1MBMERGE.COM
        ASSIGN MLAB: SYSSPRINT
        (assign USA area input files
        ASSIGN UORK_SCRATCH:USMBSAZ.RAW       USMBSAT
        ASSIGN WORK SCRATCH:USMBSUZ.RAW       USMBSUN
        ASSIGN WORKlSCRATCHrUSMBWKZ.RAW       USMBWKD
        !
        {assign Canada area input  files
        ASSIGN MET52:[EMISSIONS.RNSUM05M]CAMBSAZ.RAW     CAMBSAT
        ASSIGN MET52:[EMISSIONS.RNSUM05M1CAMBSUZ.RAW     CAMBSUN
        ASSIGN MET52:[EMISSIONS.RNSUMOSMJCAMBWKZ.RAW     CAMBWKD
        !assign area output
        (Canadian files  are appended to US files and the  files are
        (called the same as the US files.
        RUN USER2SDISK:[VMQ.PREP.ARMBSORT]MBMERGE.EXE
        SHOW PROCESS / ACCOUNTING

      (end of run stream)



VII.   MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A.  Main Program


          MBMERGE


      B.  Subroutines


          None
                                           206

-------
      C.  Functions

         None

      D.  Block Data Files

         None

VIII.  I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

      A.  Subroutines

         DISK$VAXSET:[ROMLIB.ROMNET]

         JFILEX

      B.  Functions

         None

 IX.  INCLUDE FILES

     None

5.11  PREPROCESSOR PTEXTR (POINT-SOURCE EMISSIONS)

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts specified seasonal point-source emissions data from the sorted annual
      point-source data file that is generated by preprocessor PTMERG. PTEXTR defines each point
      source that it extracts as either major or minor; you must declare the boundary between these types
      of point sources  in the control cards. PTEXTR also separates the stack parameters (stack ID,
      stack height, plume height, etc) from the emissions values and temporal factors.  The temporal
      factors are hourly allocation factors over three day types: weekdays, Saturdays, and Sundays (see
      Section 5.2 for an example). The resultant output files are (1) a stack parameters file, with each
      point defined as  a major or minor source, and (2) an annual emissions data file with allocation
      factors for a specific  season, the three day types, and for every hour in a day. Note that we believe
      that the ROM is only effective when simulating summer pollution episodes.
                                        207

-------
II.    I/O COMPONENTS  '


      A. Input Files


         1.  Standard Input Files


             None


         2.  Nonstandard Input Files


             POINTZ.DAT is a sequential data file that contains the annual point-source emissions

             data; it is generated by running the VAX SORT utility on the point-source data.  The

             READ and FORMAT statements for this file are listed below, and its parameters are

             shown in Table 5.21.


                                  READCUNITFR,  1003, IOSTAT = IOSTR)
                                      SCC, STKID, ANOX, AVOC, ATHC, AGO,  LAT, LON, COL, ROW,
                                      FLOUR,  PLUME, DIAM, HGNT, TEMP,  VELOC,
                                      (S AFAC(ISET), D SFAC(ISET),
                                      (H~DFAC(IHR, ISET), IHR = 1, 24),  ISET = 1, 12),
                                      (FACTRS(ISP), ISP = 1, 13)

                            1003  FORMATU8, A12, 4F8.1, 7X,  F8.5, F9.5, 214,
                                             2X,  F7.0, F4.0, F4.0, 2F4.0,  F9.2, 6X,
                                             12(F5.3, F6.4,  24F6.4),
                                             13E11.3)

                               (For an explanation of ISET, see Note for Table 5.21.)


      B.  Output Files


          1.  Standard Output Files


             None


          2.  Nonstandard Output Files


             b.  SEANPT.CSO


                 SEANPT.CSO (the seasonal  agnual goint-source emissions file)  contains the 15

                 chemical species that are shown  in Table 5.22, and the seasonal, day-type, hourly

                 allocation  factors.  The WRITE  and FORMAT statements for this file  are listed

                 below.


                                   URITE(UNITSA, 1005, IOSTAT = IOSTU)
                                  &     SSTK1D,
                                  ft     NSPECS2,  (TCLASS(ISP), TSEAS_ANEM(ISP), ISP = 1, NSPECS2),
                                  &     MXDAY,  (SSAFAC(IDAY), SOSFAC(IDAY),
                                  ft            (SHDFACdHR,  IDAY), IHR =  1, 24), IOAY = 1, MXDAY)
                           1005     FORMAT(A20, 13, (A5. E12.5),  12,
                                  ft            
-------
                     TABLE 5.21. POBVTZ.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22













Farm
Name
SCO,
STKIDp
ANOX,
AVOCp
ATHCj,
ACOp
LATn
LONl
COL,
ROW,,
FLOWRp
PLUMEn
DIAMp
HGHTp
TEMPn
VELOC,
ISET
S AFAC,
D'SFAC,
H'DFAC,
ISP

FACTRS,
FACTRS,
FACTRS,
FACTRS,
FACTRS,
FACTRS,
FACTRS,
FACTRS,
FACTRS,
FACTRS,.
FACTRS,
FACTRS,
FACTRS,
Unit


tons-y1
tons-y1
tons-y1
tons-y1
CN
°W

ft3-S-l
ft
ft
ft
°F
ft-s-l






mol-kg-1
mol-kg-1
mol-kg-1
mol-kg-1
mol-kg-1
mol-kg-1
mol-kg-1
mol-kg-1
mol-kg-1
mol-kg-1
%
%
mol-kg-1
Data
Type
Integer*4
Char*12
Real*4
Real*4
Real*4
RealM
Real*4
Real*4
Integer*4
Integer*4
Real*4
RealM
RealM
RealM
RealM
RealM
IntegerM
RealM
RealM
RealM
IntegerM

RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
Description
Source classification code
AEROS state/county/plant/point ID
Annual NO* emissions
Annual VOC emissions
Annual THC emissions
Annual CO emissions
Latitude (fractional)
Longitude (fractional)
Column number
Row number
Exhaust flow rate
Plume height
Stack diameter
Stack height
Exhaust gas temperature
Gas exit velocity
No. of day types in season
Seasonal allocation factor
Daily allocation factor
Hourly allocation factor
No. of speciation factors
Speciation factor for:
olefins
paraffins
toluene
xylene
formaldehyde
higher aldehydes
ethene
isoprenes
nonreactive hydrocarbons
methane
NO
N02
methanol
Note:   p = point source; s = species; units of tons are English short tons. NO reported as weight of NO2
        Allocation factors for each point are repeated as (season/day type/hour), specifically:
        winter/weekday/(l - 24)                            ISET = 1
        winter/Saturday/(l - 24)                            ISET = 2
        winter/5unday/(l - 24)                              ISET = 3
        spring/weekday/(l - 24)                            ISET •= 4
        spring/Saturday/(l - 24)                            ISET = S
        spring/Sunday/(l - 24)                              ISET = 6
        summer/weekday/(l - 24)                           ISET = 7
        summer/Saturday/)! - 24)                           ISET = 8
        summer/Sunday/(l - 24)                            ISET = 9
        fall/weckday/(l - 24)                               ISET •= 10
        falVSaturday/(l - 24)                               ISET = 11
        fall/Sunday/(l - 24)                                ISET = 12
                                 209

-------
                TABLE 5.22. SEANPT.CSO PARAMETERS
Farm
No.
          Farm
          Name
Unit
Data
Type
Description
 1  SSTKID                    Char*20
 2  NSPECS2                   Integer*4
 3  TCLASS(l)                 Char*5
 4  TSEAS ANEM(1)P  tons-yi   Real*4
 5  TCLASS(2)                 Char'5
 6  TSEAS ANEM(2)p  tons-yi   Real*4
 7  TCLASS(3)                 Char*5
 8  TSEAS ANEM(3)p  tons-yl   Real*4
 9  TCLASS(4)                 Char'5
10  TSEAS ANEM(4)p  tons-y1   Real*4
11  TCLASS(5)                 Char*5
12  TSEAS_ANEM(5)p  tons-yi   Real*4
13  TCLASS(6)                 Char*5
14  TSEAS ANEM(6)p  tons-y1   Real*4
15  TCLASS(7)                 Char*5
16  TSEAS ANEM(7)p  tons-y1   Real*4
17  TCLASS(8)                 Char*5
18  TSEAS ANEM(8)p  tons-y1   RealM
19  TCLASS(9)                 Char*5
20  TSEAS ANEM(9)p  tons-y1   Real*4
21  TCLASS(IO)                Char*5
22  TSEAS ANEM(10)p tons-yi   RealM
23  TCLASS(ll)                Char*5
24  TSEAS_ANEM(ll)p tons-yi   Real*4
25  TCLASS(12)                Char*5
26  TSEAS ANEM(12)n tons-y1   Real*4
27  TCLASS(13)                Char*5
28  TSEAS ANEM(13)p tons-y1   RealM
29  TCLASS(14)                Char*5
30  TSEAS ANEM(14)P tons-yi   Real*4
31  TCLASS(15)                Char*5
32  TSEAS ANEM(15)p tons-y1   Real*4
33  MXDAY                   Integer*4
    SSAFAG,                   RealM
    SDSFAC                   Real*4
                               RealM
  34
  35
  36
                 Stack ID
                 Number of species
                 AEROS code for VOC
                 Annual emission rate, VOC
                 AEROS code for CO
                 Annual emission rate, CO
                 AEROS code for olefins
                 Annual emission rate, olefins
                 AEROS code for paraffins
                 Annual emission rate, paraffins
                 AEROS code for toluene
                 Annual emission rate, toluene
                 AEROS code for >iylene
                 Annual emission rate, xylene
                 AEROS code for formaldehyde
                 Annual emission rate, formald.
                 AEROS code for aldehydes
                 Annual emission rate, aldehydes
                 AEROS code for ethene
                 Annual emission rate, ethene
                 AEROS code for nonr.
                 Annual emission rate, nonr.
                 AEROS code for isoprenes
                 Annual emission rate, isoprenes
                 AEROS code for methane
                 Annual emission rate, methane
                 AEROS code for NO
                 Annual emission rate, NO
                 AEROS code for NO2
                 Annual emission rate, NO2
                 AEROS code for methanol
                 Annual emission rate, methanol
                 No. of day types per season
                  Seasonal allocation factor
                     Weekday allocation factor
                      Hour 1 allocation factor
  60  SHDFAC<24)p
  61  SSAFAG,
  62  SDSFACp
  63  SHDFAC(l)p
                               RealM
                               RealM
                               RealM
                               RealM
                       Hour 24 allocation factor
                  Seasonal allocation factor
                     Saturday allocation factor
                       Hour 1 allocation factor
  87  SHDFAq24)p
  88  SSAFAG,
  89  SDSFACp
  90  SHDFACCl),
                               RealM
                               RealM
                               RealM
                               RealM
                       Hour 24 allocation factor
                  Seasonal allocation factor
                     Sunday allocation factor
                       Hour 1 allocation factor
 114  SHDFAC(24)p
                               RealM
                       Hour 24 allocation factor
p - point source; nonr. = nonrcactive hydrocarbons; formald. = formaldehyde; units are English tons. NO
reported as weight of NO* For information on AEROS, see AEROS Manual of Coder, EPA-450/2-76-005a.
                          210

-------
            b.  STACKS.CSO

                STACKS.CSO contains the point-source stack and locational parameters. Note that
                PTEXTR converts units from English to metric. The WRITE and FORMAT state-
                ments for this file are listed below, and its parameters are shown in Table 5.23.
                                   WRITE(UMITST,  1007,  IOSTAT =  IOSTU) STKFLG,  LSTKID,  LLON,
                                  &                        LLAT, LFLOW, LPLUME, LDIAM,
                                  &                        LTEMP, LVELOC, LNGHT
                            1007    FORMATU1, T4, A12,  T18, 2F10.5, 6F10.4)
                               TABLE 5.23. STACKS.CSO PARAMETERS
Farm
No.
1

2
3
4
5
6
7
8
9
10
Farm
Name
STKFLGj,

LSTKIDp
LLON,,
LLAT,,
LFLOWp
LPLUMK,
LDIAMp
LTEMPp
LVELOC,
LHGHTp
Unit



"W
"N
m3*-1
m
m
ec
m-s-1
m
Data
Type
Integer*4

Char* 12
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Major/minor point source flag:
0 SB major, 1 = minor
AEROS state/county/plant/point ID
Longitude (fractional)
Latitude (fractional)
Exhaust flow rate
Plume height
Stack diameter
Exhaust gas temperature
Exhaust gas exit velocity
Stack height
              Notc:p = point source. For information on AEROS, see AEROS Manual of Coder, EPA-450/2-76-Q05a.


III.    CONTROL CARDS

      Three control cards are used to input control data in the format shown below. Table 5.24 defines

      the control card variables.


      YEAR
      MXEMIS
      SELSEA


                           TABLE 5.24. CONTROL CARD VARIABLES
Variable
Name
YEAR
MXEMIS
SELSEA
Unit Description
Emissions base year as YYYY (1980 or 1985)
tons-y1 Major or minor point cut-off (for THC and NOj)
Season for extraction
      Note: Units are English short tons.
                                         211

-------
     Example:

     '1985'
     500
     'SUMMER'
IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
     B. Execution Time Requirements (Representative Values for One Season's Extractions):

                                                        VAX 8650
4
4
4
_1
13
files
files
files
file
files
75
7
42
JlS
172
blocks
blocks
blocks
blocks
blocks
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files
                         00:41:51
                            614
                           9052
                           6950
                           8931
         PTEXTR.LOG:
         Print Files:
12 blocks
None
     D.  Space Requirements: Input and Output Files

         Table 5.25 shows the input file and output file space requirements.

                           TABLE 5.25. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
• Name
POINTZ.DAT
SEANPT.CSO
STACKS.CSO
File
Type
Nonstd
Nonstd
Nonstd
Storage
(in blocks)
94065
26204
3021
29225
Scenario
Data Span
annual
seasonal
     E.  Space Requirements: Tape Files

         None
                                       212

-------
V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     PTEXTR.LNK follows:


     $ !  ACCOUNTING CODE
     $ SET VERIFY
     $ !  RUN STREAM IS IN FILE USER2SDISK:[WAY.PTEXTR]PTEXTR.LNK
     $ ON WARNING T.HEN EXIT
     $ ASSIGN/USER NODE USER2JDISK: [WAY.PTEXTR]PTEXTR.OBJ                A1
     $ ASSIGN/USER~MODE USER2SDISK:[WAY.PTEXTR]RD FRPT.OBJ                A2
     $ ASSIGN/USER~MODE USER2SOISK: [WAY.PTEXTR]RD85PT.OBJ                A3
     $ ASSIGN/USER~MODE USER2SDISK:[WAY.PTEXTR]SRTREC.OBJ                A4
     $ ASSIGN/USER'MODE USERZSDISK: [ROMNET.UTILIOIADATE.OBJ              AS
     $ ASSIGN/USER MODE USER2SOISK:[ROMNET.UTILIOJGETMSG.OBJ             A6
     $ ASSIGN/USER~MODE USER2SDISK:[ROMNET.UTILI0]IOCL.OBJ               A7
     $ ASSIGN/USER'MODE usER2$oisK:[ROMNET.UTILIOJINDEXI.OBJ             AS
     $ ASSIGN/USER'MODE usER2$oiSK: [ROMNET.umioiJFiLE2.0Bj             A9
     $ ASSIGN/USER MODE USER2$DISK:[ROMNET.UTILIO]JFILEX.OBJ             A10
     $ ASSIGN/USER~MODE USER2SDISK:[ROMNET.UTILIO]JUNIT.OBJ              A11
     $ ASSIGN/USER MODE USER2SDISK: [ROMNET.UTILIO]PROGID.OBJ             A12
     $ LINK  -
       /EXECUTABLE = USER2$DISK:[WAY.PTEXTR]PTEXTR.EXE *
       A1. -
       A2, -
       A3, -
       A10,  -
       A11,  -
       A12


     (end of link stream)
VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     PTEXTR.COM follows:
       !  ACCOUNTING CODE
       SET VERIFY
       ASSIGN MLAB: SYSJPRINT


         Run stream is in [WAY. PTEXTR] PTEXTR. COM


       ASSIGN MET20: [SCRATCH] SORTWORKO
       ASSIGN MET27: [SCRATCH] SORTWORK1
         Input  file:

       ASS I GN MET52 : [EM I SS I ONS . RNSUM85P] POI NTZ . DAT
       !
       !  Output files:
       ASS I GN MET52 : [EM I SS I ONS . RNSUM85P] SEANPT . CSO
       ASSIGN MET52: [EMISSIONS.RNSUM85P1STACKS.CSO
       i

       RUN USER2SO I SK : [WAY . PTEXTR] PTEXTR . EXE
      1985'
      00
      SUMMER1
       !
       DIRECTORY/FULL FREDSPT
       DIRECTORY/FULL SEANPT
       DIRECTORY/FULL STACK
FREDSPT
SEANPT
STACK
     (end of run stream)
                                             213

-------
VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A. Main Program


        PTEXTR

     B. Subroutines


        RD85PT
        RDFRPT
        SRTREC


     C. Functions


        None


     D. Block Data Files


        None



VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A Subroutines


        DISK$VAXSET:[ROMLffi.UTILIO]

        ADATE
        JFILEX
        PROGID

     B. Funaions


        DISKSVAXSET:[ROMLIB.UTILIO]

        GETMSG
        INDEX1
        IOCL
        JFILE2
        JUNIT


 IX.  INCLUDE FILES


     DISK$VAXSET:[ROMLIB.PROCES]


     PARAMS.EXT
     SEANFL.EXT
     SPCLIS.EXT
     SRFILEEXT


                                    214

-------
5.12 PREPROCESSOR PTMERG (POINT-SOURCE EMISSIONS)


 I.    PREPROCESSOR FUNCTION


      This preprocessor merges the two sequential data files (produced by WINDOWPT) that contain

      the U.S. and Canadian point-source emissions.  The U.S. data are in numerical order by the

      point-source AEROS State/County/plant/point codes; the Canadian data are in numerical order by

      the point-source AEROS Province/County/plant/point codes, and are appended to the U.S. data.

      The merged data are then sorted with the VAX SORT routine.


 II.   I/O COMPONENTS


      A  Input Files


          1.  Standard Input Files


             None


          2.  Nonstandard Input Files


             Two nonstandard input files, USPOINTZ.RAW  and CAPOINTZ.RAW,  are read by

             PTMERG using the following common READ and FORMAT statement:


                           READ (UNIT1,200,IOSTAT=IOST) STKSCC, BUFFER
                       200  FORMAT (A22.A2126)

             Table 5.26 shows the files' parameters.


                    TABLE 5.26. USPOINTZ.RAW AND CAPOINTZ.RAW PARAMETERS

              Pann   Parm                Data
               No.   Name     Unit       Type                  Description"


                 1  STKSCCy,            Char*22     AEROS   State (Province)/County/plant/
                                                      point identifier combined with the Source
                                                      Classification Code.
                 2  BUFFERp           Char*2126  Point-source emissions data, and associated
                                                      temporal and speciation factors.

             a.     AEROS = Aerometric and Emissions Reporting System. For more information on AEROS, refer to
                   AEROS Manual Volume 5, AEROS Manual of Codes; EPA-450/2-76-005a.
                   The NEDS (National Emissions Data System) Source Classification Codes pertain to the type of emitter
                   for the point source (e.g., an oil-fired boiler). The thousands of NEDS codes can be located in Criteria
                   Pollutant Emission Factors for the 1985 NAPAP Emission Inventory, EPA-600/7-87/015.
             Note:  p «= point source.
                                          215

-------
     B.  Output Files

         1.  Standard Output Files

            None


         2.  Nonstandard Output Files

            PTMERG generates the sequential file POINTZ.RAW, which is produced by the WRITE
            and FORMAT statement below, Table 5.27 shows the file's parameters.


                          WRITE (UNIT3,290) NSTKSC, BUFFER
                      290 FORMAT (A20.A2126)

                               TABLE 5.27. POINTZ.RAW PARAMETERS

              Parm    Farm                 Data
               No.   Name      Unit       Type                  Description"

                1   NSTKSC^            Char*20     AEROS State/County/plant/point  identi-
                                                      fier  (embedded blank spaces removed)
                                                      combined with the Source  Classification
                                                      Code.
                2   BUFFER^            Char*2126   Point-source emissions data, and associated
                                                      temporal and speciation factors.
            a.    AEROS = Aerometric and Emissions Reporting System. For more information on AEROS, refer to
                  AEROS Manual Volume 5, AEROS Manual of Coder, EPA-450/2-76-005a.
                  The NEDS (National Emissions Data System) Source Classification Codes pertain to the type of emitter
                  for the point source (e.g., an oil-fired boiler). The thousands of NEDS codes can be located in Criteria
                  Pollutant Emission Factors for the 1985 NAPAP Emission Inventory, EPA-600/7-87/015.
            Note:  p = point source.

III.    CONTROL CARDS

      None


 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

      A.  Memory Requirements (1 block = 512 bytes)

                  FORTRAN source files:              1  file           9   blocks
                  FORTRAN INCLUDE files:          0  files          0   blocks
                  Object files:                        1  file           6   blocks
                  Executable file:                    J,  file         12   blocks
                                                     3  files        27   blocks
                                          216

-------
     B.  Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files
                        VAX 8650
                         00:02:05
                           1404
                          22672
                          13245
                          15076
        PTMERG.LOG:
        Print Files:
6 blocks
None
     D. Space Requirements: Input and Output Files

        Table 5.28 shows the input file and output file space requirements.

                          TABLE 5.28. I/O FILE SPACE REQUIREMENTS
File
Group
Input

Output
File
Name
USPOINTZ.RAW
CAPOINTZ.RAW

POINTZ.RAW
File
Type
Nonstd
Nonstd

Nonstd
Storage
(in blocks)
91095
3060
94155
94065
Scenario
Data Span
annual
annual

annual
     E.  Space Requirements: Tape Files

        None


V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     PTMERG.LNK follows:
     $ I ACCOUNTING CODE
     $ SET VERIFY
     S LINK PTMERG, -
       USER2SDISK:[ROMNET.UTILIO]JUNIT.OBJ

     (end of link stream)
VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION
     PTMERG.COM follows:
                                      217

-------
      $ {ACCOUNTING CODE
        SET VERIFY
        !
        ! RUN STREAM IS IN MET53:[EMISSIONS.SOURCE]PTMERG.COH
        !
        j ************ FOR ROMNET REGION *****************
        i
        ASSIGN MLAB: SYSSPRINT
        ! Assign sorting workspace:
        ASSIGN NET20: SORTWORKO
        ASSIGN MET35: SORTUORK1
        ! Assign U.S. and Canada input files:
        ASSIGN MET52:[EMISSIONS.RNSUM05PJUSPOINTZ.RAW STATES
        ASSIGN MET52:[EMISSIONS.RNSUM05P]CAPOINTZ.RAW CANADA
        ! Assign output file:
        ASSIGN UORK_SCRATCH:POINTZ.RAU FILEOT
        ON ERROR THEN EXIT
        !
        RUN MET53:[EMISSIONS.SOURCE]PTMERG.EXE
        !
        SET VERIFY
        ASSIGN WORK SCRATCH:POINTZ.RAW INFILE
        ASSIGN MET53:[EMISSIONS.SCRATCH]POINTZ.DAT OUTFILE
        SORT/KEY=(POSITION=9.SIZE=12) -
        INFILE -
        OUTFILE
      $ DIR/FULL OUTFILE

      (end of run stream)



VII.   MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A  Main Program


          PTMERG


      B.  Subroutines


          None


      C.  Functions


          None



      D.  Block Data Files


          None



VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


      A.  Subroutines


          None
                                            218

-------
      B.  Functions

         DISK$VAXSET:[ROMLIB.ROMNET]

         JUNIT

IX.  INCLUDE FILES

     None

5.13 PREPROCESSOR QAOUTP (POINT-SOURCE EMISSIONS QUALITY ASSURANCE)

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts the four major emissions categories (NO*, CO, THC, and VOC) from
      the sorted annual point-source data file that is generated by preprocessor PTMERG. The output
      file from QAOUTP is used by other preprocessors for quality control purposes only.

II.    I/O COMPONENTS

      A.  Input Files

         1.  Standard Input Files

             None

         2.  Nonstandard Input Files

             POINTZ.DAT is a sequential data file that contains the annual point-source emissions
             data; it is generated by running the VAX SORT utility on the point-source data. The
             READ and FORMAT statements  for this file are listed below, and its.parameters are
             shown in Table 5.29.

                             READ
                        100   FORMATO8, A12, 4F8.1. 7X, F8.5, F9.5, 214,  2X,
                           &       17, 14, F4.1, 214, F9.2, 6X,
                           ft       12(F5.3, F6.4, 24F6.4))
                                        219

-------
                          TABLE 5.29. POINTZ.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
18
19
20
Farm
Name
SO},
STKIDp
EMISCl),
EMISC2),
EMIS(3)p
EMlS(4)p
LAT,
LON,
COL,
ROW,
EXFLOWp
PLUME,
STKDIA,
STKHTp
STKTMPp
STKVELp
SEATMPp
DAYTMPp
TMPHRp
Unit


tons-y1
tons-y1
tons-y1
tons-y1
°N
°W


ft3.S'l
ft
ft
ft
"F
ft-s-i



Data
Type
Integer*4
Char* 12
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
RealM
Real*4
Description
Source classification code
AEROS state/county/plant/point ID
Annual NO^ emissions
Annual VOC emissions
Annual THC emissions
Annual CO emissions
Latitude (fractional)
Longitude (fractional)
Column number
Row number
Exhaust flow rate
Plume height
Stack diameter
Stack height
Exhaust gas temperature
Gas exit velocity
Seasonal allocation factor
Daily allocation factor
Hourly allocation factor
        p = point source; units (tons) are English tons.  For information on AEROS, see AEROS Manual of Codes;
        EPA-450/2-76-OOSa.

B.  Output Files

    1.  Standard Output Files

       None

    2.  Nonstandard Output Files

       QAOUTP generates QAPOINT.DAT,  a binary sequential file used by preprocessor
       TOPEMI. The WRITE statement for  this file appears below, and its parameters are
       shown in Table 5.30.

                            URITE(IUNIT)STKSV, COLSV, ROWSV, POLLSV
                                    220

-------
                             TABLE 5JO. QAPOINT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
Farm
Name
STKSV
COLSV
ROWSV
POLLSVtIJip
POLLSV(2)p
POLLSV(3)p
POLLSV(4)/)
Unit



tons-y1
tons-y1
tons-y1
tons-y1
Data
Type
Char*12
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Description
AEROS State/County/plant/point code
Modeling region column
Modeling region row
Annual emission rate, NOX
Annual emission rate, VOC
Annual emission rate, THC
Annual emission rate, CO
             p = point source; units are English tons.  For information on AEROS, see AEROS Manual of Codes;
             EPA-450/2-76-005a.


III.    CONTROL CARDS

      One control card is used to input control data in the format shown below. Table 5.31 defines the
      control card variables.
     ACOL, AROW, DAYID
                          TABLE 531. CONTROL CARD VARIABLES
Variable
Name Unit
ACOL
AROW
DAYID

Description
Translation from NAPAP grid to ROMNET grid origin (SW corner):
Column translation
Row translation
Number of day types per season to skip (see note)
      Note: Day types 1-3 = winter; 4 -6 = spring; 7-9 = summer; 10 -12 = fall.

      Example:

      161,69,7
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A  Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
2   files
1   files
2   files
1   file
6   files
18   blocks
 2   blocks
 9   blocks
21   blocks
50   blocks
                                       221

-------
     B.  Execution Time Requirements (Representative Values for One Season's Extractions):

                                                          VAX 8650

                 Charged CPU time (hh:mm:ss):               00:27:21
                 Buffered I/O count:                            214
                 Direct I/O count:                             6306
                 Peak working-set size:                          506
                 Peak virtual size:                             2514


     C.  Space Requirements:  Log and Print Files

        QAOUTP.LOG:          6 blocks
        Print Files:                None


     D. Space Requirements:  Input and Output Files

        Table 5.32 shows the input file and output file space requirements.


                            TABLE 532.  I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
POINTZ.DAT
QAPOINT.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
94065
2676
Scenario
Data Span
annual
annual
     E.  Space Requirements: Tape Files

         None



V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    QAOUTP.LNK follows:


    $ IACCOUNTING CODE
    $ SET VERIFY
    $ LINK/EXE=QAOUTP -
      QAOUTP,QAINPT, -
      USER2SDISK:[ROMNET.UTILI01JFILE2,  -
      USER2$DISK:[ROMNET.UTILIO]JFILE4,  -
      USER2SDISIC: [ROMNET.UTILIO] JUNIT, -
      USER2$OISK:[RONNET.UTILIO]IOCL,  -
      USER2SOISIC: [ROMNET.UTILI01PROGID,  -
      USER2SOISK:[ROMNET.UTILIOJADATE, -
      USER2SDISK:[ROMNET.UTILI0]INDEX1

    (end of link stream)



VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    QAOUTP.COM follows:
                                         222

-------
       {ACCOUNTING CODE
       SET VERIFY
       ASSIGN HUB: SYSSPRINT

          RUN STREAM IS IN [WAY.ROM21.EMISQA.1985]QAOUTP.COM

          NAPAP 5.3 DATA
          User related  input (control cards)
            ACOL  = NUMBER OF COLUMNS TO SHIFT TO SET LOWER  LEFT
                    GRID CELL TO  (1,1)
            AROU  = SAME AS ACOL BUT FOR ROWS
            DAYID = NUMBER OF CHARACTER  "SETS" TO PASS IN POINTZ.DAT
                    FILE TO ARRIVE AT THE CORRECT SEASON
                    (1=WINTER, 4-SPRING, 7=SUMMER. 10=FALL)
            FORMAT:  ACOL,AROW,DAYID
       ASSIGN MET52:[EMISSIONS.RNSUM85P1POINT2.DAT       ANNUAL FILE
       ASSIGN MET52:[EMISSIONS.RNSUM85PJQAPOINT.DAT      OUTFILE
       RUN USER2SDISK:[WAY.ROM21.EMISQA.19851QAOUTP.EXE
     161,69,7

     (end of run stream)
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A.  Main Program


          QAOUTP

      B.  Subroutines


          QAINPT.FOR


      C.  Functions


          None


      D.  Block Data Files


          None


VIII.  I/O AND UmrrYLBRARYSUBROtJTINESAND FUNCTIONS REQUIRED


      A  Subroutines


          DISK$VAXSET:[ROMLIB.LrnLIO]

          ADATE
          JFILE4
          PROGID
                                          223

-------
     B. Functions


       DISK$VAXSET:[ROMLIB.UTILIO]


       INDEXl
       IOCL
       JFILE2
       JUNIT



IX.  INCLUDE FILES


     QAINFLEXT



5.14  PREPROCESSOR QASRCE (POINT-SOURCE EMISSIONS QUALITY ASSURANCE)


 I.    PREPROCESSOR FUNCTION


      This preprocessor reduces the annual point-source emissions data file POINTZ.DAT into the four

      major emissions categories (NO*, VOC, THC, CO) for quality control purposes only. (The annual

      point source file contains these four major emissions species as well as thirteen subspecies [11

      hydrocarbon and 2 NOJ.)



 II.    I/O COMPONENTS


      A. Input Files


         1.  Standard Input Files


             None


         2.  Nonstandard Input Files


             POINTZ.DAT is a sequential data file that contains the annual point-source emissions

             data; it is generated by the VAX SORT utility. The READ and FORMAT statements for

             this file are listed below, and its parameters are shown in Table 5.33.


                             READ(UNIT2,100,IOSTAT=IOST1)SCC,STKID,(EMISCI),1=1,4),
                            I     LAT,LON,COL,ROU,EXFLOW,PLUME, STIOMA.STKHT.STKTMP.STKVEL,
                            &     ,I=1,12)
                        100   FORMATCI8, A12, 4F8.1, 7X, F8.5, F9.5, 214, 2X,
                            ft       17, 14, F4.1, 214, F9.2,  6X,
                            &       12(F5.3, F6.4, 24F6.4))
                                         224

-------
                          TABLE 5.33.  POINTZ.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
18
19
20
Farm
Name
sec,
STKIDp
EMIS(l)p
EMlS(2)p
EMIS(3)p
EMlS(4)p
LAT>
LONp
COLp
ROWp
EXFLOW,
PLUMED
STKDIAp
STKHT,
STKTMPp
STKVELp
SEATMPp
DAYTMPp
TMPHRp
Unit


tons-y1
tons-y1
tons-y1
tons-y-1
°N
°W


ft3.S-l
ft
ft
ft
°F
ft-s-i



Data
Type
Integer*4
Char*12
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Source classification code
AEROS state/county/plant/point ID
Annual NO* emissions
Annual VOC emissions
Annual THC emissions
Annual CO emissions
Latitude (fractional)
Longitude (fractional)
Column number
Row number
Exhaust flow rate
Plume height
Stack diameter
Stack height
Exhaust gas temperature
Gas exit velocity
Seasonal allocation factor
Daily allocation factor
Hourly allocation factor
        p = point source; units (tons) are English tons. For information on AEROS, see AEROS Manual of Codes;
        EPA-450/2-76-005a.


B.  Output Files


    1.  Standard Output Files


       None


    2.  Nonstandard Output Files


       QASRCE generates QASOURCE.DAT, a binary sequential file. The WRITE statement

       for this file is listed below, and its parameters are shown in Table 5.34.


                        WRITE(IUNIT)SCC, STKID,  LAT, LON, COL,  ROW,  POLLSV
                                     225

-------
                            TABLE 534. QASOURCE.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
Farm
Name
sec,
STKID,
LAT»
LON,
COL,
ROW,
POLLSV(l),
POLLSV(2),
POLLSV(3),
POLLSV(4),
Unit


°N
°W


tons-y1
tons-y1
tons-y1
tons-y1
Data
Type
Integer*4
Char*12
Real* 4
Real*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Description
Source classification code
AEROS state/county/plant/point code
Stack latitude
Stack longitude
Modeling region column
Modeling region row
Annual emission rate, NOX
Annual emission rate, VOC
Annual emission rate, THC
Annual emission rate, CO
             p = point source; units (tons) are English tons. For information on AEROS, see AEROS Manual of Codes;
             EPA-450/2-76-0058.

III.    CONTROL CARDS

      One control card is used to input control data in the format shown below. Table 5.35 defines the
      control card variables.
      ACOL, AROW, DAYID
                          TABLE 535. CONTROL CARD VARIABLES
       Variable
        Name      Unit
 Description
                            Translation from NAPAP grid to ROMNET grid origin (SW corner):
        ACOL                Column translation
        AROW                Row translation
        DAYID              Number of day types per season to skip (see note)
      Note: Day types 1 - 3 = winter; 4 - 6 « spring; 7-9 = summer; 10 -12 = fall.

      Example:

      161,69,7
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

      A Memory Requirements (1 block = 512 bytes)
                  FORTRAN source files:
                  FORTRAN INCLUDE files:
                  Object files:
                  Executable file:
2  files
1  files
2  files
1  file
6  files
18  blocks
 2  blocks
 9  blocks
21  blocks
50  blocks
                                        226

-------
    B.  Execution Time Requirements (Representative Values for One Season's Extractions):

                                                           VAX 8650

                 Charged CPU time (hh:mm:ss):              00:27:21
                 Buffered I/O count:                           214
                 Direct I/O count:                             6306
                 Peak working-set size:                          506
                 Peak virtual size:                             2514


    C.  Space Requirements:  Log and Print Files

        QASRCE.LOG:           6 blocks
        Print Files:                None


    D.  Space Requirements:  Input and Output Files

        Table 5.36 shows the input file and output file space requirements.


                            TABLE 5.36. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
POINTZ.DAT
QASOURCEDAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
94065
3176
Scenario
Data Span
annual
annual
     E. Space Requirements: Tape Files

        None



V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    QASRCE.LNK follows:


    $ !ACCOUNTING CODE
    $ SET VERIFY
    $ LINK/EXE=OASRCE -
      OASRCE,QAINPT, -
      USER2SOISK:[ROMNET.UTILIO]JFILE2,  -
      USER2$OISK:[ROMNET.UTILIOJJFILE4,  -
      USER2$D1SK:[ROMNET.UTILIO)JUNIT, -
      USER2SOISIC: [ROMNET.UTILIO] IOCL. -
      USER2WISK: [ROMNET.UTILI03PROGID,  -
      USER2SDISK:[ROMNET.UTILI0]ADATE, -
      USER2SOISK: [ROMNET.UTILIO]INOEX1

    (end of link stream)
                                        227

-------
VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     QASRCE.COM follows:


     $ !ACCOUNTING CODE
     $ SET VERIFY
     $ ASSIGN NLAB: SYSSPRINT
     $
         RUN STREAM IS  IN nMY.RON21.ENISQA.1985lQASRCE.COM

         NAPAP 5.2 DATA
         User related input (control cards)
            ACOL - NUMBER OF COLUMNS TO SHIFT TO SET LOWER LEFT
                  GRID CELL TO  (1,1)
            AROW = SANE AS ACOL BUT FOR ROWS
            DAYID = NUMBER OF CHARACTER "SETS" TO MOVE IN ON POINT.CSO
                   FILE TO GET CORRECT SEASON (1=WINTER, 4=SPRING,
                   7=SUNNER, 10-FALL)
           FORMAT: ACOL,AROW,DAYID
       ASSIGN MET52:[EMISSIONS.RNSUM85PJPOINTZ.DAT  ANNUAL FILE
       ASSIGN MET52:[EMISSIONS.RNSUM85PJQASOURCE.DAT OUTFILE
       RUN USER2SDISK:(WAY.ROM21.ENISQA.1985]QASRCE.EXE
     161,69,7

     (end of run stream)
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

      A Main Program

         QASRCE

      B. Subroutines

         QAINPT

      C. Functions

         None

      D. Block Data Files

         None
VIII.  jyOAhTO UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

      A.  Subroutines

          DISK$VAXSET:[ROMLffi.UTILIO]


          ADATE
          JFILE4
          PROGID
                                          228

-------
     B. Functions

       DISK$VAXSET:[ROMLm.imLIO]

       INDEXl
       IOCL
       JF1LE2
       JUNIT

IX.  INCLUDE FILES

     QASCFL.CBK

5.15  PREPROCESSOR QASTACK (POINT-SOURCE EMISSIONS QUALITY ASSURANCE)

 I.    PREPROCESSOR FUNCTION

      This preprocessor reads the annual point-source emissions data file and identifies those point
      sources that have stack parameter information missing. This is performed as a quality assurance
      measure to make sure the necessary data are available for input to the ROM processor network.
      The output is printed to the log file.

II.    I/O COMPONENTS

      A.  Input Files

         1.   Standard Input Files

             None

         2.   Nonstandard Input Files

             POINTZ.DAT is a sequential data file that contains the annual point-source emissions
             data; it is generated by the VAX SORT utility. The READ and FORMAT statements for
             this file are listed below, and its parameters are shown in Table 5.37.

                             READ(UNIT2,100,IOSTAT=IOST1)SCC,STKID,(EHIS(I),I=1,4),
                           &    LAT,LOW,COL,ROW.EXFLOW,PLUME,STKDIA.STKHT^TtCTMP.STKVEL
                        100   FORMAT(I8, A12,  4F8.1,  7X. F8.5, F9.5, 214, 2X,
                           &       17, 14,  F4.1, 214, F9.2)
                                         229

-------
                              TABLE 5J7. POINTZ.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Farm
Name
SCCp
STKIDp
EMIS(l)p
EMIS(2)p
EMlS(3)p
EMIS(4)p
LAT,
LON,
COLp
ROW,
EXFLOW^
PLUME,
STKDIAp
STKHTp
STKTMP^
STKVELp
Unit


tons-y1
tons-y1
tons-y1
tons-y1
°N
°W


ft3-S-l
ft
ft
ft
°F
ft-s-l
Data
Type
Integer*4
Char*12
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Source classification code
AEROS state/county/plant/point ID
Annual NO^ emissions
Annual VOC emissions
Annual THC emissions
Annual CO emissions
Latitude (fractional)
Longitude (fractional)
Column number
Row number
Exhaust flow rate
Plume height
Stack diameter
Stack height
Exhaust gas temperature
Gas exit velocity
             p = point source; units (tons) are English tons. For information on AEROS, see AEROS Manual of Codes;
             EPA-450/2-76-005a.

     B.  Output Files

         1.  Standard Output Files

            None

         2.  Nonstandard Output Files

            None

III.   CONTROL CARDS

     None

 IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

     A. Memory Requirements (1 block = 512 bytes)
                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
3   files
2   files
3   files
1   file
9   files
36  blocks
 6  blocks
24  blocks
27  blocks
93  blocks
                                        230

-------
     B.  Execution Time Requirements (Representative Values for One Season's Extractions):


                                                         VAX 8650

                 Charged CPU time (hh:mm:ss):              00:16:13

                 Buffered I/O count:                           214

                 Direct I/O count:                            6306

                 Peak working-set size:                         506

                 Peak virtual size:                            2514


     C.  Space Requirements: Log and Print Files

        QASTACK.LOG:        45 blocks

        Print Files:               None


     D. Space Requirements: Input and Output Files

        Table 5.38 shows the input file and output file space requirements.


                            TABLE 538. I/O FILE SPACE REQUIREMENTS


             File            File            File          Storage            Scenario
           Group          Name          Type        (in blocks)          Data Span



            Input     POINTZ.DAT      Nonstd          94065             annual

            Output    None




     E. Space Requirements: Tape Files

        None



V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    QASTACK.LNK follows:


    LINK/EXE=QASTACK -
    QASTACK,QASTRT,QASTPT, -
    $2$OUA24:[ROMOBJ.UTILIOJJFILE2, -
    $2$DUA24:tROMOBJ.UTILIOJJFILE4, -
    $2$DUA24:CROMOBJ.UTILIO]JUNIT, -
    S2SDUA24:[ROMOBJ.UTILI0]IOCL, -
    S2$DUA24:[ROMOBJ.UTIIIO]PROGID, -
    S2SDUA24:[ROMOBJ.UTIL10]ADATE, -
    $2$DUA24:[ROMOBJ.UTILIO]INDEX1, -
    S2SDUA24:[ROMOBJ.UTILI01GETNSG

    (end of link stream)



VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    QASTACK.COM follows:
                                        231

-------
     $ (ACCOUNTING CODE
      SET VERIFY
      ASSIGN MLAB: SYSSPRINT
      !
      !  RUN STREAM IS IN [WAY.ROM21.EMISQA.1985]QASTACK.COM
      !
      ASSIGN NET23: SORTUORKO
      ASSIGN MET55:[EMISSIONS.RNSUM85P1POINTZ.DAT ANNUAL FILE
      RUN USER2SOISK: [WAY.ROM21.EMISQA.19853QASTACIC.EXE ~

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A.  Main Program


         QASTACK

     B.  Subroutines


         QASTRT
         QASTPT

     C.  Functions


         None


     D.  Block Data Files


         None


VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A.  Subroutines


         DISK$VAXSET:[ROMLm.UTILIO]


         ADATE
         JFILE4
         PROGID

     B.  Functions


         DISK$VAXSET:[ROMLIB.UTILIO]


         INDEXl
         IOCL
         JFILE2
         JUNIT


 IX.  INCLUDE FILES


     QASTFL.CBK
     QAOSTFL.CBK
                                       232

-------
5.16 PROGRAM RETFAC (REFORMATS THE TEMPERATURE ADJUSTMENT FILE)

RETFAC reformats the temperature adjustment factor file (ultimately used by processor P26G), and needs
to be run only when you receive new data from FREDS. The factor file is received as a sequential ASCII
file; the file number on the FREDS data tape will be identified on the accompanying documentation.
RETFAC reads in the factor file, determines how the temperature factors are distributed for each year on
the file, and creates header records that contain this information. RETFAC outputs a  new factor file
(RETFAC.CS/i or RETFAC.Can, where n and nn are the control strategy number) that is a direct access
ASCII file. P26G can now read this file and directly access any record by using the information in the
header. A sample header follows; please refer to processor P26G for further details concerning this file.

          REFORMATTED TEMPERATURE ADJUSTMENT FACTOR FILE
            CREATION DATE/TIME: 01-24-89 / 10:46:42
  1ST DATA AT RECORD:   44   INPUT RECORDS:    181  OUTPUT RECORDS:  223
     3 1985  1995  2005
            12  40.00  95.00
             12
             12
5
5
5
5
5
5
5
5
5
5
5
5
40
5
5
5
5
5
5
5
5
5
5
5
5
40
5
5
5
5
5
5
5
5
5
5
5
5
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
.00 95
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
.00 95
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
40.00
                                          233

-------
5.17 PREPROCESSOR TOPEMI (POINT-SOURCE EMISSIONS QUALITY ASSURANCE)

 I.    PREPROCESSOR FUNCTION

      This preprocessor reads the abbreviated annual point-source emissions file from preprocessor
      QAOUTP, and sorts the point sources by your choice (specified in the control cards) of one of four
      major emissions species (NO,, VOC, THC, CO). The listing is output to an ASCII print file.
 II.    I/O COMPONENTS

      A. Input Files

         1.  Standard Input Files

             None

         2.  Nonstandard Input Files

             One nonstandard file is required, QAPOINT.DAT, a binary sequential file created by
             preprocessor QAOUTP. The READ statement for this file is listed below, and its param-
             eters are shown in Table 5.39.
                            READCIUNIT, IOSTAT=IOST1))STKID, COL,  ROW, POLL
                              TABLE 539. QAPOINT.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
Farm
Name
STKID
COL
ROW
POLIX1),
POLL<2)/,
?OLL(3)p
?OUJ(4)P

Unit



tons-y1
tons-y1
tons-y1
tons-y1
Data
Type
Char* 12
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4

Description
AEROS state/county/plant/point code
Modeling region column
Modeling region row
Annual emission rate, NO*
Annual emission rate, VOC
Annual emission rate, THC
Annual emission rate, CO
              p = point source; units are English tons. For information on AEROS, see AEROS Manual of Codes;
              EPA-450/2-76-005a.
      B.  Output Files

          1.  Standard Output Files

             None

                                        234

-------
         2.  Nonstandard Output Files

            None


III.   CONTROL CARDS

     Two control cards are used to input control data in the format shown below. Table 5.40 defines the
     control card variables.
     FARM, NREC
                         TABLE 5.40. CONTROL CARD VARIABLES
       Variable
        Name   Unit
                         Description
        FARM
        NREC
Name of the primary pollutant species to be sorted (NO*, VOC, THC, CO)
Maximum number of point sources to be listed
     Example:

     NOX, 200
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A.  Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
      B.  Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

      C.  Space Requirements: Log and Print Files
2
4
2
1
9
files
files
files
file
files





15
12
12
.21
60
blocks
blocks
blocks
blocks
blocks
VAX 8650
00:12:10








214
6306
506
2514








         TOPEMI.LOG:
         Print Files:
         12 blocks
         36 blocks
                                      235

-------
     D.  Space Requirements: Input and Output Files


         Table 5.41 shows the input file and output file space requirements.


                            TABLE 5.41. I/O FILE SPACE REQUIREMENTS


             File             File            File           Storage             Scenario
            Group          Name           Type         (in blocks)          Data Span



            Input      QAPOINT.DAT     Nonstd           2676               annual

            Output    None




     E.  Space Requirements: Tape Files


         None



V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    TOPEMI.LNK follows:


    $ LINK TOPEMI.TOPSRT. -
      $2$OUA24:[ROMOBJ.UTILIO]JFILE3, -
      $2»UA24:[ROMOBJ.UTILIO]JFILE4, -
      *2$DUA24:[ROMOBJ.UTILIO]JUNIT, -
      S2SOUA24:[ROHOBJ.UTILI0]IOCL, -
      $2$DUA24:[ROMOBJ.UTILIO]PROGID, -
      J2SDUA24:(RONOBJ.UTILI0]ADATE, -
      $2$OUA24:[ROMOBJ.UTILIO]INDEX1, -
      f2SDUA24:[RONOBJ.UTILI0]GETNSG

    (end of link stream)



VI. RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    TOPEMI.COM follows:


       (ACCOUNTING CODE
      SET VERIFY
      ASSIGN MLAB: SYSSPRINT
       !
       !   RUN STREAM IS  IN  [UAY.ROM21.EMISQA.19851TOPEMI.COM
       !
      ASSIGN USER1SDISK: SORTUORKO
      ASSIGN MET52:[EMISSIONS.RNSUM85P1QAPOINT.DAT  INFILE
      ASSIGN MET1:[S01S1PTEMIS85A.DAT PRINTFILE
      RUN USER2SOISK:[WAY.ROM21.EMISQA.19851TOPEMI.EXE
     •NOX',200
    $ NETPRINT/NODE=MADMAD PRINTFILE

     (end of run stream)
                                          236

-------
VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A. Main Program


        TOPEMI

     B. Subroutines


        TOPSRT


     C. Functions


        None


     D. Block Data Files


        None



VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A Subroutines


        DISK$VAXSET:[ROMLIB.UTILIO]

        ADATE
        JFILE4
        PROGID

    B. Functions


       DISK$VAXSET:[ROMLIB.UTILIO]


       GETMSG
       INDEX1
       IOCL
       JFILE2
       JFILE3
       JUNIT


 IX. INCLUDE FILES


    PRID.EXT
    QATOPIN.CBK
    QATOPOT.CBK
    TOPLIS.EXT
                                    237

-------
5.18  PREPROCESSOR WINDOWAR (AREA-SOURCE EMISSIONS)

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts (windows) the modeling domain's area-source emissions data from the
      VAX system tapes that contain the National Acid Precipitation Assessment Program (NAPAP)
      raw emissions data, and stores the windowed data on the VAX disk. Raw area-emissions are
      comprised of weekday, Saturday, and Sunday data for the U.S. and Canada, and are thus stored as
      six separate ASCII files (on two VAX system tapes).  To create the corresponding disk files, you
      must execute WINDOWAR six times.

 II.    I/O COMPONENTS (using summer 1985 data as an example)

      A  Input Files

          1.  Standard Input Files

             None

          2.  Nonstandard Input Files

             A VAX system tape, created by the COPYTAPE preprocessor, contains the U.S. area-
             source emissions data for weekdays, Saturday, and Sunday (referenced as Tape 100286 in
             the run stream below). File number 1 on this tape contains the header information, which
             WINDOWAR skips.  Files 2,3, and 4 contain the emissions data as listed above, and are
             read sequentially for each tape by running WINDOWAR three times successively. A
             second tape (referenced as Tape 101210 in the run stream below) similarly contains the
             Canadian area-source emissions data. Each data file contains 24 hours of data expressed
             in GMT. The LRECL for the tapes = 180 bytes, and the BLKSIZE =  3600 bytes (20
             records per block).  Each record is read from the tape using the following READ and
             FORMAT statement:

                          READ (UNIT1,200,IOSTAT-IOST) BUFFER
                      200 FORMAT (A180)
             Table 5.42 shows the tape parameter.
                                         238

-------
                                  TABLE 5.42. TAPE PARAMETER
             Farm   Farm                  Data
              No.   Name      Unit        Type                Description

                1   BUFFER              Char* 180   One record:
                                                     positions 1-4 are the column number of
                                                     the grid cell;
                                                     positions 5-8 are the row number of
                                                     the grid cell;
                                                     positions 9-180 contain the area-source
                                                     emissions data.
     B.  Output Files

         1.  Standard Output Files

            None


         2.  Nonstandard Output Files

            WINDOWAR generates six sequential disk files: USARWKZ.RAW, USARSAZ.RAW,
            and USARSUZ.RAW for the U.S.; CAARWKZ.RAW, CAARSAZ.RAW, and CAAR-
            SUZ.RAW for Canada. Each file contains 24 hours of data expressed in GMT, and each is
            produced by the following WRITE and FORMAT statements:


                         MITE  BUFFER
                      200 FORMAT  (A180)

            The characteristics and description of BUFFER are identical to those of the nonstandard
            input files.


III.   CONTROL CARDS

     One control card is used to input the region boundaries. The boundaries for your particular mod-
     eling domain (if it is not the ROMNET region) can be ascertained from Chapter 3 of Sellars et al.
     Table 5.43 defines the control card variables for the ROMNET region, and the free-format READ
     statement is listed below:

                         READ (5,*) WEST, EAST, SOUTH, NORTH
                                        239

-------
                            TABLE 5.43. CONTROL CARD VARIABLES
Farm
No.
1
2
3
4
Farm
Name Unit
WEST
EAST
SOUTH
NORTH
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4

Description
Western column boundary
Eastern column boundary
Southern row boundary
Northern row boundary
     Example (for ROMNET):

     161,224,69,120


IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A. Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files
                 1   file
                 0   files
                 1   file
                 1   file
                 3   files
 5  blocks
 0  blocks
 4  blocks
_8  blocks
17  blocks
                        VAX 8650
                         00:03:06
                           1039
                          13235
                            530
                           2684
         WINDOWAR.LOG:
         Print Files:
21 blocks per tape read.
None
     D.  Space Requirements: Input and Output Files

         Table 5.44 shows the input file and output file space requirements.
                                       240

-------
                           TABLE 5.44. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output




File
Name
None
USARWKZ.RAW
USARSAZ.RAW
USARSUZ.RAW
CAARWKZ.RAW
CAARSAZ.RAW
CAARSUZ.RAW
File
Type

Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Storage
(in blocks)
0
19017
19017
19017
2261
2261
2261
63834
Scenario
Data Span

24 hours
24 hours
24 hours
24 hours
24 hours
24 hours
     E.  Space Requirements: Tape Files

         Table 5.45 shows the input tape file space requirements.
                       TABLE 5.45. INPUT TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Tape
No:
100286
101210
File
No.
2,3,4
2,3,4
Record Length
(in bytes)
180
180
Block Size
(in bytes)
3600
3600
V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     WINDOWAR.LNK follows:


     $ !  ACCOUNTING CODE
     $ SET VERIFY
     $ !  LINK STREAK IS IN USERMOISK: [LBW.PREP.AREA3UINDOWAR.LNK
     $ LINK USEROSDISK[LBU.PREP.AREA]UINDOWAR, -
       USER2$DISK:[IOLIB1.UTSIOLIB1]JUNIT

     (end of link stream)



VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     WINDOWAR.COM  for windowing the U.S. data follows; WINDOWAR.COM for Canada is

     identical except for the tape numbers, file numbers, and the output file names.


       !  ACCOUNTING CODE
       SET VERIFY
       ;
       !  RUN STREAM IS IN USEROSDISK: [LBU.PREP.AREAIWINOOWAR.COM

       i  **************** FOR ROMNET REGION **************
       !


                                       241

-------
      $ ASSIGN NLAB: SYS SPRINT
      $ ASSIGN MET52:[EMISSIONS.RNSUH85A1USARWKZ.RAW FILEOT
      $ ON  ERROR THEN EXIT
      $ !
      $ {ALLOCATE  S3 SMUA3 TAPEDRIVE
      $ TAPE  SELECT TAPEDRIVE 100286
      $ TAPE  LOAD TAPEDRIVE 100286
      $ !
      $ MOUNT/NOWRITE/FOREIGN/DENSITY=6250/BLOCICSIZE=3600 -
        /RECORDSIZE-180 TAPEDRIVE 100286 TAPEIN
      $ !
      $ SHOW  DEV/FULL TAPEDRIVE
      $ ! Skip over header if using a system tape
      $ !
      $ SET MAGTAPE/SKIP=FILES:1 TAPEIN
      $ !
      $ ! User input control cards to determine  windowed region
      $ ! western column boundary, eastern colum boundary,
      $ ! southern row boundary, northern row boundary
      $ !
      $ RUN USEROSDISK:[LBW.PREP.AREAnWINDOUAR.EXE
      161,224,69,120
      S !
      $ SHOW  DEV/FULL TAPEDRIVE
      $ DIR/FULL FILEOT
      S !
      $ ASSIGN MET52:[EMISSIONS.RNSUM85A]USARSAZ.RAW FILEOT
      $ !  Skip over header if using a system tape
      $ !
      $ !  User  input control cards to determine  windowed region
      S !  western column boundary, eastern column boundary,
      $ !  southern row boundary, northern row boundary
      $ !
      $ RUN USEROSDISK:[LBW.PREP.AREA11WINDOWAR.EXE
      161,224,69,120
      $ !
      S SHOW  DEV/FULL TAPEDRIVE
      S DIR/FULL  FILEOT
      $ !
      S ASSIGN MET52:[EMISSIONS.RNSUM85A1USARSUZ.RAW FILEOT
      S !  Skip over header if using a system tape
      S !
      S !  User input control cards to determine  windowed region
      S !  western  column boundary, eastern column boundary,
      S !  southern row boundary, northern row boundary
      $ !
      t RUN USEROSDISK:[LBU.PREP.AREAJ1UINDOWAR.EXE
      161,224,69,120
      t i.
      t SHOW DEV/FULL TAPEDRIVE
      t DIR/FULL  FILEOT
      S 3REWIND  TAPEIN
      $ DISMOUNT  TAPEIN
      S DEALLOCATE TAPEDRIVE

      (end of run stream)



VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A  Main Program


          WINDOWAR
                                              242

-------
     B.  Subroutines

         None

     C.  Functions

         None

     D.  Block Data Files

         None

VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A.  Subroutines

         None

     B.  Functions

         DISKSVAXSET:[ROMLIB.UTILIO]

         JUNIT

 IX.  INCLUDE FILES

     None

5.19 PREPROCESSOR WINDOWMB (MOBILE-SOURCE EMISSIONS)

 I.   PREPROCESSOR FUNCTION

     This preprocessor extracts (windows) the modeling domain's mobile-source emissions data from
     the VAX system tapes that contain the National Acid Precipitation Assessment Program (NA-
     PAP) raw emissions data, and stores the windowed data on the VAX disk. Raw mobile-emissions
     are comprised of weekday, Saturday, and Sunday data for the U.S. and Canada, and are thus stored
     as six separate ASCII files (on two VAX system tapes). To create the corresponding disk files, you
     must execute WINDOWMB six times.
                                       243

-------
II.   I/O COMPONENTS (using summer 1985 data as an example)

     A.  Input Files

         1.   Standard Input Files

             None

         2.   Nonstandard Input Files

             A VAX system tape, created by the COPYTAPE preprocessor, contains the U.S. mobile-
             source emissions data for weekdays, Saturday, and Sunday (referenced as Tape 101076 in
             the run stream below). File number 1 on this tape contains the header information, which
             WINDOWMB skips. Files 2, 3, and 4 contain the emissions data as listed above, and are
             read sequentially for each tape by running WINDOWMB three times successively.  A
             second tape similarly contains the Canadian mobile-source emissions data.  Each data file
             contains 24 hours of data expressed in GMT. The LRECL for the tapes = 216 bytes, and
             the BLKSIZE = 4320 bytes (20 records per block). Each record is read from the tape
             using the following READ and FORMAT statement:

                          READ (UNIT1,200,IOSTAT=IOST) BUFFER
                      200 FORMAT (A216)
             Table 5.46 shows the tape parameter.

                                    TABLE 5.46.  TAPE PARAMETER
              Farm   Farm
               No.    Name
Unit
Data
Type
Description
                 1  BUFFER
          Char*216    One record:
                       positions 1-4 are the column number
                         of the grid cell;
                       positions 5-8 are the row number of
                         the grid cell;
                       positions 9-216 contain the mobile-
                         source emissions data.
      B.  Output Files

          1.  Standard Output Files

             None
                                          244

-------
        2.  Nonstandard Output Files
            WINDOWMB generates six sequential disk files: USMBWKZ.RAW, USMBSAZ.RAW,
            and USMBSUZ.RAW for the U.S.; CAMBWKZ.RAW, CAMBSAZ.RAW, and CAMB-
            SUZ.RAW for Canada. Each file contains 24 hours of data expressed in GMT, and each is
            produced by the following WRITE and FORMAT statements:

                        WRITE (UNIT2.200) BUFFER
                     200 FORMAT (A216)
            The characteristics and description of BUFFER are identical to those of the nonstandard
            input files.

III.   CONTROL CARDS
     One control card is used to input the region boundaries. The boundaries for your particular mod-
     eling domain (if it is not the ROMNET region) can be ascertained from Chapter 3 of Sellars et al.
     Table 5.47 defines the control card variables for the ROMNET region, and the free-format READ
     statement is listed below:

                         READ (5,*) WEST, EAST, SOUTH, NORTH
                             TABLE S.47.  CONTROL CARD VARIABLES
Farm
No.
1
2
3
4
Farm
Name Unit
WEST
EAST
SOUTH
NORTH
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4

Description
Western column boundary
Eastern column boundary
Southern row boundary
Northern row boundary
      Example (for ROMNET):
      161,224,69,120
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A.  Memory Requirements (1 block — 512 bytes)
                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
1 file
0 files
1 file
_1 file
3 files
5 blocks
0 blocks
4 blocks
J blocks
17 blocks
                                       245

-------
B. Execution Time Requirements:

                                                    VAX 8650
            Charged CPU time (hh:mm:ss):              00:07:22
            Buffered I/O count:                          2385
            Direct I/O count:                           34419
            Peak working-set size:                         533
            Peak virtual size:                            2684

C. Space Requirements: Log and Print Files

   WINDOWMB.LOG:      21 blocks per tape
   Print Files:              None

D. Space Requirements: Input and Output Files

   Table 5.48 shows the input file and output file space requirements.

                       TABLE 5.48. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output






File
Name

USMBWKZ.RAW
USMBSAZ.RAW
USMBSUZ.RAW
CAMBWKZ.RAW
CAMBSAZRAW
CAMBSUZ.RAW

File
Type

Nonstd
Nonstd
Nonstd
Nonstd
Nonstd
Nonstd

Storage
(in blocks)
0
55294
55294
55294
1901
1901
1901
171585
Scenario
Data Span

24 hours
24 hours
24 hours
24 hours
24 hours
24 hours

E.  Space Requirements: Tape Files

    Table 5.49 shows the input tape file space requirements for Summer 1985. Note that any of the
    tape parameters are subject to change.

                  TABLE 5.49. INPUT TAPE FILE SPACE REQUIREMENTS

        File           Tape            File        Record Length        Block Size
      Group           No.            No.          (in bytes)          (in bytes)

       Input          101076           2,3,4            216              4320
                                   246

-------
V.    LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


      WINDOWMB.LNK follows:


      $ SET VERIFY
      $ LINK WINDOUNB, -
        [ROMNET.UTILIOJJUNIT

      (end of link stream)



VI.   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


      WINDOWMB.COM for windowing the U.S.  data follows; WINDOWMB.COM for Canada is

      identical except for the tape numbers, file numbers, and the output file names.


      $ !  ACCOUNTING CODE
      $ SET VERIFY
        !
        !  RUN  STREAM IS IN [FUG.PREP.MOBILE]WIMDOUMB.COM

        ASSIGN MLAB: SYStPRINT
        ASSIGN MET52:[EMISSIONS.RNSUM05M]USMBUKZ.RAW FILEOT
        ON ERROR  THEN EXIT
        !
        TAPE SELECT TAPEORIVE 101076
        TAPE LOAD TAPEDRIVE 101076
        !
        NOUNT/NOURITE/FOREIGN/DENSITY=6250/BLOCKSIZE=4320 -
        /RECORDSIZE=216 TAPEDRIVE 101076 TAPEIN
        !
        SHOW DEV/FULL TAPEDRIVE
        !  Skip over header if using a system tape
        !
        SET MAGTAPE/SKIP=FILES:1 TAPEIN
        !
        !  User input control  cards to determine windowed region
        !  western column boundary, eastern column boundary,
        !  southern row boundary, northern  row boundary
        !
        RUN USER2SDISK:[WAY.ROM21.EMISQAJWINDOWMB.EXE
       61,224,69.120
        !
        SHOW DEV/FULL TAPEDRIVE
        DIR/FULL  FILEOT
        !
        ASSIGN MET52:[EMISSIONS.RNSUM05M]USMBSAZ.RAW FILEOT
        !  Skip over header if using a system tape
        !
        !SET MAGTAPE/SKIP=FILES:5 TAPEIN
        !
        !  User input control  cards to determine windowed region
        !  western column boundary, eastern column boundary,
        !  southern row boundary, northern  row boundary
        !
        RUN USER2SDISK:[WAY.ROM21.EMISQAJUINDOUMB.EXE
       61,224,69,120

        SHOW DEV/FULL TAPEDRIVE
        DIR/FULL  FILEOT
        i
        ASSIGN MET52:[EMISSIONS.RNSUM05MJUSMBSUZ.RAW FILEOT
        !  Skip over header if using a system tape
        !
        (SET MAGTAPE/SKIP=FILES:1 TAPEIN
        i
                                            247

-------
     $ ! User input control cards to determine windowed region
     $ ! western col urn boundary, eastern column boundary,
     $ ! southern row boundary, northern row boundary
     $ j
     $ RUN USER2$DISK:[WAY.ROM21.EMISQAJUINDOWMB.EXE
     161,224,69,120
     $ !
     $ SHOW DEV/FULL TAPEDRIVE
     $ DIR/FULL FILEOT
     $ 9REUIND TAPEIN
     $ DISMOUNT TAPEIN
     $ DEALLOCATE TAPEDRIVE

     (end of run stream)



VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A.  Main Program


         WINDOWMB


     B.  Subroutines


         None


     C.  Functions


         None



     D. Block Data Files


         None



VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A. Subroutines


         None


     B. Functions


         DISK$VAXSET:[ROMLIB.ROMNET]


         JUNIT


 IX.  INCLUDE FILES


     None
                                        248

-------
5.20 PREPROCESSOR WINDOWPT (POINT-SOURCE EMISSIONS)

 I.    PREPROCESSOR FUNCTION

      This preprocessor extracts (windows) the modeling domain's point-source emissions data from the
      VAX system tapes that contain the National Acid Precipitation Assessment Program (NAPAP)
      raw emissions data, and stores the windowed data on the VAX disk. Unlike the area- and mobile-
      source emissions data, the point-source data are an annual quantity, with associated seasonal,
      daily, and hourly  temporal factors (see Section  5.2  for a full description of these factors).
      Point-source emissions for the U.S. and Canada are stored as two separate ASCII files (on two
      VAX system tapes). To create the corresponding disk files, you must execute WINDOWPT twice.

 II.    I/O COMPONENTS (using summer 1985 data as an example)

      A  Input Files

          1.  Standard Input Files

             None

          2.  Nonstandard Input Files

             A VAX system tape, created by the COPYTAPE preprocessor, contains the U.S. point-
             source emissions data (referenced as Tape 100622 in the run stream below).  A second tape
             (referenced as 101210) similarly contains the Canadian point-source emissions data. The
             LRECL for the tapes = 2148 bytes, and the BLKSIZE = 21480 bytes (10 records per
             block).  Each record is read from  the tape using the following READ and FORMAT
             statement:

                          READ (UNIT1,200,IOSTAT-IOST) BUFFER
                       200 FORMAT (A2148)
             Table 5.50  shows the tape parameter.
                                         249

-------
                                   TABLE 5.50. TAPE PARAMETER
              Farm   Farm                 Data
              No.    Name     Unit        Type                  Description

                1  BUFFER             Char*2148  One record:
                                                       positions 1-8 contain the point-source
                                                         classification code;
                                                       positions 9-20 contain the AEROS
                                                         State/County/plant/point code of
                                                         each source;"
                                                       positions 21-2148 contain the point-
                                                         source emissions data, and
                                                         associated temporal and speciation
                                                         factors.
            a.  AEROS = Aerometric and Emissions Reporting System. For more information on AEROS, refer to
                AEROS Manual Volume 5, AEROS Manual of Codes; EPA-450/2-76-005a.

      B.  Output Files

         1.  Standard Output Files

            None


         2.  Nonstandard Output Files

            WINDOWPT  generates  two  sequential  disk  files  in  two   independent   runs:
            USPOINTZ.RAW for the U.S., and CAPOINTZ.RAW for Canada.  Each file is produced
            by the following WRITE and FORMAT statements:

                          WRITE (UNIT2.200) BUFFER
                      200 FORMAT (A2148)

            The characteristics and description of BUFFER are identical to those of the nonstandard
            input files.

III.    CONTROL CARDS

      One control card is used to input the region boundaries. The boundaries for your particular mod-
      eling domain (if it is not the ROMNET region) can be ascertained from Chapter 3 of Sellars et al.
      Table 5.51 defines the control card variables for the ROMNET region, and the free-format READ
      statement is listed below:

                           READ (5,*) WEST. EAST, SOUTH, NORTH
                                          250

-------
                            TABLE 5.51. CONTROL CARD VARIABLES
Farm
No.
1
2
3
4
Farm
Name Unit
WEST
EAST
SOUTH
NORTH
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4

Description
Western column boundary
Eastern column boundary
Southern row boundary
Northern row boundary
     Example (for ROMNET):

     161,224,69,120


IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
                                                1   file
                                                0   files
                                                1   file
                                                1   file
                                                3   files
A. Memory Requirements (1 block = 512 bytes)

            FORTRAN source files:
            FORTRAN INCLUDE files:
            Object files:
            Executable file:
     B. Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C. Space Requirements: Log and Print Files

        WINDOWPT.LOG:       12 blocks
        Print Files:              None
     D. Space Requirements: Input and Output Files
        Table 5.52 shows the input file and output file space requirements.
 6  blocks
 0  blocks
 6  blocks
12  blocks
24  blocks
                                                  VAX 8650
                                                   00:01:05
                                                     1405
                                                    10222
                                                     527
                                                     2684
                                      251

-------
                            TABLE 5.52. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
None
USPOINTZ.RAW
CAPOINTZ.RAW
File
Type

Nonstd
Nonstd
Storage
(in blocks)
0
91095
3060
94155
Scenario
Data Span

annual
annual
     E. Space Requirements: Tape Files

        Table 5.53 shows the input tape file space requirements.
                       TABLE 533. INPUT TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Tape
No.
100622
101210
File
No.
1
1
Record Length
(in bytes)
2148
2148
Block Size
(in bytes)
21480
21480
V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     WINDOWPT.LNK follows:


     $ !  ACCOUNTING CODE
     $ SET VERIFY
     S !  LINK STREAM IS IN MET53:[EMISSIONS.SOURCE]WINDOWPT.LNK
     $ LINK MET53:[EMISSIONS.SOURCE]UINDOUPT, -
       USER2SDISK: [ROMNET.UTILIO]JUNIT

     (end of link stream)



VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     WINDOWPT.COM for windowing the U.S. data follows; WINDOWPT.COM for Canada is iden-

     tical except for the tape numbers, file numbers, and the output file names.


     S !  ACCOUNTING CODE
     $ SET VERIFY
     S
         RUN STREAM IS IN MET53:[EMISSIONS.SOURCE]UINDOWPT.COM

         ********.**.*.** FOR ROMNET REGION **************

       ASSIGN MLAB: SYS SPRINT
       ASSIGN MET52:[EMISSIONS.RNSUM85A1USPOINTZ.RAW FILEOT
       ON ERROR THEN EXIT
       !
       TAPE SELECT TAPEDRIVE BTAPE
       TAPE LOAD TAPEDRIVE 100622


                                         252

-------
      $ !
      $ MOUNT/NOWRITE/FOREIGN/DENSITY=6250/BLOCICSIZE=21480 -
        /RECORDSIZE=2148 TAPEDRIVE 100622 TAPEIN
      $ !
        SHOW DEV/FULL TAPEDRIVE
        ! Skip over header if using a system tape
        ! (plus any additional files on the tape)
        i
        SET MAGTAPE/SKIP=FRES:7 TAPEIN
        !
        ! User input control cards to determine windowed region
        ! western column boundary, eastern column boundary,
        ! southern row boundary, northern row boundary
        !
        RUN NET53:[EMISSIONS.SOURCE]WINDOUPT.EXE
       61,224,69,120
        !
        SHOW DEV/FULL TAPEDRIVE
        DIR/FULL FILEOT
      $ 3REUIND TAPEIN
      $ DISMOUNT TAPEIN
      $ DEALLOCATE TAPEDRIVE

      (end of run stream)


VII.   MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A. Main Program


         WINDOWPT


      B. Subroutines


         None


      C. Functions


         None


      D. Block Data Files


         None



VIII.  I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


      A. Subroutines


         None


      B. Functions


         DISK$VAXSET:[ROMLIB.UTILIO]

         JUNIT


 IX.  INCLUDE FILES


     None
                                          253

-------
This page is intentionally left blank.

-------
                                         SECTION 6

                                 BIOGENIC  EMISSIONS:
                     SOURCES  AND PREPROCESSING OF DATA
Hydrocarbon emissions influence the formation of ozone through the intricately-coupled atmospheric chem-
istry of nitrogen oxides and reactive organic hydrocarbons. Biogenic hydrocarbon emissions emanate from
living surface vegetation-trees, shrubs, grasses, and agricultural crops~and from decaying leaf litter and
vegetation in fresh and salt water.  Hydrocarbon emissions from biogenic sources have been estimated to
equal or exceed those from anthropogenic sources on a total-mass basis.  Thus, biogenic hydrocarbon emis-
sion rates have become an important input requirement for regional oxidant models such as the ROM.

The calculation of biogenic hydrocarbon emission rates requires four basic components:
          estimates of the biomass density of each vegetative class in each grid cell;
          an adjustment of biomass density to account  for season;
          emission factors for the vegetation classes in  the modeling region; and
          empirical relationships that allow for adjusting the emission factors based on the values of specific
          environmental parameters, such as temperature, solar intensity, soil conditions, and elevation.

We show the procedure we use to calculate the hourly grid-specific biogenic emissions for the ROM in Figure
6.1, and describe it below.  Our procedure provides the flexibility to update vegetation-specific emission fac-
tors, and allows us to evaluate the importance of an individual vegetative species in the modeling domain. We
calculate the hourly emission rate for an individual grid cell and a specific hydrocarbon compound (or group
of compounds) by adjusting the vegetation-specific emission factors for canopy (forest)  and  noncanopy
(nonforest) areas to reflect variations in the meteorological episode being modeled, and then summing the
canopy and noncanopy emissions.

    6.1 BIOMASS DENSITY BY VEGETATION CLASS

    Data from the Oak Ridge National Laboratory (ORNL) Geoecology Database (Olson, 1980) form the
    basis of the U. S. biogenic emissions inventory for the ROM. The database contains county-level land
    cover data for classes of natural vegetation, agricultural crops, urban areas, and water. Table 6.1 lists
    examples of vegetative species included in the biogenic emissions inventory system by vegetation class.
                                              255

-------
       Apportion county
       data to grid cells;
        reconcile data
                                            Meteorology
                                            processors
                                          Processor
                                            P27G
                                     Calculate standard emissions;
                                          correct and sum
 Gridded
 biogenic
emissions
                      Figure 6.1. The biogenic emissions inventory system.

The Landsat data set (Page, 1980), which reports data in standard NAPAP grid cells, and vegetation data
from Matthews (1984) form the basis of the Canadian biogenic emissions inventory. For the portion of
Canada south of 55° N latitude, we used the Landsat data set to determine the types of vegetation pres-
ent by land cover class (Page, 1980). However, the Landsat database contains no data for areas north of
55" N  latitude; if you require data north of this latitude, you can use the vegetation, land use, and
seasonal albedo data sets of Matthews (1984). Note that the Matthews data specify only one vegetation
type for each 1°  latitude by 1°  longitude square.
                                          256

-------
      TABLE 6.1. VEGETATION CLASSES IN THE BIOGEN1C EMISSIONS INVENTORY SYSTEM

      Vegetation class                           Examples

                                       CANOPY (FOREST)
   Natural vegetation:
       Oak                            Oregon oakwoods, oak savanna, oak-hickory
       Other deciduous                 Elm-ash, northern hardwoods, beech-maple
       Coniferous                      Cypress savanna, Douglas fir, conifer bog

                                   NONCANOPY (NONFOREST)
   Natural vegetation:
       Scrubland                       Creosote bush, chaparral, coastal sagebrush
       Grassland                       Fescue-oatgrass, northern cordgrass, prairie

   Agricultural crops:                   Alfalfa, barley, corn, cotton, hay, oats, peanuts, potatoes, rice,
                                       rye, sorghum, soybeans, tobacco, wheat, miscellaneous crops

   Urban area:                         Urban grass, urban trees

   Water (fresh and salt):                Inland lakes

   Barren area:                         Tundra, ice, alpine meadows, desert


       6.1.1 Natural Vegetation Area

       The ORNL Geoecology Potential and Adjusted Vegetation Data File uses Kuchler's vegetation
       codes (001-106) to identify natural vegetation.  We categorized these into five natural vegetation
       classes:  oak forests, other deciduous forests, coniferous forests, scrubland, and grassland.

       For Canada, we assigned the vegetation types within the Matthews (1984) and the Landsat (Page,
       1980) data sets to one of the above five natural vegetation classes. We calculated the area allocated to
       each class in each NAPAP grid cell. However, there was no direct correspondence to the oak class for
       either data sets. Therefore, we allocated a zero area to this class.1
1.  A percentage of the deciduous areas could be allocated to the oak class if that percentage is known.

                                              257

-------
Oak, other deciduous, and coniferous forests are categorized as canopy (forest) vegetation classes.
Canopy emissions are determined by biomass density, a measure of the dry leaf biomass per unit area
(kg/ha). Table 6.2 presents the biomass density for the three canopy vegetation classes.


                   TABLE 6.2. FOREST BIOMASS DENSITY ESTIMATES
Forest biomass density (kg/ha) by canopy vegetation class
Forest biomass class
Deciduous high isoprene
Deciduous low isoprene
Deciduous nonisoprene
Coniferous nonisoprene
Oak
1,850
600
600
700
Other deciduous
600
1,850
900
1350
Coniferous
390
260
260
5,590
Source: Lamb a al., 1987.
For a single canopy class, we use four forest biomass classes to describe the mix of forest vegetation,
including undergrowth, within that class. All oaks (and some other deciduous tree species) that emit
>10 Mgisoprene/(gbiomass •  n) at temperatures near 30° C  are grouped together as high isoprene
emitters. All deciduous tree species with an emission rate <10 A»gisoprene/(gbiomass • h) are consid-
ered low isoprene emitters. Deciduous and coniferous tree species that do not emit isoprene make up
the two remaining forest biomass classes.

Natural vegetation  areas of scrubland and grassland are noncanopy (nonforest) vegetation classes.
For these vegetation classes, as well as the agricultural crop class, we determine hydrocarbon emis-
sions using emission factors expressed as a function of land area.  Thus, biomass density is not calcu-
lated directly.

6.1.2 Agricultural Crop Area

The agricultural crop data are from the ORNL Geoecology Crop Areas and Yields Data File. The
crops included in the biogenic emissions inventory are: alfalfa, barley, corn, cotton, hay, oats, pea-
nuts, potatoes, rice, rye, sorghum, soybeans, tobacco, wheat, and miscellaneous crops.

For Canada, neither the Matthews (1984) data set nor the Landsat (Page,  1980) data set assigned
specific agricultural classes.  Therefore, we made agricultural class assignments along latitude and
longitude lines (see Figure 6.2), using cash crop data by Province from atlases. Where only the broad
crop category "grain" was listed, the area was assigned 25% wheat and 75% oats, since oats, barley,
                                         258

-------
and rye all have the same emission factor. Where wheat was specifically listed, the area was assigned
75% wheat and 25% oats.  Where no specific crop was listed, the area was assigned to the miscella-
neous crops class.
                                                                             STN
                                                                                 45*N
                                                                                    «TN
                                                                       SMHqr
                      Figure 6.2. Canadian agricultural class assignments.
6.1.3 Urban Area
The ORNL Geoecology Land Areas Data File specifies urban, rural, road, water, and federal land
areas.  Urban areas include suburban areas if the same area has not been included as agricultural
crops or natural vegetation.

To account for hydrocarbon emissions from grass and trees in an urban area, we used the results from
two  studies.  Zimmerman (1979) showed that residential areas made up 14.6% of an urban area.
Winer et al. (1983) showed that trees covered 9.7% of an urban area, and that ground cover comprised
more than 17.1% of the area. For purposes of ROM modeling, we assumed that 20% of an urban
area is covered by grasses; a further 20% is covered by trees, where this area is evenly distributed
among oak, other deciduous, and coniferous categories.

Note that the Matthews data  set does not define urban areas.
                                       259

-------
   6.1.4 Water and Barren Areas

   Water areas are also determined from the ORNL Geoecology Land Areas Data File (for the United
   States) and the Landsat data set (for Canada).  Oceans and the Great Lakes are not included in the
   biogenic emissions inventory. However, smaller water areas such as lakes and rivers are included if
   the grid cell that they are in is not 100% water. Also included in the biogenic emissions inventory are
   any barren areas, such as tundra, ice, alpine meadows, and desert  Areas of water and barren land are
   used only in the reconciliation of the total area for the county and the grid cell.

6.2 ADJUSTMENT OF BIOMASS DENSITY

   6.2.1 Growing Season

   We used first and last frost dates to determine the growing season for vegetation. We acquired these
   data from (1) the ORNL Geoecology Growing Season Data File for counties in the United States,
   and (2) seasonal data  for Canada (Kaplan, N., U.S. Environmental Protection Agency,  personal
   communication, January 4, 1989).  For simplicity, we assume that deciduous (i.e., nonconiferous)
   vegetation is at full biomass between the last frost date and the first frost date, and at zero biomass for
   the rest of the year. We assume that coniferous vegetation is at full biomass over the entire year.

   6.2.2 Layering of Forest Biomass

   We vary canopy biomass as a function of canopy height to simulate vertical forest structure.  We
   assume that deciduous forest biomass classes (including high isoprene, low isoprene, and noniso-
   prene) have a canopy height of 15 m, while the coniferous nonisoprene biomass class has a canopy
   height of 20m.

   Table 6.3 presents the height and the estimated fraction of biomass for each layer (6. Lamb, Wash-
   ington State University, personal communication, 1989).
                                           260

-------
                     TABLE 63. LAYERS FOR FOREST BIOMASS CLASSES
                                                                   Fraction of biomass
     Layer variable name               Layer height, m                    by layer

                     DECIDUOUS (High Isoprene, Low Isoprene, Nonisoprene)
     LAI                              3.75 - 5.25                        0.00
     LA2                              5.25 - 6.75                        0.00
     LA3                              6.75 - 8.25                        0.02
     LA4                              8.25 - 9.75                        0.11
     LAS                              9.75 -11.25                        0.22
     LA6                             11.25 -12.75                        0.35
     LA7                             12.75 -14.25                        0.22
     LAS                             14.25 -15.00                        0.09

LA9
LA10
LA11
LA12
LA13
LA14
LA15
LA16
CONIFEROUS
5.0- 7.0
7.0- 9.0
9.0-11.0
11.0-12.0
12.0 - 15.0
15.0 - 17.0
17.0 - 19.0
19.0 - 20.0

0.025
0.050
0.150
0.215
0.215
0.165
0.120
0.050
    Source: B. Lamb, Washington State University, personal communication, 1989.

6.3 EMISSION FACTORS

Vegetation-specific emission factors are available for the following hydrocarbon compounds: isoprene,
Q-pinene, other identified monoterpenes (excluding a-pinene), and other unidentified hydrocarbons.
Emission rates of the unidentified hydrocarbons can be estimated.  The reactivity of the unidentified
hydrocarbons is uncertain; we assume that about 95% of the unidentified compounds are reactive, and are
evenly split between terpenoid and oxygenated compounds.

    6.3.1  Canopy
    Table 6.4 lists the compound-specific emission factors  [in units of j*gcompound/(gbiomass •  h)] for the
    forest biomass classes.
                                          261

-------
                   TABLE 6.4. CANOPY EMISSION FACTORS AT 30°C
      Hydrocarbon compound
                                                                  Canopy emission factor,
                                                                       j/*Scompound/
 Forest biomass class
Isoprene
a-pinene
Other identified monoterpenes
Other unidentified hydrocarbons
Deciduous high isoprene
Deciduous low isoprene
Deciduous nonisoprene
Coniferous nonisoprene
Deciduous high isoprene
Deciduous low isoprene
Deciduous nonisoprene
Coniferous nonisoprene
Deciduous high isoprene
Deciduous low isoprene
Deciduous nonisoprene
Coniferous nonisoprene
Deciduous high isoprene
Deciduous low isoprene
Deciduous nonisoprene
Coniferous nonisoprene
14.69
 6.60
 0.00
 0.00
 0.13
 0.05
 0.07
 1.13
 0.11
 0.05
 0.07
 1.29
 3.24
 1.76
 1.91
 1.38
Source: Lamb « a/., 1987.


The canopy emission factors are standardized to 30°C  using the temperature relationship of Tingey
(1981).  Each emission factor represents the geometric mean emission rate for a forest biomass class
(Lamb etal., 1990).

The compound-specific emission flux by vegetation class (oak, other deciduous, or coniferous) is the
product of the forest biomass density for the vegetation class (from Table 6.2) and the canopy emis-
sion factor for the hydrocarbon compound (from Table 6.4), summed over the four forest biomass
classes.


6.3.2 Noncanopy

Table 6.5 lists the noncanopy emission  factors [/igcompound/(m2  •  h)],  and the hydrocarbon
compound-specific emission composition (%) for the noncanopy vegetation classes.

Emission rates for a specific hydrocarbon compound can be calculated by multiplying the surface land
area (for each vegetation class) by the appropriate emission factor and the fraction of hydrocarbon
compound composition.
                                       262

-------
   TABLE 6.5.     NONCANOPY EMISSION FACTORS AT 30 °C AND ESTIMATED PERCENT
                   COMPOSITION OF EMISSIONS
Estimated emissions composition (%)
Noncanopy Noncanopy
vegetation emission factor,
Class [/igcompound/(m2«n)]
Natural Vegetation:
Grass
Scrub*
Agricultural Crops:
Alfalfa
Barley f
Corn
Cotton f
Hay
Oatsf
Peanuts
Potatoes
Rice
Ryef
Sorghum
Soybeans
Tobacco
Wheat
Misc. crops f
Water: j
Barren Area: j

281.0
189.0

37.9
37.9
3,542.0
37.9
189.0
37.9
510.0
48.1
510.0
37.9
39.4
22.2
294.0
30.0
37.9


Isoprene

20
20

50
20
0
20
20
20
20
20
20
20
20
100
0
50
20


a-
pinene

25
25

10
25
10
25
25
25
25
25
25
25
25
0
10
10
25


Other
mono-
terpenes

25
25

10
25
10
25
25
25
25
25
25
25
25
0
10
10
25


Other
unidentified
hydrocarbons

30
30

30
30
80
30
30
30
30
50
30
30
30
0
80
30
30


    Source: Lamb a. al., 1987.
    * Emission {actor is assumed to equal the hay emission factor.
    f Emission factor is assumed to equal the alfalfa emission factor.
    $ Used only in the reconciliation of land area.

6.4 ADJUSTMENT OF EMISSION FACTORS

    6.4.1 Tingev Temperature and Solar Intensity Corrections

    Several studies have shown the effects of temperature and solar intensity on hydrocarbon emissions.
    We adjust the gridded compound-specific emission factors for variations in temperature and solar
    intensity with Tingey's curves (Tingey, 1981).  Tingey"s laboratory work with slash pine and live oak
    has yielded logarithmic equations to describe the increase in isoprene emissions due to the combined
    effect of temperature and solar intensity, and the increase in nonisoprene emissions due to tempera-
    ture only. These equations are listed below.
                                          263

-------
For isoprene emissions,
                       adj
                             -   E
30
                                             10
                                                 (IT
                 exp[-6(T-c)]
                              - d
      where:  E adj is the adjusted emission factor at temperature T [ /Jgisoprene/Cgbiomass • h) ].an(1
       E 30 is the emission factor at 30 °C  [ /Jgisoprcne/febiomass • h) ]
       T is the hourly ambient temperature (°C),  used as a surrogate for leaf temperature

Table 6.6 lists the equation coefficients a, ft, c, d, and e for four levels of light intensity (/iE/m2, where
/lErepresents micro-einsteins, a unit of light energy). For light intensities not listed, we used linear
interpolation to calculate the adjusted emission factors.  Note that the biogenic emissions inventory
system for the ROM uses cloud cover data to attenuate light intensity values on an hourly basis.

TABLE 6.6.     ISOPRENE TEMPERATURE AND SOLAR INTENSITY ADJUSTMENT COEF-
                FICD2»fTS
Isoprene equation coefficient (unitless)
Light intensity
I/iE/(m2.S)]*
800
400
200
100

a
1.200
0.916
0.615
0.437

b
0.400
0.239
0.696
0.312

c
28.30
29.93
32.79
31.75 ,

d
0.796
0.462
0.077
0.160

e
1.00
1.95
4.75
10.73
 Sources: Tingey, 1981, and Pierce a al., 1990a.
 * ftE represents micro-einsteins, a unit of light energy.

 The coefficients for light intensity of 800 /jE/m2 were modified from Tingey's values to match a light
 intensity of 400 /jE/m2 for temperatures of less than 29°C  Also, the original  Tingey equation
 expressed emissions in terms of /igcarbonmass/dm2 leaf area; the isoprene equation presented above
 includes unit conversions (68/60 represents the ratio of isoprene mass to carbon mass; 1.205 is the
 number of grams of biomass per square decimeter of leaf area).
                                        264

-------
For nonisoprene emissions (a-pinene, other identified monoterpenes, and other unidentified hydro-
carbons),

                           £adj  =  E30  •   exp(a  [7-30])

where:  E ,„j is the adjusted emission factor at temperature T [ /ignonisoprene/(gbiomass •  n) ]
        E 30 is the emission factor at 30 °C  [ A»gnonisoprene/(gbiomass •  h) ]
        T is the hourly ambient temperature (°C), used as a surrogate for leaf temperature.


The emission factor in Tingey*s equation was expressed in units of Mgcarbonmass/(gbiomass*h).   The
nonisoprene equation presented above has been converted to  units of /igcompound/(gbiomass'h);
136/120 represents the ratio of nonisoprene mass (as a-pinene) to carbon mass. Table 6.7 lists the
coefficient a of the nonisoprene adjustment equation by hydrocarbon compound.

	TABLE 6.7. NONISOPRENE TEMPERATURE ADJUSTMENT COEFFICIENTS	
                                          Nonisoprene equation coefficient (unitless)
  Hydrocarbon compound                                     a
a-pinene                                                   0.067
Other identified monoterpenes
   (excluding a-pinene)                                    0.0739
Other unidentified hydrocarbons                             0.0739
Source: Tmgey, 1981; Pierce tt al., 1990a.

6.4.2  Layered Correction Factors for Forest Biomass Classes

A canopy model has been developed by the Laboratory for Atmospheric Research at Washington
State University (Gay, 1987). It is used to adjust emission factors for the four forest biomass classes
(deciduous high isoprene, deciduous low isoprene, deciduous nonisoprene, and coniferous noniso-
prene).

Typical leaf biomass profiles are assumed for the deciduous and coniferous forest types (as discussed
in Section 6.2.2); the leaf area indices corresponding to these biomass profiles are apportioned into
eight vertical layers for each forest type.
                                        265

-------
   The canopy model utilizes hourly meteorological data for the episode, including ambient tempera-
   ture, solar radiation, relative humidity, and wind speed.  Meteorological input data are assumed to
   represent the top of the canopy. Within each layer and for each of the two forest types, the canopy
   model uses  an iterative approach to compute the leaf-radiation balance of a typical leafs surface.
   Solar radiation is exponentially reduced through the layers with the rate being a function of the bio-
   mass distribution. The rate of solar attenuation increases more rapidly for the photosynthetically-
   active region of the solar spectrum than for the rest of the spectrum, since leaves preferentially absorb
   visible light (Baldocchi etal., 1984).

   Both the total solar spectrum and the visible spectrum subset are calculated over the eight levels of
   the hypothetical canopies. The calculated total solar radiation is used to compute the leaf tempera-
   ture at each level using the radiation balance equation of Gates and Papian (1971).
    The final output from this process consists of values of leaf temperatures and photosynthetica!
    active radiation for the eight layers in the two forest types.  We then use these data when applying i
    TtnrtAi; r»niT<»/»tir*rt fo/*t/\*«
                                                                                    etically-
                                                                                      jthe
Tingey correction factors.
6.5 CALCULATION OF BIOGENIC EMISSIONS

For the forest biomass classes, we multiply the layered biomass by the canopy emission factors to arrive at
the layered standardized emissions. These emissions are then adjusted by the layered Tingey correction
factors; we sum the results to produce canopy emissions.

For the noncanopy vegetation classes, we multiply the biomass area by the noncanopy emission factors to
arrive at the standardized emissions. These emissions are then adjusted using the Tingey curves to pro-
duce noncanopy emissions.  The canopy and noncanopy emissions are then summed for each grid cell.

6.6 QUALITY CONTROL

Quality control efforts by the EPA have focused on reconciling land area values. The sum of the areas
allocated to all the vegetation classes in a county (natural vegetation, agricultural crops, urban, water, and
barren areas) must equal the total area of the county.  Similarly, the sum of the areas allocated to all the
vegetation classes in one grid cell must equal the total area of the grid cell. Thus, we account for all the
land area in a county or grid cell.

New or revised emission factors resulting from further studies of hydrocarbon emissions from vegetative
species will be incorporated into the biogenic emissions inventory system.
                                            266

-------
   6.7  BIOGENICS EMISSIONS PREPROCESSING: THE BIOGENIC  EMISSIONS INVENTORY
        SYSTEM (BEIS)

   There are 29 SAS® routines that render the data from the Geoecology database to a form suitable for
   input into the biogenic preprocessors for the ROM.2 Documenting these routines is beyond the scope of
   this document; however, a User's Guide for the BEIS will be forthcoming.

       6.7.1 SAS Routines to Process Biogenic Emissions

       INIT.SAS       Sets  up the SAS system options and defines  the data set library to be used.
                       Included into all of the SAS programs.

       L08IN.SAS      Reads land-type area data (L08.DAT) into a SAS data set (L08.SSD).

       REGIN.SAS     Creates a county list from the county-to-grid data set. Sums the pieces by county
                       and stores along with the L08.DAT nonwater area. This data set is used to extract
                       only those counties within the region.

       INDEP.SAS     Corrects independent cities, mostly in Virginia, by removing the area from the
                       county they are contained in.

       A06IN.SAS      Reads crop data (A06.DAT) into a SAS data set (A06.SSD) and drops Alaska and
                       Hawaii.

    .   A06QA.SAS     Extracts and totals for counties in the region. Looks for zero agricultural areas,
                       for agricultural areas greater than county areas, and for counties with yields but no
                       matching areas.

       C18IN.SAS      Reads frost dates (C18.DAT) into a SAS data set (C18.SSD).

       C18QA.SAS     Extracts the counties in the region. Looks for missing dates or missing counties.

       C18FTX.SAS     Sets  up the frost dates for the Western U.S. counties that may be in the region.

       D04IN.SAS      Reads natural vegetation data (D04.DAT) into a SAS data set (D04.SSD).

       D04QA.SAS     Extracts and totals the counties in the region. Looks for counties with no natural
                       vegetation (usually urban areas), and for counties with more natural vegetation
                       than the area in the county.
2.  SAS is a registered trademark of (be SAS Institute, Inc., Gary, NC

                                             267

-------
L08QA.SAS     Extracts the counties in the region. Compares nonwater areas to county area from
                the FTPSCO.SSD data set; looks for counties with zero urban area.

REGROM.SAS  Creates region data sets by extracting the counties in the region from A06.SSD,
                D04.SSD, L08.SSD, and C18.SSD - drops all unnecessary variables and merges
                western frost dates with C18.SSD data set

DJQA.SAS      Using the QA  county total data  sets (CTYA06.SSD,  CTYD04.SSD, and
                CTYL08.SSD), compares nonwater area of county to the sum of the natural
                vegetation areas, the agricultural areas, and the urban areas. Looks for  counties
                with large (>50%) amounts of land not accounted for; looks for counties with
                large (>50%) amounts of land over-accounted for; no corrections are made.

VEGIN.SAS    Reads the Matthews vegetation data into a SAS data set (VEGTYPE.SSD).

CULTIN.SAS   Reads the Matthews cultivation data into a SAS data set (CULTLND.SSD).

CANADA.SAS  Using the gridded U.S. counties, determines the data cells that are partially in the
                U.S. and partially in Canada.  This will be used to window out the Canadian data
                from the other data sets.

CANVEG1.SAS Calculates the area of cultivated land  in the Canadian grid cells north  of 55
                degrees latitude from the Matthews data set Assigns crop types to the cultivated
                land.

CANVEG2.SAS Calculates the area of natural vegetation in the Canadian grid cells north of 55
                degrees latitude from the Matthews data set. Assigns the vegetation types to the
                forest and nonforest vegetation classes.

CANVEG3.SAS Calculates the amount of cultivated land and the amount of natural vegetation in
                 the Canadian grid cells south of 55 degrees latitude from the Land Use data set.
                Assigns crop types to the cultivated land.  Assigns the vegetation types to  the
                 forest and nonforest vegetation classes.

CANVEG4.SAS  Combines the Canadian data sets to create gridded canopy and gridded noncanopy
                 data sets for merging with the U.S. data sets.

FTXLND.SAS    Adjusts vegetation areas: if land data is missing (or not accounted for), then save
                 as "other" land ; if land is over accounted for, then reduces the natural vegetation
                 evenly. Groups and totals vegetation areas into the following canopy types: oak,
                                       268

-------
                deciduous, coniferous, and into the following noncanopy types: scrub, grass, bar-
                ren, water, urban, corn,  wheat, oats,  barley,  sorghum, hay, soybeans,cotton,
                tobacco, potatoes, rice, peanuts, rye, and miscellaneous crops.

FIXQASAS     Compares adjusted vegetation areas to total area in the county. Looks for totals
                that remain over the county area. Reduces the following types evenly: oak, decid-
                uous, coniferous, scrub, grass, and, if necessary, the crops.

GRDROM.SAS  Converts the county data for the U.S. to the NAPAP-size grid cells.  Grids both
                the vegetation and the frost dates.

URBVEG.SAS  Using the gridded urban areas, adds 20% urban grass and  20% urban trees
                (evenly: oak, deciduous, and coniferous) to the gridded vegetation.  Currently ,
                this routine adds the urban trees to the other trees; later, these data will be pro-
                cessed as pan of the noncanopy data.

CANC18.SAS    Creates gridded frost dates  for the Canadian grid cells.   Merges with  the U.S.
                gridded frost dates.

GRWSEA.SAS  Determines growing months for nonconiferous vegetation.

CANVEG5.SAS  Merges the gridded Canadian canopy and noncanopy data sets with the gridded
                U.S. canopy and noncanopy data sets.

BIOFAC.SAS    Calculates monthly biomass factors for the canopy types (oak, deciduous,  and
                coniferous) and calculates monthly biomass flags for the noncanopy types.

6.7.2 SAS Data Sets

A06.SSD          Crop data - entire U.S.

C18.SSD          Frost dates - Eastern US.

D04.SSD          Natural vegetation - entire U.S.

L08.SSD          Land areas - entire U.S.

CTYROM.SSD    County to grid cell conversion - entire U.S.

REGCTY.SSD    Counties in region
                                      269

-------
FIPSCO.SSD      County FffS (Federal Information Processing Standards) codes and areas from
                 various databases

CTYA06.SSD     QA - county total agriculture

CTYD04.SSD     QA - county total natural vegetation

CTYL08.SSD     QA - county areas

CHKLND.SSD    QA - combined total area in each county

WESTFRS.SSD   Frost dates - counties in Western U.S.

REGA06.SSD     Crop data - counties in region

REGC18.SSD     Frost dates - counties in region

REGD04.SSD     Natural vegetation - counties in region

REGL08.SSD     Land areas - counties in region

CANOPY.SSD    Canopy vegetation areas to be gridded

NONCNPY.SSD   Noncanopy vegetation areas to be gridded

REGGRD.SSD   County to grid cell conversion data for region

CANC18.SSD     Gridded Canadian frost dates

CULTLND.SSD   Matthews cultivation data

VEGTYPRSSD   Matthews vegetation data

USA.SSD        Grid cells that are partially U.S., partially Canada

LNDUSE.SSD    Gridded landuse percentages - U.S. and Canada

CANVGG.SSD   Landuse data for grid cells in USASSD and for grid cells in Canada - south of 55
                 degrees latitude.

CANVGG2.SSD   Land use data for Canadian grid cells only - south of 55 degrees latitude.

CANCULT.SSD   Canadian portion of CULTLND.SSD - north of 55 degrees latitude

ANCROP.SSD   Canadian crops for cultivated areas - north of 55 degrees latitude

                                     270

-------
   CANVEG.SSD    Canadian vegetation from VEGTYPE.SSD - north of 55 degrees latitude


   CNATVEG.SSD   Canadian vegetation by vegetation class - north of 55 degrees latitude


   CANCROP2.SSD  Canadian crops for agricultural areas - south of 55 degrees latitude


   CNATVEG2.SSD  Canadian vegetation by vegetation class - south of 55 degrees latitude


   CANNCPY.SSD   Canadian gridded noncanopy data


   CANCNPY.SSD   Canadian gridded canopy data


   GRDC18.SSD     Gridded frost dates - U.S. and Canada


   GCNPY.SSD      Gridded canopy vegetation areas - U.S. and Canada


   GNCNPY.SSD    Gridded noncanopy vegetation areas - U.S. and Canada


   GURVEG.SSD    Gridded urban vegetation areas - U.S. and Canada


   GRWFAC.SSD    Monthly growing season flags for nonconiferous vegetation


   CNPBIOFCSSD   Monthly canopy biomass factors


   NCBIOFC.SSD    Monthly noncanopy biomass flags




6.8 PREPROCESSOR ROMREG


 I.    PREPROCESSOR FUNCTION


      This preprocessor is a SAS routine that  windows the National Acid Precipitation Assessment

      Program (NAPAP: Sellars a al., 1985) canopy foliar biomass data to the boundaries of the

      ROMNET modeling domain, and renumbers the windowed grid cells to the local coordinates. The

      windowing code is as follows; it is shown so that you can window the NAPAP data to your model-

      ing domain:


           IF NAPAP COK161 OR NAPAP COL>224 OR NAPAP ROW<69 OR NAPAP ROW>120 THEN DELETE;
           COLADJ=160;    *  rennet column adjustment;
           ROWADJ=68;     *  rennet row adjustment;
           COL=COL-COLADJ;
           ROW=ROW-ROWADJ;
                                       271

-------
II.   VO COMPONENTS

     A  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            a.  CNPBIOFCSSD
                This file contains the NAPAP gridded monthly canopy foliar biomass density, classi-
                fied as (1) the "biomass class" (high-, low-, or non-isoprenes-generating biomass den-
                sity, as well as conifer biomass density), and (2) the forest class.  CNPBIOFCSSD is
                input using standard SAS statements; its parameters are described in Table 6.8.

                               TABLE 6.8. CNPBIOFCSSD PARAMETERS
Pann
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Parm
Name
COL
ROW
MONTH
OAKHljjjMf
OAKLljjjMM
OAKNfy^Af
OAKCFy^A/
DECDHIy^Af
DECDLIy^w
DECDNl^
DECDCFy^/
CONFHIijjuM
CONFLIy^Af
CONFNI^
CONFORM
Unit



kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
kg-ha-i
Data
Type
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real'8
Real's
Real'8
Real'8
Real'8
Real'8
Real'8
Real'8
Real'8
Description
Column
Row
Month as MM
Hl-b.d. in an oak forest
Ll-b.d. in an oak forest
Nl-b.d. in an oak forest
Coniferous b.d. in an oak forest
Hl-b.d. in a deciduous forest
Ll-b.d. in a deciduous forest
Nl-b.d. in a deciduous forest
Coniferous b.d. in a deciduous forest
Hl-b.d. in a coniferous forest
Ll-b.d. in a coniferous forest
NI-b.d. in a coniferous forest
Coniferous b.d. in a coniferous forest
              Note:   i = column number,; -= row number, MM » month; HI - high isoprenes, LI = low isoprenes, NI =
                     nonisoprenes, b.d. •= biomass density.

             b.   NCBIOFCSSD

                 This file contains the NAPAP gridded monthly noncanopy (nonforest) biomass den-
                 sity as either "on" or "off." (If the noncanopy biomass density for a grid cell is "on,"
                                          272

-------
   biogenic  emissions  for  that  grid cell  are internally  calculated  in  P27G.)
   NCBIOFGSSD is input using standard SAS statements; its parameters are described
   in Table 6.9.
                  TABLE 6.9. NCBIOFC.SSD PARAMETERS
Farm
No.
1
2
3
4
Farm
Name
COL
ROW
MONTH
BK-FAq^
Data
Unit Type
Real'S
Real's
Real'S
Real's
Description
Column
Row
Month as MM
Noncanopy biomass density:
1 = on; 0 = off
 Note:   i =column number,; = row number, MM — month.

c.  GCNPY.SSD

   This file contains the gridded canopy (forest) land area. GCNPY.SSD is input using
   standard SAS statements; its parameters are described in Table 6.10.

                   TABLE 6.10. GCNPY.SSD PARAMETERS
Farm
No.
1
2
3
4
5
Farm
Name
COL
ROW
OAKy
DECDy
CONFy
Unit


ha
ha
ha
Data
Type
Real*8
Real*8
Real*8
Real*8
Real*8
Description
Column
Row
Oak forest
Deciduous forest
Coniferous forest
 Note: i =column number,; = row number.
d.  GNCNPY.SSD
    This file contains the gridded noncanopy (nonforest) land area. GNCNPY.SSD is
    input using standard SAS statements; its parameters are described in Table 6.11.
                            273

-------
                 TABLE 6.11. GNCNPY.SSD PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Farm
Name
COL
ROW
CRP_MSy
CORNy
WHEATy
OATSy
BARLy
SORGy
SOYBNy
COTTy-
TOBACy
POTATy-
HAYy
ALFAy-
PEANUTy-
RICEy
RYEy'
SCRUBy
GRASSy
URB_GRSSy
WATERy-
Unit


ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
Data
Type
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real's
Real*8
Real*8
Real's
Real*8
Real*8
Real*8
Real*8
Description
Column
Row
Miscellaneous cropland
Corn
Wheat
Oats
Barley
Sorghum
Soybean
Cotton
Tobacco
Potato
Hay
Alfalfa
Peanut
Rice
Rye
Scrub land
Grass land
Urban grass land
Water
 Note: j =column number,/ = row number.

e.  GUTRERSSD

   This file contains the gridded urban canopy (forest) land area. GUTREE.SSD is input
   using standard SAS statements; its parameters are described in Table 6.12.

                 TABLE 6.12. GUTREE.SSD PARAMETERS
Farm
No.
1
2
3
4
5
Farm
Name
COL
ROW
OAKy
DECDy
CONFy
Unit


ha
ha
ha
Data
Type
Real*8
Real*8
Real*8
Real's
Real*8
Description
Column
Row
Oak forest
Deciduous forest
Coniferous forest
 Note: i =column number,;' = row number.
                           274

-------
     B. Output Files

        1.  Standard Output Files

            None


        2.  Nonstandard Output Files

            One nonstandard output file of windowed data is created for each nonstandard input file.
            Each output file contains identical parameters  to the input file. The input and corre-
            sponding output file names are shown below, note that the output files are SAS data files.
            Input file

            CNPBIOFC.SSD
            NCBIOFC.SSD
            GCNPY.SSD
            GNCNPY.SSD
            GUTREE.SSD
                Output file

                RMCNBFC.SSD
                RMNCBFC.SSD
                GCNPYRM.SSD
                GNCNPYRM.SSD
                GUTREERM.SSD
III.   CONTROL CARDS
     None
IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A.  Memory Requirements (1 block = 512 bytes)

                 SAS source files:
                 SAS INCLUDE files:
     B.  Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements:  Log and Print Files
         ROMREG.SAS
         Print Files:
25 blocks
None
                 1  file
                 i  file
                 2  files
15  blocks
_1  block
16  blocks
                       VAX 8650
                        00:24:53
                           336
                         10347
                          2585
                          6164
                                      275

-------
     D. Space Requirements: Input and Output Files

        Table 6.13 shows the input file and output file space requirements.


                           TABLE 6.13. I/O FILE SPACE REQUIREMENTS
File
Group
Input





Output





File
Name
CNPBIOFC.SSD
NCBIOFCSSD
GCNPY.SSD
GNCNPY.SSD
GUTREE.SSD

RMCNBFC.SSD
RMNCBFC.SSD
GCNPYRM.SSD
GNCNPYRM.SSD
GUTREERM.SSD

File
Type
SAS data set
SAS data set
SAS data set
SAS data set
SAS data set

SAS data set
SAS data set
SAS data set
SAS data set
SAS data set

Storage
(in blocks)
49656
2984
12520
13248
2984
81392
3616
104
416
968
104
5208
Scenario
Data Span
lyear
lyear
lyear
lyear
lyear

lyear
1 year
1 year
lyear
lyear

     E. Space Requirements: Tape Files

        None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    None
VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION
    ROMREG.COM follows:
    S !  ACCOUNTING CODE
    $ SET DEFAULT MET53:[SCRATCH.BIOGEN]
      !
      !  ROMREG.COM
      I
      ASSIGN USER2$DISK:[VMO.PREP]INIT.SAS   INIT
      ASSIGN MET53:[SCRATCH.BIOGEN] SYSSSCRATCH

      SUSER2$DISK:CVMQ.PREP]SASSET ROMREG
      SAS USER2$OISK:[VMO.PREP)ROMREG
      ajSER2$DISK:[VMO.PREP1SASTYPE

      EXIT

    (end of run stream)
                                       276

-------
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

     A  Main Program

         ROMREG.SAS
     B.  Subroutines

         None

     C.  Functions

         None

     D.  Block Data Files

         None

VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A  Subroutines

         None

     B. Functions

       None

 IX.  INCLUDE FILES

     INIT.SAS

6.9 PREPROCESSOR NBIOMASS

 I.   PREPROCESSOR FUNCTION

     This preprocessor is a SAS routine that generates monthly biomass statistics from the annual bio-
     mass density files that are produced by preprocessor ROMREG (Section 6.8). These biomass
     output data files are for three types of land cover: (1) forest canopy, with the biomass layered as a
     function of canopy height; (2) noncanopy biomass, e.g., agricultural lands, and (3) urban tree bio-
     mass.
                                      277

-------
II.   I/O COMPONENTS

     A  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            a.   RMCNBFCSSD
                This file contains the NAPAP gridded monthly canopy foliar biomass density for the
                modeling domain, classified as (1) the "biomass class" (high-, low-, or non-isoprenes-
                generating biomass density, as well as conifer biomass density), and (2) the forest class.
                RMCNBFCSSD is input using standard SAS statements; its parameters are described
                in Table 6.14.

                             TABLE 6.14. RMCNBFCSSD PARAMETERS
Parm Parm
No. Name
1 COL
2 ROW
3 MONTH
4 OAKHIy^//
5 OAKHy^/A
6 OAKNI^^fl
7 OAKCFy^
8 DECDHI^
9 DECDLIy>
10 DECDNI^
11 DECDCF^
12 CONFHIy^
13 CONFLIy^
14 CONFNI^A
15 CONFCF^
Note: /' =column nun
Unit



\t kg-ha-i
f kg-ha-i
\f kg-ha-i
M kg-ha-i
«M kg-ha-i
at kg-ha-i
4M kg-ha-i
VA/ kg-ha-i
tM kg-ha-i
fA)f kg-ha-i
«/ kg-ha-i
UM kg-ha-i
iber,; = row number,
Data
Type
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real'8
Real'8
Rears
Real's
Real*8
Real's
Real*8
MM = month;
Description
Column
Row
Month as MM
Hl-b.d. in an oak forest
Ll-b.d. in an oak forest
Nl-b.d. in an oak forest
Coniferous b.d. in an oak forest
Hl-b.d. in a deciduous forest
Ll-b.d. in a deciduous forest
Nl-b.d. in a deciduous forest
Coniferous b.d. in a deciduous forest
HI-b.d. in a coniferous forest
Ll-b.d. in a coniferous forest •
Nl-b.d. in a coniferous forest
Coniferous b.d. in a coniferous forest
HI = high isoprenes, LI '= low isoprenes, NI =
                                         278

-------
b.  RMNCBFCSSD

   This file contains the NAPAP gridded monthly noncanopy (nonforest) biomass den-
   sity for the modeling domain, as either "on" or "off." (If the noncanopy biomass density
   for a grid cell is "on," i.e., there is noncanopy growth and metabolism, then biogenic
   emissions for that grid cell are internally calculated in P27G.)  RMNCBFC.SSD is
   input using standard SAS statements; its parameters are described in Table 6.15.

                 TABLE 6.15. RMNCBFCSSD PARAMETERS
Parm
No.
1
2
3
4
Parm
Name
COL
ROW
MONTH
B.OFA<^
Data
Unit Type
Real'8
Real'8
Real'8
Real'8
Description
Column
Row
Month as MM
Noncanopy biomass density:
1 = on; 0 = off
 Note:   i =oolumn number,; = raw number, MM = month.

c.   GCNPYRM.SSD

    This file contains  the gridded canopy (forest) land area for the modeling domain.
    GCNPYRM.SSD is input using standard SAS statements; its parameters are described
    in Table 6.16.

                 TABLE 6.16. GCNPYRM.SSD PARAMETERS
Parm
No.
1
2
3
4
5
Parm
Name .
COL
ROW
OAKy
DECDy
CONFy
Unit


ha
ha
ha
Data
Type
Real*8
Real*8
Real'8
Real*8
Real'S
Description
Column
Row
Oak forest
Deciduous forest
Coniferous forest
 Note: t =column number,./ = row number.

d.   GNCNPYRM.SSD

    This file contains the gridded noncanopy (nonforest) land area for the modeling
    domain.  GNCNPYRM.SSD is input using standard SAS statements; its parameters
    are described in Table 6.17.
                            279

-------
               TABLE 6.17. GNCNPYRM.SSD PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Farm
Name
COL
ROW
CRP_MSy
CORNy
WHEATy
OATSy-
BARLy-
SORGy
SOYBNy
COTTy-
TOBACy
POTATy
HAYy
ALFAy
PEANUTy
RICEy
RYEy
SCRUBy-
GRASSy
URB_GRSSy
WATERy-
Unit


ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
Data
Type
Real*8
Real'8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real'8
Real'8
Real'8
Real'8
Real'8
Real'8
Real'8
Real'8
Real'8
Description
Column
Row
Miscellaneous cropland
Corn
Wheat
Oats
Barley
Sorghum
Soybean
Cotton
Tobacco
Potato
Hay
Alfalfa
Peanut
Rice
Rye
Scrub land
Grass land
Urban grass land
Water
 Note: / =column number,; = tow number.

e.  GUTREERM.SSD

   This file contains the gridded urban canopy (forest) land area for the modeling
   domain. GUTREERM.SSD is input using standard SAS statements; its parameters
   are described in Table 6.18.

                TABLE 6.18. GUTREERM.SSD PARAMETERS
Farm
No.
1
2
3
4
5
Farm
Name
COL
ROW
OAKy
DECDy-
CONFy
Unit


ha
ha
ha
Data
Type
Real'8
Real'8
Real'8
Real'8
Real'8
Description
Column
Row
Oak forest
Deciduous forest
Coniferous forest
 Note: i = column number,; = row number.
                           280

-------
B.  Output Files
    1.  Standard Output Files
       None
    2.  Nonstandard Output Files

       a.  GCNBIOMM.DAT

           This file contains the monthly gridded canopy biomass data by layer; NBIOMASS
           merges data from GCNPYRM.SSD (the canopy land cover file) and RMCNBFC.SSD
           (the canopy biomass density file). The oak and deciduous forests are combined, and
           represented in terms of the magnitude of emissions of isoprenes.  GCNBIOMM.DAT
           is written as an ASCII file; the SAS output statements are shown below, and the file's
           parameters are shown in Table 6.20.  The leaf area indices that are used to calculate
           the layered biomass are shown in Table 6.19; these attempt to simulate an idealized
           canopy shapes for both a deciduous and a coniferous canopy.

               FILE CNOUT;
               PUT (COL ROW) (3.) (BIOHI1-BIOHI8 BIOLI1-BIOLI8 BIONI1-BIONI8
                                BIOCF1-BIOCF8) (12.3)

                             TABLE 6.19. LEAF AREA INDICES
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Farm
Name
LAI1
LAI2
LAB
LAW
LAIS
LAI6
LAI7
LAIS
LAI9
LAI10
LAI11
LAI12
LAI13
LAI14
LAI15
LAI16
Value
0.00
0.00
0.02
0.11
0.22
0.35
0.22
0.09
0.025
0.050
0.150
0.215
0.215
0.165
0.120
0.050
Data
Type
Real*8
Real'S
Real's
Real's
Real's
Real'S
Real's
Real'S
Real'S
Real'S
Real'S
Real'S
Real'S
Real'S
Real'S
Real'S
Description
Deciduous/oak forest, layer 1, 3.75-5.25 m
Deciduous/oak forest, layer 2, 5.25-6.75 m
Deciduous/oak forest, layer 3, 6.75-8.25 m
Deciduous/oak forest, layer 4, 8.25-9.75 m
Deciduous/oak forest, layer 5, 9.75-11.25 m
Deciduous/oak forest, layer 6, 11.25-12.75 m
Deciduous/oak forest, layer 7, 12.75-14.25 m
Deciduous/oak forest, layer 8, 14.25-15.00 m
Coniferous forest, layer 1, 5.0-7.0 m
Coniferous forest, layer 2, 7.0-9.0 m
Coniferous forest, layer 3, 9.0-11.0 m
Coniferous forest, layer 4, 11.0-12.0 m
Coniferous forest, layer 5, 12.0-15.0 m
Coniferous forest, layer 6, 15.0-17.0 m
Coniferous forest, layer 7, 17.0-19.0 m
Coniferous forest, layer 8, 19.0-20.0 m
         Source: B. Lamb, Washington State University, personal communication, 1989.
                                    281

-------
               TABLE 6JO. GCNBIOA/A/.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
.17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Farm
Name
COL
ROW
BIOHIly
BIOHKy
BIOHISy
BIOHI4y
BIOHISy
BIOHtey
BIOHI7y
BIOHISy
BIOLIly
BIOLI2y-
BIOLISy
BIOLMy
BIOLISy
BIOLKy
BIOLI7y
BIOLISy
BIONIly
BIONKy
BIONISy
BIONI4y-
BIONISy
BIONKy
BIONI7y
BIONISy
BIOCFly
BIOCF2y
BIOCF3y
BIOCF4y
BIOCFSy
BIOCF6y
BIOCF7y-
BIOCFSy
Unit


kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
kg
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
RealM
Real*4
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
Description
Column
Row
High isoprenes, layer 1
High isoprenes, layer 2
High isoprenes, layer 3
High isoprenes, layer 4
High isoprenes, layer 5
High isoprenes, layer 6
High isoprenes, layer 7
High isoprenes, layer 8
Low isoprenes, layer 1
Low isoprenes, layer 2
Low isoprenes, layer 3
Low isoprenes, layer 4
Low isoprenes, layer 5
Low isoprenes, layer 6
Low isoprenes, layer 7
Low isoprenes, layer 8
Nonisoprenes, layer 1
Nonisoprenes, layer 2
Nonisoprenes, layer 3
Nonisoprenes, layer 4
Nonisoprenes, layer 5
Nonisoprenes, layer 6
Nonisoprenes, layer 7
Nonisoprenes, layer 8
Coniferous forest, layer 1
Coniferous forest, layer 2
Coniferous forest, layer 3
Coniferous forest, layer 4
Coniferous forest, layer 5
Coniferous forest, layer. 6
Coniferous forest, layer 7
Coniferous forest, layer 8
 Note: i = column number,; = row number.

b.  GNCBIOAC1/.DAT

   This file contains the monthly gridded noncanopy land cover data; NBIOMASS
   merges  data  from  GNCPYRM.SSD  (the  noncanopy  land  cover  file)  and
   RMNCBFCSSD (the noncanopy biofactor file), and calculates the noncanopy areas
                           282

-------
   of growth (and therefore of biogenic emissions). GNCBIOMM.DAT is written as an
   ASCII file; the SAS output statements are shown below, and the file's parameters are
   shown in Table 6.21.
        FILE NCOUT;
        PUT (COL ROW) (3.) (ALFA SORG HAY SOYBN CORN POTAT TOBAC WHEAT COTT RYE
                RICE PEANUT BARL OATS SCRUB GRASS URB GRASS CRP MS WATER) (12.3)
                TABLE 6.21. GNCBKWM.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Farm
Name
NCCOL
NCROW
ALFAy
SORGy
HAYy
SOYBNy-
CORNy
POTATy
TOBACy
WHEATy
COTTy
RYEV
RICEy
PEANUTy-
BARLy
OATSy
SCRUBy
GRASSy
URB GRSSy
CRP MSy
WATERy
Unit


ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
ha
Data
Type
Real'8
Real'8
Real'8
Real'8
Real'8
Real'8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real*8
Real'8
Real*8
Real'8
Real'8
Real'8
Real'8
Description
Column
Row
Alfalfa
Sorghum
Hay
Soybean
Corn
Potato
Tobacco
Wheat
Cotton
Rye
Rice
Peanut
Barley
Oats
Scrub land
Grass land
Urban grass land
Miscellaneous cropland
Water
 Note: i = column number,; = row number.

c.  GUTBIOAfllf.DAT

   This file contains the monthly gridded urban tree biomass data; NBIOMASS merges
   data from GUTREERM.SSD (the urban tree land cover file) and RMCNBFC.SSD
   (the canopy biomass density file), and calculates the urban tree biomass in terms of the
   magnitude of emissions of isoprenes. GUTBIOMAf.DAT is written as an ASCII file;
   the SAS output statements are shown below, and the file's parameters are shown in
   Table 6.22.
                            283

-------
                   FILE UROUT;
                   PUT (COL ROW) (3.) (BIOHI BIOLI BIONI  BIOCF) (12.3)
                            TABLE 6.22. GUTBIOAfM.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
Farm
Name
COL
ROW
BIOHIy
BIOLIy
BIONty
BIOCFy
Unit


kg
kg
kg
kg
Data
Type
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Description
Column
Row
High isoprenes, deciduous/oak trees
Low isoprenes, deciduous/oak trees
Nonisoprenes, deciduous/oak trees
Coniferous trees
             Note: i =column number,/ = row number.



III.   CONTROL CARDS


     One control card (contained in file CARDIN.CPR) is used to input control data in the following

     format shown below. Table 6.23 defines the control card variables.


                  INFILE CARDIN;
                  LENGTH TINEP 5. REGION $ 8.;
                  INPUT TINEP REGION;
                           TABLE 6.23. CARDIN.CPR VARIABLES
            Variable
             Name
Unit
Description
           TIMEP
           REGION
                 Julian scenario starting date as YYDDD
                 ROM modeling domain
      Example:

      88321 ROMNET1


 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A. Memory Requirements (1 block - 512 bytes)

                 SAS source files:
                 SAS INCLUDE files:
                      1   file
                      2   files
                      3   files
        12   blocks
        _2   blocks
        14   blocks
                                       284

-------
     B.  Execution Time Requirements:
                 Charged CPU time (hh:mm:ss):
                 Buffered I/O count:
                 Direct I/O count:
                 Peak working-set size:
                 Peak virtual size:

     C.  Space Requirements: Log and Print Files
                        VAX 8650
                         00:05:28
                            449
                           1716
                           2909
                           6307
        NBIOMASS.SAS
        Print Files:
25 blocks
None
     D. Space Requirements: Input and Output Files

        Table 6.24 shows the input file and output file space requirements.

                          TABLE 6.24. I/O FILE SPACE REQUIREMENTS
File
Group
Input





Output



File
Name
RMCNBFC.SSD
RMNCBFC.SSD
GCNPYRM.SSD
GNCNPYRM.SSD
GUTREERM.SSD

GCNBIOA/M.DAT
GNCBIOMA/.DAT
GUTBIOMM.DAT

File
Type
SAS data set
SAS data set
SAS data set
SAS data set
SAS data set

Nonstd
Nonstd
Nonstd

Storage
(in blocks)
3616
104
416
968
104
5208
1863
1138
172
3173
Scenario
Data Span
lyear
1 year
lyear
lyear
lyear

1 month
1 month
1 month

     E. Space Requirements: Tape Files

        None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    None


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

    NBIOMASS.COM for November follows:
                                      285

-------
     $ ! ACCOUNTING CODE
     * !
     $ ! *** run stream is in USER2SDISK:[VMQ.PREP]NBIOMASS.COM
       !
       SET VERIFY
       ! assign input  for NBIOMASS
       SET DEFAULT NET53:[SCRATCH.BIOGEN]
       ASSIGN WORK SCRATCH:     SYSSSCRATCH
       ASSIGN USER2$DISK:[VMQ.PREP]INIT.SAS                  INIT
       ASSIGN USER2$DISK:tVMQ.PREP]INIT2.SAS                 INIT2
       ! assign output for NBIOMASS
       ASSIGN MET35:[SCRATCH.VMQ]GCNBIONO.DAT                CNOUT
       ASSIGN MET35:[SCRATCH.VMQ]GNCBIONO.DAT                NCOUT
       ASSIGN MET35:[SCRATCH.VMQ]GUTBIONO.DAT                UROUT
       ! ASSIGN CONTROL CARD(S) FILE
       ASSIGN USER2SOISK:[VMQ.PREP]CARDIN.CPR                CARDIN
       !
       TYPE CARDIN
       SAS$STATUS:=="0"
       !
       SHOW SYMBOL SASSSTATUS
       I
       aUSER2SDISK:[VMQ.PREP]SASSET NBIOMASS
       SAS USER2SDISK:[VMQ.PREP]NBIOMASS
       aUSER2$DISK:[VMQ.PREP]SASTYPE
       EXIT

     (end of run stream)


VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A,  Main Program


          NBIOMASS.SAS

      B.  Subroutines


          None


      C.  Functions


          None


      D.  Block Data Files


          None


VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


      A.  Subroutines


          None


      B.  Functions


          None


 IX.   INCLUDE FILES


      INIT.SAS
      IN1T2.SAS


                                            286

-------
                                        SECTION 7

         MISCELLANEOUS PREPROCESSORS AND OTHER PROGRAMS
This section describes seven preprocessing programs. The first two (ozone boundary conditions, Section 7.1,
and CVCHEM, Section 7.2) pertain to the ROM's boundary conditions and initial conditions respectively.
Section 7.3 describes how digital line data are retrieved from U.S. Geodata.  Section 7.4 explains the
inversion-decision paradigm (a component of processor P03G) as executed by preprocessor MASK. TEM-
PROC calculates the meteorology variables required by P26G, and is documented in Section 7.5. Section 7.6
shows you how to operate the PFMFCOPY program.  Section 7.7  highlights SHOWMET, the graphics
program that plots the output from the meteorology preprocessors.

    7.1 PREPROCESSING OZONE BOUNDARY CONDITIONS

     I.   FUNCTION

         These preprocessing steps generate boundary conditions of ozone concentrations.  The input data
         consist of hourly ozone observations that you can obtain from the U.S. Environmental Protection
         Agency's (EPA)  National Air Data Branch (Research Triangle Park, NC 27709; telephone
         (919)541-5583). In general, however, any valid set of ozone monitoring data will suffice.

         We estimate daytime and nighttime average ozone concentrations for the southern and western
         boundaries of the modeling domain. Thus far, we have used ad hoc procedures to manipulate
         windowed data in a Lotus 1-2-3®  spreadsheet1  We offer the methodology discussed below as a
         guideline to users who need to develop their own boundary conditions.  We followed these steps
         for assembling ozone boundary data file in the ROMNET modeling domain.  Note that we
         accomplish all the steps using 1-2-3; we then transfer the ASCII data from a PC to the VAX with
         Kermit-MS.2
 1. Lotus and 1 -2-3 are registered trademarks of Lotus Development Corporation.
 2. Kermit is available from Kennit Distribution, Columbia University Center for Computing Activities, 612 West 115th St., New York,
   NY 10025.

                                            287

-------
            Identify the region of overlap along the model's boundary. This region includes ozone moni-
            toring sites as shown in Figure 7.1. For the ROMNET domain, sites are selected from the
            following window: along the southern boundary, 35°N to 38°N; along the western boundary,
            78.5°W  to 87°W.  Monitoring data for the northern  boundary (Canada) and the eastern
            boundary (Atlantic Ocean) are not available for the ROMNET application. However, we
            encourage you to seek additional sources of ozone monitoring data.
            Select hourly observations from sites in the overlap region. We select only stations designated
            as rural in order to avoid nearby urban effects. We also limit our choice to stations below 1000
            feet in elevation, because high elevation sites tend to represent ozone concentrations in layer 2
            of the ROM. We obtain the raw data from EPA's Aerometric Information Retrieval System
            (AIRS).  We recommend that you include data beginning a day prior to the start of the model
            simulation through the last day of the model simulation.
            Divide the hourly observations into daytime and nighttime groups.  Daytime includes data
            from 1000 to 1559 local standard time  (LST), while nighttime includes data from 2200 to 0359
            LST. Data for other times are associated with transitional periods and are not used. For each
            site, we use concentrations for a gfren daytime or nighttime period only if at least five hours of
            data are valid.3 This satisfies the EPA guidance of requiring 75% data recovery.
            Compute the nighttime average. The nighttime average at each site is the arithmetic mean of
            the valid nighttime hourly observations. Hourly concentrations below 20 ppb are considered
            invalid because they imply the occurrence of local scavenging processes. A nighttime average
            for each day is formed from the arithmetic mean of all valid site averages. Nighttime averages
            are not separated geographically because so few stations (usually fewer than 20) have mean
            nighttime concentrations  <20 ppb.  Consequently, nighttime averages are the same at each of
            the four boundaries.
            Compute the daytime average. This step is slightly more complex than the computation of
            nighttime averages because each boundary is considered separately. For the  southern bound-
            ary of ROMNET, we average sites delimited by 35°N - 38°N   and 75.8°W - 87°W   for each
            daytime period. For the western boundary of ROMNET, we average sites that are delimited by
            35°N-44°N   and 83°W - 87°W.  Some overlap does occur in the southwestern corner of the
            domain, and we use sites in this area twice.  We then  assign the minimum value from the
            averages computed for the southern and western boundary to be the average for the northern
            and eastern boundaries. We assume the minimum value to be valid since these two boundaries
            are largely removed from ozone precursor emissions;  thus, they tend to experience lower
            ozone concentrations.
            Assemble the data file. The data file consists of the Julian date as YYDDD, the starting hour
             (either 10 or 22 LST, for daytime and nighttime respectively), and four ozone concentrations
             (in ppb) for the northern, southern, eastern, and western boundaries.
3. An experienced air quality specialist determines data validity at the EPA, and some aspects of validity are discussed below.

                                              288

-------
      Note that the above methodology should be considered preliminary.  As more accurate methods
      are developed for estimating boundary conditions, we recommend that they should be used. Pos-
      sible improvements include the use of larger-scale model to define boundary conditions for ROM,
      or the use of additional  monitoring  data.  For  ROM 2.1,  we investigated methods  for
      discriminating the spatial and temporal patterns in greater detail, but we found too much variabil-
      ity in the monitoring data to justify going beyond a day/night, south/west discrimination.  We
      encourage you to seek out improved procedures for boundary conditions, and to incorporate them
      into the ROM.
 88   87  86  85   84   83   82  81  88   79  78  77   76  75   74   73  72   71
78  695
                                                  77- 76- 75- 74— 73~ 72~ 7l~ 7B~
Figure 7.1.  Ozone monitoring stations (ID numbers) for the determination of ROMNET ozone
           boundary conditions.
 II.    I/O COMPONENTS

      A. Input Files

         1.  Standard Input Files

             None
                                         289

-------
        2.  Nonstandard Input Files

            Data are obtained as ASCII files from the EPA's Aerometric Information Retreival Sys-
            tem (AIRS).  The files can then be read into a LOTUS 1-2-3 spreadsheet. The exact
            format depends on the specific application; note that there is a great deal of flexibility as to
            how the data from AIRS can be formatted, and that we have not yet settled on a prescribed
            format

     B. Output Files

        1.  Standard Output Files

            None

        2.  Nonstandard Output Files

            This procedure is used to create OZONE, an ASCII file, that contains ozone boundary
            conditions at each of the boundaries of the modeling domain. OZONE is used by P24G,
            and its suggested parameters are shown in Table 7.1.

                                   TABLE 7.1. OZONE PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
Pann
Name
DESC1
DESC2
JDATE
TIME.
N
S
E
W
Unit



LST
ppm
ppm
ppm
ppm
Data
Type
Char*100
Char'100
Integer*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Description
Header text record
Header text record
Julian date as YYDDD
Timeasffi/
Ozone concentration, north boundary
Ozone concentration, south boundary
Ozone concentration, east boundary
Ozone concentration, west boundary
III.    CONTROL CARDS
      None

IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION

      A. Memory Requirements (1 block = 512 bytes)
         N/A
                                        290

-------
     B.  Execution Time Requirements:
        N/A
     C.  Space Requirements: Log and Print Files
        N/A
     D.  Space Requirements: Input and Output Files
        Table 7.2 shows the input file and output file space requirements.
                         TABLE 72. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
AIRS data
OZONE
File
Type
Nonstd
Nonstd
Storage
(in blocks)
±50
±11
Scenario
Data Span
1 month
20 days
     E.  Space Requirements: Tape Files
        None
 V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION
    N/A

.VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION
    N/A

VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED
    N/A

VIII. I/O AND UnLITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED
     N/A

IX.  INCLUDE FILES
    N/A
                                   291

-------
7.2 PREPROCESSING ROM CHEMISTRY

The ROM reads initial conditions (IC's) and boundary conditions (PC's) that are generated by processors
of the ROM processor network. Three chemistry processors (P21G, P23G, and P24G) create the IC's and
EC's for the chemically-equilibrated species, using numerical schemes similar to the ones in the ROM
itself.  The three processors require rate constants for the chemical reactions of the Carbon-Bond 4.2
mechanism (CB4.2; Gery et al., 1988). These rate constants, except for those associated with photolysis
reactions, depend only on air temperature, air density, and specific humidity (water vapor concentration).

Rate constants can be set for each hour of the simulation period by using hourly weather observations,
but our examination of the files produced by the three chemistry processors shows that this level of detail
is unnecessary. Except for ozone, all species concentrations for IC's, EC's, and C. (the top of layer 3) are
considered to be at tropospheric background levels. Additionally, in all cases the effect of the IC's proved
to be negligible after the first day of simulation. Thus, when you plan start dates of scenarios, you should
set back the start date and time of an episode's simulation period to counter any errors that might be
introduced by the ICs.  BCs affect the simulation results within the model's domain only over a few cells
deep, so their overall effect is minimal. Finally, the C. condition affects layer 3 only when there is tropo-
spheric air entrained from above into the layer. For these reasons, regional estimates of air temperature,
air density,  and specific humidity are sufficient for estimating  the rate constants  for  the chemistry-
processors.

Since we run the model only during summer conditions, we selected an ideal day for ozone formation to
estimate values of these parameters.  For 1980, we chose July 20, which occured during an anticyclonic
stagnation episode in the Northeast U.S.

Two sets of rate constants require calculation, consisting of daytime values and nighttime values.  For
each time period, there are three sets of rate constants that represent the three model layers. The  rate
constants are computed from only daytime and nighttime temperatures, air density, and specific humidity,
values of which are needed for all three layers. The values that we used for these meteorological param-
eters were those of 12:00 LST (representing daytime values) and 20:00 LST (representing nighttime val-
ues), and were derived from a simulation that assumed 12 hours of light  (at a constant 12:00 LST
radiation intensity) and 12 hours of dark (at a constant radiation intensity equal to  0.001 of the 12:00
value).

To further simplify the process, we averaged the daytime and nighttime values for the air densities and
specific humidities. Thus, the only day/night variation is in the air temperature field.

The regional estimates of air temperature, air density, and specific humidity that we use in the ROM are
shown in Table 7.3.
                                            292

-------
         TABLE 7.3. REGIONAL ESTIMATES OF METEOROLOGICAL PARAMETERS,
                                 SUMMER CONDITIONS
Layer
1
2
3
Air temperature
Day (K) Night (K)
305
298
287
304
299
294
Air density
mol-ppm-m-3
3.8x10-5
3.6x10-5
3.4x10-5
Specific humidity
ppm
2.3x104
1.9x104
1.4x104
All grid cells within a layer are assigned the values of the parameters for that layer.

   PREPROCESSOR CVCHEM

    I.    PREPROCESSOR FUNCTION

         This preprocessor computes the rate constants for each of the Carbon-Bond 4.2 reactions for
         given air temperature, air density, and specific humidity regimes in each model layer (refer to
         Section 7.2); note that the preprocessor assumes a constant solar radiation intensity over both
         daytime and nighttime. These rate constants are used only as initial and boundary conditions
         within the preprocessor network, i.e., in P21G, P23G, and P24G.

    II.    I/O COMPONENTS

         A.  Input Files

             1.  Standard Input Files

                None

             2.  Nonstandard Input Files

                a.  METCOND.DAT

                   METCOND.DAT contains the air temperature, air density, and specific humidity
                   meteorological parameters that are needed to compute the rate constants. The
                   values of each of these parameters are averages over the grid by layer, and, for air
                   temperatures, determined for both day- and nighttime (see Section 7.2).  The
                   READ and FORMAT statements for METCOND.DAT are listed below, and its
                   parameters are shown in Table 7.4.
                                        293

-------
                        00 103 IDORN-1,2
                          READ  (JMET.1007) NORD
                   1007   FORMAT (A8)
                          DO 103 ILAY=1,NLAY
                            READ  (JMET.1007)  INLAY
                            READ (JMET.1009) TEMP, DENSTY, H20CON
                   1009     FORMAT (F9.0,1X,F9.0,1X,F9.0)
                   103  CONTINUE
                    TABLE 7.4.  METCOND.DAT PARAMETERS
Farm
No.
1
2
3
4
5
Farm
Name
NORD
INLAY
TEMP,-/.
DENSTY//.
H20CON,-/.

Unit


K
mol-ppm-nr3
ppm
Data
Type
Char*8
Char*8
RealM
Real*4
RealM

Description
Night or day indicator
Layer name
Air temperature
Air density
Specific humidity
     Note: i = l (day) or 2 (night) indicator; L = layer.


b.   PHOTORATES.DAT


    This file contains  the rate constants for the five photolysis reactions of the CB4.2

    mechanism that form the basis of all 11 photolytic reactions of the mechanism. The

    photolytic rate constants as a function of solar zenith angle of the five species were

    calculated elsewhere (see Gery et al., 1988), and are based on the following formula-

    tion:

                L
                                 e.,   [MA],   [DPJJdXdl
    where SI = solar intensity, MA = molecular absorption, DP = decomposition proba-

    bility, L — layer height, A = wavelength, 6 = zenith angle, and A = the cloud attenu-

    ation factor, a function of cloud  type and cloud cover extent.  The READ  and

    FORMAT statements for PHOTORATES.DATare listed below, and Table 7.5 shows

    the file's parameters.


                            DO 103 IDORN=1,2
                              READ  (JRATE.1007) NORD
                        1007   FORMAT (AS)
                              DO 103 ILAY=1,NLAY
                                READ (JRATE.1007) INLAY
                                READ (JRATE.1019) RK(1), RK(9), RK(38), RK(39),
                           ft                    RK(A5)
                        1019     FORMAT (5E15.0)
                        103   CONTINUE
                              294

-------
                    TABLE 7.5. PHOTORATES.DAT PARAMETERS
Pann
No.
1
2

3
4
5
6
7
Note: i
Farm
Name
NORD
INLAY

RK(1),7.
RK(9)o.
RK(38)J7.
RK(39)I7.
RK(45)/7.

Unit



mur1
mur1
mur1
min-1
mur1
Data
Type
Char*8
Char*8

Real*4
Real*4
Real*4
Real*4
Real*4

Description
Night or day indicator
Layer name
Reaction rate constants for:
NC>2 photolysis
Oa photolysis -> O!D
Formaldehyde photolysis — >
Formaldehyde photolysis — >
Higher aldehydes photolysis







CO + HO2
CO only

= 1 (day) or 2 (night) indicator; L = layer.
B.  Output Files


    1.  Standard Output Files


       None


    2.  Nonstandard Output Files


       RATECB4-2.DAT contains the rate constants for the reactions of the Carbon-bond

       4.2 mechanism. The rates are adjusted to the input meteorological parameters. The

       WRITE and FORMAT statements for RATECB4-2.DAT are listed below, and its

       parameters are shown in Table 7.6.
                          WRITE (FRATE.1004) COATE, CTINE, DSKFIL
                     1004 FORMAT ('FILE CREATED ON DATE:  '.AS,'  AT TIME: ',A8,' BY
                         &       A50)
                          WRITE (FRATE.1006)
                     1006 FORMAT ('THIS FILE OF RATE CONSTANTS IS VALID FOR1,
                         &        'SUMMERTIME SCENARIOS')

                          DO 103 IDORN=1,2
                            WRITE (FRATE.1007) NORD
                     1007   FORMAT  (AS)
                            DO 103  ILAY=1,NLAY
                              WRITE (FRATE.1007) INLAY
                              WRITE (FRATE.1021) (RK(I),  I=1,NCB42)
                     1021     FORMAT (5E15.4)
                     103  CONTINUE
                                 295

-------
                             TABLE 7.6. RATECB4-2.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6

Pann
Name
ODATE
CTIME
DSKFIL
NORD
INLAY
RK(i)u.

Unit

EST

min-i
or
Data
Type
Char*8
Char*8
Char*50
Char*8
Char*8
Real*4

Description
File creation date as MMDDYY
File creation time as HHMMSS
Version name of CVCHEM
Night or day indicator
Layer name
Rate constant, species 1

                88   RK(83)I(£  ppnH-min-1    Real*4   Rate constant, species 83

              Note: i = 1 (day) or 2 (night) indicator, L = layer. Units depend on the number of reacting gases.
III.   CONTROL CARDS
     None
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A  Memory Requirements (1 block = 512 bytes)

                FORTRAN source files:
                FORTRAN INCLUDE files:
                Object files:
                Executable file:
2 files
0 files
2 files
1 file .
5 files
27 blocks
0 blocks
15 blocks
18 blocks
60 blocks
      B.  Execution Time Requirements:
                  Charged CPU time (hh:mm:ss):
                  Buffered I/O count:
                  Direct I/O count:
                  Peak working-set size:
                  Peak virtual size:
                        VAX 8650
                         00:00:03
                           156
                           139
                           559
                          2650
      C.  Space Requirements: Log and Print Files
         CVCHEM.LOG
         Print Files:
6 blocks
None
                                    2%

-------
     D. Space Requirements: Input and Output Files

         Table 7.7 shows the input file and output file space requirements.

                            TABLE 7.7. I/O FILE SPACE REQUIREMENTS
File
Group
Input


Output
FUe
Name
PHOTORATES.DAT
METCOND.DAT

RATECB4-2.DAT
File
Type
Nonstd
Nonstd

Nonstd
Storage
(in blocks)
3
3
6
18
Scenario
Data Span
N/A
N/A

N/A
      E.  Space Requirements: Tape Files

         None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    CVCHEM.LNK follows:


       I ACCOUNTING CODE
       SET VERIFY
       ! RUN STREAM IS IN FILE USER2SOISK:[SJR.CHEMISTRY]CVCHEM.LNK
       ON WARNING THEN EXIT
       ASSIGN MLAB: SYSSPRINT
       MAPFILE = HMET1:tS01S]CVCHEM.MAP"
       EXEFILE = "USER2$OISK: [SJR.CHEMISTRYKVCHEH.EXE"
       ASSIGN/USER MODE USER2SDISK:tSJR.CHEMISTRY]CVCHEM.OBJ             A1
       ASSIGN/USER~MODE MET24:[ROMOBJ.UTILIO]ADATE.OBJ                  A2
       ASSIGN/USER_MOOE USER2SDISK:[SJR.CHEMISTRY]RKUPDTCB4-2.OBJ        A3
    $ LINK -
       /EXECUTABLE = USER2SDISK:tSJR.CHEMISTRY3CVCHEM.EXE -
       /MAP = MET1:[S01S]CVCHEM.MAP -
       A1. -
       A2, -
       A3
    $ PRINT -
       /NOHEADER -
       /NOFEED -
       /NOTIFY -
       METl:tS01S]CVCHEM.MAP

    (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    CVCHEM.COM foUows:


       ! ACCOUNTING CODE
       ! Runstream is in file USER2SDISK:[SJR.CHEMISTRY]CVCHEM.COM
       ASSIGN MLAB SYSSPRINT
       ! Assign files
       ASSIGN USER2SOISK:[SJR.CHEMISTRYJPHOTORATES.DAT   FOR007
       ASSIGN USER2SDISK:[SJR.CHEMISTRYJMETCOND.DAT      FOR009
       ASSIGN USER2SOISK:[SJR.CHEMISTRY1RATECB4-2.DAT    FOR008


                                       297

-------
    $ !
    $ RUN USER2»ISK: [SJR.CHEMISTRY1CVCHEH.EXE
    $ SHOW PROCESS/ACCOUNTING

    (end of run stream)


VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A. Main Program


        CVCHEM


     B. Subroutines


        RKUPDTCB4-2


     C. Functions


        None



     D. Block Data Files


        None


VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A. Subroutines


        DISK$VAXSET:[ROMLm.UTILIO]


        ADATC


     B. Functions


        None



 DC  INCLUDE FILES


     None
                                  298

-------
7.3 PREPROCESSING ROADWAY DIGITAL LINE DATA


    7.3.1 PREPROCESSOR LINE C (EMISSIONS)

     I.    PREPROCESSOR FUNCTION

          This preprocessor copies to disk the line-source road data from Digital Line Graph tapes.
          These data are needed for the ROM's plume volume fraction calculation that parameterizes
          the subgrid-scale effects of line sources (and major point sources).  The data on these tapes is
          small-scale (1:2 000 000), and termed US GeoData by the United States Geological Survey
          (USGS).  The data tapes are available from the User Services Section, The National Carto-
          graphic Information Center, USGS, 507 National Center, Reston, VA 22092. A companion
          technical bulletin exists (Domaratz et aL, 1983).

          The US GeoData are organized by region. To assist you in ascertaining your requirements, we
          list below the states in each region; the USGS region nomenclature is shown in parentheses.
          •   Region 1: New England States and NY (Northeastern States).
          •   Region 2: NJ, DE, MD, PA, OH, WV, VA (Middle Atlantic States).
          •   Region 3: NC, SC, GA (Southeastern States).
          •   Region 4: FL (Florida).
          •   Region 5: TN, AL, MS, LA, AR (Southern Mississippi Valley States).
          •   Region 6: KY, IN, LL, LA, MO (Central Mississippi Valley States).
          •   Region 7: MI, WI, MN (Northern Great Lakes States).
          •   RegionS: Southern TX (Southern Texas).
          •   Region 9: Northern TX, OK (Southern Plains States).
          •   Region 10:  KS, CO, MB (Central Plains States).
          •   Region 11:  SD, ND, Eastern and  Central MT, WY (Northern Plains States).
          •   Region 12:  NM, AZ (Arizona and New Mexico).
          •   Region 13:  Southern CA (Southern California).
          •   Region 14:  Central and Northern CA, NV, UT (Central Pacific States).
          •   Region 15:  OR, WA, ID, Western MT (Northwestern States).
             Regions 16, 17, 18, 19, and 20:  AK (Southeastern, Central, Northern, Southwestern
             Alaska, Aleutian Islands).
             Region 21:  HA (Hawaiian Islands).

          You will note that more than one region's data is necessary to cover the ROMNET domain.
          When you order US GeoData, they are accompanied by a list of the  attributes of the output
          data set to assist you in determining the contents of each file on the tape. Note that roads and
          trails data are contained in a separate  file from railroads data.
                                          299

-------
II.   I/O COMPONENTS

     A.  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files
            Each record of a selected file is read from the tape using the VATAPE program, which
            is specific to the VAX-VMS environment. Table 7.8 shows the tape parameter.
                           TABLE 7.8. US GEODATA TAPE PARAMETER
              Parm   Parm                 Data
              No.    Name      Unit      Type               Description

                1    LINES              Char*20   Line-by-line copy of selected tape files
      B.  Output Files

         1.  Standard Output Files

             None

         2.  Nonstandard Output Files

             LINE_C generates a sequential disk file (e.g., RAWLINE3.DAT in the run stream
             below) that is the product of the concatenation of the input tape files; the following
             WRITE and FORMAT statements are used:

                              URITE (10,300) LINES(IL)
                           300 FORMAT (1X.A20)
             The characteristics and description of LINES in the output files are identical to those
             of the nonstandard input files.
                                      300

-------
III.   CONTROL CARDS

     One control card is used to input the tape files to be copied to disk, in the format shown below.
     Table 7.9 defines the control card variables.
                          TABLE 7.9. CONTROL CARD VARIABLES
Farm Farm
No. Name
1 NFILES
2 NFILEi
N NFTLENFUj
Example
7 13,5,7,9,11,13
Data
Unit Type
Integer*4
Integer*4
js Integer*4


Description

Number of tape files to extract
First sequential file no. to extract
Final sequential file no.


, to extract


 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
A. Memory Requirements (1 block = 512 bytes)

          FORTRAN source files:
          FORTRAN INCLUDE files:
          Object files:
          Executable file:
                                      2   files
                                      0   files
                                      2   files
                                      1   file
                                      5   files
                                                            20   blocks
                                                             0   blocks
                                                            40   blocks
                                                            80   blocks
                                                            140   blocks
      B.  Execution Time Requirements

         The charged CPU time and I/O counts depend on the number and size of the files
         extracted from tape.

                                                       VAX 8650
                 Charged CPU time (hh:mm:ss):             ±00:01:00

      C.  Space Requirements: Log and Print Files
LINE_CLOG:
Print Files:
                               ±20 blocks
                               None
      D.  Space Requirements: Input and Output Files
                                   301

-------
        Table 7.10 shows the input file and output file space requirements.


                          TABLE 7.10. 1/0 FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
None
RAWLINE3.DAT
File
Type
Nonstd
Storage
(in blocks)
0
±20000
Scenario
Data Span
N/A
     E.  Space Requirements: Tape Files

         Table 7.11 shows the input tape file space requirements.


                      TABLE 7.11.  INPUT TAPE FILE SPACE REQUIREMENTS
File
Group
Input
Tape
No.
B20074
File
No.
All
Record Length
(in bytes)
20
Block Size
(in bytes)
1040
V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     LINE_CLNK follows:


     $ LINK USER2SDISK:[BRO.LABDATAHINE C.OBJ, -
       USER2$DISK:[BRO.TAPES]VATAPE.OBJ ~

     (end of link stream)



VI.  SAMPLE RUN STREAM COMMAND FILE


     LINE_CRUN follows:


     ! ACCOUNTING CODE
     SET VERIFY
     ! RUN STREAM IS  IN FILE  [BRO.LABOATAHINE C.RUN
     ASSIGN TTA7: SYSSPRINT
     ON WARNING THEN  EXIT
     TRY:
     ON ERROR THEN CONTINUE
     ALLOCATE NFAO:
     IF SSTATUS THEN  GOTO OKAY
     WAIT 00:05
     GOTO TRY
     OKAY:
     SHOW TINE
     REOUEST/TO=TAPES/REPLY -
     PLEASE MOUNT TAPE B20074 ON DEVICE MFAO:"
     MOUNT /FOREIGN/NOWRITE/BLOCKSIZE=1040/RECORDSIZE=20/DENSITY=6250 -
     MFAO: B20074
     SHOW DEVICE /FULL MFAO:
     ASSIGN MET1:[RAUDATA21RAWLINE3.DAT    FOR010


                                     302

-------
     RUN [BRO.LABDATA1LINE C.EXE
     7 1,3,5.7.9,11.13
     SET MAGTAPE/REWIND NFAO:
     DISMOUNT NFAO:
     DEALLOCATE NFAO:
     SET PROT=(S:RE,0:RE,G,U) NET1:[RAUDATA23RAWLINE3.DAT

     (end of run stream)



VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


     A.  Main Program


         LINE_C


     B.  Subroutines


         VATAPE


     C.  Functions


         None



     D.  Block Data Files


         None



VIII. I/O AND UTILrrY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED


     A.  Subroutines


         None



     B.  Functions


         None


IX. INCLUDE FILES


    None
                                  303

-------
7.3.2 PREPROCESSOR LINE CR (EMISSIONS)

 I.    PREPROCESSOR FUNCTION

      This preprocessor windows the line-source road disk files that are produced by LINE_C (Sec-
      tion 7.3.1) to regional boundaries that you define in the control cards. LINE_CR also refor-
      mats these data so that they can be read by processor P13G.

 II.    I/O COMPONENTS

      A  Input Files

          1.  Standard Input Files

             None

          2.  Nonstandard Input Files

             LINE_C generates one nonstandard file, RAWLINES3.DAT, that consists of header
             records  and data records.  The header records of this file are read by the following
             READ  and FORMAT  statements, and the header parameters  are shown in Table
             7.12.
                                  READ(10,200,END=4> LID,IRNK,NPTS,ICOOE
                              200  FORMAT<1X,I7.I2.I6,I5>

                   TABLE 7.12. RAWLINES3.DAT HEADER RECORD PARAMETERS
Farm
No.
1
2
3
4
Parm
Name Unit
LID
IRNK/
NPTS/
ICODE/
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4

Description
Sequential line number
Line attribute minor code (rank)
No. of data records that follow
Line attribute major code
              Note: / -= line identifier number; major codes are all 29050; minor codes are two-digit codes that
              correspond to the final two numbers in the minor codes listed in Appendix A, Domaratz « aL, (1983).

              Data records are read by the following READ and FORMAT statements, and the data
              record parameters are shown in Table 7.13.
                                   READ(10,201) LTO,LTM,LTS,LND,LNM,LNS
                              201   FORMATdX, 12,12,12,1X, 13,12,12)
                                       304

-------
         TABLE 7.13. RAWLJNES3.DAT DATA RECORD PARAMETERS
Farm Farm
No. Name
1 LTDNPTS
2 LTMNPTS
3 LTSffprs
4 LNDKPTS
5 LNMNPTS
6 LNSNpxs
B. Output Files
1. Standard Output
None

Unit
e N
' N
"N
. w
' W
"W

Files

Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4




Description
Node latitude, degrees
Node latitude, minutes
Node latitude, seconds
Node longitude, degrees
Node longitude, minutes
Node longitude, seconds



2.   Nonstandard Output Files

    LINE_CR generates one nonstandard file, LINE1.DAT,  that consists of header
    records and data records. The header records are written by the following WRITE and
    FORMAT statements, and the header parameters are shown in Table 7.14.
                         WRITEO1.300) LID,NN,ICODE,IRN<
                    300  FORMAT(1X,I6,I6.!5,I2.2)
            TABLE 7.14. IINE1.DAT HEADER RECORD PARAMETERS
Farm
No.
1
2
3
4
Farm
Name Unit
LID
NN/
ICODE/
IRNK,
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4

Description
Sequential line number
No. of segments in this line
Line attribute major code
Line attribute minor code (rank)
    Note: / = line identifier number; major codes ate all 29050; minor codes are two-digit codes that
    correspond to the final two numbers in the minor codes listed in Appendix A, Domaratz a aL, (1983).


    Data records are written by the following WRITE and FORMAT statements, and the

    data record parameters are shown in Table 7.15.
                         URITE<11,301) XLAT(N),XLON(N)
                    301  FORMAT(1X,F8.4.F9.4)
                             305

-------
                   TABLE 7.15. UNE1.DAT DATA RECORD PARAMETERS
         Farm   Farm
          No.   Name
Unit
Data
Type
Description
            1    XLATi     ° N       Real*4     Latitude of first node of line segment
            2    XLONi    c W      Real*4     Longitude of first node of line segment
          NN   XLATNN   ° N       Real*4     Latitude of NN»h node of line segment
          NN   XLONuN   c W      Real*4     Longitude of NNth node of line segment
III.   CONTROL CARDS

     One control card is used to input the tape files to be copied to disk, in the format shown below.
     Table 7.16 defines the control card variables.

     LATMIN^ATMAXLONGMIN,LONGMAX

                          TABLE 7.16. CONTROL CARD VARIABLES
Farm Farm
No. Name
1 LATMIN
2 LATMAX
3 LONGMIN
4 LONGMAX

Unit
0 N
0 N
. w
. w
Data
Type
Real*4
Real*4
Real*4
Real*4

Description
Southern domain boundary
Northern domain boundary
Eastern domain boundary
Western domain boundary
      Example

      36.3333 45. 69. 85.
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
      A.  Memory Requirements (1 block = 512 bytes)

                FORTRAN source files:
                FORTRAN INCLUDE files:
                Object files:
                Executable file:
                   1
                   0
                   1
                   1
                   3
            file
            files
            file
            file
            files
  10  blocks
   0  blocks
  10  blocks
  20  blocks
  40  blocks
                                   306

-------
     B. Execution Time Requirements:

                                                         VAX 8650

                 Charged CPU time (hh:mm:ss):             ±00:01:00


     C. Space Requirements: Log and Print Files

        LINE_CR.LOG:          ±20 blocks
        Print Files:               None


     D. Space Requirements: Input and Output Files

        Table 7.17 shows the input file and output file space requirements.


                          TABLE 7.17. I/O FILE SPACE REQUIREMENTS
File
Group
Input
Output
File
Name
RAWLINES3.DAT
LINES1.DAT
File
Type
Nonstd
Nonstd
Storage
(in blocks)
Varies
±12000
Scenario
Data Span
N/A
N/A
     E.  Space Requirements: Tape Files

         None



V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     LINE_CR.LNK follows:


     LINK tBRO.ROMDATA]LINE_CR.OBJ

     (end of link stream)



VL   RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     LINE_CR.RUN follows:


     !  ACCOUNTING CODE
     SET VERIFY
     !  RUN STREAM IS IN FILE [BRO.ROMDATAHINE CR.RUN
     ASSIGN TTA7: SYSSPRINT
     ON WARNING  THEN EXIT
     ASSIGN MET1:[RAUDATA1RAWLINE3.DAT    INFILE
     ASSIGN MET1:CRAUDATA21LINE1.DAT      OUTFILE
     RUN [BRO.ROMDATAHINE CR.EXE2 36.3333 45. 69. 85.
     SET PROT=(S:RWED.O:RE7G:RE,W) OUTFILE

     (end of run stream)
                                    307

-------
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED




     A Main Program




        LINE_CR




     B. Subroutines




        None




     C. Functions




        None





     D. Block Data Files




        None





VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED




     A. Subroutines




        None





     B. Functions




        None




 IX.  INCLUDE FILES




     None
                                308

-------
   7.4 PREPROCESSOR MASK (METEOROLOGY AND EMISSIONS)

    I.    PREPROCESSOR FUNCTION

         MASK creates PF195, which contains the weightings that are used by processor P03G in its noc-
         turnal inversion-decision scheme.4 MASK is run once per emissions data set, i.e., once per sce-
         nario. The weights are assigned in the following manner: the (background) weight for grid cells
         over large bodies of water is 0.0; cells on land, or bordering land, have weight 1.0, unless they are
         among, or are adjacent to,5 cells that contain one of the top N area-source and point-source emit-
         ters;6 these cells are assigned a weight of 2.0.  MASK determines which are the top N emitters
         during a scenario by summing and ranking the hourly major point- and area-source emissions.

         The rationale for the inversion scheme in P03G is based on the fact that the ROM is most con-
         cerned with pollution transport, and that this transport is dependent on the presence or absence of
         a temperature inversion.  If a nocturnal inversion exists (and persists into the morning hours), the
         implication for all but the tallest point sources is that the pollutants will be  trapped below the
         inversion, and no advection takes place.  The weightings afforded by MASK balance the inver-
         sion/no inversion decision in P03G more uniformly between the larger rural land areas with no
         significant point- or area-source emitters, and the higher-emitting but smaller land area of, e.g., the
         Northeast Corridor in the ROMNET domain.

    II.   I/O COMPONENTS

         A. Input Files

             1.  Standard Input Files

                 MASK uses two standard input files:

                 PF118fromP25G
                 PF145 from P14G
4. Further information on PF and MF standard files can be found in Part 2, Section 1; information on setting up the standard files data-
  base is contained in Part 2, Section 2.
S. We use an eight-directional bordering, one cell deep.
6. N is an integer (usually equal to 100) that separates the top N emitters from all other area and point sources; it is user-defined from
  SYSS1NPUT, i.e., in the run stream.

                                               309

-------
   2.  Nonstandard Input Files

       MASK uses one nonstandard binaiy file, PTE3.DAT, that is generated by P14G, and
       which contains the major point-source emissions data. PTE3 is read by the function.
       RDPTE3, and its parameters are shown in Table 7.18.

                           TABLE 7.18. PTE3.DAT PARAMETERS
Farm
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Farm
Name
STACK-
SLONp
SLAT,
SXFIl
SPLMp
SDK,,
SZSKp
STKp
SWKp
SEK(l)pj,
SEK(2)M
SEK(3)M
SEK(4)M
SEK(5)M
SEK(6)M
SEK(7)M
SEK(8)M
SEK(9U
SEK(ld)M
SEK(11)M
SEK(12)M
SEK(13)M
SEK(14)M
SEK(15)M
SEK(16)M
Unit

°W
°N
m3*-1
m
m
m
°C
m-s-1
mol-h-1
mol-h-1
mol-h*1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
mol-h-1
kg-h-i

Data
Type
Cnar*12
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real'4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
AEROS state/county/plant/point ID
Longitude (fractional)
Latitude (fractional)
Exhaust flow rate
Plume height
Stack diameter
Stack height
Exhaust gas temperature
Exhaust gas exit velocity
Emissions rate for aldehydes
Emissions rate for CO
Emissions rate for ethene
Emissions rate for formaldehyde
Emissions rate for isoprenes
Emissions rate for NO
Emissions rate for NO2
Emissions rate for olefins
Emissions rate for paraffins
Emissions rate for toluene
Emissions rate for xylene
Emissions rate for nonr.
Emissions rate for methane
Emissions rate for methanol
Emissions rate for VOC
NMHC/NOjc ratio
        Note:   p = point source, h «= hour; nonr. = nonreactive hydrocarbons, VOC = volatile organic compounds,
               NMHC = oonmethane hydrocarbons.

B.  Output Files

    1.  Standard Output Files

       PF195

       MASK produces one standard output file that contains the gridded weights surrounding
       the top N emitters in the modeling domain.  It is used by P03G. The PF195 parameter is
       shown in Table 7.19.
                                     310

-------
                                 TABLE 7.19. PF195 PARAMETER
             Farm  Farm
             No.   Name
           Unit
Data
Type
Description
              1  INMASKy
                   Real*4  Gridded weighting:
                            0 = large water body
                            1 = land not among/adjacent to top N emitters
                            2 = land among/adjacent to top N emitters
         2.  Nonstandard Output Files

            None


III.   CONTROL CARDS

     One control card is used to input control data in the format shown below. Table 7.20 defines the
     control card variable.

     NN
                          TABLE 7.20. CONTROL CARD VARIABLE
       Variable
         Name
Unit
             Description
         NN             Size of the subset of largest emitters belonging to the set of area- and
                          point-source emitters
      Example:
      100
 IV.   RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A.  Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                               2  files
                               0  files
                               2  files
                               1  file
                               5  files
                           42  blocks
                            0  blocks
                           15  blocks
                           66  blocks
                          123  blocks
                                       311

-------
    B.  Execution Time Requirements (Representative Values for a 72-Hour Scenario):

                                                           VAX 8650

                 Charged CPU time (hh:mm:ss):              00:01:17
                 Buffered I/O count:                            188
                 Direct I/O count:                             3467
                 Peak working-set size:                        1410
                 Peak virtual size:                             3560


    C.  Space Requirements:  Log and Print Files

        MASK.LOG:             27 blocks
        Print Files:                None


    D.  Space Requirements:  Input and Output Files

        Table 7.21 shows the input file and output file space requirements.


                            TABLE 7.21. I/O FILE SPACE REQUIREMENTS
File
Group
Input



Output

File
Name
PF118
PF145
PTE3

PF195

File
Type
4
5
Nonstd

4

Storage
(in blocks)
286
26574
14571
41431
52
52
Scenario
Data Span

72 h
72 h



     E. Space Requirements: Tape Files

        None



V.   LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

     MASK.LNK follows:

     $ ! ACCOUNTING CODE
       !
       SET VERIFY
       i
       ! Run stream is in file USER2$C>ISK:[PPROCS.ROMNET]MASK.INK
       !
       ON WARNING THEN EXIT
       !
       !  MASK-specific routines:
       i
       ASSIGN/USER MODE USER2SOISK:[PPROCS.ROMNET]MASK.OBJ               A1
       ASSiGN/USER JWDE USERZSOiSK:[PPROCS.ROMNET]ROPTES.OBj             AZ
       !
       !  Utility and I/O routines:
       I
       ASSIGN/USER_MODE USER2SDISK: [ROMNET.uTIU01ADATE.OBJ              A3


                                         312

-------
  ASSIGN/USER NODE USER2$DISK: [ROMNET. UTILI03CELLO. OBJ
  ASSIGN/USER~NODE USER2$DISK:[ROMNET.UTILI03CELL1.0BJ
  ASSIGN/USER~NODE USER2SOISK:[ROMNET.UTILIO]DATHR6.0BJ
  ASSIGN/USER~MODE USER2$DISK: [ROMNET.UTILIO]FLSMRY.OBJ
  ASSIGN/USER'NODE USERZ$OISK:[ROMNET.UTILIO]FSTATI.OBJ
  ASSIGN/USER~NOOE USER2SDISK: [ROMNET.UTILI03IBLKR.OBJ
  ASSIGN/USER'MOOE USERZSDISKICROMNET.UTILIOIIOCL.OBJ
  ASSIGN/USER~NODE USERZSOISK: [ROMNET. UTIIIO]JFILE1. OBJ
  ASSIGN/USERJIODE USER2SOISK: [RONNET.UTILI03 JHOUR1.0BJ
  ASSIGN/USERJIODE USER2SOISK: [RONNET.UTILI03 JFILE2.0BJ
  ASSIGN/USER_NOOE USER2SDISK: [RONNET.UTILI03 JUNIT.OBJ
  ASSIGN/USER NODE USER2SDISK: [RONNET. UTILI03NEXTHR. OBJ
  ASSIGN/USER'NODE USERZSOISKZCROMNET.UTILIOIOPOIRZ.OBJ
  ASSIGN/USER'NODE usER2$oisK:[ROHNET.uTiLio30PEN2.0BJ
  ASSIGN/USER NODE USER2SDISK: tROMNET.UTILI03PROGID.OBJ
  ASSIGN/USER'MOOE USERZSDISK^ROMNET.UTILIOIRDDIRI.OBJ
  ASSIGN/USER~NODE USER2$DISIC:tRONNET.UTILIO]RDFHD2.0BJ
  ASSIGN/USERlNODE USER2SDISK: tRONNET.UTILI01RDREC.OBJ
  ASSIGN/USER NODE USER2$DISK: tRONNET.UTILI01RDFU.OBJ
  ASSIGN/USERJWOE USER2$DISK:[RONNET.UTILIO]RDFT5.0BJ
  ASSIGN/USER_NODE USER2SDISK: tRONNET.UTILI03URREC.OBJ
  ASSIGN/USER NODE USER2SOISK: [RONNET.UTILI03WRFT4.0BJ
  ASSIGN/USER~NODE USER2$OISK:tRONNET.UTILIO]RDFH01.0BJ
  ASS I GN/USER~NODE USER2SO I SK : [RONNET . UT I L 1 03 LEN 1 . OB J
  ASSIGN/USER'NODE USERZSDISK: [RONNET. UTILIOSDATEHR. OBJ
  !
  LINK -
  /EXECUTABLE = USER2SDISK: [PPROCS.ROMNET3NASK.EXE -
  /HAP = NET1:[S01S3NASK.NAP  -
  A1,  A2,   A3,  A4,   A5,  A6,  A7,  AS,  A9, AID, -
 A11, A12,  A13, AU,  A15, A16, A17, A18, A19, A20, -
 A21, A22,  A23, A24,  A25, A26, A27, A28

(end of link stream)
                                                                           A4
                                                                           AS
                                                                           A6
                                                                           A7
                                                                           AS
                                                                           A9
                                                                           AID
                                                                           A11
                                                                           A12
                                                                           A13
                                                                           A14
                                                                           A15
                                                                           A16
                                                                           AU
                                                                           A18
                                                                           A19
                                                                           A20
                                                                           A21
                                                                           A22
                                                                           A23
                                                                           A24
                                                                           A25
                                                                           A26
                                                                           A27
                                                                           A28
VI.    RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION

       MASK.COM follows:

         I  ACCOUNTING CODE
         SET  VERIFY
         !  RUN  STREAM IS  IN  FILE USER2SOISK:[FORENAN.FV1050A]MASK.COM
         !  Runs the  inversion-mask creation [PPROCS.ROMNET3MASK.EXE
         ASSIGN NLAB: SYSSPRINT
         !  ASSIGN  INPUT FILES
         ASSIGN NET1:[RONNET3DIRECT2.DAT                  PFNFDIR
         ASSIGN HET1:[RONNET.D000003PF118A.DAT            PF118
         ASSIGN MET57:[ROMNET1.DB01943PF145A.DAT          PF14S
         ASSIGN NET57:[RONNET1.D80194JPTE3A.DAT           PTE3
         !  ASSIGN  OUTPUT  FILES
         ASSIGN NET1:[RONNET.D000003PF195A.DAT            PF195
         SNOW PROCESS / ACCOUNTING
         !
         RUN  USER2SOI SIC: [PPROCS. ROMNET) MASK. EXE
         !  ASSIGN  CONTROL CARD VALUE
        00
         !
         SHOW PROCESS / ACCOUNTING

       (end of run stream)
                                               313

-------
VII.  MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED

     A. Main Program

        MASK

     B. Subroutines

        None

     C. Functions

        RDPTE3

     D. Block Data Files

        None


VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED

     A. Subroutines

        DISK$VAXSET:[ROMLIB.UTILIO]
        ADATE
        CELLO
        CELL1
        DATEHR
        DATHR6
        FLSMRY
        FSTAT1
ELKR
JF1LE1
NEXTHR
OPDIR2
OPEN2
PROGID
RDDIR1
     B. Functions

        DISK$VAXSET:[ROMLIB.UTILIO]

        IOCL
        JFILE2
        JHOUR1
        JUNIT
        LEN1


IX.   INCLUDE FILES

     DISK$VAXSET:[ROMLIB.ROMNET1

     REGPRM.EXT

     DISKSVAXSET:[ROMLIB.PROCES]

     PARMS.EXT
RDFHD1
RDFHD2
RDFT4
RDFT5
RDREC
WRFT4
WRREC
                                   314

-------
7.5 PREPROCESSOR TEMPROC (METEOROLOGY)

 I.   PREPROCESSOR FUNCTION

     This preprocessor computes the gridded daily surface maximum, minimum, and mean tempera-
     tures that are based on the hourly surface meteorology data, and determines the gridded daily
     temperature ranges.

 II.   I/O COMPONENTS

     A.  Input Files

         1.  Standard Input Files

            None

         2.  Nonstandard Input Files

            a.   SURMET1

                SURMET1 contains hourly surface meteorology observations from the National Cli-
                matic Data Center and the Canadian Climate Centre raw data tapes. SURMET1,
                generated by preprocessor SFC_VRFY, is read in two stages.  The first stage reads
                header information. READ and FORMAT statements for SURMET1 are called by
                TEMPROC from RDSRF2 in the UTILIO library. Table 7.22 shows the SURMET1
                Stage 1 parameters.

                           TABLE 7.22. SURMET1 STAGE 1 PARAMETERS
Parm
No.
1
2
3
4
5
Parm
Name Unit
INYR
INMON
INDAY
INHOUR GMT
NSTAT
Data
Type
Integer*4
Imeger*4
Integer*4
Integer*4
Integer*4

Description
Scenario year (YY)
Scenario month (MM)
Scenario day (£>£>)
Scenario hour (HH)
No. of reporting stations at HH
                The Stage 2 parameters are described in Table 7.23:
                                       315

-------
              TABLE 7.23. SURMET1 STAGE 2 PARAMETERS
Farm
No.
la
Ib
2
3
4
6
7
8
9
10
11
12
13
14
15
16
17
Farm
Name
STAID,,
STAID,,
SLATSn
SLONS*
OPQCOVB
COVERL,
BASE1W
COVER^
BASE2*
COVERSn
BASES,,
SLPW
DIR«
SPDW
Tn
TDn
STNPR«
Unit


0 N
. w
%
%
m
%
m
%
m
mb
deg
m-s-1
ec
°C
mb
Data
Type
Char*4
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Station ID (non-WBAN format)
Station ID (WBAN format)
Latitude
Longitude
Opaque sky cover
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
 Note: n •= surface station number (one or more digits).

b.  BUOYDAT

   BUOYDAT contains hourly buoy data, and is  generated  by prepreprocessor
   BUOY_RFMT. BUOYDAT, whose format mimics that of the SURMET1 data file, is
   read in two stages. The first stage reads header information.  READ and FORMAT
   statements for BUOYDAT are called by TEMPROC from RDSRK in the UTILIO
   library. Table 7.24 shows the BUOYDAT Stage 1 parameters.

              TABLE 7.24. BUOYDAT STAGE 1 PARAMETERS
Farm
No.
1
2
3
4
5
Farm
Name Unit
INYR
INMON
INDAY
INHOUR GMT
NSTAT
Data
Type
Integer*4
Integer*4
Integer*4
Integer*4
Integer*4

Description
Scenario year (YY)
Scenario month (MM)
Scenario day (DD)
Scenario hour (HH)
No. of reporting stations at HH
    The Stage 2 parameters are described in Table 7.25:
                          316

-------
                           TABLE 7.25. BUOYDAT STAGE 2 PARAMETERS
Farm
No.
1
2
3
12
13
14
15
16
17
Farm
Name
BUOYIDM
LATn
LONn
SLP^,
D]RnJi
SPD^
T^
SST^
DELT^
Unit

0 N
. w
mb
deg
m-s-1
°C
°C
°C
Data
Type
Integer*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Buoy ID
Latitude
Longitude
Sea level pressure
Wind direction
Wind speed
Air temperature (AT)
Sea surface temperature (SST)
SST-AT
            Note: n «= buoy station number (one or more digits); h = hour, missing values are either -99. or -9999.

     B.  Output Files

         1.  Standard Output Files

            TEMPROC generates one standard me, PF192, that contains the gridded daily surface
            mean temperatures and the daily surface temperature range (7,,^ - rmin).  It is used by
            P26G, and Table 7.26 shows its parameters.

                                    TABLE 736. PF192 PARAMETERS
Farm   Farm
 No.    Name
                                   Unit
Data
Type
Description
                 1   AVGTymn/j    "F      Real*4    Daily average surface air temperature
                 2   RANTy^jnD    *F      Real*4    Daily surface air temperature range
               Note: i = column number,;' = row number, ODD «= Julian day

         2.  Nonstandard Output Files

            None


III.    CONTROL CARDS

      Three control cards are used to input control data in the format shown below.  Table 7.27 defines
      the control card variables.

      NF
      INTFLAG
      JDATHR.EDATHR
                                        317

-------
                          TABLE 7.27. CONTROL CARD VARIABLES
Variable
Name Unit
NF
INTFLAG
JDATHR EST
EDATHR EST
Description
No. of monthly surface meteorology files to be used
Use of WBAN-format station identifiers:
.TRUE - WBAN format used
.FALSE. - WBAN format not used
Julian scenario start date and hour as YYDDDHH
Julian scenario end date and hour as YYDDDHH
     Example:

     2
     .TRUE.
     8818200,8821200
IV.  RESOURCE SUMMARY FOR A ROMNET REGION APPLICATION
     A  Memory Requirements (1 block = 512 bytes)

                 FORTRAN source files:
                 FORTRAN INCLUDE files:
                 Object files:
                 Executable file:
                 3   files
                 0   files
                 3   files
                 1   file
                 7   files
 60   blocks
  0   blocks
 30   blocks
_§1  blocks
171   blocks
     B.  Execution Time Requirements (Representative Values for a 72-Hour Scenario):

                                                         VAX 8650
                  Charged CPU time (hh:mm:ss):
                  Buffered I/O count:
                  Direct I/O count:
                  Peak working-set size:
                  Peak virtual size:

      C.  Space Requirements: Log and Print Files
                         00:03:10
                            193
                           3771
                            792
                           1124
         TEMPROCLOG:
         Print Files:
15 blocks
None
      D.  Space Requirements: Input and Output Files

         Table 7.28 shows the input file and output file space requirements. Note that the storages will
         vary according to the length of each episode, and whether more than one month's data are
         required as input.
                                        318

-------
                              TABLE 7.28. I/O FILE SPACE REQUIREMENTS
File
Group
Input

Output
Logical File
Name
SURMET1
SURMET2

PF192
File
Type
Nonstd
Nonstd

5
Storage
(in blocks)
88617
31287
119904
3806
Scenario
Data Span
1 month
1 month

1 episode
     E.  Space Requirements: Tape Files


         None


V.  LINK STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


    TEMPROCLNK follows:
        ACCOUNTING CODE


      SET VERIFY


        Run stream is in file TEMPROC.LMC


      ON WARNING THEN EXIT



         TEMPROC-specific routines:


      ASS I GN/USER_MOOE D I SWVAXSET : [PPROCS . ROMNET] TENPROC . OBJ
      ASSIGN/USER NODE DISWVAXSET: [PPROCS. ROMNET1RDSRF2. OBJ
      ASSIGN/USER~MODE D I SKSVAXSET: [PPROCS. ROMNET] STARTSRF. OBJ
       !  utility and I/O routines:
ASSIGN/USER
ASSIGN/USER*
ASSIGN/USER"
ASSIGN/USER'
ASSIGN/USER"
ASSIGN/USER
ASSIGN/USER"
ASSIGN/USER
ASSIGN/USER"
ASSIGN/USER"
ASSIGN/USER*
ASSIGN/USER"
ASSIGN/USER'
ASSIGN/USER"
ASSIGN/USER'
ASSIGN/USER'
ASSIGN/USER
ASSIGN/USER"
ASSIGN/USER"
ASSIGN/USER"
ASSIGN/USER"
ASSIGN/USER*
MODE DISWVAXSET:
'MODE DISWVAXSET:
MODE DISWVAXSET:
MODE DISWVAXSET:
'MODE DISWVAXSET:
MODE DISWVAXSET:
'MODE DISWVAXSET:
MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
'MODE DISWVAXSET:
[ROMNET.UTILIO]ADATE.OBJ

[ROMNET.umiOTBGRID1.OBJ
[ROMNET.UTILIO]CELLO.OBJ
[ROMNET.UTILIO]FLSMRT.OBJ
[ROMNET.UTILIO]FSTAT1.OBJ
[ROMNET.UTILIO]GETYN.OBJ
[ROMNET.UTIL10]GMTLCL.OBJ
[ROMNET.UTILIO]IBLKR.OBJ
[ROMNET.UTILIO]IOERR.OBJ
[ROMNET.UTILIO]IOCL.OBJ
[ROMNET.UTILIO]JFILE1.OBJ
[ROMNET.UTILIO]JFILE2.OBJ
[ROMNET.UTILIO]JHOUR1.OBJ
[ROMNET.UTILIOJJULIAN.OBJ
[ROMNET.UTIL10]JUNIT.06J
[ftOMNET.UTILIOJOPDIR2.06J
[ROMNET.UTILI010PEN2.OBJ
[ROMNET.UTILIO)PROGIO.OBJ
[ROMNET.UTILI0]RODIR1.OBJ
[ROMNET.UTILIO]RDREC.OBJ
[ROMNET.UTILI01URREC.OBJ
[ROMNET.UTILIO]URFT5.OBJ
                                                         A1
                                                         A2

                                                         A3
                                                               A4

                                                               AS
                                                               A6
                                                               K7
                                                               A8
                                                               A9
                                                               A10
                                                               A11
                                                               A12
                                                               A13
                                                               AU
                                                               A15
                                                               A16
                                                               A17
                                                               A18

                                                               A19
                                                               A20
                                                               A21
                                                               A22
                                                               A23
                                                               A24
                                                               A25
       LINK  -
       /EXECUTABLE = DISWVAXSET: [PPROCS.ROMNETJTEMPROC.EXE -
       /MAP  = METl:tS01S]TEMPROC.MAP -
       A1, -
                                            319

-------
      A2, -
      A3, -
       A23, -
       A24. -
       A25

     (end of link stream)


VI.  RUN STREAM COMMAND FILE FOR A ROMNET REGION APPLICATION


     TEMPROC.COM follows:


     $ I  ACCOUNTING CODE
       I
       !  Run stream Is in file TEMPROC.COM
       I
       I
       !  assign input files
       f
       ASSIGN MET1:[ROMNET]01RECT2.DAT                       PFMFDIR
       I
       ASSIGN MET23:[FOREMAN.RAUDATA1SRFC JUL88.DAT            SURNET1
       ASSIGN MET25:[FOREMAN.RAWDATA1BUOY~JULAUG88.DAT         SURMET2
       I
       I  assign output file
       I
       ASSIGN MET1:[ROMNET1.D851821PF192A.DAT                 PF192
       !
     $ RUN DISWVAXSET: [PPROCS.ROHNETJTEMPROC.EXE
     2
     .TRUE.
     8818200,8821200

     (end of run stream)


.VII. MAIN PROGRAM, SUBROUTINES, FUNCTIONS, AND BLOCK DATA REQUIRED


      A  Main Program


          TEMPROC


      B.  Subroutines


          RDSRF2
          STARTSRF


      C  Functions


          None


      D. Block Data Files


          None
                                          320

-------
VIII. I/O AND UTILITY LIBRARY SUBROUTINES AND FUNCTIONS REQUIRED
     A. Subroutines
        DISK$VAXSET:[ROMLD3.UTILIO]
        ADATE
        BGRID1
        CELLO
        FLSMRY
        FSTAT1
GMTLCL
IBLKR
IOERR
JF1LE1
OPDIR2
OPEN2
PROGID
RDDIR1
WRFT5
WRREC
     B. Functions
        DISK$VAXSET:[ROMLIB.UTILIO]
        GETYN
        IOCL
        JFILE2
JULIAN
JUNIT
 IX.  INCLUDE FILES

     DISK$VAXSET:[ROMLIB.ROMNET]

     REGPRM.EXT

     DISK$VAXSET:[ROMLffi.PROCES]

     PARMS.EXT
                                   321

-------
   7.6 THE PFMFCOPY PROGRAM


   PFMFCOPY copies a set of records from one PF/MF file to another PF/MF file of the same type.?-8 The

   program is able to change the date and time of the data it copies.  The inputs required are the logical

   names of the files, the source data's starting date and time, the number of records to be copied, and the

   target date and time.


   To operate the program, you must assign the logical name PFMFDIR to the appropriate PF/MF database

   directory, and logical names PEccc or MF-ccc to the source and target files. You will be automatically

   prompted for these inputs, and thus the program can easily be run interactively, if you so desire.  The

   successive prompts are as follows:


         Enter logical name for source file »

         Enter source file starting date & hour > >

         Enter number of records to be copied [1] > >

         Enter logical name for target file > >

         Enter target copy starting date & hour > >


   The sample run stream below will operate PFMFCOPY in batch mode.


      ! ACCOUNTING CODE
      !
      !  Runstream to use PFMFCOPY2 to copy one record from source file PF113
      !  at  date  and hour 88238:11 to target file PF170,  for date and hour
      !  88223:16
      !
      !
      I
      ! assign input and output files:

      ASSIGN MET1:[ROMNETJDIRECT2.DAT          .      PFMFDIR

      ASSIGN MET74:[ROMNET1.D88235JPF113A.DAT         PF113
      ASSIGN MET56:[RQMNET1.D882231PF170A.DAT         PF170

      RUN  USER2$OISK:[XCC.UORIQPFMFCOPY2
     F113
   88238 11

     F170
   88223 16
source file
source starting date and hour
number of records to copy
target file
date and hour on target file
      f
      !  end of runstrearn
7.  Further information on PF and MF standard files can be found in Pan 2, Section 1; information on setting up the standard flies data-
   base is contained in Part 4.
8.  For example, type 4 file records can be copied only to another type 4 file.


                                               322

-------
7.7  SHOWMET (METEOROLOGY QUALITY CONTROL)

SHOWMET creates plots from the surface meteorology files that are output from the meteorology prepro-
cessor. These files consist of hourly land surface observations (SURMET1 logical files), hourly buoy
ocean surface  observations (BUOYDAT  logical  files),  and monthly averaged buoy  observations
(SURMETM logical files). The parameters of each of these file types are shown in Table 7.29, Table 7.30,
and Table 7.31 respectively. Note that the data from each file are plotted in a different color.

                                 TABLE 7.29.  SURMET1 PARAMETERS
Parm
No.
la
Ib
2
3
4
5










6
7
8
9
10
11
12
13
14
15
16
17
Parm
Name Unit
STAID^,
STATD^
SLAT^ ' N
SLON^ ' W
OPQCOV^/, %
TOTCOV^










COVl^, %
BASEl,^ m
COV2^/, %
BASE2^/| m
COVS^, %
BASE3^, m
POn,/, mb
DIR^A deg
SPD^, m-s-i
T t 'P
lnji ^
TD j. °C
PV, mb
Data
Type
Char*4
Integer*4
Real*4
Real*4
Real*4
Real*4










Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Real*4
Description
Station ID non-WBAN format
Station ID WBAN (integer) format
Latitude
Longitude
Opaque sky cover
Total sky cover:
0 = clear
1 = partial obscuration
2 = thin scattered
3 = thin broken
4 = thin overcast
5 = scattered
6 = broken
7 = overcast
8 = obscured
-99 = indeterminate
Coverage, lowest cloud layer
Lowest cloud base
Coverage, second-lowest cloud layer
Second-lowest cloud base
Coverage, third-lowest cloud layer
Third-lowest cloud base
Sea level pressure
Wind direction
Wind speed
Temperature
Dew point
Station pressure
              Note: n <= surface station number (one or more digits); h «= hour; missing values are either -99. or -9999.
                                         323

-------
                   TABLE 7JO. BUOYDAT PARAMETERS
Farm
No.
1
2 .
3
4
6
7
8
9
10
11
12
13
14
15
16
17
Farm
Name
BUOYIDn
LATB
LONB
none
none
none
none
none
none
none
PO^
DIR^
SPD^
Tnfi
SST^
DELT^
Unit

8 N
. w
none
none
none
none
none
none
none
mb
deg
m-s-1
°C
°C
ec
Data
Type
Integer*4
Real*4
Real*4
Real*4
RealM
Real*4
Real*4
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
Description
Buoy ID
Latitude
Longitude
Missing
Missing
Missing
Missing
Missing
Missing
Missing
Sea level pressure
Wind direction
Wind speed
Air temperature (AT)
Sea surface temperature (SST)
SST-AT
Note: n = buoy station number (one or more digits); h = hour; missing values are either -99. or -9999.
                   TABLE 7.31. SURMETM PARAMETERS
Farm Farm
No. Name
1
2
3
4
6
7
8
9
10
11
12
13
14
15
16
17
BUOYID,,
LATn
LONn
none
none
none
none
none
none
none
none
none
none
TAVG^
SSTAVG^
DELAVG,^
Unit

°N
• w
none
none
none
none
none
none
none
none
none
none
•c
ec
ec
Data
Type
IntegerM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
RealM
Description
Buoy ID
Latitude
Longitude
Missing
Missing
Missing
Missing
Missing
Missing
Missing
Missing
Missing
Missing
Monthly average air temperature (AT)
Monthly average sea surface temperature (SST)
Monthly average difference, SST - AT
 Note: n = buoy station number (one or more digits); MM = month; missing values are either -99. or -9999.
                             324

-------
   Note the following:
         .   SHOWMET is written in Digital Equipment Corporation's (DEC) VAX™ FORTRAN version
            5.0, and requires a VMS™ version 5.0 (or higher) operating system. You can refer to the VAX
            FORTRAN User Manual (AA-D035E-TE), and the VAX FORTRAN Language Reference
            Manual (AA-D034E-TE), for information on the special features offered  by VAX FOR-
            TRAN. These manuals are available from Corporate User Publications ZK1-3/J35, Digital
            Equipment  Corporation, 110 Spit Brook Road, Nashua, NH 03062.
         •   SHOWMET is written using DEC'S implementation of release 4.0 of the Graphics Kernel System
            (GKSW). You  can refer to the DEC GKS Reference Manual, Volume 1 (AA-HW43C-TE)
            and Volume 2 (AA-HW44C-TE), and the GKS  User  Manual (AA-HW45C-TE) for more
            information on the GKS. These manuals are available from SSG Publications ZK1-3/J35,
            Digital Equipment Corporation, 110 Spit Brook Road, Nashua, NH 03062.
            DEC GKS  is a device-independent graphics subroutine package based on the International
            Standards Organization (ISO) and American National Standards Institute (ANSI) Graphical
            Kernel System. DEC GKS is a development tool that you can use to create graphics applica-
            tions without regard to device specifics.  It can be used for a wide variety of graphics applica-
            tions including those in business, science, and engineering.  DEC GKS implements level 2c of
            the GKS standard.  Level 2c includes support for all GKS output primitives, Workstation
            Dependent, Workstation Independent Segment Storage, six different logical input devices, and
            support for synchronous'and asynchronous input. DEC GKS RTO is the run-time only ver-
            sion of DEC GKS. It is functionally equivalent to DEC GKS, except that GKS applications
            cannot be linked against it; it can be used only for applications which have already been linked
            against DEC GKS.
            The GKS programs can be run only from a node licensed for DEC GKS. To see whether your
            node is licensed or not, type the command "SHOW LOGICAL GKS*" at the DCL prompt.
            The VAX system will respond with  (LNM$SYSTEM_TABLE), where LNM is the abbrevi-
            ation for a logical name table. If the node is not licensed, there will be an empty list (a single
            blank line) beneath the (LNM$SYSTEM_TABLE) response; if it is licensed, a substantial list
            follows the response.
         •   SHOWMET is written in the GKS graphics standard and generates output on devices supported
            by GKS device drivers. DEC GKS includes support for a number of different physical devices
            that you can choose by specifying the "workstation type" in the open workstation (GKSSO-
            PEN_WS) subroutine. (A workstation is a logical graphics device that permits an application to
            be written so that it is device-independent.) You must specify the physical connection to the
            device  through the "connection identifier", i.e., the output file.9  The supported workstations
            for DEC GKS are shown in  Table 7.32.  For more information on the supported devices, we
            suggest that you consult the  DEC GKS Device Specific Reference Manual (AA-MJ32A-TE),
            available from the address listed above.
9. The output file is defined as SYSSOUTPUT for output to a terminal screen, or  for output to other devices.

                                            325

-------
                         TABLE 732.  GKS-SUPPORTED DEVICES
No.
    Constant
                     Description
   5
   7
 0   GKS$K_
 2   GKSSK
 3   GKSSK]
     GKSSK]
     GKSSK
 10   GKSSK
 11   GKSSK
 12   GKSSK
 13   GKSSK]
 14   GKSSK
 15   GKSSK]
 15   GKSSK
 16   GKSSK
 17   GKSSK]
 31   GKSSK]
 31   GKSSK]
 32   GKSSK
 34   GKSSK]
 38   GKSSK]
 41   GKSSK]
 41   GKSSK]
 41   GKSSK]
 41   GKSSK"
 41   GKSSK]
 42   GKSSK.
 51   GKSSK]
 51   GKSSK]
 52   GKSSK"
 53   GKSSK"
 54   GKSSK]
 55   GKSSK
 56   GKSSK]
 61   GKSSK.
 70   GKSSK]
 72   GKSSK
 80   GKSSK]
 82   GKSSK]
 83   GKSSK]
 84   GKSSK]
 85   GKSSK.
 86   GKSSK.
 87   GKSSK]
 87   GKSSK
 88   GKSSK
 89   GKSSK
 91   GKSSK
 92   GKSSK
210   GKSSK]
211   GKSSK
212   GKSSK
213   GKSSK
WSTYPE_DEFAULT
GKSM_OUTPUT
GKSMJNPUT
WSTYPE_WISS
CGM_OUTPUT
VT OUTPUT
VT125
VT125BW
VT240
VT240BW
LCP01
LCG01
VT330
VT340
_LA34
LA100
.LA50
]LA210
XNOSPLUS
]vsn
]ysii_opx
VS2QOO
VS3200
.VS3500
VSI
]LVP16A
.HP7475
]LVP16B
"HP7550
.HP7580
JLG_MPS2000
]HP7585
.POSTSCRIPT
_TEK4014_OUTPUT
_TEK4014~
]TEK4107_OUTPUT
JTEK4107
]TEK4207_OUTPUT
]TEK4207~
.TEK4128_OUTPUT
_TEK4128~
]TEK4129_OUTPUT
yS500_OUTPUT
'TEK4129
.VS500
LJ250
LJ250 180DPI
DECWINDOWS_OUTPUT
DECWINDOWS"
]DECWINDOWS_DRAWABLE
DECWINDOWs'wiDGET
Default workstation type
GKS output metafile
GKS input metafile
Workstation Independent Segment Storage
COM output metafile (character and ASCII only)
DIGITAL™ VT125 black and white output only
DIGITAL VT125 with color option
DIGITAL VT125 (black and white)
DIGITAL VT240 with color option
DIGITAL VT240 (black and white)
DIGITAL LCP01 printer
DIGITAL LCG01 color printer
DIGITAL VT330 terminal
DIGITAL VT340 terminal
DIGITAL LA34 with graphics option
DIGITAL LA100
DIGITAL LA50 with 2:1 aspect ratio
DIGITAL LA210
DIGITAL LN03 PLUS laser printer
DIGITAL VAXstation II (monochrome) (VWS)
DIGITAL VAXstation IVGPX (color) (VWS)
DIGITAL VAXstation 2000 (VWS)
DIGITAL VAXstation 3200 (VWS)
DIGITAL VAXstation 3500 (VWS)
DIGITAL VAXstation I
DIGITAL LVP16 color graphics plotter (8V2 x 11 paper size)
HP7475® color graphics plotter
DIGITAL LVP16 color graphics plotter (11 x 17 paper size)
HP7550® pen plotter
HP7580®_pen plotter
MPS2000* film recorder
HP7585® pen plotter
DIGITAL LPS40 and PostScript® graphics handler
Tektronix®~4014 output only
Tektronix-4014
Tektronix 4107 output only
Tektronix 4107
Tektronix 4207 output only
Tektronix 4207
Tektronix 4128 output only
Tektronix 4128
Tektronix 4129 output only
DEC VS500 output only
Tektronix 4129
DEC VS500
DEC LJ250 ink jet printer (90 dpi mode)
DEC LJ250 ink jet printer (180 dpi mode)
DECwindows-output only
DECwindows-input/output
DECwindows-an application window, output only
DECwindows-input/output within an application widget
 DIGITAL and DEC are trademarks of the Digital Equipment Corporation. HP7475, HP7550, HP7580, and HP7585 are registered
 trademarks of Hewlett Packard, Inc. MPS2000 is a trademark of Lasergraphics.  PostScript is a registered trademark of Adobe
 Systems, Inc. TEKTRONIX is a registered trademark of TEKTRONIX, Inc.
                                         326

-------
         SHOWMET displays the partial list of terminal types that is shown in Figure 7.2. Note that if you
         specify the default workstation type (selection 0) but the logical name is undefined, DEC GKS
         will use GKS$K_VT240BW (selection 14 in the table below) as the workstation type. How-
         ever, the programs that use GKS declare the TEKTRONIX 4207 (selection 83) to be the
         default device.
                0:   GKS default             'ft
                11:   VT125 c,olor           ,13:
                17:   VT340 color            38:
                41:   VAXstation II          42;
                51:   HP7475 plotter       :  S2:
                53:   HP7SSO plotter         54;
                61i   POSTSCRIPT             70:
                80:   TEK 4107  (640x480)   83:
                85:   TEK 4128 (1280x1024)  87:
              211:   DECW1NSOWS
CGM  metafiJe
VT240 color
LN03 PLUS
VAXstation 1
DEC  LVP16  plotter
HP7S80     plotter
TER  4014
TEK  4207   (640x480)
TER  4129  (1280x1024)
                     Figure 7.2.  Terminal display of graphics devices for SHOWMET


Before running SHOWMET, if you want to overlay the geopolitical map on the plot, you must assign the
map file.  You must always assign the logical names to the surface meteorology data files.  A sample run
stream that performs these assignments is shown below.
  !  ACCOUNTING CODE
  I
  !  Sample run stream to assign files to program SHOWMET
  !
  SAVERIFY = F$VERIFY("YES")
  !  Assigns ROMNET region map files to SHOWMET
  i
  ASSIGN USER2SOISK: tGRAFIX.DATAJROMNET18IN.DAT       ROMNET1BIN
  !
  !  ASSIGN SURFACE METEOROLOGY FILES FOR SHOWMET
  !
  ASSIGN MET35: [FOREMAN. RAWDATA] BUOY MAYAUGfifi.DAT     BUOYDAT
  ASSIGN MET25: [FOREMAN. RAUDATA1SRFC~MAY88.DAT        SURMET1A
  ASSIGN MET25: CFOREMAN.RAWDATA1SRFC~JUN88.DAT        SURMET1B
  ASSIGN MET25: [FOREMAN. RAWDATAISRFC~JUL88.DAT        SURMET1C
  ASSIGN MET25: CFOREMAN.RAUDATA1SRFC~AUG88.DAT        SURMET1D
  ASSIGN MET 1: [ROMNET. RAUDATA] BUOY AVGALL.DAT        SURMETM
  !
  RUN SHOWMET
  !
  !  end of run stream
                                          327

-------
SHOWMET will ask you a sequence of questions associated with the setup for its plots. We show the setup
prompts for SHOWMET in Table 7.33; the program's defaults are contained within square brackets, and the
informational text that it writes is shown italicized.   We indicate user responses  in shaded boxes;
[] or no shaded box response implies that you must press fBEti&N.'] for the default response.
We give additional information concerning a prompt immediately below the prompt, with the first line
indented. Your responses to prompts are checked for appropriateness by the program.  If you enter an
inappropriate response, the prompt will be repeated. A station key to help you interpret the program's
output is shown in Figure 7.3. Note that since the data are contained in sequential ASCII files, it may take
several minutes for a plot to be completed. If you plot to a file, you must make sure that you include a
path to a directory in which you have write privileges.
           Barb shaft represents wind direction
           (i.e., the "from" direction)
          Air temperature in 1/10'C
                            100
                            126
  Dew point or sea surface temperature in 1/10'C
Final 3 digits of station pressure in mb
(i.e., 1014.0mb)

140
   7
   Wind speed in m/s
                              Figure 7.3. SHOWMET station key.
                                          328

-------
                               TABLE 733. SHOWMET PROMPTS
Prompts and Messages when All Defaults Are Accepted
Prompts and Messages Arising from Non-Default Responses
Enter NUMBER for terminal-type [ 83] » >

Enter REGION name [ROMNET1]  >»

Enter TIME ZONE for this REGIONJ 5] »

Please enter  input file name  (RET  to quit entries):
[BUOYDAf]
Please enter  input file name  (RET  to quit entries):
[SURMFTIA J
Please enter  input file name  (RET  to quit entries):
[StRMEfWl
Please enter  input file name  (RET  to quit entries):
[SLRMEfJC")
Please enter  input file name  (RET  to quit entries):
[ SlftMETiP 1
Please enter  input file name  (RET  to quit entries):
Please enter input file name (RET to quit entries): f RETURN]
    You can assign up to SO files (including MAP files).

Do these files use integer IDs ? [Y] »
    Integer ID'S are the modern WBAN numbers that have
been assigned to weather stations.

SEQUENTIAL FILE "BUOYDAT" OPENED ON UNIT 1
STATUS: OLD READONLY: YES SHARED: NO FOR-
MATTED: YES
EQNAME = S2$DUA2S:[FOREMAN.RAWDATAJBUOY_M
AYAUG88.DAT;!
STARTING DATE A HOUR: 88121:19

SEQUENTIAL FILE 'SURMET1A" OPENED ON UNIT 2
STATUS: OLD READONLY: YES SHARED: NO FOR-
MATTED: YES
EQNAME =
$2$DUA25:[FOREMAN.RAWDATA]SRFC_MAY8&DAT;1
STARTING DATE & HOUR: 88121:19

SEQUENTIAL FILE "SURMET1B" OPENED ON UNIT 3
STATUS: OLD READONLY: YES SHARED: NO FOR-
MATTED: YES
EQNAME =
$2$DUA25:fFOREMAN.RAWDATAJSRFCJUN88.DAT;l
STARTING DATE 
-------
                                     TABLE 7.33 (continued)
Prompts and Messages when All Defaults Are Accepted
Prompts and Messages Arising from Non-Default Responses
SEQUENTIAL FILE "SURMETIC'OPENED ON UNIT 4
STATUS: OLD READONLY: YES SHARED: NO FOR-
MATTED: YES
EQNAME =
$2$DUA2S:[FOREMAN.RAWDATA]SRFCJUL88.DAT;1
STARTING DATE A HOUR: 88182:19

SEQUENTIAL FILE "SURMET1D* OPENED ON UNIT 7
STATUS: OLD READONLY: YES SHARED:NO FOR-
MATTED: YES
EQNAME =
$2$DUA25:IFOREMA.RAWDATA]SRFC_AUG88.DAT;1
STARTING DATE A HOUR: 88213:19

SEQUENTIAL FILE 'SURMETM " OPENED ON UNIT 8
STATUS: OLD READONLY: YES SHARED:NO FOR-
MATTED: YES
EQNAME =
$2$DUA6:[ROMNET.RAWDATA]BUOY_AVGALL.DAT;7
STARTING DATE A HOUR: 80182:19

WARNING ~ stoning years don't match

Enter new file names and try again (Y/N) [Y] » ®
    Note that SURMETM contains the 1988 data.

Enter STEPSIZE (integer HOURS)[ 1] »

Do you 'want the map 7 [Y] »

Do you want the grid displayed? [Y]
    When you do not subsequently select a window, the plot
displays a latitude-longitude grid.

Do you want a subregion window? [N]
    Note from Figure 7.4 (a standard weather map) that the
data are crowded around major population centers, and cannot
be discriminated  because of overwriting problems.  We rec-
ommend appropriate windowing.
Enter first COLUMN for windowf  1] » ©
Enter last COLUMN for window[  64] » §0)
Enter first ROW for windowf  1] » H
Enter last ROW for windowf  52] »  go)
    See Figure 7-5 for this windowed region.  Note that when
you request a windowed region and a grid depiction, the grid
that is shown is the model grid.
                                                                                           continued
                                               330

-------
                                       TABLE 733 (concluded)
              ***
              *
              *
              *
              *
              *
              *
              *
              *
              *
              *
*****************************************************************
                                                                 *
                                                                 *
                                                                 *
                                                                 *
 1:  Station ID'S
 2:  Standard weather map
 3:  Parameter  3 (for SURMET1
 4:  Parameter  4 (for SURMET1
 5:  Parameter  5 (for SURHET1
 6:  Parameter  6 (for SURMET1
 7:  Parameter  7 (for SURMET1
 8:  Parameter  8 (for SURNET1
 9:  Parameter  9 (for SURMET1
10:  Parameter 10 (for SURHET1
11:  Parameter 11 (for SURNET1
12:  Parameter 12 (for SURMET1
13:  Parameter 13 (for SURHET1
14:  Parameter 14 (for SURNET1
15:  Parameter 15 (for SURMET1
16:  Parameter 16 (for SURMET1
                          opaque sky cover,  X)
                          total  sky cover,  coded 0-8)
                          lowest cloud cover,  X)
                          lowest cloud height, m)
                          2nd  lowest cloud  cover, X)
                          2nd  lowest cloud  height, m)
                          3rd  lowest cloud  cover, X)
                          3rd  lowest cloud  height, m)
                          sea  level  pressure,  mb)
                          wind direction, deg)
                          wind speed,  m/s)
                          temperature,  deg  C)
                          dew  point, deg C)
                          station pressure,  mb)
*
*
*
*
*
*
*
*
*
*
*
              ****************************************************************************

What do you want to plot?[2] > >

Enter desired DATE for plot (0 to quit)[80186]» > fee 1211

Enter desired HOUR for plot[19] > >

Output file name? [: screen output, RESET: new
device] > >

Do you wish to adjust the terminal colors (Y/N)[NJ > >

Just plotted; data for parameter 2, date & how 88121:19

STEP means to go to the date & hour STEPSIZE hours later
VARIABLE means to select a new parameter for this date A hour
EXAMINE means to select a new parameter, date & hour
CHANGE means to change the setup, from STEPSIZE onward
DEVICE means to select a new device, then reprompt "S step..."
QUIT means to close down the paphics and stop the pro-am

S step, V variable, E examine, C change, D device, Q quit [S] > >
                                                331

-------
 Standard wrathtr *a» far 88121)19 LST
«85   84  83  82  81 . ••lHMf_ 78   77  76
 I	S	1||182~S. 22- 3	
 1
44
42
41
46
                  i||
                   It   -        ^H^b***"*!*    ~\.  	1~

4"i^ X^w
     ^^-IVaiii 77173
    1 »J    *•
                     !l«4g ,  W
                                 ^iifa	
                           ?Si?iJ^?nrsfuinr?o^n^u7^7e—"
              Figure 7.4. Sample ROMNET plot for SHO WMET.
                                                                 48


                                                                 39


                                                                 38


                                                                 37
    Standard Mather nap for 881211W LST
                  74
  41
  BUOVDHT  SUMCTlft SURJ^TIB SURICT1C SURHET1» SURMETM Hit RE^RH to continue »

          Figure 7.5. Sample ROMNET windowed plot for SHO WMET.
                               332

-------
                                    INDEX
AEROS, 215
ARMERG, 179

B-matrix compiler, 17
Barnes' analysis, 31,153,156
BUOY_CRCT, 40
BUOYJNTT, 44
BUOY_RFMT, 49
BUOY_STAT,55
BUOY_WNDW, 59

COPYTAPE.64
COPYTAPE (repeated), 186
COUNT_STNPERHR, 67
CVCHEM, 293

DEL, 71

FINDCT, 190
FINDPT.194

LINE_C,299
LINE_CR, 304

MASK, 309
MBEXTR, 197
MBMERGE, 202

NBIOMASS, 277

OFFTAPE, 77
Ozone boundary conditions, 287

PFMFCOPY, 322
Processor network
  model riles, 9
PTEXTR,207
PTMERG, 215

QAOUTP, 219
QASRCE,224
QASTACK,229

RETFAC, 233
ROM chemical species
 abbreviations for, 176
ROMREG,271
RWND_CAN_CLCT, 81
RWND_END, 88
RWND_RFMT,93
RWND_US_CLCT,97
RWND_V2,108
RWND_WNDW, 103

SFC_RFMT, 125
SFC_VRFY, 153
SFCCAN_CLCT, 113
SFCCAN_WNDW, 119
SFCR_HRFILL, 131
SFCUS_CLCT, 136
SFCUS_CLDJNTP, 143
SFCUS'WNDW, 148
SHOWMET, 323
Source Classification Codes, 215
Standard input files, 9
 model files, 9
 processor files, 9
STAT_RFMT, 159

TEMPROQ315
TOPEMI.234

WINDOWAR.238
WINDOWMB, 243
WINDOWPT.249

XTRACTLL,163
                                    Index-1

-------