United States
Environmental Protection
Agency
Office of Air Quality
Planning and Standards
Research Triangle Park, NC 27711
EPA-454/B-95-002
March 1995
Air
«. _-. A USER'S GUIDE FOR THE CALMET
SVEPA METEOROLOGICAL MODEL
-------
-------
BPA-454/B-95-002
A USER'S GUIDE FOR THE CALMET
METEOROLOGICAL MODEL
U.S. Environmental Protection Agency
Emissions, Monitoring and Analysis Division (MD-14)
Research Triangle Park, North Carolina 27711
National Park Service
Air Quality Division
Denver, Colorado 80225
USDA Forest Service
Office of Air Quality
Fort Collins, Colorado 80526
U.S. Fish and Wildlife Service
Air Quality Branch
Denver, Colorado 80225
March 1995
-------
DISCLAIMER
The information in this document has been reviewed in its entirety by the U.S.
Environmental Protection Agency (EPA), and approved for publication as an EPA document.
Mention of trade names, products, or services does not convey, and should not be interpreted
as conveying official EPA approval, endorsement, or recommendation.
EPA-454/B-95-002
-------
PREFACE
The Interagency Workgroup on Air Quality Modeling (TWAQM) was fonaed to
provide a focus for development of irdmirally sound, regkmal air quality modds for
regulatory assessments of poDiitant munpe impacts on Raderal Class I areas. Meetings were
held with personnel from interested Federal agencies, viz, the Environmental Protection
Agency, the U.S. Forest Service, the National Park Service, and the U.S. Fish and Wildlife
Service. The purpose of these meetings was to review respective regional modeling
programs, to develop an organizational framework, and to formulate reasonable objectives
and plans that could be presented to management for support and commitment. The
members prepared a memorandum of understanding (MOU) that incorporated the goals and
objectives of the workgroup and obtained signatures of management officials in each
participating agency. Although no States are signatories, their participation in IWAQM
functions is explicitly noted in the MOU.
This report describes the CALMET meteorological model and associated
meteorological data processing programs. The CALMET model described in this report
includes improvements to the model such as 1) a modification to make it more suitable for
regional applications such as the use of a spatially variable initial guess field, 2) an option for
using hourly gridded wind fields from the Perm State/NCAR Mesoscale Model with four
dimensional data assimilation (MM4-FDDA) as a supplement to observational data, 3) the
ability to compute .Lambert conformal map factors and, 4) a modified mixing height scheme.
This report is the fifth document published by the IWAQM in an effort to provide
the sponsoring agencies and other interested parties information on appropriate "off-the-shelf
methods for estimating long range transport impacts of air pollutants on Federal Class I areas
and impacts on regional visibility. The IWAQM members anticipate issuing additional
publications related to progress toward meeting the IWAQM goals and objectives, the results
of model evaluation studies, proposed and final recommendations on modeling systems for
regulatory applications, and other topics related to specific objectives in the MOU.
The Environmental Protection Agency must conduct a formal and public review
before the Agency can recommend for routine use new algorithms in regulatory analyses.
These reports are being released to establish a basis for reviews of the capabilities of this
methodology and of the consequences resulting from use of this methodology in routine
dispersion modeling of air pollutant impacts. These reports are one part of the overall
information that must be considered before any formal changes can be adopted.
111
-------
ACKNOWLEDGEMENTS
Hie members of IWAQM acknowledge the special efforts of J osepfa S.
Elizabeth M. Insley, Robert J. Yamartino and Maik B. Feraau of EAR1H TBC
report was prepared by EARTH TECH (formeiiy Sigma Research, Inc.) for
under Contract No. 53-56A6-3-00838 to >the U S
1ms
.
Forest Service, with Richard W. Fisher as the Work Assignment
ene work was accomplished in partial *^^**"*^.'^«
D\m544201 between the USDA and EPA, with John S. Irwin as the Project Officer.
xv
-------
Table of Contents
1. INTRODUCTION w
1.1 Background • 1-1
12 Overview of the Modeling System 1-2
13 Major Model Features and Options 1-8
1.4 Summary of Data and Computer Requirements 1-13.
2. TECHNICAL DESCRIPTION 2-1
2.1 Grid System 2-l
22 Wind Field Module 2-3
22.1 Step 1 Formulation 2-3
222 Step 2 Formulation 2-8
2.2.3 Incorporation of Prognostic Model Output 2-18
223.1 Terrain Weighting Factor 2-20
2.3 Micrometeorological Model 2-22
2.3.1 Surface Heat and Momentum Flux Parameters 2-22
2.3.2 Three-dimensional Temperature Field 2-32
232.1 Overwater Temperatures 2-33
233 Precipitation Interpolation 2-34
3. CALMET MODEL STRUCTURE 3-1
3.1 Memory Management 3-1
3.2 Structure of CALMET Modules 3-1
4. USER INSTRUCTIONS 4-l
4.1 Preprocessor Programs 4-1
4.1.1 READ56/READ62 Upper Air Preprocessors 4-1
4.1.2 METSCAN Surface Data QA Program 4-8
4.13 SMERGE Surface Data Meteorological Preprocessor 4-13
4.1.4 PXTRACT Precipitation Data Extract Program 4-22
4.13 PMERGE Precipitation Data Preprocessor 4-32
42 CALMET Model Files 4-40
42.1 User Control File (CALMET.INP) 4-44
422 Geophysical Data File (GEO.DAT) 4-79
423 Upper Air Data Files (UP1.DAT, UP2.DAT...) '. 4-92
42.4 Surface Meteorological Data File (SURF.DAT) 4-97
I:\calmetwp\feb95\wptbctwph
V
-------
Table of Contents (Concluded)
4-100
4-103
Overwater Data Files (SEA1X>AT, SEA2.DAT...)
42.6 Precipitation Data Ffle (PRECIRDAT)
42.7 Preprooessed Diagnostic Model Data Ffle (DIAGJDAT) 4-107
42.8 Prognostic Model Data Ffle (PROGDAT)
4.2.9 MM4-FDDA Model Data Ffle (MM4.DAT)
42.10 Terrain Weighting Factor Ffle (WTDAT)
4^.11 CALMET Output Files
42.11.1 CALMETJDAT
42.112 PACOUTDAT
43 Postprocessing Program
43.1 PRTMET Meteorological Display Program
4-111
4-113
4-120
4-127
4-127
4-139
4-144
4-144
5.
REFERENCES
5-1
Appendix A: Tree Diagram of the CALMET Model and Subroutine/Function Calling
Structure
Appendix B: Description of Each CALMET Subroutine and Function
Appendix C: Equations Used in Lambert Conformal Conversions
Appendix D: The Universal Transverse Mercator (UTM) Grid
fc\c»taetwp\fcW5\wptbcl.wpb
-------
1. INTRODUCTION
1.1 Background
As part of a study to design and develop a generalized non-steady-state air quality
modeling system for regulatory use, Sigma Research Corporation developed the CALPUFF
dispersion model and related models and programs, including the CALMET meteorological
model The original development of CALPUFF and CALMET was sponsored by the California
Air Resources Board (CARB). Systems Application, Inc. (SAI) served as a subcontractor to
Sigma Research with the responsibility for developing the wind field modeling components of
the modeling system.
The original design specifications for the modeling system included: (1) the capability to
treat time-varying point and area sources, (2) suitability for modeling domains from tens of
meters to hundreds of kilometers from a source, (3) predictions for averaging times ranging
from one-hour to one year, (4) applicability to inert pollutants and those subject to linear
removal and chemical conversion mechanisms, and, (5) applicability for rough or complex
terrain situations.
The modeling system (Scire et aL, 1990a, 1990b) designed to meet these objectives
consisted of three components: (1) a meteorological modeling package with both diagnostic and
prognostic wind field generators, (2) a Gaussian puff dispersion model with chemical removal,
wet and dry deposition, complex terrain algorithms and other effects, and (3) postprocessing
programs for the output fields of meteorological data, concentrations and deposition fluxes.
In July, 1987, CARB initiated a second project with Sigma Research to upgrade and
modernize the Urban Airshed Model (UAM) to include state-of-the-science improvements in
many of the key technical algorithms including the numerical advection and diffusion schemes,
dry deposition, chemical mechanisms, and chemical integration solver. The new photochemical
model, called CALGRID, was integrated into the CALMET/CALPUFF modeling framework to
create a complete modeling system for both reactive and non-reactive pollutants. The
CALPUFF and CALGRID models were designed to be compatible with the common
meteorological model CALMET, and share a postprocessor for the time-averaging and display
of the modeling results.
The Interagency Workgroup on Air Quality Modeling (IWAQM) has reviewed various
modeling approaches suitable for estimating pollutant concentrations at Class I areas, including
the individual and cumulative impacts of proposed and existing sources on Air Quality Related
I:\c»lmetwp\fcM5\wpM«ll
1-1
-------
Values (AQRVs), Prevention of Significant Deterioration (PSD) increments, and National
Ambient Air Quality Standards (NAAQS). IWAQM consists of representatives from the US.
Environmental Protection Agency (EPA), US. Forest Service, National Park Service, and US.
Fish and Wildlife Service. IWAQM released a Phase I report (EPA, 1993) which recommended
using the MESOPUFF H dispersion model and MESOPAC H meteorological model for
simulating regional air quality and visibility impacts. These recommendations were considered
interim until more refined (Phase H) techniques could be identified and evaluated. As part of
the Phase H work, IWAQM has reviewed and mtercwiipared diagnostic wind field models,
tested the use of coarse gridded winds fields from the Penn State/NCAR Mesoscale Model with
four dimensional data assimilation (MM4-FDDA) as input into the diagnostic models, and
evaluated the MESOPUFF H and CALPUFF modeling systems using tracer data collected
during Cross-Appalachian Tracer Experiment (CAPTEX). The CAPTEX evaluation results
(EPA, 1994) indicated that by using the CALMET/CALPUFF models with MM4-FDDA data,
performance could be improved over that obtained with the interim Phase I modeling approach.
The CALMET and CALPUFF models have been enhanced as part of work for IWAQM,
EPA, the U.S. Forest Service, and the Environmental Protection Authority of Victoria
(Australia). The improvements to CALMET included modifications to make it more suitable
for regional applications such as the use of a spatially variable initial guess field, an option for
using hourly MM4-FDDA gridded fields as a supplement to observational data, the ability to
compute Lambert conformal map factors and a modified mixing height scheme. Improvements
to CALPUFF include new modules to treat buoyant rise and dispersion from area sources (such
as forest fires), buoyant line sources, volume sources, an improved treatment of complex terrain,
additional model switches to facilitate its use in regulatory applications, and an optional
Windows-based user interface. CALPUFF has been coupled to the Emissions Production
Model (EPM) developed by the Forest Service through an interface processor. EPA provides
time-dependent emissions and heat release data for use in modeling controlled burns and
wildfires.
1.2 Overview of the Modeling System
The overall modeling system configuration is presented in Figure 1-1. The
meteorological modeling with the CALMET model is detailed in Figure 1-2. Note that the
preprocessors for the raw meteorological data are written to accommodate the U.S. National
Climatic Data Center (NCDC) file formats. Figure 1-3 is the schematic of the CALPUFF
dispersion model indicating the model input and output files. The postprocessing approach for
the meteorological and dispersion modeling results is shown in Figure 1-4. The major
components of the modeling system and interfaces to external programs are summarized below.
I:\cakMtvp\feWS\wpieetl
1-2
-------
D
•
O
a
o
u
JJ •
«-4 0 14
• B C
V a
•H •-* a
B a a
cue
«~< o
O D U
O £ •
• ah
41 O B.
Jo
•a D o
* W IE
U O
U
•c —
C O'
o o <
o o
s*
a
o
o
K
•3 O O
X OK
•i O
to«4>4
B • •
•a • o
u •
e
•.
•a
«
u
H O
• O
Ck
*^
a
1-3
I
-------
J!i
ill |
•=» -
s
EH
ill
S
s::.
B?6
S-
« _
^ •
I1
•: g
! i
s I
"
IIs
' s I
S SC "
till
t 5
fill I
« ££
:
3=
E
s
a
S
13
ca
BO
•o
i
&
U
&b
o
"s
8
2
s
§>
i£
i
1-4
-------
scsr 3
"i~—£ £
:• i
II i
=11 i
u o •* o
srt s
sis -
a • •
:£«s £
M» • O •-
J*
.3
Z
s-
£
*j
s
^
•
:i;
12s
•i e u
•E •
OTJ
|£
*
i
3
S
i
s .
|
I
if
|
a
i
I
T3
O
I
1
.1
S
*
1-5
-------
s
•B
C
X
^
h n
3-O
O-H
s ti
•O b.
c
•o
•o
h
15
H
a
H
3C
CJ
o
",
(- 0
u o
£2
OC Oi
** -u
0
o.
I-
m
9
O
I.
J
<
u
B
Ou
u
• *H
*o
•e
a
X
tu
X
b.
b.
3
•O -^< w
•rf ja c —
e— o e-
ei ^^ o
> u 3 »
•M O O M
XJ U-l ^^ >
«J <0 —
•-I e u
0) XJ
a: n
a
>.
h ei
QT3
•O tl
jj U.
•o
t>
t«
<
o
X
O
0) JJ t-
jj c ei «c
o u •o o
-*4 J^ f-t
•o e e> o
1-1 O U* O
o. c u
o —
Cl
E-
co
O
Cu
u
o
o
a.
E-
V)
O
9
O
1-6
-------
METSCAN is a meteorological preprocessor which performs quality assurance checks on the
hourly surface meteorological data in the NCDC CD-144 format which is used as input
to the SMERGE program.
READ56 and READ62 are meteorological preprocessors which extract and process upper air
wind and temperature data from standard data formats used by NCDC. READ56 and
READ62 process TD-5600 and TD-6201 formatted data, respectively.
SMERGE is a meteorological preprocessor which processes hourly surface observations from a
number of stations in NCDC CD-144 format and reformats the data into a single file
with the data sorted by time rather than station.
EXTRACT is a meteorological preprocessor which extracts precipitation data for stations and a
time period of interest from a fixed length, formatted precipitation data file in NCDC
TD-3240 format.
PMERGE is a meteorological preprocessor responsible for reformatting the precipitation data
files created by the PXTRACT program. PMERGE resolves "accumulation periods" into
hourly values and flags suspicious or missing data. The output file can be formatted or
binary, which can be directly input into the CALMET model, containing the precipitation
data sorted by hour rather than station.
CSUMM (a version of the Colorado State University Mesoscale Model) is a primitive equation
wind field model which simulates mesoscale airflow resulting from differential surface
heating and terrain effects. The diagnostic wind field model within CALMET contains
options which allow wind fields produced by CSUMM to be combined with observational
data as part of the CALMET objective analysis procedure.
MM4-FDDA (Penn State/NCAR Mesoscale Model) is a prognostic wind field model with four
dimensional data assimilation. CALMET has been modified to incorporate
MM4-FDDA winds into its Diagnostic Wind Model (DWM).
CALMET is a meteorological model which includes a diagnostic wind field generator containing
objective analysis and parameterized treatments of slope flows, kinematic terrain effects,
terrain blocking effects, and a divergence minimization procedure, and a
micrometeorological model for overland and overwater boundary layers.
I:\otoetwp\feMS\wpieeU
1-7
-------
CALPUn? is a non-steady-state Gaussian puff model containing modules for complex terrain
„ . _ _, . ...i i^^r^f-tnif ftftfUL hufldine downwash, wet and dry
effects, overwater transport, coastal interactive effects,
removal, and simple chemical transformation.
CALGRTO is an Eulerian photochemical transport and disr^on model which indu^ modules
for horizontal and vertical advection/diffusion, dry deposition, and a detailed
photochemical mechanism.
PRTMET is a postprocessing program which displays user-sdected portions of the
meteorological data base produced by the CALMET meteorological model
CALPOST is a postprocessing program with options for the computation of time-averaged
concentrations and deposition fluxes predicted by the CALPUFF and CALGRTO
models. CALPOST will also compute visibility impacts in accordance with IWAQM
recommendations.
This report describes the CALMET model and the CALMET associated meteorological
data processing programs READ56, READ62, METSCAN, SMERGE, l?1^1™?
and PRTMET. Section 2 contains a description of the technical formulation of CALMET. The
structure of the CALMET code is discussed in Section 3. The inputs and outputs of the
CALMET model and the preprocessing and postprocessing programs are described in Section 4.
Appendix A contains a tree diagram showing the sequence of subroutines and function calls in
CALMET. A brief description of each CALMET routine is provided in Appendix B. Input and
output files for a test case example are presented in Appendix C.
A series of companion reports describe other components of the modeling system. The
prognostic wind field model, CSUMM, is described in a report by Kessler (1989). A stand-alone
version of the Diagnostic Wind Model (DWM) used as the wind field module in CALMET is
discussed by Douglas and Kessler (1988). The technical formulation and user instructions for
the revised CALPUFF model and CALPOST postprocessor are contained in Scire et al.(1994).
Finally, the CALGRID model is documented in a paper by Yamartino et al. (1992) and reports
by Yamartino et at (1989) and Scire et al. (1989).
13 Major Model Features and Options
The CALMET meteorological model consists of a diagnostic wind field module and
micrometeorological modules for overwater and overland boundary layers. When using large
domains, the user has the option to adjust input winds to a Lambert Conformal Projection
1-8
-------
coordinate system to account for Earth's curvature. Hie diagnostic wind field module uses a
two step approach to the computation of the wind fields (Douglas and Kessler, 1988), as
illustrated in Figure 1-5. In the first step, an initial-guess wind field is adjusted for kinematic
effects of terrain, slope flows, and terrain blocking effects to produce a Step 1 wind field. The
second step consists of an objective analysis procedure to introduce observational data into the
Step 1 wind field to produce a final wind field. An option is provided to allow gridded
prognostic wind fields to be used by CALMET, which may better represent regional flows and
certain aspects of sea breeze circulations and slope/valley circulations. Wind fields generated by
the CSUMM prognostic wind field module can be input to CALMET as either the initial guess
field or the Step 1 wind field. The MM4-FDDA prognostic data can be introduced into
CALMET in three different ways:
as a replacement for the initial guess wind field (pathway <§) in Figure 1-5).
as a replacement for the Step 1 field (pathway (£)); or
as "observations" in the objective analysis procedure (pathway Q).
The major features and options of the meteorological model are summarized in
Table 1-1. The techniques used in the CALMET model are briefly described below.
Step 1 Wind Field
Kinematic Effects of Terrain: The approach of Liu and Yocke (1980) is used to evaluate
kinematic terrain effects. The domain-scale winds are used to compute a terrain-forced
vertical velocity, subject to an exponential, stability-dependent decay function. The
kinematic effects of terrain on the horizontal wind components are evaluated by applying
a divergence-minimization scheme to the initial guess wind field. The divergence
minimization scheme is applied iteratively until the three-dimensional divergence is less
than a threshold value.
Slope Flows: An empirical scheme based on Alhvine and Whiteman (1985) is used to
estimate the magnitude of slope flows in complex terrain. The slope flow is
parameterized in terms of the terrain slope, terrain height, domain-scale lapse rate, and
time of day. The slope flow wind components are added to the wind field adjusted for
kinematic effects.
I:\otoetwp\fcb95\wpwctl
1-9
-------
Set tip Initial
guess field
•K4-FDDA
Model output »eed
as -initial Ouess
field*
computer Terrain
Sffceti
Mini
Divergence
St«p 1 Wind
Field
MJU-FDDi
Hedel Output D«ed
as -Step 1' field
rerform ObjeetiTe
rxeeednre
KM4-FDD1
Model Output 0«ed
«• •ob«erration«*
••eeth Wind Field
(Optional)
Apply O'irien
Procedure end
Minimise Divergence
(Optional)
Step 2
(Final) Wind
Field
X^«^Wn^^^SJg^
Step 1 field ®. MM4-FDDA wind data can also be treated as "observations ©.
I:\cabBetwp\fcWS\wpMcU
1-10
-------
Table 1-1
Major Features of the CALMET and CSUMM Meteorological Models
Boundary Layer Modules of CALMET
• Overland Boundary Layer • Energy Balance Method
• Overwater Boundary Layer - Profile Method
• Produces Gridded Fields of:
- Surf ace Friction Velocity
- Convective Velocity Scale
• Monin-Obukhov Length
- Mixing Height
- PGT Stability Class
- Air Temperature (3-D)
• Precipitation Rate
Diagnostic Wind Field Module of CALMET
• Slope Flows
• Kinematic Terrain Effects
• Terrain Blocking Effects
• Divergence Minimization
• Produces Gridded Fields of U, V, W Wind Components
• Inputs Include Domain-Scale Winds, Observations, and
(optionally) Coarse-Grid Prognostic Model Winds-
• Lambert Conformal Projection Capability
Prognostic Wind Field Model (CSUMM)
• Hydrostatic Primitive Equation (PE) Model
• Flows Generated in Response to Differential Surface
Heating and Complex Terrain
• Land-Sea Breeze Circulations
• Slope-Valley Winds
• Produces Gridded Fields of U, V, W Wind Components,
and other Meteorological Variables
I:\cnhnetwp\fcWS\wTwecll
Ml
-------
: The Aermodynamic Mocking effects of terrain on the
terms of the local Froude number (Alhvine and Whiteman, 1985). If
eftaode number at a particular grid point is less than a critical value and the wind
has an uphill component, the wind direction is adjusted to be tangent to the terrain.
Step I Wind Field
The wind field resulting from the adjustments described above of the initial-guess wind is
the Step 1 wind field. The second step of the procedure involves the mtroduction of
observational data into the Step 1 wind field through an objective ana^is !"«*« ^»
inverse-distance squared interpolation scheme is used which weighs observational data heavrfy m
LvLty of the observational station, while the Step 1 wind field donunates *e mterpolated
wind field in regions with no observational data. The resulting wind field is subject to
TclL* an optional adjustment of vertical velocities based on the O'Brien (1970) method,
and divergence rninimization to produce a final Step 2 wind field.
Introduction of Prognostic Wind Field Results
The CALMET model contains an option to allow the introduction of gridded wind fields
generated by the MM4-FDDA model (or the CSUMM model) as input fields. The procedure
permits the prognostic model to be run with a significantly larger horizontal grid spacing and
different vertical grid resolution than that used in the diagnostic model. This option allows
certain features of the flow field such as the sea breeze circulation with return flow aloft, which
may not be captured in the surface observational data, to be introduced into the diagnostic wind
field results. An evaluation with CAFIEX tracer data indicated that the better spatial and
temporal resolution offered by the hourly MM4-FDDA fields can improve the performance of
the dispersion modeling on regional scales (EPA, 1995).
If the MM4-FDDA wind data are used as the initial guess field, the coarse grid scale
MM4-FDDA data are interpolated to the CALMET fine-scale grid. The diagnostic module in
CALMET will then adjust the initial guess field for kinematic effects of terrain, slope flows and
terrain blocking effects using fine-scale CALMET terrain data to produce a Step 1 ™«™«;
A second approach is to use MM4-FDDA wind data directly as the Step 1 wmd field. This field
is then adjusted using observational data, but additional terrain adjustments are not made. A
third available option in CALMET is to treat the gridded MM4-FDDA data as "observations in
the objective analysis procedure.
I:\ateetwp\fcMS\vpwctl
1-12
-------
CALMET Boundary Layer Models
The CALMET model contains two boundary layer models for application to overland
and overwater grid cells.
Overland Boundary Laver Model: Over land surfaces, the energy balance method of
Holtslag and van Ulden (1983) is used to compute hourly gridded fields of the sensible
heat flux, surface friction velocity, Monin-Obukhov length, and convective velocity scale.
Mixing heights are determined from the computed hourly surface heat fluxes and
observed temperature soundings using a modified Carson (1973) method based on Maul
(1980). Gridded fields of PGT stability class and optional hourly precipitation rates are
also determined by the model.
Overwater Boundary Layer Model! The aerodynamic and thermal properties of water
surfaces suggest that a different method is best suited for calculating the boundary layer
parameters in the marine environment. A profile technique, using air-sea temperature
differences, is used in CALMET to compute the micrometeorological parameters in the
marine boundary layer.
An upwind-looking spatial averaging scheme is optionally applied to the mixing heights
and 3-dimensional temperature fields in order to account for important advective effects.
1.4 Summary of Data and Computer Requirements
Data Requirements
The input data requirements of the CALMET model are summarized in Table 1-2. The
modeling system flow diagrams (Figures 1-1 through 1-4) provides an overview of the various
input data sets required by the model as well as the preprocessing steps used to produce them.
CALMET is designed to require only routinely-available surface and upper air meteorological
observations, although special data inputs can be accommodated. For example, twice-daily
sounding data (e.g., at the standard sounding times of 00 and 12 GMT) are needed as a
minimum, but if soundings at more frequent (even arbitrarily spaced) intervals are available,
they will be used by the model
CALMET reads hourly surface observations of wind speed, wind direction, temperature,
cloud cover, ceiling height, surface pressure, relative humidity, and precipitation type codes
(optional, used only if wet removal is to be modeled). These parameters are available from
I:\almetwp\fcMS\wp«ecU
1-13
-------
Table 1-2
Summary of Input Data Required by CALMET
Hourly observations ofc
- wind speed
. wind direction
- temperature
. cloud cover
Surface Meteorological Data
Hourly precipitation data:
- precipitation rates
- precipitation type code
(part of surface data file)
. surface pressure
. relative humidity
Upper Air Data
Twice-daily observed vertical profiles of.
. wind speed
. wind direction
- temperature
- pressure
- elevation
Hourly gridded wind fields (optional)
- MM4-FDDA output
- CSUMM output
Overwater Observations (optional)
air-sea temperature difference
air temperature
relative humidity
overwater mixing height
wind speed
wind direction
overwater temperature gradients above and
below mixing height
Geophysical Data
Gridded fields of:
- terrain elevations
land use categories .
surface roughness length (optional)
albedo (optional)
Bowen ratio (optional)
soil heat flux constant (optional)
anthropogenic heat flux (optional)
vegetative teaf area index (optional)
I:\alnewip\fcWS\wpwctl
1-14
-------
National Weather Service surface stations. The preprocessors are designed to use data in the
National Climatic Data Center's (NCDC) standard data formats (e.*, CD-144 format for the
surface data). However, the data can also be input into the model by way of free-formatted,
user-prepared files. This option is provided to eliminate the need for running the preprocessors
to prepare the data files for short CALMET runs for which the input data can easily be input
manna
Jly.
Missing values of temperature, cloud cover, ceiling height, surface pressure, and relative
humidity at surface stations are allowed by the program. The missing values are internally
replaced by values at the closest station with non-missing data. However, one valid value of
each parameter must be available from at least one station for each hour of the run. Missing
values of the precipitation code are passed through to the output file, since CALPUFF contains
logic to handle missing values and CALGRID does not use this parameter.
The upper air data required by CALMET include vertical profiles of wind speed, wind
direction, temperature, pressure, and elevation. As noted above, routinely-available NWS upper
air data (e.g., in TD-5600 and TD-6201 format) or non-standard sounding data can be used.
The use of non-standard data formats would require a user-prepared reformatting program to
convert the data into the appropriate CALMET format.
If the upper air wind speed, wind direction, or temperature is missing, CALMET will
interpolate to replace the missing data. Actually, the interpolation of wind data is performed
with the u and v components, so both the wind speed and direction must be present for either to
be used. Because the program does not extrapolate upper air data, the top valid level must be
at or above the model domain and the lowest (surface) level of the sounding must be valid.
For modeling applications involving overwater transport and dispersion, the CALMET
boundary layer model requires observations of the air-sea temperature difference, air
temperature, relative humidity and overwater mixing height (optional) at one or more
observational sites. The model can accommodate overwater data with arbitrary time resolution
(e.g., hourly, daily, or seasonal values). The location of the overwater stations is allowed to vary
in order to allow the use of observations made from ships. CALMET optionally can use only
land stations to calculate temperatures over land and only overwater stations to calculate
temperatures over water. If this option is used, vertical temperature lapse rate information may
be included at the overwater observational sites.
If the wet removal algorithm of the CALPUFF model is to be applied, CALMET can be
made to produce gridded fields of precipitation rates from hourty precipitation observations.
I:\cahae4wp\fcWS\wpiecil
1-15
-------
The routinely-available NCDC precipitation data in TD-3240 fonnat or a free-formatted,
user-prepared file of precipitation rates can be used as input to CALMET.
CALMET also requires geophysical data including gridded fields of terrain elevations
and land use categories. Gridded fields of other geophysical parameters, if available, may be
input to the model The optional inputs include surface roughness length, albedo, Bowen ratio,
a son heat flux parameter, anthropogenic heat flux, and vegetation leaf area index. These
parameters can be input as gridded fields or specified as a function of land use. Default values
relating the optional geophysical parameters to land use categories are provided within
CALMET.
As described in the previous section, CALMET contains an option to read as input
gridded wind fields produced by the prognostic wind field models, MM4-FDDA or CSUMM.
The CSUMM prognostic wind field model generates a file called PROG DAT which can be
directly input into CALMET, or if using the MM4-FDDA derived wind data, a file called
MM4.DAT is required.
One of the options in CALMET is to by-pass the boundary layer model and compute
only gridded wind fields (i.e., produce U, V wind components only without the
micrometeorological variables such as friction velocity, Monin-Obukhov length, etc.). Although
the CALPUFF and CALGRID models cannot be executed with such a file, there may be some
applications in which only the wind components are of interest. For example, a postprocessor
(CAL2UAM) can be used to convert the CALMET winds into a fonnat suitable for input into
the UAM model. If CALMET is to be run in this mode, an option is provided to allow
preprocessed surface and upper air observations to be input. The preprocessed input file,
DIAG.DAT, is compatible with the stand-alone version of the diagnostic wind field model
developed by Douglas and Kessler (1988).
CALMET reads the user's inputs from a "control file" called CALMET.INP. This file
contains the user's selections of the various model options, input variables, output options, etc.
The CALMET control file and other input files are described in detail in Section 42.
Computer Requirements
The memory management scheme used in CALMET is designed to allow the maximum
array dimensions in the model to be easily adjusted to match the requirements of a particular
application. An external parameter file contains the maximum array size for all of the major
I:\olMlvp\feti95\wpKeU
1-16
-------
-------
can be accomplished by modifying the appropriate variables
arrays. A re-sizing of the program
in the parameter file.
Therefore, the memory required by CALMET wfll be determined by the particular
application. However, as an example, CALMET required approximately 43 M bytes of memory
for a test run with a 50x50 horizontal grid with 12 vertical layers. A 12-hour test run, which
included the optional computation of three-dimensional temperature and vertical velocity fields
and printing of model results every 6 hours, required about 366 seconds of CPU time on a
66-MHz 486 PC. This run used a 43 x 33 horizontal grid with 8 vertical layers. This run time
translates to approximately .003 CPU seconds per cell per hour.
1-17
-------
2. TECHNICAL DESCRIPTION
2.1 Grid System
The CALMET model uses a grid system consisting of NZ layers of NX by NY square
horizontal grid cells. Figure 2-1 illustrates one layer of grid cells for a 7 x 4 grid. The "grid
point" refers to the center of the grid ceU in both the horizontal and vertical dimensions. The
"cell face" refers to either the horizontal or vertical boundary between two adjacent cells. In
CALMET, the horizontal wind components (u and v) are defined at each grid point. The
vertical wind component (w) is defined at the vertical cell faces.
The position of the meteorological grid in real space is determined by the reference
coordinates (XORIGKM, YORIGKM) of the southwest corner of grid cell (1,1). Thus, grid
point (1,1) is located at (XORIGKM + DGRIDKM/2^ YORIGKM + DGRIDKM/2.), where
DGREDKM is the length of one side of the grid square.
It is assumed that the orientation of the X and Y axes of the CALMET grid are west-
east and south-north, respectively. In this way, the grid system is compatible with the usual
definition of the u and v horizontal wind components as the easterly and northerly components
of the wind, respectively. One commonly-used grid system compatible with CALMET is the
Universal Transverse Mercator (UTM) Grid (see Appendix D for a description).
If the chosen CALMET domain is large, the user, through input variable LLCONF, can
exercise the option to fit the observed winds to a Lambert Conformal grid to account for the
Earth's curvature. CALMET uses the user-specified standard latitudes and reference longitude
to calculate a "cone constant" and the east-west distance of the observations from the reference
longitude. These quantities are then used to adjust observed and prognostic winds to fit the
Lambert Conformal mapping. If LLCONF = T, the user also must define XORIGKM,
YORIGKM and all x,y coordinates of observation stations, coastlines and barriers to fit the
chosen Lambert Conformal grid. The default values of the standard latitudes and reference
longitude are set to be consistent with the U.S. EPA's MM4-FDDA data base. If a different set
of parameters are required, the user can set them in Input Group 2. The equations for the cone
constant and the coordinate conversion are given in Appendix C.
The CALMET model operates in a terrain-following vertical coordinate system.
(2-1)
I:\eabaetwp\fcMS\wp(ecI2.wpfa
2-1
-------
Grid Cell
4
Y
G
R -
I J
D
C
E
I
N
D 2:
E i S
V j'lir-*
4-
^
I
31
Grid
Point
*
*
•
*
•
.
•
*
*
•
•
-
.
•
•
•
o
*
*
•—•—•——••••—
•
*
•
•
•
*
DGRIDKM
CXORIGKM, YORIGKM).
X GRID
INDEX
Figure 2-1. Schematic illustration of the CALMET horizontal grid system for a 7 x 4 grid
showing the grid origin (XORIGKM, YORIGKM) and grid point location (•)•
2-2
-------
where Z is the terrain-following vertical coordinate (m),
z is the Cartesian vertical coordinate (m), and
h, is the terrain height (m).
The vertical velocity, W, in the terrain-following coordinate system is defined as:
- w^v-^-vQ (2-2)
etc dy
where w is the physical vertical wind component (m/s) in Cartesian coordinates, and
u,v are the horizontal wind components (m/s).
2.2 Wind Field Module
2.2.1 Step 1 Formulation
The CALMET diagnostic wind field model uses a two-step approach to the computation
of the wind fields. In Step 1, an initial guess (domain mean) wind field is adjusted for:
kinematic effects of terrain
slope flows
blocking effects
three dimensional divergence minimization
The initial guess domain mean wind can vary spatially or be constant throughout the
grid. The domain mean wind components can be computed internally by vertically averaging
and time-interpolating upper air sounding data or simply specified by the user. If the domain
mean winds are computed, the user specifies the vertical layer through which the winds are to
be averaged and either which upper air station is to be used for determining the domain mean
wind or that all stations should be included in a 1/r2 interpolation to produce a spatially varying
guess field.
CALMET provides two options for by-passing the Step 1 procedure. The first is to
specify that the final winds be based on objective analysis alone. This option is controlled by the
control file variable, IWFCOD, in Input Group 5 (see Section 4.2.1).
2-3
-------
• The second option is the input of an externally generated, gridded Step 1 wind field
Typically, this would be the output of another model, such as a prognostic wind field model.
The control ffle variable, IPROG, of Input Group 5 controls this option.
•me externally-generated Step 1 wind field need not use the same horizontal grid as that
used in the CALMFT simulation. For example, the computationally intensive prognostic wind
fi^d model can be executed on a relatively coarse grid to develop the v^™*'
breeze circulation and provide information for areas of the grid wi*r*~ ,
prognostic model results are then combined with the available wind observations in the Step 2
objective analysis procedure to develop the final wind field.
The parameterization used in the internal computation of a Step 1 wind field, Le.,
simulation of kinematic effects of terrain, slope flows, blocking effects, and divergence
mimmization, are described in the following sections. This discussion is largely derived
Douglas and Kessler (1988).
from
Kinematic Effects
CALMET parameterizes the kinematic effects of terrain using the approach of Liu and
Yocke (1980). The Cartesian vertical velocity, w, is computed as:
w
(2-3)
where V is the domain-mean wind,
h, is the terrain height,
k is a stability-dependent coefficient of exponential decay, and,
z is the vertical coordinate.
The exponential decay coefficient increases with increasing atmospheric stability.
(2-4)
(2-5)
I:\otedwp\fcb93\wpwd2xph
2-4
-------
where N is the Brunt-Vaisala frequency (1/s) in a layer from the ground through a user-
input height of "ZUPT" m,
6 is the potential temperature (deg K),
g is the acceleration due to gravity (m/s2), and,
| V | is the speed of the domain-mean wind.
The initial-guess domain-mean wind is then used to compute the terrain-forced Cartesian
vertical velocity, w, into a terrain-following vertical velocity, W (Eqn. 2-2). The kinematic effects.
of terrain on the horizontal wind components are then evaluated by applying a divergence-
minimization scheme to the initial guess wind field. The divergence minimization scheme
iterativeh/ adjusts the horizontal wind components until the three-dimensional divergence is less
than a user-specified maximum value.
Slope Flows
CALMET uses an empirical scheme to estimate the magnitude of slope flows in complex
terrain. The direction of the slope flow is assumed to be oriented in the drainage direction.
The slope flow vector is added into the Step 1 gridded wind field in order to produce an
adjusted Step 1 wind field.
«.' =«,+«, (2-6)
where
v,' = v,
(2-7)
are the components of the Step 1 wind field (m/s) before considering
slope flow effects,
are the slope flow wind components (m/s), and,
are the components of the Step 1 wind field (m/s) after considering slope
flow effects.
The direction of the slope flow is determined by the following empirical procedures
suggested by Alhvine and Whiteman (1985). First, an angle, P' is computed based on the slope
of the terrain.
(2-8)
where h, is the height (m) of the terrain.
I:\ca!metwp\fet>9S\wpieca.wpfa
2-5
-------
A ««md angle, P', is computed as shown in Table 2-1. The drainage direction, P., is
defined as:
(2-9)
|
\
90 - P* 0 s P* * 90
450 - p* 90 < p* < 360
where pd is in degrees.
me magnitude of the slope flow is parameterized as a function of time of day, domain-
scale temperature lapse rate, terrain height, and terrain slope.
(MO)
S - P2 1C
(2-11)
where S is the speed (m/s) of the slope flow,
s, is a measure of the steepness of the terrain
v is the domain-scale temperature lapse rate (deg K/m),
h is the maximum terrain height (m) within the radius of influence of terrain
**mw
features,
T is the domain-averaged air temperature (°K), and,
P° is a function which depends on time of day. It has a value of +1 for upslope
flows and -1 for downslope flows.
Blocking Effects
The thermodynamic blocking effects of terrain on the wind flow are parameterized in
terms of the local Froude number (Allwine and Whiteman, 1985).
Fr
(2-12)
L\c«toe«wp\fcM5\wi»eca.wph
2-6
-------
Table 2-1
Computation of the Angle, p', Uaed in the Computation of the Slope Row Vector
(from Douglas and Kessler, 1988)
-(degrees)
oy
c/y
3r dx dx
* P' + 180 P' 4 360
270 P' + 180 P' + 360
90 p' + 180 P'
* Flat terrain. Drainage direction is undefined.
fc\e»toetwp\fcWS\wp«el2.wph
2-7
-------
where Fr is the local Froude number,
V is the wind speed (m/«) at the grid point,
N is the Bnint-Viisili frequency as defined in Eqn. (2-5),
Ah. is an effective obstacle height (m),
(b.J, is the highest gridded terrain height within a radius of influence (TERRAD) of
the grid point (ij), and
(z)^ is the height of level k of grid point (ij) above the ground
•me Froude number is computed for each grid point If Fr is less than a critical Froude
number (CRTIFN) and the wind at the grid point has an uphill component, the wind du-ection is
adjusted to be tangent to the terrain. The wind speed is unchanged. If Fr exceeds the critical
Froude number, no adjustment is made to the flow.
Input Group 5 of the control file contains the user input parameters to the terrain
blocking module. The radius of influence of terrain features, TERRAD, is a function of the
dominant scale of the terrain. The critical Froude Number, CRTIFN, is the threshold for
blocking effects. It has a default value of 1.0.
22.2 Step 2 Formulation
The second step in the processing of the wind field by the diagnostic model is the
introduction of observational data into the Step 1 gridded wind field. The Step 2 procedure
consists of four substeps (Douglas and Kessler, 1988).
Interpolation
Smoothing
O'Brien adjustment of vertical velocities
Divergence minimization
The user optionally can invoke a lake breeze routine between the smoothing and O'Brien steps
to simulate wind flow in the vicinity of a coastline.
Interpolation
An inverse-distance method is used to introduce observational data into the Step 1 wind
field.
2-8
-------
(2-13)
where Owv,,^ are the observed wind components at station k,
are the Step 1 wind components at a particular grid point,
are the initial Step 2 wind components,
is the distance from observational station k to the grid point, and
R is a user-specified weighting parameter for the Step 1 wind field.
This interpolation scheme allows observational data to be heavily weighted in the vicinity
of the observational station, while the Step 1 wind field dominates the interpolated wind field in
regions with no observational data. The weighting procedure described by Eqn. (2-13) is applied
independently to each vertical layer. Surface observations are used only for the lowest wind
field layers appropriate for whatever option for vertical extrapolation of the observational data is
selected (see the variable BEXTRP in Input Group 5 of the control file).
The user specified parameter, R, determines the relative weighting given to the Step 1
wind field. Different values of R are used in the surface layer (RJ, and layers aloft (R2). R!
and R2 are also entered in Input Group 5 of the control file.
An observation is excluded from interpolation if the distance from the observational
station to a particular grid point exceeds a maximum radius of influence. .Three separate
maximum radius of influence parameters are used in the diagnostic wind module (i.e., when
IWFCOD=1);
Radius of influence over land in the surface layer (RMAX1)
Radius of influence over land in layers aloft (RMAX2)
Radius of influence over water (RMAX3)
If the option to perform objective analysis only (IWFCOD-0) is selected, RMAX1 is
used as the maximum radius of influence for all layers and all land use types. That is, RMAX2
and RMAX3 are not used when IWFCOD=0.
CALMET is also equipped with a varying radius of influence option, LVARY. When
invoked, it allows the model to use the closest observation station with valid data to a grid point
I:\catoetwp\feW5\*p»edZwpb
2-9
-------
if that grid point is outside the user specified radius of influence of any observation stations.
The LVARY option applies with either IWFCOD-0 (objective analysis) or IWFCOD-1
(diagnostic wind module). If the LVARY option is turned off, the radius of influence
palters must be selected so that every grid point is inside the radius of influence of at least
one observational station.
Hie number of observational stations that wfll be included in the interpolation can be
limited by an additional input parameter, NINTR2. This variable is an array of «NZ« elements,
one for each vertical layer, specifying the maximum number of stations that can be used in the
interpolation at a given grid point If the number of stations inside the radius of influence is
greater than NINTR2, the closest NINTR2 stations will be used.
Tlie region influenced by an observation can be limited by user-specified "barriers."
These barriers consist of line segments which define the boundaries of the region of the grid
which can be influenced by a particular observation. Any time a barrier exists between a grid
point and an observation site, the observational data are omitted for the interpolation. For
example, user-specified barrier segments can be defined to prevent observational data from a
station in a well-defined valley from being applied outside the valley region. At this time the
barriers extend to the top of the model domain. In the future, modifications may be made to
limit their vertical extent.
Vertical Extrapolation of Surface Wind Observations
Before performing the horizontal spatial interpolation of the winds, the surface winds at
each observational station can be, as an option, extrapolated to higher layers. The controlof the
extrapolation option is through the variable ffiXTRP in Input Group 5 of the CALMET.IN1
file. The options are:
IIEXTRPJ
1 —do not extrapolate the surface data
2 —extrapolate vertically using a power law equation
3 — extrapolate vertically using user-defined
scaling factors
4 — extrapolate vertically using similarity theory
In addition to being a flag controlling the vertical extrapolation of surface winds,
IEXTRP also is an indicator of whether data from upper air stations are used in the surface
fc\cateeMp\feb9S\wpK>dZ.«pb
2-10
-------
layer (Layer 1). If lEXTRP is negative, data from upper air stations are ignored (treated as
missing) in the development of the surface layer wind field. If the four-character station name
of the upper air station is the same as that of a surface station (indicating the stations are
co-located), the Layer 1 data from the upper air station is ignored, regardless of the value of
EXTRP.
Also, the vertical extrapolation of data from a surface station is skipped if the surface
station is dose to an upper air station with valid data. The variable, RMIN2 (in Input Group 5)
defines the distance from an upper air station that a surface station must exceed in order for the
extrapolation to take place. The default value of RMIN2 is set to 4 km, so that surface stations
within 4 km of an upper air station will not be subject to vertical extrapolation with any of the
IEXTRP options.
If EXTRP * 2, the following power law equation is used to adjust the surface layer
winds to Layer 2 through the top of the model domain:
(2-14)
where z is the height (m) of the midpoint of the CALMET grid cell,
ZK is the measurement height (m) of the surface wind observation,
u,,, is the measured u-component of the wind (m/s),
Uj is the extrapolated u-component of the wind (m/s) at height z, and
P is the power law exponent.
A similar equation applies to the v-component of the wind.
Following Douglas and Kessler (1988) in the DWM, a value of P of 0.143 is used over
land, and P of 0.286 is used over water. A cell-averaged terrain elevation of zero is used as a
flag for water cells.
With IEXTRP = 3, the user defines a set of scaling factors, one for each CALMET layer
above the surface (see the FEXTRP array in Input Group 5). The winds at Layers 2 through
NZ are computed as:
u. = «j • FEXTRP,
(2-15)
t\c«toetwP\fcW5\wj»ecl2.wph
2-11
-------
where i is the CALMET layer number (i - 2,3, -., NZ),
ut is the u-component of the wind in Layer 1,
^ is the u-component of the wind in Layer i, and
FEXTRPj is the user-specified scaling factor for layer L
A similar equation is used to scale the v-component of the wind.
The third method for extrapolating the winds is based on the work of van Uldenand
Holtslag (1985). It uses similarity theory and observed data to extend the influence of the ^
Laceldspeedandciirecdonintothelayers^ft Wind speed and direction are altered*
each layer alolup to 200 meters above groimd level or the mixing height, ^^
^Lons foTthe van Ulden and Holtslag (1985) extrapolation method (lEXniP -
given below. The turning of the wind with height is given by Eqn. (2-16):
are
D(z)/D(K)
(2-16)
where D(z) is the turning angle at layer height center z, D(h) is the turning angle at a reference
height, h, and d, = 1.58 and d, - 1.0 are empirical constants. Table 2-2 gwes the empirical data
from which D(h) is interpolated.
In the implementation of the scheme in CALMET, first the mixing height and Monin-
Obukhov length at every eligible station are determined using the methods described in
Section 2.3. Using the calculated mixing height and Monin-Obukhov length, the amount of
turning in the wind direction at the reference height (h) of 200 m is determined by interpolatmg
in inverse Monin-Obukhov length (1/L) a turning angle, D(h), from Table 2-2, based on
observed data reported by van Ulden and Holtslag (1985). The reference turning angle *; then
used in Eqn. (2-16) to yield the turning angle (D,) at the CALMET height, z. Eqn. (2-16) is
applied with the same h - 200 m and D(h) with z equal to the anemometer height of the
observational station to obtain the turning angle from the ground to the anemometer height
(D2). The wind direction correction at CALMET height z from the anemometer height is then
applied (i.e., correction angle « D! - D2).
2-12
-------
Table 2-2
Turning of the Wind with Height (D), in Degrees Clockwise, as Observed at Cabauw,
Netherlands, at Various Heights (z) as a Function of Monin-Obukhov Length (L)
(from van Ulden and Holtslag, 1985)
Height above
ground (m)
40
80
120
160
200
L- -30
0
4
8
10
12
Unstable
m -100m
0
3
6
8
10
-370m
0
3
5
7
9
Neutral
lO'm
1
4
6
9
12
i
\
i
t
i
i
350m
2
7
10
14
18
130m
4
11
17
22
28
Stable
60m
5
16
24
30
35
20m
7
21
29
34
38
9m
12
24
31
36
39
fc\ataBtwp\fcb9S\W|»ecl2.wph
2-13
-------
The wind speed profile calculations ire based on the Momn-Obukhov similarity theory
for the surface layer as desmTx* by van Ulden and ^^ Depending on the stability,
Eqns (2-18) or (2-19) are used to determine the stability function based on height and Monm-
Obukhov length. The stability function, the measurement height, the layer center height, and
the roughness length in the grid cell in which the station is located are then used in Eqn. (2-16)
to obtain the wind speed at the layer center height The altered wind speed and direction are
then converted back to u and v wind components for use in the interpolation routines. After
calculating the turning angle, it is added to the wind direction m the Northern hemisphere (wmds
veer clockwise), and subtracted in the Southern hemisphere (winds back counterdock^e).
Eqn. (2-17) gives the similarity theory equation used to calculate the wind speed proffle:
U(z) - U(zl)
(2-17)
where U(z) is the wind speed at the center of the CALMET layer, U(zO is the wind speed at
the anemometer height, z0 is the roughness length, Zj is the anemometer height, and *M is the
stability function. Eqn. (2-18) gives the stability function for stable conditions:
ru
For unstable conditions, the stability function is given by Eqn. (2-19):
- exp(-0.29z/L)]
(2-19)
Lake/Sea Breeze Option
The user can define a lake or sea breeze region within which the surface winds are
calculated separately and replace the original winds. In order to obtain good results from this
option, there must be a complete (in time and space) observing network within the defined
region. The user defines the boundaries of up to ten lake breeze regions and specifies the end
points of the coastline (specified as a line segment) within each one. The winds at each grid
fc\adwtwp\feWS\«pnet2.«pb
2-14
-------
point within the region are calculated by using an inverse distance squared interpolation, but the
distances are defined as the difference between the distances of the grid point to the coastline
and the station to the coastline if the station and grid point are on the same side of the
coastline and the sum if they are on opposite sides. With this method, the actual distance
between the grid point and the station is not important, only their relative distances from the
coastline. Only stations within the region are considered.
Smoothing
The intermediate Step 2 wind field resulting from the addition of observational data into
the Step 1 wind field is subject to smoothing in order to reduce resulting discontinuities in the
wind field. The smoothing formula used in CALMET is:
* °'125
where (uy)" is the u wind component at grid point (ij) after smoothing, and
(Uy) is the u wind component before smoothing, as determined by Eqn. (2-13)
A similar equation is applied for the v component of the wind.
The use of the smoother is controlled by the input parameter array, NSMTH, contained
in Input Group 5 of the control file. This variable represents the maximum number of passes of
the smoother which are used in each layer. Surface layer winds are subject to a recommended
default maximum of two passes of the smoother but more passes can be specified. Application
of the smoother can be eliminated in all layers by setting NSMTH to zero. If the lake breeze
option is being used, winds within the lake breeze regions are not smoothed.
Computation of Vertical Velocities
Two options are available for computing vertical velocities in CALMET. With the first
method the vertical velocities are computed directly from the incompressible conservation of
mass equation using the smoothed horizontal wind field components. The second method
adjusts the vertical velocity profile so that the values at the top of the model domain are zero.
The horizontal wind components are then readjusted to be mass consistent with the new vertical
velocity field.
i:\cabMtwp\fcb95\wptecawpfa
2-15
-------
The initial vertical velocity is determined from the incompressible mass conservation
equation:
dy
where wa is the vertical velocity in terrain-following coordinates, and
u",v" are the horizontal wind field components after smoothing.
This mass-consistent vertical velocity is used as the final vertical velocity (Le, w - w,) if
Method 1 is selected.
Also with this method, no further adjustment is made to the horizontal wind
components. The final horizontal winds are the smoothed winds resulting from Eqn. (2-20).
Godden and Lurmann (1983) suggest that this procedure may sometimes lead to
unrealistically large vertical velocities in the top layers of the grid. In order to avoid this
problem, an option is provided to use a procedure suggested by O'Brien (1970) to adjust wr
The O'Brien procedure forces the vertical velocity at the top of the model domain to be
zero Because the horizontal winds are not mass consistent with the adjusted vertical velocities
the horizontal winds are subject to adjustment by the divergence minimization scheme described
in Section 2.3.4. The divergence minimization procedure iterativety adjusts the u and v
components to within a user-specified divergence threshold while holding the vertical velocity
field (w » w2) constant.
There are situations where the use of the O'Brien procedure is not warranted. For
example, if the top of the modeling grid is within a sea-breeze convergence zone, the large
vertical velocities resulting from application of Eqn. (2-21) may be realistic. Therefore, the use
of the O'Brien procedure is an optional feature of CALMET.
Divergence Minimization Procedure
Three-dimensional divergence in the wind field is minimized by a procedure described by
Goodin et al. (1980). This procedure iteratrvety adjusts the horizontal wind components (u,v)
for a fixed vertical velocity field so that at each grid point, the divergence is less than a user-
specified maximum value.
2-16
-------
dx dy A
where u,v are the horizontal wind components,
w is the vertical velocity in terrain following coordinates, and
e is the maximum allowable divergence.
In CALMET, the horizontal wind components are defined at the grid points. Vertical
velocities are defined at the vertical grid cell faces. Therefore, the divergence, D, at grid point
(y,k) is:
(2-24)
where Ax and Ay are the sizes of the grid cell in the x and y directions, respectively.
For each grid point, divergence is computed. The u and v wind components at the
surrounding cells are adjusted so that the divergence at the grid point is zero. The adjustments
are:
(2-25)
(2-26)
(2-27)
(2-28)
where the adjustment velocities (u^v^) are:
(2-29)
(2-30)
I:\oilmetwp\fcWS\wp.eca.wph
2-17
-------
Each time the divergence is eliminated at a particular grid point, divergence is created at
surrounding points. However, by applying the procedure iterative*, the divergence is gradually
reduced below the threshold value, 6, throughout the grid.
233 Incorporation of Prognostic Model Output
The CALMET model contains an option to allow the Step 1 wind field used in the
objective analysis scheme to be replaced by gridded wind fields generated by a version of the
prognostic Colorado State Universiiy Mesoscale Model (CSUMM) (Kessler, 1989). The
procedure allows for the prognostic model to be run with a significantly larger grid spacuig and
different vertical grid resolution than that used in the diagnostic model This option allows
certain features of the flow field, such as the lake breeze circulation with a return flow aloft,
which may not be captured in the surface observational data base, to be introduced into the
diagnostic wind field results.
The first step is to interpolate the gridded prognostic model winds to the CALMET
horizontal and vertical levels. The linear interpolation is performed to convert winds at the
prognostic model's vertical levels to the CALMET levels. An inverse distance squared (1/R )
weighting procedure is used in the horizontal to interpolate the prognostic model winds to the
CALMET grid points. Once the prognostic winds have been defined at the CALMET grid
points, the Step 2 wind field is generated and computed in the following way.
(2-31)
1
MH^B>
prog
where
are the wind components generated by the prognostic wind field model,
and
is a user-specified weighting parameter for the prognostic wind field data
The other variables were defined in Section 2.2.2.
The CALMET model contains three options for treating gridded prognostic wind fields
such as MM4-FDDA fields as input:
I:\oioaetwp\ieb9S\wpud2.vrpb
2-18
-------
as the initial guess field,
as the Step 1 wind field, or
as "observations.*
When used as the initial guess field, the prognostic winds are first interpolated to the
fine-scale CALMET grid. The normal diagnostic adjustments for the fine-scale terrain are then
made. This produces a Step 1 field which is then subject to an objective analysis procedure
using the observed wind data. Thus, in this mode, the prognostic winds are adjusted for the
fine-scale terrain effects and observations.
In the second option, the prognostic winds are interpolated to the CALMET grid and
then are used as the Step 1 field. Thus, fthe prognostic winds are nol adjusted for the
fine-scale terrain effects, but rather they are assumed to already contain the most significant
terrain effects. The Step 1 winds are combined with observations using an objective analysis
procedure to produce the final Step 2 winds.
In the third case, the prognostic winds are treated in exactly the same manner as the
observations. If the diagnostic wind option is used in CALMET, a Step 1 wind field is produced
by adjusting the domain-scale wind for the fine-scale terrain effects. The actual observations
and MM4-FDDA "pseudo-observations" are then used to modify the Step 1 fields using the
objective analysis procedure. If the "objective-analysis-only" option is selected in CALMET, the
computation of the Step 1 wind field is eliminated, and the final winds are based
on the objective analysis of the MM4-FDDA winds and the actual observational data. Note that
in this case, both the observations and MM4-FDDA winds are given a high weight in the
analysis procedure.
The potential drawback to this approach is that no distinction is made in the relative
confidence we may have in the MM4-FDDA simulations and the observed wind data. For
example, when winds are interpolated to the modeling grid, nearby wind observations are
treated in the same way as nearby MM4-FDDA winds, even though local circulations embodied
in the observed winds may be "missed" by the coarser resolution of the MM4-FDDA simulation.
The representativeness on a fine-scale grid of the observed point-value winds as
compared with winds derived from the MM4-FDDA on a coarse grid is expected to depend on
such factors as the height above the surface, subgrid-scale terrain variations, and the ratio of the
coarse-grid to fine-grid size. For example, a coarse grid of MM4-FDDA winds will not reflect
potentially important local features of the surface flow field induced by terrain variations which
can not be resolved by this coarse MM4-FDDA grid. On the other hand, the point-value
fc\cato«wp\feWS\wp»ect2.wph
2-19
-------
-snapshot' observations in such areas do not necessarily represent larger-scale flow fields as well
as the MM4-FDDA fields. Therefore, a waiting factor based on the «ubgrid-scale terrain
variations within each grid cell must be derived
233.1 Terrain Weighting Factor
Although the use of MM4-FDDA winds are expected in many circumstances to improve
the diagnostic model's wind fields, MM4-FDDA may not produce winds -near" the surface that
are representative if much terrain is poorly reserved by the scale of the grid used for the
MM4-FDDA simulations. When this is the case, local observations might be given more weight
than the MM4-FDDA winds in interpolating winds to the grid used for the diagnostic models.
The method employed for altering weights involves (1) computing av the standard deviation of
the departure of the "actual" terrain elevations from the grid-average terrain elevation, (2)
defining a weight W0 that is a function of ov and (3) weighting observed wind by W^, and
MM4-FDDA winds by (1 - W0) when performing the interpolation process.
To derive the weights, first quantify the differences between the terrain as represented
by a "coarse" grid used in the MM4-FDDA simulations and the terrain as represented on the
"fine-grid". Then, calculate the root-mean-square (RMS) of the difference between the original
terrain and the "coarse-grid" terrain elevations within a region about each point in the "coarse"
grid. The difference in elevation, (h^ -1^), should be calculated with a resolution equal to that
of the original gridded terrain data, where h^ is the elevation of a point contained in the
original terrain file and bilinear interpolation is used to find h^ at the same location. A similar
procedure should also be used to calculate RMS^ - h^), where h^ denotes elevations in the
"fine-grid" used by the diagnostic models. The difference in elevation (h^ - h^) can be found at
the same locations used for (h^ - h,,,), using bilinear interpolation within toth the fine and
coarse grids. Therefore, RMS^ - hOT) is zero if the same grid is used by both the MM4-FDDA
and the diagnostic models.
A simple formulation that allows near-surface adjustments to the MM4-FDDA winds, is
a product relationship:
(2-32)
WZW,
where W. is the weighting factor near the surface, and Wx is a height-dependent modifier. Wt
tends toward zero if the model-layer being processed is well above the terrain, or if there are no
sub-grid variations in the terrain (e.g., if the terrain is flat). Using the mean elevation of the
layer above the surface, denoted as Zj, and the RMS^ - h^), denoted simply as RMSfa,
2-20
-------
[MIN{RMSfl./2r/, l.O)]2
(2-33)
has the desired properties. The MIN function refers to the minimum of the two arguments (i.e.,
RMSJta/2zi and 1.0). When the terrain resolved by the fine-scale grid used by the diagnostic
model has a characteristic departure from the coarse-grid terrain (quantified as RMS^) that is
less than the height of the layer, W,, will be less than 1, which wffl reduce the magnitude of W,,,
indicating that the subgrid terrain is less important for this layer than for any doser to the
surface. As higher layers are processed, Wri approaches zero, which emphasizes the use .of the
MM4-FDDA winds in the diagnostic model If the fine-scale grid should have the same
resolution as the coarse grid, RMS* * 0 and Wr « 0, so that the MM4-FDDA winds are used
in preference to the observed winds at all levels.
The near-surface factor, Wr makes use of both RMSfa and RMS^,, where
(2-34)
The scale of the departure of the original terrain from that resolved by the coarse-grid,
is used to scale the departure of the terrain resolved by the fine grid from that resolved by the
coarse grid. The ratio RMS^/RMS^ has a range of 0 to 1.0, provided that RMS^ is not zero.
When RMSfc, is zero, or when RMS^/RMS^ is nearly zero, W. should be nearly zero, thereby
indicating that the MM4-FDDA winds should be preferred over any observed winds (the
observed winds have already been "used" within MM4-FDDA). On the contrary, when
RMSgj/RMS^i approaches 1.0, local subgrid terrain could be important, and local observations
or diagnostic wind estimates near the surface should be emphasized. Hence, W. can be given by
W, = (RMSfiB/(RMSori * RMS0))"
(2-35)
For n > 1, smaller values of W. will be produced, thereby making it more "difficult" to ignore
the MM4-FDDA winds in favor of observed winds. For n < 1, the opposite trait is favored.
RMS0 is added to RMS^ in the denominator to avoid a problem that arises if terrain
variations are "small". W, may be nearly 1.0 (which emphasizes the observed winds) in some
cases in which terrain variations are small enough that the MM4-FDDA winds are indeed
representative in the surface-based layer, in spite of Wt. To address this case, a condition that
the terrain variations be "significant" is added. That is, the denominator is never allowed to fall
below some specified length-scale, RMS0. Because the center of the surface-based layer is 10 m
in these applications, a length scale of 10 m has been adopted for "significance*. All cells in the
coarse grid that are so characterized as having insignificant terrain variation from that resolved
fc\eabBet«p\feb9S\wpnd2.«ph
2-21
-------
by the fine grid wffl thereby promote the use of MM4-FDDA winds in preference to observed
winds at nearby grid-points.
In the sensitivity analyses (Sore ct * 1994), afl three
MM4-FDDA field into CALMET were examined The weighing factor, W., discussed above,
was applied as follows:
MM4-FDDA wind as initial guess wind
- no weighting by W0
MM4-FDDA used as Step 1 winds
- W0 is used to weight observations
- Step 1 winds are weighted by factor (1.0 - W0)
MM4-FDDA used as "observations"
- W0 is used to weight actual observed data
- MM4-FDDA data are weighted by factor (1.0 - W0)
In the first case, the terrain-weighting factor is not used because the MM4-FDDA
coarse-grid winds are subject to the full adjustment for the fine-scale terrain data by the
diagnostic model, whereas in the other two cases, the MM4-FDDA winds are not adjusted for
the effects of the fine-scale terrain.
2.3 Micrometeorological Model
2.3.1 Surface Heat and Momentum Flux Parameters
A number of significant advances have been made in recent years in our understanding
and characterization of the structure of the planetary boundary layer (PEL) (eg., see Wefl,
1985; Briggs, 1985). As noted by van Ulden and Holtslag (1985) and others, the use of the
appropriate boundary layer scaling parameters can improve the quality of dispersion predictions.
Tfce principal parameters needed to describe the boundary layer structure are the surface heat
flux (QA surface momentum flux (p u.*), and the boundary layer height (h). Several additional
parameters, including the friction velocity (u.), convective velocity scale (w.), and the
Monin-Obukhov length (L), are derived from these.
As part of the Hectric Power Research Institute (EPRI) Advanced Plume project,
Hanna et aL (1986) have evaluated several models for the prediction of these boundary layer
2-22
-------
parameters from "routinely"1 available meteorological observations. Two basic methods are
commonly used to estimate the surface heat and momentum fluxes. The first method is referred
to as the profile method. It requires at a minimum the measurement of the wind speed at one
height and the temperature difference between two heights in the surface layer, as well as
knowledge of the air temperature and roughness characteristics of the surface. Monin-Obukhov
similarity theory is then used to solve for the surface fluxes by iteration. The second approach,
called the energy budget method, computes the surface heat flux by parameterizing the unknown
terms of the surface energy budget equation.
Hanna et aL (1986) tested the following four energy budget models and two profile
schemes:
Energy Budget Models
Holtslag and van Ulden (1983)
Weil and Brower (1983)
Berkowkz and Prahm (1982)
Briggs(1982)
Profile Schemes
Two-level tower method
Four-level tower method
The major conclusion drawn from the comparison of the six schemes was that the energy
budget methods were superior because of the sensitivity of the profile method to small errors in
the measured temperature difference. However, as discussed below, this conclusion does not
apply to the marine boundary layer, where a profile method based on the air-sea temperature
difference is recommended. The relative performance of all of the energy budget methods was
similar. An intercomparison of the u. predictions of each of the energy budget methods showed
a very high correlation with the other energy budget schemes (r2 from 0.98 to 0.99 and RMS
errors from 0.027 to 0.055 m/s). The correlation coefficient of the energy budget schemes with
observed u. ranged from 0.63 to 0.65 and RMS errors from 0.20 to 0.21 m/s.
temperature difference is not routinely reported at NWS meteorological stations. However, it typically is available it
the many non-NWS sites with meteorological towers.
I:\calmetwp\fcb9J\wpMeawph 2-23
-------
Overland Boundary Layer
An energy budget method, based primarily cm Hotetog and van Ulden (1983), is used
over land surfaces in the CAIAffiT infcrometeorological model The energy balance at the
surface can be written as:
Q. + QJ-QH + Q. + O, (2"36)
where, Q. is the net radiation (W/m2),
Qf is the anthropogenic heat flux (W/m2),
Qfc is the sensible heat flux (W/m2),
Qe is the latent heat flux (W/m2), and,
Qf is the storage/son heat flux term (W/m2).
The ratio of the sensible heat flux to the latent heat flux is defined as the Bowen ratio.
Q.
(2-37)
The model will require gridded values of the Bowen ratio. Seasonal default values,
based on land use categories, will be provided. The Bowen ratio is important in determining the
degree of convective turbulence because it reflects the partitioning of the available energy into
sensible and latent heat flux. Typical values of B range from - 0.1 over water bodies to * 10 for
deserts. In the summertime over parts of Australia, values of B - 5-10 are expected.
The flux of heat into the soil or buflding materials, Qr is usually parameterized during
the daytime in terms of the net radiation (e.g., Oke, 1978; Holtslag and van Ulden, 1983).
Qt e c Qt (2-38)
where the constant c, is a function of the properties of the surface. Oke (1982) suggests values
for c, of 0.05-0.25 for rural areas and 0.25-030 for urban areas. The larger values for urban
areas reflect the greater thermal conductivity and heat capacity of building materials. Holtslag
and van Ulden (1983) use a value of 0.1 for a grass covered surface.
The anthropogenic heat flux, Q, is a function of the population density and per capita
energy usage. Oke (1978) summarizes annual and seasonally- averaged Qf values for several
urban areas. Although the Qf term has been retained for generality, it is usually small compared
to the other terms.
I:\calaawp\fcW5\wp.ecl2.wpb
2-24
-------
The net radiation, Q., is the residual of incoming (short-wave plus long-wave) radiation
and outgoing (long-wave) radiation. Q. can be expressed (Holtslag and van Ulden, 1983;
Lansberg, 1981) as:
Q. ' Q» (1 - A) + - (2-39)
where, Q,. is the incoming short-wave radiation (W/m2), consisting of a direct solar
radiation term (Q,*.) plus a diffuse radiation term (QWHl),
A is the albedo of the surface,
is the incoming long-wave atmospheric radiation (W/m2), and,
is the long-wave radiation (W/m2) emitted by the surface.
The method of Holtslag and van Ulden (1983) is used to estimate Q.. The result of
their parameterization of each of the terms in Eqn. (2-39) is:
Q.
(i -
(2-40)
(2-41)
where, T is the measured air temperature (deg. K),
a is the Stefan-Boltzmann constant (5.67 x 10* W/m2/deg. K4),
N is the fraction of the sky covered by clouds, and
4> is the solar elevation angle (deg.).
The last term in Eqn. (2-41) accounts for the reduction of incoming solar radiation due
to the presence of clouds. The values for the empirical constants q, C& Cj, alt a^ b,, and bj
suggested by Holtslag and van Ulden (1983) are used (see Table 2-3). The solar elevation angle
is computed at the midpoint of each hour using equations described by Scire et al. (1984).
Using Eqns. (2-36) to (2-41), the daytime sensible heat flux can be expressed in terms of
only known quantities:
*
B
1 + B
(2-42)
I:\e»toet«p\fcb9S\wj)«ect2.wph
2-25
-------
Table 2-3
Net Radiation Constants (Hokslag and van Ulden, 1983)
Value
531 x lfru W/m2/«ieg K6
60W/m2
0.12
990 W/m2
-30W/M2
-0.75
3.4
2-26
-------
Once the sensible heat flux is known, the Monin-Obukhov length and surface friction
velocity are computed by iteration.
u. - Jt«/[ln(z/z.) - *„<*/*) * *.k/L)l
where, zc is the surface roughness length (m),
f m is a stability correction function [e.g^ see Dyer and Hicks (1970)],
k is the von Karman constant, and,
u is the wind speed (m/s) at height z.
The Monin-Obukhov length is defined as:
(2-44)
where, T is the temperature (*K), and,
g is the acceleration due to gravity (m/s2).
Eqn. (2-43) is used to obtain an initial guess for u. assuming neutral conditions (L = »).
This value of u. is-used in Eqn. (2-44) to estimate L. A new value for u. is then computed with
Eqn. (2-43) and L. The procedure is repeated until convergence is obtained. Holtslag and van
Ulden (1983) report that three iterations are usually sufficient.
During stable conditions, Weil and Brower (1983) compute u. with the following method
based on Venkatram (1980a):
« -
[1 + C««]
(2-45)
C - 1 -
(CiO)
(2-46)
(2-47)
where, CDN is the neutral drag coefficient [k/ln(zm/zc>)],
Y is a constant (- 4.7), and,
z,,, is the measurement height (m) of the wind speed, u.
2-27
-------
The temperature scale, 8., is computed as the minimum of two estimates:
6. - minp.j, 60]
The estimate of 6. is based on Holtslag and van Ulden (1982):
8. - 0.09 (1 - 0.5 JV2)
and 6.3 is:
e
"OH
(2-4*)
(2-49)
(2-50)
•2
(2-51)
The heat flux is related to u. and 6. by:
Q* - ~ P CP u» e-
and L is computed from Eqn. (2-44).
The daytime mixing height is computed using a modified Carson (1973) method based
on Maul (1980). Knowing the hourly variation in the surface heat flux from Eqn. (2-51) and the
vertical temperature profile from the twice-daily sounding data, the convective mixing height at
time t+dt can be estimated from its value at time t in a stepwise manner:
f 2 2 G» (1 + £) * 2 dB, h,^2 dB,^ (2-52)
(2-53)
where, i^ is the potential temperature lapse rate in the layer above h,,
d6 is the temperature jump at the top of the mixed layer (*K), and,
E is a constant (- 0.15).
The potential temperature lapse rate is determined through a layer above the previous
hour's convective mixing height. If only routinely available, twice-daily sounding data are
available, the morning (1200 GMT) sounding at the nearest upper air station is used to
determine *, up to 2300 GMT. After 2300 GMT, the afternoon sounding (0000 GMT) is used.
If more frequent sounding data are available at non-standard sounding times, the latest sounding
(day or night) is used to determine ^rr
2-28
-------
The neutral (mechanical) boundary layer height is estimated by Venkatram (1980b) as:
(2-54)
where, f
B
NB
is the Coriolis parameter (« 10"* s'1)
is a constant (- 21/2), and,
is the Brunt-Vaisala frequency in the stable layer aloft.
The daytime mixing height could then be taken as the maximum of the convective and
mechanical values predicted by Eqns. (2-52) and (2-54), however, such a procedure could cause
the resulting x-y field of mixing heights to have unreasonably large cell-to-cell variations, as each
grid cell's values of h, and h are computed independently. Such an independent, cell-by-ceD
computation would also not include important advective effects on the mixing depths, such as
the significant reduction of inland mixing depths during sea or lake breeze conditions.
Several researchers (e.g., Wheeler, 1990; Tesche et aL, 1988; Steyn and Oke, 1982) have
suggested various upwind-looking mixing depth averaging schemes involving estimation of back
trajectories or computation of lateral advection of heat fluxes. As CALMET is explicitly
marched in time, a rather simple scheme has been incorporated which approximates the back
trajectory methodology. For a given grid cell (ij), the most upwind grid cell which could directly
impact cell (ij) during the time step, dt, is computed as fa = i - u«dt, jn ** j - v«dt), where (u,v)
are the wind components at cell (ij). An upwind-looking cone, originating at (ij) and having a
user-selected, half-opening-angle of HAFANG (i.e., a full cone opening angle of twice
HAFANG), is then generated such that grid point (yj sits at the middle of the base of the
triangular cone. For each grid cell (i^) lying within or on the boundaries of the triangular
region, upwind and crosswind distances, du and d^ respectively, are computed in units of number
of grid cells, and a weighting factor,
(2-55)
is computed. Normalized weights are then computed as,
<
w.
£«.'
(2-56)
where the sum on n extends over all the grid points encompassed by the triangle. In addition,
Eqn. (2-55) weights are also computed for a square box of user-defined half-width of
MNMDAV grid cells and centered on cell (ij). The purpose of including this supplementary
li \calmBtwp\fcb9S\wpBCrt2.wpfa
2-29
-------
square box region is to allow some interedl averaging to occur even when the mean advecrive
wind goes to zero. Hence, a reasonable value for MNMDAV would be of order ov-dt/dx,
which is usually of order unity in many meaoscale applications. For those cells which are
actually downwind, such that d. < 0, the quantity d. in the Eqn. (2-55) weight is replaced by the
quantity d,' - e - d^ where e is the Courant number or the height of the triangle from its base
at (uJ to the vertex at (ij). This ensures that downwind cells receive rather small weighting
but ensures complete arimuthal symmetry as the wind speed (and e) go to zero.
The weights, w,', appropriately normalized via Eqn. (2-56) for all points tying in the
triangular or square box regions, are then applied to the fields of convective and effective
daytime (Le, the maximum of h, and h) mixing depths to produce smoothed equivalents, and
these fields are stored for use in the current hour. In addition, it is the spatially smoothed
convective h, which is used for the next hour's computation using Eqn. (2-52). Thus, there is a
cumulative effect on the convective ^ calculation, comparable to the effect of computing a
multiple time step, back trajectory.
The user may switch the spatial averaging option on or off via the control file variable
IAVEZI (see Input Group 6 variables). Also specified are the half-width of the square box for
averaging (MNMDAV), the half-opening-angle of the upwind sector (HAFANG), and the layer
of winds to use for the advection calculation (ILEVZI).
In the stable boundary layer, mechanical turbulence production determines the vertical
extent of dispersion. Venkatram (1980a) provides the following empirical relationship to
estimate the stable mixing height.
(2-57)
where 63 is a constant (- 2400).
The stable boundary layer height is estimated by Zilitinkevich (1972) as
(2-58)
CALMET defines the stable boundary layer height as the minimum of hj and h2.
In the convective boundary layer, the appropriate velocity scale is w., which can be
computed directly from its definition using the results of Eqns. (2-42) and (2-52).
I:\catoetwp\feW5\wpieel2.wpb
2-30
-------
». - jr Ck
where h, is the convective mixing height
(2-59)
Overwater Boundary Layer
Over water, the aerodynamic and thermal properties of the surface require that different
methods be used in the calculation of the boundary layer parameters. One of the most
important differences between the marine and continental boundary layers is the absence of a
large sensible heat flux driven by solar radiation. A profile technique, using the air-sea
temperature difference and over water wind speed, is used in CALMET to compute the
micrometeorological parameters in the marine boundary layer. However, this method is
sensitive to the accuracy of the sensors measuring the temperature difference. Therefore, it
should be used with caution in areas where reliable temperature data are not available.
The neutral momentum drag coefficient over water, C^,, can be expressed in terms of
the 10-m wind speed (Garratt, 1977).
(0.75 + 0.067 «) 10'3 (2-60)
"uK
The friction velocity can then be determined from the definition of the drag coefficient:
Because of the importance of the latent heat flux over water, virtual potential
temperatures are used in the definition of the Monin-Obukhov length. Hanna et al. (1985) .
express L as:
6V C* «2
(2-62)
where, 6y, 6^ are the virtual potential temperatures (*K) of the air and water,
u is the 10-m wind speed (m/s), and,
Ej is a constant (5.096 x
I:\otoeJwp\feb9S\wp.e32.wph
2-31
-------
Over water, due to the effect of the wind on wave height, the surface roughness length
varies. CALMET employs a relationship derived by Hosker (1974) to express the surface
roughness in terms of the 10 m wind speed:
2.0 x Iff* u
25
(2-63)
Hosker's result is based on the analysis of Mtaigorodskii (1973) showing z,,« u.2 and the
logarithmic wind speed profile relating wind speed and u..
232 Three-dimensional Temperature Field
When the CALMET model is run with the CALGRID output flag set (U., LCALGRD
* .TRUE.), a module is called which simulates a three-dimensional temperature field based on
upper air and surface temperature data and on an estimate of the local convective mixing depth,
previously determined using the energy balance method. Additionally, overwater temperatures
optionally can be treated separately (see Section 23.2.1). The principal steps involved in
generating the temperature field include the following:
1) linear spatial interpolation of the upper air temperature data from each sounding onto
the desired vertical mesh;
2) linear time interpolation between consecutive soundings to yield appropriate
temperatures at each z level for the given hour;
3) computation of the 1/r2 relative weights of each upper air station to the (ij)th grid
column in question. (The distance is formulated in dimensionless units of grid cells with
a maximum weight of 1.0 equivalent to an upper air station in the adjacent grid cell.);
4) use of these 1/r2 weights to compute a spatially-averaged temperature field in each
column (ij) and at all vertical levels, k. (This 3-D temperature field T^ is based solely
on upper air data.);
5) replacement of the surface level temperatures, Tp, with a spatially weighted average of
surface station temperature observations for the current hour. (The dimensionless
weighting factors, are based on the distance, r, from the (ij)th grid cell to the various
surface meteorological stations and can be defined to be 1/r or 1/r2 through the IRAD
input variable . A maximum weight of 1.0 is allowed.); and
2-32
-------
6) recomputation of the temperatures above the surface and up to and including the layer
containing the convective mixing height by assuming an adiabatic lapse rate, Y, of
-0.0098 °C/m between the surface and the convective layer height (It should be noted
that temperatures in the level containing the convective mixing lid are computed as a
layer thickness weighted, 3-point average involving the two cell-face temperatures and
the temperature at the lid height)
The resulting 3-D temperature field thus incorporates:
i) all available upper air station data for the most current soundings straddling the
current time,
ii) all available hourly surface temperature data, and
iii) supplemental adiabatic modeling of temperatures below the convective mixing
height.
The user optionally can apply the spatial averaging method described in Section 2.3.1 to
the three-dimensional temperature field (through input variable IAVET), using the MNMDAV
and HAFANG values specified for mixing heights.
2.3.2.1 Overwater Temperatures
Because of the important effect of water bodies on temperature and the strong
temperature gradients that can exist at coastal boundaries, CALMET can calculate overwater
temperatures separately by use of overwater data (e.g., buoy data in the SEA.DAT files). Over
land, temperatures still are calculated as described above, with the exception that overwater
stations are not included in the surface-level interpolation. Spatial averaging optionally can be
applied to the entire temperature field through use of IAVET options (see Input Group 6).
Such averaging may be desirable to moderate the temperatures along the coastline.
The overwater interpolation of temperatures is user-controlled by the selection of the
land use categories for which the overwater data in the SEAJDAT file is applied (see JWAT1,
JWAT2 in Input Group 6). For example, the default values of JWAT1 and JWAT2 are set so
that the SEA.DAT temperature interpolation scheme is applied only to oceans and seas, rather
than smaller water bodies, such as lakes or ponds. To disable the overwater temperature
interpolation scheme, JWAT1 and JWAT2 can be set to large values, outside the range of the
land use data in the GEO.DAT file (e.g., 9999).
t\cmla>etwp\feb95\wp«ee»2.wph
2-33
-------
For the specified water body, surface temperatures (CALMET Layer 1) are based only
on the overwater station observations found in the SEAnJJAT input files. Temperatures in the
remaining vertical layers over water are based on user^pecffied, time-varying lapse rates (from
the SEAnX>AT files) or constant default lapse rates. Separate lapse rates are specified below
and above the overwater mixing height. The default values for the lapse rates are -0.0098 K/m
below the mixing height (dry adiabatic lapse rate) and -0.0045 K/m above the mixing height
(moist adiabatic lapse rates). Spatially-weighted averaging can be based on either 1/r or 1/r2,
depending on the IRAD switch.
233 Precipitation Interpolation
CALMET uses observations of houriy precqritation amounts to produce gridded
precipitation fields. There are three options available for computing the precipitation fields:
— 1/d interpolation
— 1/d2 interpolation
— l/tf-exponential interpolation function
The selection of the interpolation method is controlled by the NFLAGP variable in Input
Group 6 of the CALMET control file. The default method in CALMET is the 1/d2 technique
(NFLAGP = 2), based on the recommendations of Dean and Snydor (1977), Wei and
McGuinness (1973).
In the 1/d and 1/d2 methods, the precipitation at grid point (ij) is given by:
*;
R,
(2-64)
where Rk is the observed hourly precipitation rate (mm/hr) at station k
dk is the distance from grid point (ij) to station k
n is the exponent of the weighting function (n - 1 if NFLAGP « 1, n
NFLAGP = 2
2if
Only stations within the user-specified radius of influence (SIGMAP) are included in the
summation in Eqn. (2-64). The default value of SIGMAP in CALMET is 100 km. If no
precipitation station with valid (non-missing) data are within the radius of influence, CALMET
will use the precipitation rate at the nearest station with valid data for the grid point. If the
computed precipitation rate using Eqn. (2-64) is less than a user-specified minimum
2-34
-------
precipitation rate (CUIP), the precipitation rates at the grid point will be set to zero: The
default value of CUIP is 0.01 mm/hr. A minimum value for d* of 0.01 km is used in CALMET
to avoid computational problems associated with division by zero when the observation station is
located at a grid point
If there are no precipitation stations with valid data for a particular hour, CALMET sets the
precipitation rate to zero and prints a warning message to the output list file (CALMETiST).
It is recommended that the user resolve periods with no valid data by the acquisition of
additional observational data or by a case-by-case analysis of other meteorological records to
confirm that no precipitation occurred during the period
The third option in CALMET for interpolation of precipitation data is to use a
combined l/d2-exponential weighting function, Le.,
4
(2-65)
where a is a distance weighting factor (km), and the other variables are as defined above.
The l/d^-exponential weighting option is selected by setting NFLAG = 3 in the
CALMET control file. In this instance, the "radius of influence" concept is replaced by the
exponential weighting factor. The variable SIGMAP in the control file is used to specify the
value of a. The minimum values of d and ry discussed above also apply if Eqn. (2-65) is used.
The user has the option to internally compute the distance weighting factor, o,
dynamically by setting the value of SIGMAP to zero in the control file. CALMET will compute
o each hour as one-half the minimum distance between any two observational stations with non-
zero precipitation rates.
i:\rateietwp\fcWS\wpiect2.wpb
2-35
-------
-------
3. CALMET MODEL STRUCTURE
3.1 Memory Management
A flexible memory management system is used in CALMET which facilitates the user's
ability to alter the dimension of the major arrays within the code. -Arrays dealing with the
number of horizontal or vertical grid cells, meteorological stations, barriers, land use types, and
several other internal parameters are dimensioned throughout the code with parameter
statements. The declaration of the values of the parameters are stored in a file called
"PARAMS.MET." This file is automatically inserted into any CALMET subroutine or function
requiring one of its parameters via FORTRAN "include" statements. Thus, a global
redimensioning of all of the model arrays dealing with the number of vertical layers, for
example, can be accomplished simply by modifying the PARAMS.MET file and recompiling the
program.
The parameter file contains variables which set the array dimensions or the maximum
allowed number of vertical layers, or horizontal grid cells, etc. The actual value of the variables
for a particular run is set within the user input file (i.e., the control file), and can be less than or
equal to the maximum value set by the parameter file.
A sample parameter file is shown in Table 3-1. In addition to the parameters specifying
the maximum array dimensions of the major model arrays, the parameter file also contains
variables determining the Fortran I/O unit numbers associated with each input and output file.
For example, the input control file (IO5) and output list file (IO6) are associated with unit
numbers 5 and 6. However, if these units are reserved on a particular computer system, these
files can be redirected to other non-reserved units by setting IO5 and IO6-equal to 15 and 16,
for example, in the PARAMS.MET file.
3.2 Structure of the CALMET Modules
Execution of the CALMET model is divided into three major phases: setup,
computational, and termination (see Figure 3-1). In the setup phase of the model execution, a
variety of initialization and one-time I/O and computational operations are performed, including
the following: ,
£\aimetwp\feb9S\wpiecl3.wph
3-1
-------
Table 3-1
Sample CALMET Parameter Ffle
e
c
— PARAMETER atateaants — CALNET
Specify paraa»ters
paraB»ter(BKnx«75,BKny»75,BKnz«10)
paraa»ter(BBUev»7v,asau»52>
Mr«Mter(«t»r«20, nbox*10,
peraa«ter(ew9.BKvar«60.BBceol«132>
c
C "
f*Wt «•"•»•»• % • •-•» --—'* -
paraa»ter(io50«50>
paraaeterCio9B«98)
paraaeter(io99*99>
Coapute derived paraaeters
paraaeter(auHi nl«au»s+apm»+api
paraBeter(aDCtap-aKS**aocoHS)
.._«&*&•»* •BM»<»a*1«B«Vf%V+1 \
c
c — (
c
c
c
c
c
c
c
c
c
c
c
c
£
c
c
c
c
c
c
c
c
C ""
c
c
c
c
c —
c
c
c
c
c
c
c
c
JENERAL (
MXNX
MXNY
MXNZ
KXSS
MXUS
MXPS
MXOUS
MXBAR
MXUB
'
MXLEV
MXLU
MXNXP
MXNYP
MXNZP
CONTROL
MXSG
MXVAR
MXCOi
FORTRAN
105
106
102
JRID and MET. definitions:
Maxiauft nuaber of X grid cells
Maxiaun nuaber of Y grid cells
NaxiauM nuaber of layers
Maxiaui nuaber of surface Mteorological stations
Maxiaun nuaber of upper air stations
Maxiaun nuaber of precipitation stations
Maxiaun nuaber of overnater stations
Maxiaun nuaber of barriers allowed
Maxiaui nuaber of water bodies, that Hill be treated
separately in the taaperature interpolation (currently
must be 1)
- Maxiaun nuaber of vertical levels in upper air
data input files
- Maxiaun nuaber of land use categories
- Maxiau* nuaber of X grid cellr. in the prognostic
Hind aodel's grid
- Maxiaun nuaber of Y grid cellr. in the prognostic
Hind aedel's grid
- Maxiaun nuaber of layers in the prognostic
Hind andel's grid
FILE READER definitions:
- Maxiaun nuaber of input groups in control file
- Maxiaun nuaber of variables in each input group
- Maxiaun length (bytes) of a control file input record
I/O unit nuabers:
- Control file (CALMET. INP) - input - for»atted
- List file (CALMET.LST) - output - fometted
- Preprocessad Bet. data for - input - formatted
diagnostic Hind andule
(DIAG.DAT)
3-2
-------
Table 3-1
Sample CALMET Parameter Ffle (Concluded)
c
c
c
c
c
c
c
g
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
C -"
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
107
108
1010
1012
1030
1030*1
- Gridded wind ft met. fields - output - unformatted
produced fay CALMET
(CALNET.DAT or PACOUT.DAT)
- Geophysical data fields - input - formatted
(GEO.DAT)
- Hourly aurface obaervations - input - formatted or
(SURF.DAT) unformatted
- Hourly precipitation data - input - formatted or
(PREC.DAT) unformatted
- Upper air data obaervations - input - formatted
for upper air station fl
(UP1.DAT)
- Same as 1030 except for upper
air station f2
(UP2.DAT)
• • •
(Repeated for each of "NUSTA" upper air station, i.e., Fortran
units 1030 to I030*NUSTA-1 are used for upper air data files)
(Upper
1040
air file names are UP1.DAT, UP2.DAT, ... UP(* of stns).DAT)
- Gridded fields of prognostic - input - unformatted
wind fields to use as input (PROG.DAT)
to the diagnostic model or
(PROG.DAT or MM4.DAT) formatted
(MM4.DAT)
WIND FIELD MODEL TESTING AND DEBUG OUTPUT FILES
1041
1042
1043
1044
1045
1050
1050*1
- intermediate winds and misc. • output • formatted
input and internal variables
(TEST.PRT)
- Final wind fields - output - formatted
(TEST. OUT)
- Winds after kinematic effects - output - formatted
(TEST. KIN)
- Winds after Froude nunber - output - formatted
effects (TEST. FRO)
- Winds after slope flow - output - formatted
effects (TEST.SLP)
- Overwater meteorological data - input - formatted
for station #1
(SEA1.DAT)
• Same as 1050 except for
overwater station #2
(SEA2.DAT)
(Repeated for each of "NOWSTA" overwater station, i.e., Fortran
units
1050 to I050*NOWSTA-1 ere used for overwater data files)
(Overwater file names are SEA1.DAT, SEA2.DAT,... SEA(* of stns).DAT)
1098
1099
- Scratch file for use in READGF to replace internal read to
allow wider compatibility with compilers
- Gridded weighting factors • input • formatted
for surface station data vs prognostic data
(UT.DAT)
3-3
-------
Start
SETUP -
*
*
COMP -
•
•
•
FIN
Setup phase -
*"" *nd program setup operations.
Computational phase - basic time loop with time-dependent I/O and all
scientific modules.
Termination phase - program termination functions.
STOP
Figure 3-1. How diagram showing the subroutine calling sequence in the CALMET MAIN
program.
3-4
-------
Opening of input and output files.
Reading and processing the control file inputs which includes model option flags
and run control variables.
Reading and processing the header records of data files of the model's input
data bases (Le., surface, upper air, precipitation, and over water meteorological
data files, optional prognostic model wind fields, geophysical data file).
Performing consistency checks of the input data base information versus the
control file inputs.
Performing initialization and setup operations for the diagnostic wind field
module and boundary layer modules.
Writing the header records to the model's output file.
The computational phase of the model includes the basic time loop within which the
hourly gridded wind fields and micrometeorological variables are computed. The functions
performed in the computation phase include the following:
Retrieving and processing of the surface, upper air, precipitation, and over water
meteorological data and optional prognostic wind field data from the appropriate
input files.
Computing the Step 1 wind field either by (a) adjusting a domain-mean wind
field for slope flow effects, kinematic terrain effects, terrain blocking influences,
and divergence reduction, or, (b) interpolating an input gridded prognostic wind
field to the CALMET grid system.
Computing the final (Step 2) wind field by executing an objective analysis
procedure combining observational data with the Step 1 wind field.
Computing the micrometeorological parameters at grid points over water with
the overwater (profile method) boundary layer model
Computing the micrometeorological parameters at grid points overland with the
overland (energy balance method) boundary layer model.
I:\QliiJictwp\fcb95\wpMCt3.wpfa
3-5
-------
If appropriate, computing the gridded precipitation data field.
If appropriate, computing the three-dimensional temperature field.
Printing and/or writing of gridded hourly wind fields to the output list file and
the unformatted output file.
The final phase of the model execution deals with run termination functions. The
termination phase includes the dosing of any active data files, computation of model run time,
and printing of summary or normal termination messages.
A flow diagram for the setup module is provided in Figure 3-2. The flow diagram
contains the name of each subroutine or function called by the setup module along with a brief
description of the routine's purpose. Figure 3-3 is a flow diagram for the main computational
routine, subroutine COMP, which contains the basic time loop and calls to the wind field
module.
The main routine for the wind field module is subroutine DIAGNO. A flow diagram for
D1AGNO is shown in Figure 3-4.
3-6
-------
Enter SETUP
DATETM - Get date and time from the system dock.
•
•
OPENFL - Open control file (input) and list fib (output).
•
•
READCF • Read the control file inputs.
•
•
OPENOT - Open all other input and output files.
•
•
READGE - Read the geophysical data file (GEOJDAT).
•
*
SETCOM • Set miscellaneous common block parameters.
•
•
READHD - Read the header records of the input meteorological data files and
perform consistency checks with the control file inputs.
•
•
MICROI - Perform setup computations for the boundary layer models.
or
DIAGI - Perform setup computations for the diagnostic wind field module.
•
•
OUTHD - Write the header records to the unformatted CALMET output file.
OUTPC1 - Write the header records to the unformatted MESOPAC II output file.
RDWT - Read sigma weighting factors if using MM4-FDDA prognostic data as
Step 1 field "observations" otherwise fill with default factors.
Return to MAIN PROGRAM
Figure 3-2. Flow diagram showing the subroutine/function calling sequence in the subroutine
SETUP (Setup Phase).
I:\alm«wp\fcb95\wj»eel3.wph
3-7
-------
Enter COMP
Begin Loop Over Days
GRDAY - Convert die Julian date to a Gregorian date.
SOLAR - Compote solar elevation angle at the surface meteorological stations for
midpoint of each boor of the day.
•
Begin Loop Over Hoars
•
RDS - Read surface meteorological data at all stations for the
. current boor.
•
MISSFC - Replace missing surface data.
RDP - Read precipitation data at all stations for the current hour.
RDOW * Update over water data for each appropriate station for
. the current hour.
Perform setup computations for overwater stations for the
field module.
DIAG2
.
INDECR - Convert the current date/hour from local time to GMT.
•
Begin Loop Over Upper Air Stations
•
RDUP - At appropriate time, read a new sounding.
DEDAT - Convert the upper air date/time to a single coded
integer.
• .
DELTT - Compute the time separation of the two upper air
. soundings.
•
VERTAV - If new sounding is read, perform vertical
averaging of winds through depth of CALMET
layers.
•
FACET - If computing 3-d temperature fields, calculate tthe
temperatures at the grid cell faces at the upper air
station sites.
•
End Loop Over Upper Air Stations
Figure 3-3. Flow diagram showing the subroutine/function calling sequence in the subroutine
COMP (Computational Phase).
I:\otoetwp\fcWS\wjaecl3.wpb
3-8
-------
PREPDI - Perfonn time-interpolation of upper air wind data or read
• hourly preprocessed meteorological inputs.
•
DIAGNO • Compute gridded wind fields using diagnostic wind field modeL
*
OUT - Write the gridded wind fields to the output fist file
(CALMETiST).
*
WATER - Compute all boundary layer parameters and stability class at
. grid points over water using profile method.
•
PGTSTB - Compute PGT stability class at grid points over land.
•
OUT - Write the gridded PGT stability class field to the output list file
(CALMETiST).
•
HEATFX - Compute the sensible heat flux at grid points over land using
• the energy balance method.
•
AIRDEN - Compute the air density at surface meteorological stations.
*
ELUSTR • Compute the friction velocity and Monin-Obukhov length at
• grid pouits over land.
•
OUT • Write the gridded fields of sensible heat flux, friction velocity,
and Monin-Obukhov length to the output list file
(CALMETiST).
•
MKHT - Compute the mixing height at grid points over land.
•
AVEMDC - Compute spatially averaged mixing heights (If IAVEZI=1).
•
OUT • Write the gridded fields of mixing height and convcctive mixing
height to the output list file (CALMETiST).
•
WSTARR - Compute the convectivc velocity scale at grid cells over land.
•
OUT - Write the gridded field of convective velocity scale to the output
list file (CALMETiST).
•
GRIDE • Compute a gridded field of precipitation rates (all grid cells).
•
OUT - Write the gridded field of precipitation rates to the output list
file (CALMETiST).
(Figure 3-3 Continued)
I:\cahoetwp\fcWS\wpteet3.wph
3-9
-------
TEMP3D
•
AVETMP
OUT
•
•
OUTHR
OR
PACAVE
•
OUTPC
•
•
End Hour Loop
. Compote the 3-D temperature field (If LCALGRD-T).
- Compute spatially averaged temperatures (If IAVET-1).
. Write the 3-D temperature field to the output list file
(CALMETJLST).
- Output the meteorological fields to the output disk file
(CALMETJ>AT).
- Vertically average winds into MESOPAC D layers
- Output the meteorological fields to the output disk file
(PACOUTJDAT).
End Day Loop
Return to MAIN PROGRAM
(Figure 3-3 Concluded)
3-10
-------
Eater DIAGNO
If using objective analysis only (IWFCOD«1), go to A.
Set up initial guess field as one of the following:
(1) uniform or spatially varying initial guess field based on upper air stations
(2) PROGRD • Read and interpolate CSUMM prognostic model winds to
CALMET grid system (if IWFCOD-1 and IPROG=2)
(3) RDMM4 - Read and interpolate MM4-FDDA prognostic model winds to
CALMET grid system (if IWFCOD-1 and IPROG=4)
(4) WIND1 - Compute spatially-varying initial guess field with observed data
(5) use preprocessed values from the DIAGJDAT fib as the uniform initial guess field
I Begin Loop Over Layers
WINDBC - Set boundary conditions.
End Loop Over Layers
XMTT
- Initialize the vertical velocities.
TOPOF2 - Compute vertical velocities due to kinematic terrain effects (if
MINIM
- Minimize divergence (if IKINE=1).
WINDPR - Print gridded maps of U,V,W wind fields after kinematic effects to
the output file TEST.PRT (if IPR5=1).
• • """
•
OUTFIL - Write gridded U,V, W wind fields to the output file TEST JON
(if IPR5=1 and IOUTD=1).
SLOPE
- Compute slope flows.
Add slope flow components to the horizontal winds.
(Continued)
Figure 3-4. Flow diagram showing the subroutine calling sequence in the major wind field
computational routine (subroutine DIAGNO).
I:\caloKtwp\feMS\w|Mect3.wph
3-11
-------
WINDPR2 - Print* gridded map of U,V wind fields afterdope flow effects to
the output file TESTJRT (if IPR7- 1).
•
OUTFIL - Write griddedU,V fields in FL2format and W fields m ElU format to the
output file TEST.SLP (if IPR7-1 and IOUTD-1).
FRADJ - Apply the Froude number
effects (if IFRADJ-1).
*
WINDPR2 - Print agriddedmap of U,V fields afterFroude number effects to the output file
TESTPRT (if IPR6-1)-
•
OUTFIL - Write gridded U.Vivbd fields in F7.2 format and W winds in E82format to the
output file TESTJFRD (if IPR6-1 and IOUTD-1).
•
WINDBC - Recompute boundary conditions (Final diagnostic Step 1 wind field).
Extrapolate surface data to higher layers (if ffiXTRP*!).
PROGRD - Read and interpolate the CSUMM prognostic model results to•CAUftETpid
system (Fmalprognostic Step 1 wind field) (if IPROG=1 and IWFCOD=0).
OR
RDMM4 - Read and interpolate the MM4-FDDA prognostic modd results to CALMET
grid system (if IPROG=3 and IWFCOD-0 or u" IPROG-5).
INTER2 - Perform objective analysis procedure if Step 1 winds were derived from the
• diagnostic module.
INTERP - Perform objective analysis procedure if Step 1 winds were derived from gridded
prognostic model results.
LLBREEZ - Lake breeze region calculations.
WNDPR2 - Print gridded maps of interpolated U,V wind fields (if IPRO > 0).
ADJUST - Adjust surface layer winds for terrain effects.
(Figure 3-4 Continued)
I:\ala«wp\fcW5\wpKel3.wph
3-12
-------
WINDBC - Recompute the boundary conditions.
•
•
WNDPR2 . Print griddcd maps of the adjusted U,V wind fields (if IPR1 > 0).
*
•
SMOOTH * Perform smoothing of the wind fields.
•
DIVCEL * Compute the 3-D divergence fields and vertical velocities,
•
•
WINDBC * Recompute the boundary conditions,
•
•
Apply the O'Brien procedure to adjust the vertical velocity field (if IOBR« 1).
•
»
WINDPR - Print gridded maps of the U,V,W wind fields to the output file TEST.PRT
(5fIPR2>0).
*
•
DIVPR - Print the divergence fields to the output file TESTJPRT (if IPR2>0).
•
•
MINIM - Minimize divergence (if IOBR=1).
•
•
WINDPR - Print gridded maps of the final U,V,W wind fields to the output file TEST.PRT
(ifIPR8>0).
•
•
DIVPR - Print the final divergence fields to the output file TESTPRT
(if IPR4>0).
•
•
RTHETA - Output the final wind speed and wind direction fields to the output file
TEST.PRT (if IPR3>0).
*
•
OUTF1L - Write the final U,V fields in F7.2 format and W fields in E8.1 format to the
output file TEST.OUT (if IPR8>0 and IOUTD>0).
•
•
Return to COMP
Figure 3-4. Concluded.
I:\almetwp\fcMS\wpiecl3.wph
3-13
-------
-------
4. USER INSTRUCTIONS
4.1 Preprocessor Programs
4.1.1 READ56/READ62 Upper Air Preprocessors
READ56 and READ62 are preprocessing programs which extract and process upper air
wind and temperature data from standard NCDC data formats into a form required by the
CALMET meteorological model READ56 operates on the older TD-5600 data format.
Although this format is not currently used by NCDC, many historical data sets contain data in
this format. READ62 processes data in the current TD-6201 format or the NCDC CD-ROM
FSL rawinsonde data format. Note that the user must specifically request the TD-6201 format
when ordering upper air data from NCDC.
Although the data inputs are different, the user inputs to the program are identical as is
the processed output file. In the user input file, the user selects the starting and ending dates of
the data to be extracted and the top pressure level. Also selected are processing options
determining how missing data are treated. The programs will flag or eliminate sounding levels
with missing data. ••
If the user selects the option to flag (rather than eliminate) levels with missing data, the
data field of the missing variables are flagged with a series of nines. If the option to eliminate
levels with missing data is chosen, only sounding levels with all values valid will be included in
the output data file.
Although CALMET allows missing values of wind speed, wind direction, and
temperature at intermediate levels (i.e., levels other than the surface and model top), the user
is cautioned against using soundings with significant gaps due to missing data. For example,
adequate vertical resolution of the morning temperature structure near the surface is especially
important to the model for predicting daytime mixing heights. It should be kept in mind that
the model will fill in missing data by assuming that a straight-line interpolation between valid
levels is appropriate. If this assumption is questionable, the sounding should not be used with
the model.
Two input files are required by the preprocessor: a user input control file and the
NCDC upper air data file. Two output files are produced: a list file summarizing the user
option selected and missing data monitored and the processed data file in CALMET format.
Table 4-1 contains a listing of the input and output files for READ56 and READ62.
I:\cateietwp\fcWS\wfMKl4.wpb
4-1
-------
The READ56/READ62 control file consists of two lines of data entered in FORTRAN
free format A description of each input variable is shown in Table 4-2. A .ample input file .
shown in Table 4-3. The output list file is shown in Table 4* In the list file, the user s inpu*
are printed as well as a summary of the soundings processed. Informational messages indicating
problems in the data set are written in the summary.
The output data ffle(UPX>AT) produced by READ56/READ62 is a formatted file •
containing thepressure, elevation, temperature, wind .peed, and wind direction at each sounding
level The contents and format of the UP.DAT ffle are discussed in Section 4.23.
I:\atottwp\feWS\wr-eca.wj*
4-2
-------
Table 4-1
READ56/READ62 Input and Output Files
(») READ56 Input and Output Files
Unit Fjfr fJamft Type
5 READ56JNP input
6 READ561ST output
8 TDF56DAT input
UPDAT
output
Format
fonnatted
formatted
fonnatted
fonnatted
Description
Control file
user inputs
List file (line printer output file)
Upper air data in NCDC
TD-5600 format
Output file coatai&mg processed
upper air data in format required
byCALMET
(b) READ62 Input and Output Files
Unit Fj]g fJ^mft Type
5 READ62JNP input
6 READ62JLST output
8 TD6201DAT input
UP.DAT
output
Format
formatted
fonnatted
formatted
formatted
Description
Control file containing user inputs
List file (line printer output file)
Upper air data in NCDC
TD-6201 format
Output file containing processed
upper air data in format required
byCALMET
' Should be renamed UP1J5AT (for upper air station #1), UP2JDAT (for station #2), etc
for input into the CALMET model.
I:\olmetwp\fcb95\wpKC84.wph
4-3
-------
Table 4-2
READ56/REAB62 Control Ffle Inputs
RECORD!. Suiting and ending date/hour, top pressure level toextracL
Columns
Variable
E3YR
IBDAY
ffiHR
IEYR
IEDAY
ffiHR
PSTOP
Isss.
integer
Integer
integer
integer
integer
real
JDAT
integer
Description
Starting year of data to extract (two
digits)
Starting Julian day
Starting hour (00 or 12 GMT)
Ending year of data to extract (two digits)
Ending Julian day
Ending hour (00 or 12 GMT)
Top pressure level (mb) for which data
are extracted (possible values are 850 mb,
700 mb, or 500 mb). The output file will
contain data from the surface to the
"PSTOF-mb pressure level.
Input file format (1 - TD6201
2 = NCDC CD-ROM)
* Entered in FORTRAN free format
-------
Table 4-2 (Concluded)
READ56/READ62 Control File Inputs
RECORD 2. Missing data control variables.
Variable JjH£
LHT logical
LTEMP
logical
LWD
logical
LWS
logical
Description
Height field control variable. If LHT *
T a sounding level is eKnunsted if the
height field is missing. IF LHT - F, the
sounding level is included in the output
file but the height field is flagged with a
"9999", if missing.
Temperature field control variable. If
LTEMP * T, a sounding level is
eliminated if the temperature field is
mUging If LTEMP « F, the sounding
level is included in the output file but the
temperature field is flagged with a
"999.9", if missing.
Wind direction field control variable. If
LWD « T, a sounding level is eliminated
if the wind direction field is missing. If
LWD * F, the sounding level is included
in the output file but the wind direction
field is flagged with a "999", if missing.
Wind speed field control variable. If
LWS - T, a sounding level is eliminated
if the wind speed is missing. If LWS =
F, the sounding level is included in the
output file, but the wind speed field is
flagged with a "999", if missing.
' Entered in FORTRAN free format
I:\cafanetwp\fcWS\wp«»4.wph
4-5
-------
Table 4-3
Sample READ56/READ62 CoBtrol File (READ56JNP, READ62JNP)
89 001, 00. 89. 015. 12. 500. - Mg. yr. *V, hr«KT>. Endi* yr. *y. hrt top pr^ure
.. .FALSE.. .FALSE.. .FALSE. - IlMnrt. l«vl if M^t. t-P-. -Ind diction. -Ind
4-6
-------
Table 4-4
Sample READ62 Output List
READ62
STARTING DATE:
VERSION 4.0
ENDING DATE:
LEVEL 901130
YEAR
JULIAN DAY
HOUR
89
1
0 (GMT)
YEAR
JULIAN DAY
HOUR
89
15
12 (6NT)
PRESSURE LEVELS EXTRACTED:
SURFACE TO 500. MB
DATA LEVEL ELIMINATED IF HEIGHT MISSING ? F
DATA LEVEL ELIMINATED IF TEMPERATURE MISSING ? F
DATA LEVEL ELIMINATED IF WIND DIRECTION MISSING ? F
DATA LEVEL ELIMINATED IF WIND SPEED MISSING ? F
THE FOLLOWING SOUNDINGS HAVE SEEN PROCESSED:
YEAR MONTH ' DAY JULIAN DAY HOUR (GMT) NO. LEVELS EXTRACTED
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
1
1
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
->->->MISSING/DUPLICATE SOUNDING
89 1 15 15
89 1 15 15
EOF ON INPUT
LAST DAY READ *
0
12
0
12
0
12
0
12
0
12
0
12
0
12
0
12
0
12
0
12
0
12
0
•82
0
12
12
0
12
12
16
17
15
15
18
18
24
19
23
15
17
16
13
16
24
28
20
16
17
13
18
16
24
22
21
20
14
15
89015
l:\atoetwp\fcWS\wjaeea.wpb
4-7
-------
4.1.2 METSCAN Surface Data QA Program
METSCAN is a meteorological processing program which screens a data file
containing hourly surface observations for missing, duplicate, or invalid ^J^*^
^^
operatesonaem
surface data format The program performs Quality assurance checks on thewind
direction, temperature, opaque doud cover, cefling height and relatrve humidity fields The
value of each variable is compared to an allowed range (e.*, wind direction in tens of degrees
must be within the range from 0-36). Consistency checks are performed between the doud
-cover and ceiling height variables (e.*, onfy an ^mlimited- ceflmg height is aUowed under de^r
conditions). In addition, large hourly changes in temperature and relative humidity are flagged.
METSCAN flags records if any meteorological variable checked is outside its -normal-
range. A warning message is written indicating which variable is triggering the flag, followed by
the CD144 data record read from the file.
Two input files are required by METSCAN: a user input control file (METSCAN.INP)
and the NCDC SO^olumn surface data file (CD144.DAT). TTie program writes ^warning
messages to an output file (METSCAN.LST). The contents and format of the METSCAN mput
and output files are summarized in Table 4-5.
The METSCAN control file uses the FORTRAN Namelist input format. The variables
in the control file allow the user to set the variable ranges so that excessive spunous warning
messages can be avoided. A description of each METSCAN input variable is contained in
Table 4-6. A sample input file is shown in Table 4-7.
The user should check each warning message written to the output list file
(METSCAN.LST) to see if the data flagged are valid. A sample output file containing typical
warning messages is shown in Table 4-8. It should be noted that an error in the date/hour field
of a data record, indicating a missing or duplicate record, will produce a fatal error resulting in
the termination of the METSCAN run.
4-8
-------
Table 4-5
METSCAN Input and Output Files
Unit File Name
5 METSCANJNP
6 METSCANXST
8 CD144.DAT
Type
input
output
input
Format
formatted
formatted
formatted
Peseription
Control fife containing user
inputs
List fie (fine printer output file)
Surface data in NCDC 80-cohunn
(CD-144) format
I:\atoctwp\fcMS\«piecl4.wpb
4-9
-------
Table 4-6
METSCAN Control Ffle Inputs (Namdist Format)
NAMEUST: OPTS
TVDC
ID
IYR
IEXPMO
EEXPDY
IEXPHR
JWSMN
JWSMX
JTMIN
JTMX
JDELT
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
JTOLD
IDELT
JRHOLD
JCMX
MINCC
integer
integer
integer
integer
integer
JRHMIN integer
IHROP(0:23) integer array
Description
Station ID (5 digits)
Year of data (2 digits)
Month of first record
Day of first record
Hour of first record
Minimum (non-calm) wind speed (knots) allowed
(calm, Len WS«=0, WD-0 is allowed)
Maximum wind speed (knots) allowed**
Minimum temperature allowed** (deg. F)
Maximum temperature allowed** (deg. F)
Maximum hourly change in temperature allowed**
(deg. F)
Temperature (deg. F) for the hour preceding the first
hour of the data file (used to evaluate the hourly
temperature change for the first hour of the run)
Maximum hourly change in relative humidity allowed"
JDAT
integer
Relative humidity (%) for the hour preceding the first
hour of the data file (used to evaluate the hourly
relative humidity change for the first hour of the run)
Maximum ceiling height allowed** (hundreds of feet)
Maximum opaque sky cover (tenths) allowed** for
unlimited ceiling conditions
Minimum relative humidity (percent) allowed**
Hours of operation for the station (0=not operating,
1=operating)
Input data file format (1 « CD144,
2 = NCDC CD-ROM)
Default
Value
1
1
0
2
40
0
100
15
20
60
350
3
10
24*1
**
Indicates that no default value is provided.
A warning message is issued when variable is outside the "allowed" range. The_user must
determine if the flagged data are actually invalid, and if so, correct the CD144 file.
4-10
-------
Table 4-7
Sample METSCAN Control File (METSCANJNP)
tOPTS 10-23023, IYMB9, IEXPHR-0, JTOLD-35, J7MX«105, JRHNII«, SEND
L\cahnawp\fcb95\wp«eU.wpli
4-11
-------
Table 4-8
Sample METSCAN Oatput List FHe (METSCAN.LST)
«miNE CALL MO.: 1 BATE: 04/01/9* TIKE: 12:55:38.59
data ch«ck«d for station: 23023 yaar: 89
delta t«p. f l« - Jt«* • 55 jtold - 39 jglt -IS
2302389 1 610— ^ * S9 *«
dtlt. t^>. *IM - Jt
2302389 11510250
jtold - 32 j*lt - 15
« * *r
0
6
lMt ti« period proceed: jyr - 89 j. • 1 J*X • 1* J"r «
WJNTIffi CALL NO.: 2 DATE: 04/01/94 TINE: 12:55:39.57
DELTA TIME: 0-°8 (SEC)
4-12
-------
4.13 SMERGE Surface Data Meteorological Preprocessor
SMERGE processes and reformats hourly surface observations, and creates either a
formatted or an unformatted, binary file which is used as input by the CALMET model
SMERGE reads *N" data files containing surface data in NCDC 80-column format (CD144
format) or NCDC CD-ROM format. The output file (SURRDAT) contains the processed
hourly data for all the stations. SMERGE can also add stations to an existing formatted or
unformatted output file. A free-formatted SURRDAT file can be created by the user and read
by CALMET. This option relieves the user of the need to run the preprocessor for short
CALMET runs for which the input data can easily be input manually.
SMERGE extracts the following variables from the NCDC surface data files: wind
speed, wind direction, air temperature, ceiling height, cloud cover, surface pressure, relative
humidity, and precipitation type code.
An option is provided to allow the surface data stored in the unformatted output file to
be "packed." Packing reduces the size of the data file by storing more than one variable in each
word. If the packing option is used, the eight hourly meteorological variables for each station
are stored in three words:
Word 1:
TnrpcRRR-
TTTT
PC
RRR
Word 2:
pPPPPCCWWW - pPPPP
cc
WWW
Word 3:
HHHHSSSS-
HHHH
SSSS
temp. (XXX.X deg, K)
• precipitation code (XX)
relative humidity (XXX. %)
• station pressure (pXXX.X mb,
with p « 0 or 1 only)
• opaque sky cover (XX tenths)
•• wind direction (XXX. deg.)
•• ceiling height (XXXX. hundreds
of feet)
: wind speed (XX.XX m/s)
I:\athnetwp\feW5\»p«c«4.wph
4-13
-------
For example, the following variables,
Temperature
Precipitation code
Relative humidity
Station pressure
Opaque sky cover
Wind direction
Ceiling height
Wind speed
273.5 deg.K
12
88 percent
1012.4 mb
: 8 tenths
> 160 degrees
t 120 hundreds of ft
•• 5.65 m/s
are stored as the following three integer words:
273512088, 1012408160, 01200565
All of the packing and unpacking operations are performed internally by SMERGE and
CALMET, and are transparent to the user. The header records of the data file contain
information flagging the file to CALMET as a packed or unpacked file. If the user selects the
unpacked format, eight full 4-byte words are used to store the data for each station.
The input files used by SMERGE consist of a control file (SMERGE.INP) containing
user inputs, up to 150 surface data files (one per surface station), and an optional unformatted
SMERGE data file created in a previous run of SMERGE. The data from the formatted
surface station files are combined with the data in the existing unformatted file. A new
unformatted output file containing all the data is created by the program. In addition,
SMERGE creates an output list file (SMERGE.LST) which summarizes the user <**»»?
run time statistics. Table 4-9 contains a listing of the input and output files used by SMERGE.
The SMERGE control file consists of one line of generated run data (number and type
of input data files, time zone of output data, packing flag), station data (one line per station),
and a final line containing the starting and ending dates and times to extract. A sample
SMERGE control file is shown in Table 4-10. The format and contents of the SMERGE
control file are explained in Table 4-11.
The SMERGE output list file (SMERGE.LST) contains a summary of the control file
inputs, characteristics of the output unformatted data file, and routine statistics, A sample
output list file is shown in Table 4-12.
4-14
-------
Table 4-9
EMERGE Input and Output Files
Unit
3
6
7
Type
SURHNDAT input
SURRDAT
output
SMERGE. INP
SMERGEJLST
user input file
name
user input file
name
input
output
input
input
Format
unformatted F^f*"^ SMERGE data file to
or which'stations are to be added
formatted (Used only jjf NSJF» fr)
unformatted Output data file created by
or SMERGE containing the
formatted processed hourly surface data
(SURFDAT is an input file to
CALMET)
formatted Control file containing user
inputs
formatted List file (line printer output file)
formatted Surface data in NCDC 80-column
(CD144) format for station #1
formatted Surface data in NCDC 80-column
(CD144) format for station #2
(Up to 150 new surface data files are allowed by SMERGE, although this may be limited by the number
of files an operating system will allow open at one time. Multiple runs of SMERGE may be necessary.)
L-\almetwp\fcMS\«piecM.wpb
4-15
-------
6 0
cdlU.inl
cdltt.iriZ
edIU.iriS
cd1U.1n4
cd1U.in5
6 2
23025
12921
25034
250U
72261
72252
89 01 01 00 89 01 15 23 -
Table 4-10
Sample SMERGE Control Ffle Inputs
(SMERGEJNP)
* stations,* binary files.base tis» zona.output f«t<1-binsry.2-f
File new atation ID. atation tim zone
station ID. station tia* zona
station ID. station tia» zona
station ID, station tia» zone
station ID, ststion tia« zone
aw^rss.'Srrss: sas. —. *». —
ittad) ,pac«0«no, 1-y«s>"frae
4-16
-------
Table 4-11
SMERGE Control File Inputs
RECORD 1. General run information.
1-4
5-8
Format'
14
14
9-12
13-16
17-20
21-24
14
14
14
14
* Record format is (614)
Variable
NFF
NSF
IOTZ
IOFORM
IOPACK
JDAT
Description
Number of formatted 80-cohmm NCDC
input files to be processed (up to 150)
Flag indicating if i*yf* are to be added to
an ^"«ttng formatted surface data file
(0=no, 1-yes)
lime zone of output data (05=EST,
06=CST, 07=MST, 08«PST)
Output file format flag (1=unformatted
(binary), 2=formatted)
Flag indicating if output data are to be
packed (0=no, l=yes)
Formatted input data file format
(1 = CD144, 2 - NCDC CD-ROM)
l\cata>«wp\feb9S\*p«eet4.wph
4-17
-------
1-10
12-16
18-19
_
RECORD 2, 3, .-l+NFF.
format
AID
15
12
Table 4-11
SMERGE Control Ffle Inputs
FQe names, station ID, time zone.
format^
Variable
GFHLES
IFSTN
ISTZ
ach record
rt»e
formatted surface
Name of file
station data
Station ID number
Tune zone of station (05=EST, 06=CJ5T,
07-MST, 08=PST)
* Record format is (alO,lx45,tw2)
l:\ahnawp\fcW5\wpKiet4.wpb
4-18
-------
NEXT RECORD.
Table 4-11
SMERGE Control File Inputs
Used only if reading data from a binary input file (NSF-=1)
Columns
1-2
3-6
Format*
12
14
Variable
INFORM
NBSTN
Description
PTicfinc surface
(1 - binary, 2
fila format
formatted)
Number of station requested from binary
input file (-999*use all stations in binary
file)
NEXT RECORDS. Used only if (NSF=1 and NBSTN* -999) (Record repeated NBSTN times)
Columns
1-5
Format*
15
Variable
ffiSTN
Description
Station ID number for station requested
from binary input file
I:\ohDetwp\fcM5\wpMcM.wph
4-19
-------
Table 4-11 (Concluded)
SMERGE Control Ffle Inputs
NEXT
1-2
4-5
7-8
10-11
13-14
16-17
19-20
22-23
KtCUKJJ. aw
fnrmmt*
12
*
12
12
12
12
12
12
12
Variable
IBYR
IBMO
IBDAY
IBHR
BEYIR
IEMO
IEDAY
IEHR
Caen***
TUmnttrng year of data to DTOCess (two
digits)
Beginning month
IfMihimnp day
t fc
Beginning hour (00-23)
Ending year of data to process (two
digits)
putting month
pntting day
Putting hour (00-23)
' Record format is (8(i2,lx))
4-20
-------
Table 4-12
Sample SMERGE Output List File
(SMERGEXST)
SMERGE OUTPUT SUMMARY
VERSION: 1.2 LEVEL: 940330
RUNTIME CALL NO.:
1 DATE: 04/01/94 TINE: 15:10:30.92
FofMtted CD144 Surface Data
Input Files
ed144.in1
cd144.in2
ed144.fn3
Cd144.in4
cd144.in5
cd144.in6
Station
ID
23033
12921
23034
23044
72261
72252
Tiae Zone
Period to Extract (in tiac zone 6): V 1/89 0:00 to 1/15/89 23:00
Characteristics of Saerge Output File:
Time Zone: 6
File Format (1«binary,2«forwatted>: 2
Surface Stations in Output File:
No. ID No. ID
23023
12921
3
4
23034
23044
No. ID
5 72261
No. ID
6 72252
RUNTIME CALL NO.: 2 DATE: 04/01/94 TIME: 15:10:34.44
DELTA TIME: 3.52 (SEC)
l:\olmawp\fcb95\wpMKU.wph
4-21
-------
4.1.4 PXTRACT Precipitation Data Extract Program
PXTRACT is a preprocessor program which extracts precipitation data
time periods of interest from a fixed length, formatted precipitation data file in NCDC TD-3240
format The TD-3240 data used by PXTRACT must be in fixed rffcorf length format (as
opposed to the variable record length format, which is also available from NCDC). The hourly
precipitation data usually come in large blocks of data sorted by station. For example^ a 9pcd
TD-3240 file for California may contain data from over 100 stations statewide m blocks of time
of 30 years or more. Modeling applications require the data sorted by time rather than station,
and usually involve limited spatial domains of tens of kilometers or less and time penods from
less than one year up to five yean, PXTRACT allows data for a particular model ™«°*
extracted from the larger data file and creates a set of station files that are used as input files by
the second-stage precipitation preprocessor, PMERGE (see Section 4.15)
NOTE: If wet removal is not to be considered by the CALPUFF or MESOPUFF H
dispersion models, no precipitation processing needs to be done. PXTRACT (and PMERGE)
are required only if wet removal is an important removal mechanism for the modeling
application of interest. In addition, if wet removal is a factor, the user has the option of
creating a free-formatted precipitation data file that can be read by CALMET. This option
eliminates the need to run the precipitation preprocessing programs for short CALMET runs
(e.g., screening runs) for which the input data can easily be input manually.
The input files used by PXTRACT include a control file (PXTRACTJNP) containing
user inputs, and a data file (TD3240.DAT) containing the NCDC data in TD-3240 format. The
precipitation data for stations selected by the user are extracted from the TD3240.DAT file and
stored in separate output files (one file per station) called xxmx.DAT, where xxxxxx is the
station identification code. PXTRACT also creates an output list file (PXTRACT.L5T) which
contains the user options and summarizes the station data extracted. Table 4-13 contains a
summary of PXTRACTs input and output files.
The PXTRACT control file contains the user-specified variables which determine the
method used to extract precipitation data from the input data file (i.e., by state, by station, or all
stations), the appropriate state or station codes, and the time period to be extracted. A sample
PXTRACT control file is shown in Table 4-14. The format and contents of the file are
described in Table 4-15.
The PXTRACT output list file (PXTRACT.LST) contains a listing of the control file
inputs and options. It also summarizes the station data extracted from the input TD-3240 data
fc\cateetwp\feb9S\«p«xi4.wph
4-22
-------
file, including the starting and ending date of the data for each station and the number of data
records found. Since the TD-3240 data are not hourly, PXTRACT will extract the records that
cover the period requested by the user. Therefore, the dates of the data extracted from
different stations may be different although the same time period was requested by the user. If
the starting (or ending) record has a data flag, the previous (or next) record wfll also be
extracted to complete the information necessary for PMERGE to interpret the data correctly.
A sample output list file is shown in Table 4-16. The PXTRACT output data files consist of
precipitation data in TD-3240 format for the time period selected by the user. Each output data
file contains the data for one station. A sample output file is shown in Table 4-17.
L-\aiaetwp\fcMS\w|»ect4.«ph
4-23
-------
Table 4-13
PXTRACT Input and Output Files
Unit file Nt 1"e
1 PXTRACTJNP
2 TD3240JJAT
3 PXTRACTiST
7 idLDAT
(idl is the
6-digit station
code for station
040001)
id2X>AT
(id2 is the
6-digit station
code for station
#2, e^, 040002)
Type Fonnat Description
input formatted Control file containing user
inputs
input formatted Precipitation data in NCDC
TD-3240 format
output formatted List file (Kne printer output file)
output formatted Precipitation data (in TD-3240)
format for station #1 for the
time period selected by the user
output formatted Precipitation data (in TD-3240)
format for station #2 for the
time period selected by the user
(Up to 200 new precipitation data files are allowed by PXTRACT).
I:\oto«wj>\fcWS\wp«ec»4.*T>h
4-24
-------
Table 4-14
Sample PXTRACT Control File (PXTRACTJNP)
2
17
412360
417943
417945
412797
415890
410174
411492
412679
412811
415048
415596
416104
416736
416792
418023
418252
419270
89 01 01 01 89 01
15'24
I:\cdmet*p\fcMSV*pKCl4.«ph
4-25
-------
Table 4-15
PXTRACT Control Ffle Inputs (PXTRACTJNP)
RECORD L Data selection code.
Variable
ICODE
I»2£
integer
Description
Selection code:
1 - extract all stations within
state or states requested
2 * input a list of station codes of
stations to extract
3 m extract all stations in input
file with data for time period
of interest
' Entered in FORTRAN free format
l:\c4toetwp\fcWS\niatti4.wpb
4-26
-------
Table 4-15 (Continued)
EXTRACT Control Ffle Inputs (PXTRACTJNP)
RECORD 2. Number of ft«tr or
codes.
reard is included only if ICODE « 1 or
Variable
N
Type
integer
Description '
If ICODE' 1:
Number of state codes to
follow
If ICODE - 2:
Number of station codes to
follow
' Entered in FORTRAN free format
4-27
-------
Table 4--15 (Continued)
PXTRACT Control File Inputs (EXTRACTJNP)
RECORDS, 4, -2+N. State or station codes of data to be extracted.
1-6
format
16
Variable
IDAT
Description
If ICODE - 1:
State code (two digits)
If ICODE = 2:
Station code (six digits)
of state code (two
digits) followed by station ID
(four digits)
fc\c«toe*wp\fcW5\»l«ee»«.»»I*
4-28
-------
Table 4-15 (Concluded)
PXTRACT Control File Inputs (PXTRACTJNP)
NEXT RECORD. Starting/ending dates and times.
Cclumas
1-2
4-5
7-8
10-11
13-14
16-17
19-20
22-23
Format*
12
12
12
12
12
12
12
12
Variable
IBYR
IBMO
ffiDAY
ffiHR
ffiYR
IEMO
ffiDAY
ffiHR
Description
Beginning year of data to process
(two digits)
Beginning day
Beginning hour (01-24 LST)
Fluting year of data to process
digits)
jF.ntHnp month
Tpn^inn day
Ending hour (01-24 LST)
(two
' Record format is (8(i2,lx))
I:\abBetwp\feb9S\«p«el4.«pb
4-29
-------
Table 4-16
Sample PXTRACT Output List File (PXTRACTXST)
MCTRACT OUTPUT SUMMARY
VERSION: 1.0 LEVEL: 901130
RUNTIME CALL NO.:
DATE: 04/04/94 TINE: 13:35:33.67
Data Requested by Station ID
Period to Extract: I/ 1/89 1*« to 1/15/89 24:00
Requested Precipitation Station ID IhBbars -- (sortad):
No.
ID
No.
ID
1 410174
2 411492
3 412360
4 412679
6 412811
7 415048
8 415596
9 415890
5 412797
Station
Code
410174
411492
412360
412679
412797
412811
415048
415596
415890
416736
417943
417945
418023
418252
Starting
Date
V 1/89
V 1/89
V 1/89
I/ 1/89
V 1/89
V V89
V 1/89
12/10/88
V 1/89
V 1/89
V 1/89
V 1/89
V 1/89
V 1/89
Ending
Date
1/19/89
1/19/89
1/19/89
1/19/89
1/27/89
1/26/89
1/19/89
1/19/89
1/27/89
1/19/89
1/26/89
1/19/89
1/19/89
1/19/89
No.
ID
No.
ID
10 416104
VJ 416736
12 416792
13 417943
14 417945
15 418023
16 418252
17 419270
No. of
Records
3
3
3
3
5
5
5
10
7
3
9
23
3
3
The following stations were not found in the precipitation data file
for the requested tia* period:
416104
416792
419270
RUNTIME CALL NO.: 2 DATE: 04/04/94 TIME: 13:36:42.16
DELTA TIME: 68.49 (SEC)
4-30
-------
Table 4-17
Sample TD-3240 Format Precipitation Data File (4155% J)AT)
HPM1559600HPCPHT19681200100011200000010
HPM1559600HPCPHT196901000100101000999990
HPD41S59600HPCPHT19B90100050011800099999V
HPM1559600HPCPHT19890100050011900099999M
HPM1559600HPCPHT19690100100011600099999H
HPM1559600HPCPHT19890100190011300000010
I:\ohnetwp\feW5\wpMei4.wph
4-31
-------
4.1.5 PMERGE Precipitation Data Preprooessor
PMERGE reads, processes and reforaiats the precipitation data files created by the
PXTRACT program, and creates an unformatted data file for input into the CALMET
meteorological model The output file (PREOPJ3AT) contains the precipitation data sorted by
hour, as required by CALMET, rather than by station. The program can also read an existing
unformatted output file and add stations to it, creating a new output ffle. PMERGE also
resolves "accumulation periods" and flags missing or suspicious data.
Accumulation periods are intervals during which only the total amount of precipitation is
known. The time history of precipitation within the accumulation period is not available. For
example, it may be known that within a six-hour accumulation period, a total of a half inch of
precipitation fell, but information on the hourly precipitation rates within the period is
unavailable. PMERGE resoles accumulation periods such as this by assuming a constant
precipitation rate during the accumulation period. For modeling purposes, this assumption is
suitable as long as the accumulation time period is short (e.g., a few hours). However, for
longer accumulation periods, the use of the poorly time-resolved precipitation data is not
recommended. PMERGE wfll eliminate and flag as missing any accumulate periods longer than
a user-defined maximum length.
PMERGE provides an option to "pack" the precipitation data in the unformatted output
in order to reduce the size of the ffle. A "zero packing" method is used to pack the precipitation
data. Because many of the precipitation values are zero, strings of zeros are replaced with a
coded integer identifying the number of consecutive zeros that are being represented. For
example, the following record with data from 20 stations requires 20 unpacked words:
0.0, 0.0, 0.0, 0.0, 0.0, 1.2, 3.5, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.7, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
These data in packed form would be represented in six words:
-5., 1.2, 3.5, -6., 0.7, -6.
where five zero values are replaced by -5. six zero values are replaced by -6., etc. With many
stations and a high frequency of zeros, very high packing ratios can be obtained with this simple
method. All of the packing and unpacking operations are performed internally by PMERGE
and CALMET, and are transparent to the user. The header records of the data file contain
4-32
-------
information flagging the file to CALMET as a packed or unpacked file. If the user selects the
unpacked format, each precipitation value Is assigned one foil word.
The input files used by PMERGE include a control file (PMERGE.INP), an optional
unformatted data file (PBIRDAT) created in a previous run of PMERGE, and up to ISO
TD-3240 precipitation station files (e.g^ as created by PXTRACT). The output file consists of a
list file and a new unformatted data file in CALMET format with the data for all stations sorted
by hour. Table 4-18 lists the name, type, format, and contents of PMERGE's input and output
data files.
The PMERGE control file (PMERGEJNP) contains the user-specified input variables
indicating the number of stations to be processed, a flag indicating if data are to be added to an
existing, unformatted data file, the maximum length of an accumulation period, packing options,
station data, and time zone data. PMERGE allows data from different time zones to be merged
by time-shifting the data to a user-specified base time zone. Sample PMERGE control files are
shown in Table 4-19. Sample 1 shows an input file to merge data from 10 precipitation stations
into one unformatted output file. The unformatted output file can then be renamed from
PRECIP.DAT to PBIN.DAT by the user and then a control file as shown in Sample 2 can be
used to merge data from 4 more precipitation stations to the 10 already processed. The
combination of station data in multiple runs of PMERGE is sometimes necessary because the
number of files which can be opened at one time is limited under some operating systems (e.g.,
DOS). The output file from Sample 2 is a formatted file containing data from 14 precipitation
stations. This formatted file can be directly input to CALMET. The format and contents of the
PMERGE control file are described in Table 4-20.
The PMERGE output list file (PMERGE.LST) contains a listing of the control file
inputs and options. It also summarizes the number of valid and invalid hours for each station
including information on the number of hours with zero or non-zero precipitation rates and the
number of accumulation period hours. Additional statistics provide information by station
on the frequency and type of missing data in the file (i.e., data flagged as missing in the original
data file, data which are part of an excessively long accumulation period, or data missing from
the input files before (after) the first (last) valid record. A sample output file is shown in
Table 4-21.
t\c»taetwp\fcW5\wp«ecM.wph
4-33
-------
TmWe4-18
PMERGE Input and Output Files
Unit
3
PBINDAT
Type
input
5
6
7
PREOPJ>AT output
PMERGEJNP input
PMERGEiST output
user input file input
name
user input file input
name
unformatted
unformatted
or
formatted
formatted
formatted
formatted
formatted
Easting PMERGE data file
•to which rt»Hnnie are to be
added (Used only if NBF» 1)
Output data file created by
PMERGE (PREOP J>AT is
an input file to CALMET)
Control file containing user
inputs
List file (line printer output
file)
Precipitation data (in
TD-3240) format for station
#1. (Output file of
PXTRACT)
Precipitation data (in
TD-3240) format for station
#2. (Output file of
PXTRACT)
(Up to 150 new precipitation data files are allowed by PMERGE although this may be
limited by the number of files an operating system will allow open at one time. Multiple
runs of PMERGE may be necessary.)
4-34
-------
Table 4-19
Sample PMERGE Control File (PMERGE JNP)
Sample 1
10 0 12
412360.dat 6
417943.dat
41T945.dat
412797.dat
415890.dat
410174.dat
411492.dat
412679.dat
412811.dat
415048.dat
1 1
89 01 01 01 89 01 15 24
Sample 2
4 1 12 6 2 0
415596.dat 6
416736.dat 6
418023.dat 6
418252.dat 6
-999
89 01 01 01 89 01 15 24
I:\calmetwp\fcW5\wjaeeJ4.wph
4-35
-------
Table 4-20
PMERGE Control Ffle Inputs (PMERGE JNP)
RECORD 1. General run information.
1-4
5-8
9-12
13-16
17-20
21-24
14
14
14
14
14
14
Variable
NFF
NBF
MAXAP
IOTZ
IOFORM
IOPACK
Number of formatted NCDC input
files to be processed (up to 150)
Flag indicating if data are to be
added to an fyfc*'nc unformatted
precip. data file (0=no, l=yes)
Maximum allowed length of an
accumulation period (hours). It is
recommended that MAXAP be set
to 24 hours or less.
Time zone of output data (05=EST,
06=CST, 07=MST, 08=PST)
Format of output data file
(1« binary, 2=formatted)
Flag indicating if output data are to
be packed (0=no, l=yes)
* Record format is (6i4)
l:\ahnetwp\fcWS\wpteei4.wpb
4-36
-------
Table 4-20 (Continued)
PMERGE Control File Inputs (PMERGEJNP)
RECORD 2, 3, -.1+NFF.
File names afu* time zone for each station.
fEacb record has the following format^
Columns
1-10
12-13
Format'
AID
12
Variable
CFFILES
ISTZ
Description
Name of file containing formatted
precipitation data (TD-3240 format)
(EXTRACT output file). First six
digits of file name must r""*«in
station code (SSim), where SS is the
two digit state code, and HO is the
station ID)
Time zone of station (05=EST,
06-CST, 07-MST, 08=PST)
' Record format is (alO,lxj2)
NEXT RECORD.
(Necessary only if NBF=1, Le., reading data from a binary input
file.)
Columns
1-4
Format
i4
Variable
NBSTN
Description
Number of stations requested from
binary input file (=999 = use all
stations in binary file).
NEXT RECORDS. (Necessary only if NBF= 1 and NBSTN * -999, one record for each binary
station requested, Le., NBSTN lines.)
Columns
1-5
Format
i5
Variable
HBSTN
Description
6-digit station ids requested from
binary input file (1 station id per
record)
I:\mmetwp\fcb93\*i>MCt4.wph
4-37
-------
Table 4-20 (Concluded)
PMERGE Control Ffle Inputs (PMERGEJNP)
NEXT RECORD. Starting/ending dates and times.
Columns
1-2
4-5
7-8
10-11
13-14
16-17
19-20
22-23
Format*
12
12
12
12
12
12
12
12
Variable
1BYR
1BMO
ffiDAY
ffiHR
ffiYR
ItEMO
ffiDAY
ffiHR
Description
mumming year of data to process
(two digits)
Iff!*' ifiiitti v month
Begmningday
Beginning hour (01-24 LST)
Fusing year of data to process
digits)
Frying month
Ending day
Ending hour (01-24 LST)
(two
' Record format is (8(i2,lx))
4-38
-------
RUNTIME CALL NO.:
Forwtted TD3240 Precipitation
Input Files
415596.dat
416736.dat
418023.dat
418252.dat
Table 4-21
Sample PMERGE Output List File (PMERGEXST)
PMER6E OUTPUT SUMMARY
VERSION: 1.2 LEVEL: 921022
1 DATE: 04/04/94 TINE: 16:26:15.24
Ti«e Zone
6
6
6
6
Period to Extract (in tiae zone 6): 1/ 1/89 1:00 to 1/15/89 24:00
Data Read fro* Binary Input File:
Time Zone: 6
Packing Code: 1
Period (in tine zone 6): V 1/89 1:00 to
Stations Available in Binary Input File:
1/15/89 24:00
NO.
ID
NO.
ID
NO.
ID
No.
ID
1
2
3
412360
417943
417945
4
5
6
412797
415890
410174
7
8
411492
412679
9
10
412811
415048
PMERGE Stations in Output File:
No. ID No. ID
No.
ID
No.
ID
1 412360
2 417943
3 417945
4 412797
5 415890
6 410174
7 411492
8 412679
9 412811
10 415048
11 415596
12 416736
13 418023
14 418252
Surrary of Data from Formatted TD3240 Precipitation Files:
Valid Hours:
Station
IDs
415596
416736
418023
418252
Station
IDs
415596
416736
418023
418252
Zero
Nonzero
Accum
Period
128
360
360
360
Flagged
Missing
0
0
0
0
Invalid
0
0
0
0
Total
Valid
Hours
128
360
360
360
X
Valid
Hours
35
100
100
100
.6
.0
.0
.0
Hours:
Excessive
ACCUB
Period
232
0
0
0
0
0
0
0
Missing
Before
Data
First
Valid Record
0
0
0
0
Missing
Data
After Last
Valid Record
0
0
0
0
Total
Invalid
Hours
232
0
0
0
X
Invalid
Hours
64.4
0.0
0.0
0.0
RUNTIME CALL NO.: 2 DATE: 04/04/94 TIME: 16:26:15.90
DELTA TIME: 0.66 (SEC)
L-\olmeCwp\«eMS\«ipweU.wph
4-39
-------
42 CALMET Model Ffles
The CALMET model obtains the necessary control information and input meteorological
data from a number of different input files. The control file (CALMET.INP) contains the data
that define a particular model run, such as starting date and time, horizontal and vertical grid
data, and model option flags. Geophysical data, including terrain elevations, land use, and
surface characteristics, are read from a formatted data file called GEO.DAT.
The hourly surface meteorological observations are contained in the surface data file
(SURF.DAT). If overwater temperatures are being calculated separately, this file must contain
only land stations. This file can be either a formatted or an unformatted file generated by the
SMERGE preprocessor program or a free-formatted, user-prepared file, depending on options
specified in the control file. Upper air meteorological data are read from a series of data ffles
called UPn.DAT, where n is the upper air station number (e.g., n«lA3,...). The data for each
upper air station are stored in a separate data file.
Hourly precipitation observations are contained in a file called PRECIRDAT. This file
can be a formatted or an unformatted file generated by the PMERGE preprocessor program or
a free-formatted, user-prepared file. Overwater meteorological data are read from a series of
data ffles called SEAiuDAT, where n is the overwater station number (e.g., n«= 1,23,...). The
data for each overwater station are stored in a separate file. If overwater default parameters for
temperature, air-sea temperature difference, etc. are being used and separate overwater
temperatures are not being calculated, then overwater stations can be placed in the SURF.DAT
file.
CALMET contains an option to use gridded prognostic model output from either
CSUMM or MM4-FDDA as model input. If this option is selected, the CSUMM gridded
prognostic model wind fields are read from an unformatted data file called PROG.DAT or the
MM4-FDDA prognostic output are read from a formatted data file called MM4.DAT.
In its default mode, CALMET computes domain-averaged winds, temperature lapse
rates and surface temperatures from the hourly surface observations and twice-daily upper air
data contained in the SURF.DAT, UPn.DAT, and, if present, SEAn.DAT ffles. However, the
model contains an option for the user to specify pre-computed values for these parameters from
an optional file DIAGDAT.
The main CALMET output ffles are a list file (CALMET.LST) containing a listing of the
model inputs and user-selected printouts of the output meteorological values and an optional,
I:\olnetwp\feM5\wp.ect4.wpli
4-40
-------
unformatted disk file (CALMET.DAT or PACOUTDAT) containing the hourly gridded
meteorological data produced by the model In addition, several additional optional list files
(TEST.PRT, TEST.OUT, TEST.KIN, TESTJFRD, and TEST.SLP) can be created. These files,
provided primarify for model testing purposes, contain intermediate versions of the wind fields
at various points in the diagnostic wind field analysis (e.g., after evaluation of kinematic effects,
slope flows, terrain blocking effects, divergence minimization, etc.).
The CALMET input and output files are listed in Table 4-22. The table shows the
FORTRAN unit numbers associated with each file. As indicated in Section 3.1, these unit
numbers are specified in a parameter file, PARAMS.MET, and can easily be modified to
accommodate system-dependent restrictions on allowable unit numbers. The user should make
sure that the beginning and total number of UPnJDAT and SEAn.DAT files are defined such
that there is no overlap among unit numbers.
In the following sections, the contents and format of each CALMET input file is
described in detail
I:\cahnetwp\feb9S\wioeci4.wph
4-41
-------
Table 4-22
CALMET Input and Output Files
IM
102
DIAGJDAT
Type
input
Format
fonnatted
IO5
IO6
IO7
IO8
IO10
CALMETJNP
CALMET1ST
CALMETDAT
or
PACOUTJ>AT
GEO.DAT
SURFJDAT
input
output
output
input
input
IO12
PRECIP.DAT
input
fonnatted
fonnatted
unformatted
fonnatted
unformatted
(ifIFORMS=l)
or
fonnatted
(ifIFORMS=2)
unformatted
(ifIFORMP=l)
or
formatted
(ifIFORMP=2)
Description
FBe
preprocessed
eteorological data for
diagnostic wind field module.
(Used only if IDIOPT1,
IDIOPT2, IDIOFI3, IDIOPT4,
orlDIOPTS- L)
Control file containing user
inputs.
List file (line printer output file)
created by CALMET.
Output data file created by
CALMET contff"""E hourly
gridded fields of meteorological
data. (Created only if
LSAVE=T.)
Geophysical data fields (land
use, elevation, surface
characteristics, anthropogenic
heat fluxes).
Hourly surface observations
(Used only if IDIOPT4=0.) If
IFORMS=1, use the
unformatted output file of the
SMERGE program. If
IFORMS=2, use a free-
formatted 'input file generated
either by SMERGE or the user.
Hourly precipitation data (used
if NPSTA > 0). If IFORMP=1,
PRECIP.DAT is the
unformatted output file of the
PMERGE program. If
IFORMP=2, PRECIP.DAT is a
free-formatted input file
generated either by PMERGE
or the user.
(CALMET Input and Output Files Continued)
4-42
-------
Unit
1030
IO30+1
1030+2
UPLDAT
UP2JJAT
UP3J>AT
Table 4-22
CALMET Input and Output Files
Type
input
fonnatted
Upper air data (READ56/READ62
output) for upper air station *n. (Used
onryifIDIOPT5-0.)
UPnDAT
(Up to "MAXUS" upper air stations allowed. MAXUS currently « 10).
1050 SEALDAT input fonnatted Overwater meteorological data for station
IO50+1
1050+2
SEA2JDAT
SEA3DAT
#n. (Used only if NOWSTA > 0).
SEAiuDAT
(Up to "MXOWS" overwater stations allowed. MXOWS currently = 10).
IO40
IO40
IO99
IO41
IO42
1043
IO44
IO45
PROGDAT
(CSUMM)
or
MM4.DAT
(MM4)
TESTJ»RT
TEST.OUT
TEST JON
TESTJRD
TESTSLP
input unformatted
input fonnatted
WTJDAT input formatted
Gridded fields of prognostic wind data to
use as input to the diagnostic wind field
module. (Used only if IPROG > 0.)
Gridded fields of terrain weighting factors
used to weight the observed winds and the
MM4 winds in the interpolation process
Wind Field Module Test and Debug Files
output unformatted
output fonnatted
output fonnatted
output formatted
output fonnatted
Intermediate winds and misc. input and
internal variables. (Created only if at least
one wind field print option activated
(IPRO-DPR8).)
Final wind fields. (Created only if IPR8= 1
andlOUTD^l.)
Wind fields after kinematic effects.
(Created only if IPR5* 1 and IOUTD*!.)
Wind fields after Froude No. effects.
(Created only if IPR6=1 and IOUTD=L)
Wind fields after slope flow effects.
(Created only if IPR7-1 and IOUTD-L)
L-\ainetwp\feb9S\«pKcM.«pb
4-43
-------
4.2.1 User Control File (CALMETINP)
The selection and control of CALMET options are determined by user-specified inputs
contained in a file called the control ffle. This file, CALMETJNP, contains all the information
necessary to define a model run (e.g., starting date, run length, grid specifications, technical
options, output options, etc.).
The control ffle is organized into nine Input Groups preceded by a three line run title
(see Table 4-23). The Input Groups must appear in order, ien Input Group 1 followed by Input
Group 2, etc. However, the variables within an Input Group may appear in any order. Each
• Input Group must end with an Input Group terminator consisting of the word END between
two delimiters (Le>, !END!). Even a blank Input Group (Le., one in which no variables aire
included) must end with an Input Group terminator in order to signal the end of that Input
Group and the beginning of another.
A sample control file is shown in Table 4-24. It is designed to be flexible and easy-to-
use. The control file is read by a set of FORTRAN text processing routines contained within
CALMET which allow the user considerable flexibility in designing and customizing the input
file. An unlimited-amount of optional descriptive text can be inserted within the control file to
make it self-documenting. For example, the definition, allowed values, units, and default value
of each input variable can be included within the control file.
The control file processor searches for pairs of special delimiter characters (!). All text
outside the delimiters is assumed to be user comment information and is echoed back but
otherwise ignored by the input module. Only data within the delimiter characters are processed.
The input data consist of a leading delimiter followed by the variable name, equals sign, input
value or values, and a terminating delimiter (e.g., !XX = 12.5 !). The variable name can be
lower or upper case, or a mixture of both (Le., XX, xx, Xx are all equivalent). The variable can
be a real, integer or logical array or scalar. The use of repetition factors for arrays is allowed
(e.g., ! XARRAY « 3 * 1.5 ! instead of! XARRAY *= 1.5,13, 1.5 !). Pifferem vafres must be
separated bv commas. Spaces within the delimiter pair are ignored. Exponential notation (E
format) for real numbers is allowed. However, the optional plus sign should be omitted (e.g.,
enter + 1.5E+10 as 1.5E10). The data may be extended over more than one line. The line
being continued must end with a comma. Each leading delimiter must be paired with a
terminating delimiter. All text between the delimiters is assumed to be data, so no user
comment information is allowed to appear within the delimiters. The inclusion in the control
file of any variable that is being assigned its default value is optional.
4-44
-------
The control file reader expects that logical variables wfll be assigned using only a one
character representation (Le.,T or T). Input Groups 7-9 are handled differently (making use
of FORTRAN free reads), because they contain Character*4 input data. IQejiaJijiojsiojLPl
each record in Tnput Groups 7-9 must start in Column 9 or greater of the record.
Each CALMET control file input variable is described in Table 4-25. The control file
module has a list of the variable names and array dimensions for each Input Group. Checks are
performed to ensure that the proper variable names are entered by the user, and that no array
dimensions are exceeded. Error messages result if an unrecognized variable name is
encountered or too many values are entered for a variable.
Note that if LLCONF^T, then all x,y coordinates in the CALMETJNP file must be
specified on the chosen Lambert Conformal projection grid, rather than in UTM coordinates.
A standard control file is provided along with the CALMET test case run. It is
recommended that a copy of the standard control file be permanently stored as a backup.
Working copies of the control file may be made and then edited and customized by the user for
a particular application.
I:\aOmetwp\feM3\tecM2Lwpb
4-45
-------
Table 4-23
CALMET Control Ffle Input Groups
Inpnt Group {Description
• Ron Tide
First three fines of control file (up to 80 characters/fine)
1 General Run Control Parameters
Starting date and hour, run length, base time zone, and run type options
2 Grid Control Parameters
Grid spacing, number of cells, vertical layer structure, and reference coordinates
3 Output Options
Printer control variables, and disk output control variables
4 Meteorological Data Options
Number of surface, upper air, over water, and precipitation stations, input file formats,
and precipitation options
5 Wind Field Options and Parameters
Model option flags, radius of influence parameters, weighting factors, bamer data,
diagnostic module input flags and lake breeze information
6 Mixing Height, Temperature, and Precipitation Parameters
Empirical constants for the mixing height scheme, spatial averaging parameters,
minimum/maximum overland and overwater mixing heights, temperature options, and
precipitation interpolation options
7 Surface Meteorological Station Parameters
Station name, coordinates, latitude, longitude, time zone, and anemometer height
8 Upper Air Station Parameters
Station name, coordinates, latitude, longitude, and time zone
9 Precipitation Station Parameters
Station name, station code, and coordinates
I:\ca!aet«p\fcM5\iecM21.wpii
4-46
-------
Table 4-24
Sample CALMET Control Ffle (CALMETJNP)
Run Title and Input Group 1
CALMET TMt Case Run
43x33 10 km grid, 8 vertical layers
net. ttations uaed: 6 afc.. 3 upper. U precip.. 0 over«ater; Ho barriar
Additional user eaaaintt
12 hour run on January 1, 1969
INPUT GROUP: 1 -• General run control parameters
Starting date:
Year (IBYR) -- No default
Honth (IBMO) — No default
Day (IBDY) — No default-
Hour (IBHR) -- No default
Base time zone (IBT2) -- No default
PST « 08, HST = 07
CST = 06, ESI * 05
Length of run (hours) (IRLG) -- No default
Run type (IRTYPE) - Default: 1
I IIYR-89 I
I IMO»1 I
I IiDY«1 I
! »HR«0 !
! IBTZ«6 I
IRLG*12
IRTTO«1
0 * Computes wind fields only
1 = Computes wind fields and micrometeorological variables
(u*. w*f L, zi. etc.)
(IRTYPE must be 1 to run CALGR1D or CTSG module of CALPUFF)
Compute special data fields required
by CALGR1D (i.e., 3-D fields of U wind
components and temperature)
in additional to regular Default: T
fields ? (LCALGRD)
(LCALGRD Must be T to run CALGRID)
Rotate input winds from true north to
map north using a Lambert conformsI
projection? (LLCONF) Default: F
Latitude of 1st standard parallel Default: 30.
Latitude of 2nd standard parallel Default: 60.
(XLAT1 and XLAT2; + in Northern Hemisphere
- in Southern Hemisphere)
! LCALGRD * F I
I LLCONF * f I
! XLAT1 * 30. I
I XLAT2 * 60. I
IEMD!
I:\cahaetwp\fcb9S\iKU21.wph
4-47
-------
Table 4-24
Sample CALMET Control Ffle (CALMETJNP)
Input Group 2 and Input Group 3
INWT CROUP: 2 •• Grid control parameters
HORIZONTAL CHID DEFINITION:
No. X gMd cells (NX)
No. Y grid cells (NY)
GRID SPACING (DGRIDKM)
REFERENCE COORDINATES
of SOUTHWEST corner of grid point (1.1)
X coordinate (XORIGKM)
Y coordinate (YORIGOO
Longitude (RLONO)
(used only if LLCONF * T)
Origin Latitude (RLATO)
(used only if IPROG > 2)
UTM ZONE (IUTMZN)
Vertical grid definition:
No. of vertical layers (NZ) No default
Cell face heights in arbitrary
vertical grid (ZFACE(NZ-M))
No default
No default
No default
Unitn: k»
1 NX -43 !
1 NY « 33 1
1 DGRIDKM* 10.0
No default I XORIGKM* 565.00 I
No drtfault I YOR1GKM* 3095.00 I
Unitrt: fas
Default • 90.0 I RLONO « 90.0 I
Default • 40.0 ! RLATO * 40.0 !
No default ! lUTMZN* 13 I
! NZ « 8 I
! ZFACE « 0.. 20., 120.. 240.,
No defaults
Units: •>
500., 1000., 1800., 3000.. 4000. I
I END!
INPUT GROUP: 3 •- Output Options
DISK OUTPUT OPTION
Save net. fields in an unfoi
I
(F * Do not save, T « Save)
itted file
(LSAVE) Default: T
Type of unformatted output file:
(IFORMO) Default: 1
1 * CALPUFF/CALGRID type file (CALNET.DAT)
2 > NESOPUFF-II type file (PACOUT.DAT)
(Used only if LSAVE«T)
I LSAVE * T !
IFORMO • 2 I
I:\ctteet«p\fet>9S\ieeU21.«ph
448
-------
Table 4-24
Sample CALMET Control File (CALMETJNP)
Input Group 3 Continued
LINE PRINTER OUTPUT OPTIONS:
Default: f
Print Bet. fields ? UPRINT)
If * Do not print, T « Print)
(NOTE: parameters below control which
•et. variables are printed)
Print interval ...
(IPRINF) in hours Default: 1
(Heteorological fields are printed
•very "IPRINF" hours)
Specify which layers of U, V wind component
to print (lUVOUT(NZ)) -• NOTE: NZ values aust be entered
tPtlNT « T !
.«.« _ * ,
IPRWF - 6 I
Defaults: NZ-0 « IUVOUT . 1.1.6-0 ,
Specify which levels of the W wind component to print
(NOTE: W defined at TOP cell face -- "NZ" values)
(IWQUT(NZ)) -- NOTE: NZ values Bust be entered
(0*Do not print, 1«Print)
(used only if LPRINT-T I LCALGRD«T)
Defaults: NZ*0 I IUOUT * 8*0 !
Specify which levels of the 3-D temperature field to print
(ITOUT(NZ)) -• NOTE: NZ values aust be entered
(0*0o not print, 1«Print)
(used only if LPRINT«T I LCALGRD*T)
Defaults: NZ*0 ! ITOUT * 8*0 !
Specify which meteorological fields
to print
(used only if LPRINT=T) Defaults: 0 (all variables)
Variable Print ?
(0 * do not print,
1 = print)
STABILITY 1 - PGT stability class
USTAR 0 Friction velocity
HONIN 0 Honin-Obukhov length
MIXHT 0 Mixing height
\iS\ML 0 Corrective velocity scale
PRECIP 0 Precipitation rate
SENSHEAT 0 Sensible heat flux
1 Convective nixing ht.
Testing and debug print options for aiieroaKteorological aadule
I LOB
Print input Meteorological data and
internal variables (LOB) Default: F
(F « Do not print, T « print)
(NOTE: this option produces large amounts of output)
F !
First time step for which debug data
are printed (NN1) Default: 1
I NH1 « 1 I
I:\alraetwp\fcW5\iecU21.wph
4-49
-------
Table 4-24
Sample CALMEST Control Hie (CALMETJNP)
Input Group 3 Continued
Lttt tie* step for which
are printed (NN1>
data
Default: 1
I NN2 « 1 I
Tasting and debug print option* for wind field nodule
(all of the following print option* control output to
Mind field module's output filet: TEST.PtT. TEST .OUT.
TEST.KIN, TEST.FRO, and TEST.SLP)
Control variable for writing the test/debug
wind fields to disk files (IOUTD)
<0«0o not write. 1-write) Default: 0 I IOUTD « 0 I
Nuaber of levels, starting at the surface,
to print (NZPRN2) Default: 1 I M2PWI2 « 1 !
Print the INTERPOLATED wind components ?
CIPRO) <0-no. 1-yes) Default: 0 ! IPRO - 0 I
Print the TERRAIN ADJUSTED surface wind
(IPR1) <0»no, 1«yes> Default: 0 I IPR1 - 0 I
Print the SMOOTHED wind components and
the INITIAL DIVERGENCE fields ?
(0«no, 1»yes) Default: 0 I IPR2 • 0 !
Print the FINAL wind speed and direction
fields ?
(IPR3) (0-no, 1«yes) Default: 0 I IPR3 * 0 !
Print the FINAL DIVERGENCE fields V
(IPR4) (0«no, 1*yes> Default: 0 I IPR4 « 0 !
Print the winds after (CINEMATIC effects
are added ?
(IPR5) (0«r», 1«yes) Default: 0 ! IPR5 « 0 !
Print the winds after the FROUDE NUMBER
adjustment is Made ?
Default: 0 I IPR6 « 0 !
Print the winds after SLOPE FLOWS
are added ?
(IPR7) (0»no, 1»yes) Default: 0 I IPR7 * 0 I
Print the FINAL wind field ceaponentc ?
CIPR8) (0*no, 1«yes) Default: 0 I IPR8 * 0 !
IEND!
4-50
-------
Table 4-24
Sample CALMET Control File (CALMETJNP)
Input Group 4 and Input Group 5
INPUT GROUP: 4 -- Meteorological data options
NUMBER OF EACH TYPE OF METEOROLOGICAL STATION
Number of aurface station* (NSSTA) Ho default I HSSTA « 6 I
Number of upper air stations (NUSTA) Ho default I MUSTA * 3 i
Number of precipitation station*
(NPSTA) Mo default I HPSTA «
Nuaber of overuater met stations
(NOWSTA) Ho dafault 1 MOUSTA
FILE FORMATS
14
> 0
Surface Meteorological data file fonaat
(IFORMS) No default ! IFORMS > 2 I
(1 « unformatted (e.g., SMERGE output))
(2 • formatted (free-formatted SMERGE or user input))
Precipitation data file format
(IFORMP) No default I IFORMP * 2 I
(1 * unformatted (e.g., PMERGE output))
(2 * formatted (free-formatted PMERGE or user input))
!END!
INPUT GROUP: 5 -- Wind Field Options and Pan
eters
WIND FIELD MODEL OPTIONS
Model selection variable (IWFCOD)
0 = Objective analysis only
1 E Diagnostic wind module
Compute Froude number adjustment
effects ? (IFRADJ)
(0 = NO, 1 * YES)
Compute kinematic effects ? (IKINE)
(0 * NO, 1 * YES)
Default: 1 ! IUFCOD * 1 !
Default: 1
Default: 1
! IFRADJ * 1 !
I 1KINE * 1 i
! IOBR * 0 !
I IEXTRP = 1 I
Use O'Brien procedure for adjustment
of the vertical velocity ? (IOBR) Default: 1
(0 « NO, 1 * YES)
Extrapolate surface wind observations
to upper layers ? (IEXTRP) Default: 1
(1 = no extrapolation is done,
2 * power law extrapolation used,
3 * user input multiplicative factors
for layers 2 - NZ used (see FEXTRP array)
4 c similarity theory used
-1, -2, -3 * same as above except layer 1 data
at upper air stations are ignored
Miniaun distance between nearest upper air
station and surface station for which extrapolation
of surface winds at suface station will be allowed
(RMIN2: Set to -1. for IEXTRP>4 or other situations
where all surface stations should be extrapolated)
Units = km Default: 4 i RMIN2
4 !
I:\calmetwp\fcb95\ietM21.wph
4-51
-------
Table 4-24
Sample CALMET Control Ffle (CALMETJNP)
Input Group 5 Continued
I IPROG «0 !
Use gridded prognostic wind field •octet
output fields as input to the diagnostic
wind field andel {IPROG) Default: 0
'* Y«* 'use'cfiMM prog winds as Step 1 field. IIUFCOO « 0]
Yes use CSUMM prog, winds as initial guess field tlUFCOO « 11
Y£ Ee SKroT-ind. as Stap.^fie^nWfCOO^
Yes! use MM4 prog", winds aa observations
Prognostic Grid Horizontal Spacing
(DGftDPKM)
RADIUS OF INFLUENCE PARAMETERS
No default
Units: tan
Use varying radiue of influence Default: F
(if no stations are found within RMAX1.RHAX2,
or RMAX3. then the closest station will be used)
Maxiaun radius of influence over land
in the surface layer (RMAX1)
Maximum radius of influence over land
aloft (RMAX2)
Maxiaun radius of influence overwater
No default
Units: tan
No default
Units: to
Units: tan
OTHER WIND FIELD INPUT PARAMETERS
Miniwum radius of influence used in
the wind field interpolation (RMIN) No default
Units: km
Default: 4
Units: km
Hini«un distance to an upper air
station from a surface station,
which will allou vertical
extrapolation of the surface winds
to take place (RHIN2)
Radius of influence of terrain
features (TERRAD)
Relative weighting of the first
guess field and observations in the
SURFACE layer (R1)
(R1 is the distance from an
observational station at which the
observation and first guess field are
equally weighted)
Relative weighting of the first
guess field and observations in the
layers ALOFT (R2) «° default
(R2 is applied in the upper layers Units: km
in the same Manner as R1 is used in
the surface layer).
No default
Units: tan
No default
Units: km
11)
I DGRDPKM
80.0 I
I LVARY * T I
I RMAX1 « 300.1
I RHAX2 -1000. I
! RMAX3 -1000.1
I RMIN * .2 I
I RMIN2 * 4.0 !
! TERRAD * 20. I
! R1 - 30. I
R2 * 50.1
I:\cabMMp\feMS\«eet421.«pb
4-52
-------
TaWe4-24
Sample CALMET Control Ffle (CALMETJNP)
Input Group 5 Continued
Relative weighting parameter of the
prognostic wind field data (RPROG) No default
(Used only if IPROG « 1) Units: k»
I RPROG • 50. I
Maxiau* acceptable divergence in the
divergence •iniarization procedure
(D1VLIM)
Naxiaun muter of iterations in the
divergence a»in. procedure (NITER)
Nunter of passes in the smoothing
procedure (NSMTH(NZ)}
Note: NZ values aust be entered
Maxiaun nwber of stations used in
each layer for the interpolation of
date to a grid point (NINTR2(NZ»
NOTE: NZ values «ust be entered
Critical Froude mater (CRITFN)
Empirical factor controlling the
influence of kinematic effects
(ALPHA)
Default: 5.E-6 I DIVLIN-5.E-6 I
Default: 50 ! NITER * 50 I
Default: 2,(MXNZ-1>*4 I NSHTH » 2.7*4 !
No defaults
Default: 1.0
I NINTR2 *8*4 !
1 CRITFN * 1. I
Default: 0.1 « ALPHA - 0.1 I
Multiplicative scaling factor for
extrapolation of surface observations
to upper layers (FEXTR2(NZ)) Default: NZ-0.0 I FEXTR2 « 8*0.0 I
(Used only if IEXTRP = 3 or -3)
BARRIER INFORMATION
Number of barriers to interpolation
of the wind fields (NEAR)
Default: 0
! NBAR * 0 !
THE FOLLOWING 4 VARIABLES ARE INCLUDED
ONLY IF NBAR > 0
NOTE: NBAR values Bust be entered
for each variable
X coordinate of BEGINNING
of each barrier (XBBAR(NBAR))
Y coordinate of BEGINNING
of each barrier (VBBAR(NBAR))
X coordinate of ENDING
of each barrier (XEBAR(NBAR))
Y coordinate of ENDING
of each barrier (VEBAR(NBAR))
DIAGNOSTIC MODULE DATA INPUT OPTIONS
Surface temperature (IDIOPT1)
0 = Coapute internally fro*
hourly surface observations
1 * Read preprocessed values from
a data file (DIAG.DAT)
Ho defaults
Units: km
* XBBAR * "nbar" values *
* YBBAR * "nbar" values *
* XEBAR * "nbar" values *
« YEBAR » "nber" values *
Default: 0
1DIOPT1 « 0 I
L\almeMp\feb95\iecU21.wpfa
4-53
-------
Table 4-24
Sample CALMET Control Ffle (CALMETJNP)
Input Group 5 Continued
Surface met. station to use for
the surface temperature (ISURFT)
(Must be a value fro* 1 to NSSTA)
(Used only If IDIOPT1 « 0)
No default
I ISURFT • 4 I
Domain-averaged temperature lapse
rate (IDIOPT2) Default: 0 I IDIOPT2 « 0 I
0 > Compute internally from
twice-daily upper air observations
1 « Read hourly praprocassed values
fro* a data file (DIAG.DAT)
Upper air station to use for
the domain-scale lapse rate (IUPT) No default ! IUPT - 1 I
(Must be a value fro* 1 to NUSTA)
(Used only if IDIOPT2 * 0)
Depth through which the domain-scale
lapse rate is computed (ZUPT) Default: 200.
(Used only if ID10PT2 > 0) Units: meters
I ZUPT * 200. I
Domain-averaged wind coaponents
(IDIOPT3) Default: 0 I 1DIOPT3 * 0 I
0 * Compute internally from
twice-daily upper air observations
(IDIOPT3*0, IUPUND—1 to use spatially-variable
initial guess field)
1 * Read hourly preprocessed values
a data file (DIAG.DAT)
Upper air station to use for
the domain-scale winds (IUPUNO) No default
(Must be a value from 1 to NUSTA or -1)
«1., 2000.!
(Used only if IDIOPT3 «= 0) Units: meters
Observed surface wind components
for wind field module (IDIOPU) Default: 0 I IDIOPtt * 0 !
0 « Read US. UD from a surface
data file (SURF.DAT)
1 * Read hourly praproeassad U, V from
a data file (DIAG.DAT)
Observed upper air wind components
for wind field module (IDIOPT5) Default: 0 ! IDIOPT5 * 0 I
0 * Read US, UD from an upper
air data file (UP1.DAT, UP2.DAT. etc.)
1 * Read hourly preprocessed U, V from
a data file (DIAG.DAT)
I:\ctlmetwp\fcWS\«ect421.wph
4-54
-------
Table 4-24
Sample CALMET Control File (CALMETJNP)
Input Group 5 Conducted
LAKE BREEZE INFORMATION
Use Lake Breeze Module (LIBREZE) Default: F I LLBREZE • F I
Nuaber of lake breeze regions (NBOX) No default ! NBQX > 1 !
X Grid line 1 defining the region of interact OCG1)
No default ! XG1 * 2.5 I
Unite: (KM)
X Grid line 2 defining the region of interact (XG2)
No default I XG2 * 4.5 I
Units: (KM)
Y Grid line 1 defining the region of interact
.No default I YG1 « 0.0 I
Units: (KM)
Y Grid line 2 defining the region of interest (YG2)
No default I YG2 * 5.0 I
Units: (KM)
X Point defining the coastline (Straight line) (XBCST)
No default I XBCST * 172. !
Units: (KM)
Y Point defining the coastline (Straight tine) (YBCST)
No default ! YBCST • 3879. !
Units: (KM)
X Point defining the coastline (Straight line) (XECST)
No default I XECST « 180. I
Units: (KM)
Y Point defining the coastline (Straight line) (YECST)
No default I YECST > 3839. I
Units: (KM)
Number of stations in the region No default
(Surface stations * upper air stations)
Station ID'S in the region (METBXID(NLB))
(Surface stations first, then i^per air stations)
* NETBX10 > 23023 *
f NLB * 0 !
1END!
I:\emhnetwp\fcb93\iecU21.wph
4-55
-------
Table 4-24
Sample CALMET Control File (CALMETJNP)
Input Group 6
INPUT GROUP: 6 — Nixing Might and T
iture ParaMeters
EMPIRICAL NIX'ING HEIGHT CONSTANTS
Neutral, Mechanical equation
(CONST!)
Conveetive nixing ht. equation
(CONSTE)
Stable Mixing ht. equation
(CONSTN)
Overwater Mixing ht. equation
(CONSTW)
Absolute value of Coriolis
paraeeter (FCORIOL)
SPATIAL AVERAGING OF NIXING HEIGHTS
Conduct spatial averaging
(1AVEZI) (0»no, 1«yes>
Max. search radius in averaging
process (NNMDAV)
Half-angle of upwind looking cone
for averaging (HAFANG)
Layer of winds used in upwind
averaging CILEVZI)
(oust be between 1 and NZ)
OTHER MIXING HEIGHT VARIABLES
MiniMum potential temperature lapse
rate in the stable layer above the
current convective Mixing ht.
(DPTMIN)
Depth of layer above current conv.
mixing height through which lapse
rate is computed (OZZI)
Minimum overland Mixing height
CZIMIN)
MaxiMun overland Mixing height
(ZIMAX)
Mini tun overwater Mixing height
(ZIMINU) -- (Not used if observed
overwater Mixing hts. are used)
Maximum overwater Mixing height
C2IMAXW) -- (Not used if observed
overwater Mixing hts. are used)
Default: 1.41 I CONST! « 1.41 I
Default: 0.15 I CONSTE * 0.15 !
Default: 2400. I CONSTN « 2400.1
Default: 0.16 I CONSTW > 0.16 !
Default: 1.E-4 I FCORIOL * 1.E-4!
units: (1/s)
Default: 1
! IAVEZI * 1 I
Default: 1 I NNMDAV « 1 1
Units: Grid cells
Default: 30.
Units: deg.
No default
I HAFANG * 50. I
I ILEVZI - 4 I
Default: 0.001 I DPTMIN > 0.001 I
Units: deg. K/M
Default: 200. I DZZI * 200. !
Units: Meters
Default: 20. I ZIMIN - 20. I
Units: Meters
Default: 2500. I ZIMAX « 3000. I
Units: Meters
Default: 50. ! ZININU « 100. !
Units: Meters
Default: 2500. I ZINAXU - 2500.1
Units: Meters
I:\atoetwp\feM5\iect421.wph
4-56
-------
Table 4-24
Sample CALMET Control Ffle (CALMETJNP)
Input Group 6 (Continued)
TEMPERATURE PARAMETERS
Interpolation type
(1 « 1/R ; 2 » 1/R*«2>
Conduct spatial averaging of teap-
eratures (IAVET) <0«no, 1«yes>
(will uae Mixing ht NNNDAV,HAFANG
ao B»ke sure they are correct)
Default taaperature gradient
below the nixing height over
water (K/n) (TGOEFB)
Default taaperature gradient
above the Mixing height over
water (K/«) (TGDEFA)
Default:!
Default: 1
1RAD « 1 I
I IAVET " 1 I
Default: -.0098 I TGDEFI « -.0098 I
Default: -.0045 I T6DEFA « -.0035 !
Beginning (JUAT1) and ending (JWAT2)
land use categories for temperature
interpolation over water -• Make
bigger than largest land use to disable
I JUAT1 » 999 !
I JUAT2 - 999 !
PRECIPITATION INTERPOLATION PARAMETERS
Method of interpolation (NFLAGP)
(1=1/R,2«1/R**2,3-EXP/R**2>
Radius of Influence (SIGMAP)
(0.0 use half dist. btwn nearest
stns w I w/out precip when
NFLAGP = 3)
Minimum Precip. Rate Cutoff
(values < CUTP * 0.00 nm/hr)
Default « 2 I MFLAGP « 2 I
Default * 100.0 I SIGMAP * 100.0 I
Units: kM
Default * 0.01
Units: aat/hr
I CUTP * 0.01 I
(END!
I:\aJmctwp\fcW5\McM2Miph
4-57
-------
Table 4-24
Sample CALMET Control Ffle (CALMETJNP)
Input Group 7 and Input Group 8
IMPOT SROUP: 7 •- Surface a*teorologieal station parameter*
SURFACE STATION VARIABLES
(One record per station ~
•MSSTA" records in all)
SS1
SS2
SS3
SS4
SS5
SS6
1
«'NIDL'
«'SANT'
•'SANG'
»'ELPA'
•'LAWS'
•'LAKE'
2
ID >
23023
12921
23034
23044
72261
72252
( coord.
(ta)
764.719
1133.77
928.157
367.468
909.447
1046.88
T coord.
(k»)
3536.282
3284.76
3478.82
3518.93
3255.83
3057.57
Lat
(deg.)
31.93
29.53
31.37
31.80
29.37
27.53
Lon 1
(dag.) i
102.20
98.47
100.50
106.40
100.78
99.47
rise
tone
6.
6.
6.
7.
6.
6.
Ana*.
Nt (•)
6.7
7.0
6.1
9.8
4.0
6.1
Four character string for station niae
(MUST START IN COLUMN 9}
Five digit integer for station ID
IEKO!
INPUT GROUP: 8 -- Upper air Meteorological ittation parameters
UPPER AIR STATION VARIABLES
(One record per station — "NUSTA" records in all)
! US1
! US2
! US3
1
Name
«'DELR'
«'ELPA'
«'NIDL'
2
ID >
22010
23044
23023
C coord.
(km)
896.487
367.468
764.719
Y coord. I
(km)
3255.369
3518.930
3536.282
.at i tube
(deg.)
29.37
31.80
31.93
Longitude
(deg.)
100.92
106.40
102.20
Tiae
zone
6.
7.
6.
1
1
1
Four character string for station name
(MUST START IN COLUMN 9)
Five digit integer for station ID
I END I
4-58
-------
Table 4-24
Sample CALMET Control Ffle (CALMETJNP)
Input Group 9
INPUT GROUP: 9 — Precipitation station parameters
PRECIPITATION STATION VARIABLES
(One record per station -- "NPSTA" records in all)
(NOT INCLUDED IF NPSTA * 0)
1
Station X coord. Y coord.
Code (tan) (tart
PS1* 'DELR'
PS2* 'SANG'
PS3= 'SANT'
PSA* 'ELPA'
PS5= 'MIDL'
PS6= 'ALPI '
PS7= 'CART'
PS8= 'EAGL'
PS9= 'ELDO'
PS 10= 'LANG'
PS11« 'MARF'
PS12- 'OZON'
PS13= 'SAND'
PSH= 'SHEF'
412360,
*17943,
417W5.
412797.
415890,
410174,
411492,
412679,
412811,
415048,
415596,
416736,
418023,
418252,
896.5
928.2
1133.8
367.5
764.7
671.1
962.0
984.4
963.8
874.9
637.6
894.3
791.7
846.3
32S5.4
3478.8
3284.8
3518.9
3536.3
3360.0
3304.3
3182.9
3424.8
3301.4
3352.3
3400.1
3345.9
3400.5
Four character string for station
(MUST START IN COLUMN 9)
Six digit station code composed of state
code (first 2 digits) and station ID (last
4 digits)
!END!
L-\abBetwp\fcb9S\*ecU21.«pb
4-59
-------
Table 4-25
CALMET Control Ffle Inputs
Run Title
Variable Type
TTTLE(3) char»80 array
Description
Run title (first three lines of CALMET control file). Read
with FORTRAN A80 format
Efifaull
Value
£\alnen»p\fcMS\KCi421.«ph
4-60
-------
Table 4-25
CALMET Control File Inputs
Input Group 1 - General Run Control Parameters
Variable
IBYR
ffiMO
IBDY
ffiHR
EBTZ
IRLG
IRTYPE
Type
integer
integer
integer
integer
integer
integer
integer
LCALGRD
logical
Description
Starting year of the run (two digits)
Starting month of the run
Starting day of the run
Starting hour (00-23) of the run
Base time zone (05-EST, 06-CST, 07=MST,
08=PST)
Length of the run (hours)
Run type
0> compute wind fields only
1« compute wind fields and
micrometeorological variables
(IRTYPE must be 1 to run CALPUFF or
CALGRID)
Store extra data fields required by special
modules in CALPUFF and in CALGRID
(enter T or F)
T=3-D fields of vertical velocity and
temperature stored in output file
F=these data fields are not stored in the
output file
(LCALGRD must be T to run -
CALGRID or to use the subgrid scale
complex terrain option in CALPUFF)
Value
I:\calmetwp\fcb95\KcM21.wph
4-61
-------
Table 4-25
CALMET Control File Inputs
Input Group 2 - Grid Control Parameters
Variable
NX
NY
NZ
DGRTOKM
XORIGKM
YORIGKM
IUTMZN
ZFACE
LLCONF
Type
integer
integer
integer
real
real
real
integer
real array
logical
XLAT1
XLAT2
RLONO
RLATO
real
real
real
Number of grid cells in the X direction
Number of grid cells in the Y direction
Number of vertical layers
Horizontal grid spacing (km)
Reference X coordinate* (km) of the southwest
corner of grid cell (1,1)
Reference Y coordinate* (km) of the southwest
corner of grid cell (1,1)
UTM zone of the reference coordinates
(Used only if LLCONF - F)
Cell face heights (m). Note: Cell center height
of layer V is (ZFACE(i+l) + ZFACE(i))/2.
NZ+1 values must be entered.
Control variable for the use of a Lambert
conformal projection to rotate winds from true
north to map north (enter T or F)
T * yes, rotate winds
F = no, do not rotate winds
Latitudes (degrees) of the two standard parallels
for Lambert Conformal Projection
(UsedifLLCONF=T)
+ » Northern Hemisphere
. = Southern Hemisphere
Reference longitude used in Lambert conformal
projection rotation of input winds. (Use only if
LLCONF=T.) (West = +)
Origin latitude used in Lambert conformal
projection rotation of input winds (Use only if
IPROG > 2)
Default
Value
30.; 60.
9trw
* UTM coordinate if LLCONF=F, Lambert conformal coordinate if LLCONF=T.
I:\cateetwp\feMS\wet421.«pb
4-62
-------
Table 4-25
CALMET Control File Inputs
Input Group 3 - Output Options
Variable
LSAVE
IFORMO
logical
integer
LPRINT
IPRINF
IUVOUT
logical
integer
integer array
IWOUT
integer array
ITOUT
integer array
Description
Disk output control variable. If LSAVE=T, the T
gridded wind fields are stored in an output disk
file (CALMETJDAT).
Unformatted output file type variable. If 1
IFORMO-1, a file suitable for input to
CALPUFF or CALGRID is generated. If
IFORMO-2, a file suitable for input to
MESOPUFF D is generated. (Used only if
LSAVE-T.)
Printer output control variable. If LPRINT=T, F
the gridded wind fields are printed every
"IPRINF hours to the output list file
(CALMETIST).
Printing interval for the output wind fields. 1
Winds are printed every "IPRINF" hours. (Used
ontyifLPRINT=T.)
Control variable determining which layers of U NZ'O
and V horizontal wind components are printed.
NZ values must be entered, corresponding to
layers 1-NZ. (0=do not print layer, 1=print
layer.) Used only if LPRINT=T.)
Control variable determining which layers of W NZ'O
vertical wind components are printed. NZ values
must be entered, corresponding to cell face
heights 2 to NZ+1. Note that W at the ground
(cell face height 1) is zero. (0=do not print layer,
1=print layer.) (Used only if LPRINT=T and
LCALGRD=T.)
Control variable determining which layers of . NZ'O
temperature fields are printed. NZ values must
be entered, corresponding to cell face heights 2 to
NZ+1. (0=do not print layer, Imprint layer.)
(Used only if LPRINT=T and LCALGRD=T.)
(Input Group 3 Continued)
I:\atanetwp\fcb95\iecM2Lwph
4-63
-------
Table 4-25
CALMET Control File Inputs
Input Group 3 - Output Options
Variable
STABIIJTY
USTAR
MONIN
MKHT
WSTAR
PRECIP
Type
integer
integer
integer
• integer
integer
SENSHEAT integer
CONVZI
integer
Ppscription
Control wiable determining if gridded fields of
PGT stability classes are printed. (0» do not print,
1-prinL) (Used only if U»RINT-T.)
Control variable determining if gridded fields of
surface friction velocities are printed. (0-donot
print, 1-print) (Used only if LPRINT-T.)
Control variable determining if gridded fields of
Monin-Obukhov lengths are printed. (0=do not
print, Imprint) (Used only if LPRINT=T.)
Control variable determining if gridded fields of
mixing heights are printed. (0=do not print,
l«print.) (Used only if LPRINT=T.)
Control variable determining if gridded fields of
comvective velocity scales are printed. (0=do not
print, 1-prinL) (Used only if LPRINT=T.)
Control variable determining if gridded fields of
hourly precipitation rates are printed. (0=do not
print, 1=print) (Used only if LPRINT=T.)
Control variable determining if gridded fields of
sensible heat fluxes are printed. (0=do not print,
Imprint.) (Used only if LPRINT=T.) -
Control variable determining if gridded fields of
convective mixing heights are printed. (0=do not
print, 1=print.) (Used only if LPRINT - T.)
pefaiiilt
Value
(Input Group 3 Continued)
I:\c»teetiip\fcWS\»ttt«21.wph
4-64
-------
Table 4-25
CALMET Control File Inputs
Input Group 3 - Output Options
Variable
LDB'
logical
NN1*
NN2*
IOUTD'
integer
integer
integer
NZPRN2' integer
IPRO'
integer
pesaiption
Control variable f« printing of input •
meteorological data and internal control
parameters. Useful for program testing and
debugging. If LDB-T, data wiD be printed for
time steps "NN1" through "NN2" to the output Ust
ffle (CALMETXST).
First time step for which data controlled by LDB
switch are printed. (Used only if LDB=T.) Note:
IF NN1-NN2-0 and LDB=T, only time-
independent data win be printed.
Last time step for which data controlled by LDB
switch are printed. (Used only if LDB«=T.)
Control variable for writing the computed wind
fields to the wind field test disk files. (0=do not
write, 1» write.)
Number of levels, starting at the surface, printed to
the wind field testing and debug files (Units 41-45).
Control variable for printing to the wind field test
files the interpolated wind components. (0=do not
print, 1=print.)
Value
' Testing and debugging print options.
(Input Group 3 Continued)
I:\tahnetwp\fcb95\iect421.wph
4-65
-------
Table 4-25
CALMET Control File Inputs
Input Group 3 - Output Options
Variable
IPR1'
IPR2*
IPR3*
IPR4*
IPR5*
IPR6'
IPRT
IPR8*
Type
integer *
integer
integer
integer
integer
integer
integer
integer
Description
Control variable for printing to the wind field test
files the terrain adjusted surface wind components.
(0«clo not print, 1-prinL) Used only with objective
analysis.
Control variable for printing to the wind field test
files the smoothed wind components and initial
divergence fields. (0=do not print, 1-print).
Control variable for printing to the wind field test
files the final wind speed and direction fields.
(0-do not print, 1-print.)
Control variable for printing to the wind field test
files the final divergence fields. (0=do not print,
1=print.)
Control variable for printing to the wind field test
files the wind fields after kinematic effects are
added. (0«do not print, Imprint.)
Control variable for printing to the wind field test
files the wind fields after the Froude number
adjustment is made. (0=do not print, l=print.)
Control variable for printing to the wind field test
files the wind fields after the slope flows are added.
(0=do not print, Imprint.)
Control variable for printing to the wind field test
files the final wind component fields. (0=do not
print, 1=print.)
Default
* Testing and debugging print options.
I:\atortwp\feW5\Ket421-wph
4-66
-------
Table 4-25
CALMET Control File Inputs
Input Group 4 - Meteorological Data Options
Variable
NSSTA
NUSTA
NPSTA
NOWSTA
IFORMS
Type
integer
integer
integer
integer
integer
IFORMP
integer
Description
Number of surface meteorological stations
Number of upper air meteorological stations
Number of precipitation stations
Number of overwatcr meteorological stations
Control variable determining the format of the
input surface meteorological data
(Isunformatted, Le., SMERGE output)
(2=formatted, Le., free-formatted user input or
formatted SMERGE output)
Control variable determining the format of the
input precipitation data
(1=unformatted, Le., PMERGE output)
(2=formatted, Le., free-formatted user input or
formatted PMERGE output)
Default
Value
I:\olmetwp\feb95\KCt421.wph
4-67
-------
Table 4-25
CALMET Control File Inputs
Input Group 5 - Wind Field Options and Parameters
Variable Type Description
IWFCOD integer
IFRADJ
DONE
IOBR
IEXTRP
integer
integer
integer
integer
RMIN2
real
IPROG integer
Default
Value
Control variable determining which wind field module
is used, ((^objective analysis only, l*diagnostic wind
module.)
Control variable for computing Froude number
adjustment effects. (0«do not compute, 1-compute.)
Control variable for computing kinematic effects.
(0-do not compute, 1-compute.)
Control variable for using the O'Brien vertical velocity
adjustment procedure. (0*=do not use, l=use.)
Control variable for vertical extrapolation. If
ABS(ffiXTRP)=l, no vertical extrapolation from the
surface wind data takes place. If ABS(DEXTRP)=2,
extrapolation is done using a power law profile. If
ABS(IEXTRP) *•• 3, extrapolation is done using the
values provided in the FEXTRP array for each layer.
If ABS(IEXTRP) * 4 similarity theory is used. If
IEXTRP < 0, Layer 1 data at the upper air stations
are ignored. Layer 1 at an upper air station is also
ignored if the four-character station name of the upper
air station matches that of a surface station.
Minimum distance in km between surface station and
nearest upper air station for which extrapolation of
surface winds at surface station will be performed,
when ABS(IEXTRP) > 1. Should be set to -1.0 when
all surface data are to be extrapolated.
Control variable determining if gridded prognostic
model wind fields are used as input.
0 = No, (IWFCOD = 0 or 1)
1 = Yes, use CSUMM prog, winds as Step 1 field,
(IWFCOD = 0)
2 = Yes, use CSUMM prog, winds as initial guess
field (IWFCOD = 1)
3 = Yes, use MM4 prog, winds as Step 1 field
(IWFCOD = 0)
4 = Yes, use MM4 prog, winds as initial guess field
(IWFCOD = 1)
5 = Yes, use MM4 prog, winds as observations
(TWFCOD = 1)
4.0
(Input Group 5 Continued)
I:\abDctwp\feb95\weU21.vpb
4-68
-------
Table 4-25
CALMET Control File Inputs
Input Group 5 - Wind Field Options and Parameters
Variable
Type
DGRDPKM real
LVARY logical
RMAX1
RMAX2
RMAX3
real
real
real
RMIN
RMIN2
real
real
TERRAD real
Description
Horizontal spacing of prognostic grid (km)
Control variable for use of varying radius of influence. If
no stations with valid data are found within the specified
radius of influence, then the closest station with valid data
will be used. (T=use, F* do not use.)
Maximum radius of influence over land in the surface
layer (ion). This parameter should reflect the limiting
influence of terrain features on the interpolation at this
level.
Maximum radius of influence over land in layers aloft
(km). RMAX2 is generally larger than RMAX1 because
the effects of terrain decrease with height.
Maximum radius of influence overwater (km). RMAX3
is used for all layers overwater. It must be large enough
to ensure that att grid points over water are large enough
to be within the radius of influence of at least one
observation.
Minimum radius of influence used in the wind field
interpolation (km). This parameter should be assigned a
small value (e.g^ <1 km) to avoid possible divide by zero
errors in the inverse-distance-squared weighting scheme.
Distance (km) from an upper air station within which
vertical extrapolation of surface station data will be
excluded. Used only if |IEXTRM| > 1.
Radius of influence of terrain features (km)
Default
Value
4.0
(Input Group 5 Continued)
I:\catoetwp\fcWS\teet421.wph
4-69
-------
Table 4-25
CALMET Control Ffle Inputs
Input Group 5 - Wind Field Options and Parameters
Variable
Rl
Type
real
R2
RPROG
DIVLIM
NITER
NSMTH
NINTR2
real
real
real
integer
integer array
integer array
CRTTFN
ALPHA
real
real
Description
Weighting parameter for the diagnostic wind field
in the surface layer (km). This parameter controls
the relative weighting of the first-guess wind field
produced by the Hiannsrir wind field model and
Default Value
the observations. Rl is the distance from an
observational station at which the observation and
the first-guess field are equally weighted.
weighting parameter for the diagnostic wind field
in the layers aloft (km). R2 is applied in the upper
layers in the same manner as Rl is used in the
surface layer.
Weighting parameter (km) for the prognostic wind
field data
Convergence criterion for the divergence
minimization procedure
Maximum number of iterations for the divergence
minimization procedure
Number of smoothing passes in each layer
NZ values must be entered.
Maximum number of stations used in the
interpolation of data to a grid point for each layer
1-NZ. This allows only the "NINTR2" closest
stations to be included in the interpolation. The
effect of increasing NINTR2 is similar to
smoothing. NZ values must be entered.
Critical Froude number used in the evaluation of
terrain blocking effects
Empirical parameter controlling the influence of
kinematic effects
5.0E-6
50
2,(MXNZ-1)*4
1.0
0.1
(Input Group 5 Continued)
I:\oJaetwp\fcfa95\Kcl42Lwph
4-70
-------
Table 4-25
CALMET Control File Inputs
Input Group 5 • Wind Field Options and Parameters
Variable Type Description
FEXTR2 integer array Extrapolation values for layers 2 through NZ
(FEXTR2(1) must be entered but is not used). Used
only if ABS(ffiXTRP) * 3.
NEAR integer Number of wind field interpolation barriers
XBBAR real array X coordinate Ocm) of the beginning of each barrier.
"NBAR" values must be entered. (Used only if
NEAR > 0.)
YBBAR real array Y coordinate (km) of the beginning of each barrier.
"NBAR" values must be entered. (Used only if
NBAR > 0.)
XEBAR real array X coordinate (km) of the end of each barrier.
"NBAR" values must be entered. (Used only if
NBAR > 0.)
YEBAR real array Y coordinate (km) of the end of each barrier.
"NBAR" values must be entered. (Used only if
NBAR > 0.)
IDIOPT1 integer Control variable for surface temperature input to
diagnostic wind field module. (0=compute internally
from surface data, l=read preprocessed values from
the file DIAGDAT.)
ISURFT integer Surface station number (between 1 and NSSTA) used
for the surface temperature for the diagnostic wind
field module
IDIOPT2 integer Control variable for domain-averaged temperature
lapse rate. (0=compute internally from upper air
data, l=read preprocessed values from the file
D1AG.DAT.)
IUPT integer Upper air station number (between 1 and NUSTA)
used to compute the domain-scale temperature lapse
rate for the diagnostic wind field module
ZUPT real Depth (m) through which the domain-scale
temperature lapse rate is computed
Default
Value
NZ*0.0
200.
(Input Group 5 Continued)
I:\cabBetwp\fcM5\weU2Lwph
4-71
-------
Variable
IDIOPT3
IUPWND
Type
integer
integer
Table 4-25
CALMET Control Ffle Inputs
Input Group 5 - Wind Field Options and Parameters
Description
ZUPWND
IDIOPT4
DDIOPT5
LLBREZE
NBOX
XG1
XG2
YG1
real array
integer
integer
logical
integer
real array
real array
real array
Default
Value
Control variable for domain-averaged wind 0
components. (0«compute internally from upper air,
1-read preprocessed values from the file DIAGJDAT.)
Upper air station number used to compute the
domain-scale wind components for the diagnostic wind
field module. Either specify one station from 1 to
nusta or specify -1 indicating the use of 1/r*
interpolation to generate a spatially-variable initial
guess field.
Bottom and top of layer through which the domain- 1.0,
scale winds are computed. Units: Meters. (Used only 2000.
if IDIOPTS^O.) Note: Two values must be entered
! ZUPWND =LO, 2000. !).
Control variable for surface wind components.
(0= compute internally from surface data, l=read
preprocessed values from the file DIAG.DAT.)
Control variable for upper air wind components.
(0= compute internally from upper air data, l=read
preprocessed values from the file DIAG J>AT.)
Control variable for lake breeze region option.
LLBREZE=T, region interpolation is performed.
LLBREZE =F, no region interpolation is performed.
Number of boxes defining region (used only if
LLBREZE =T)
1st x-grid line to define box. (Used only if
LLBREZE=T.) (One for each box.)
2nd x-grid line to define box. (Used only if
LLBREZE=T.) (One for each box.)
1st y-grid line to define box. (Used only if
LLBREZE=T.) (One for each box.)
(Input Group 5 Continued)
fc\ota>rtwp\fcWS\««t421.wpb
4-72
-------
Table 4-25
CALMET Control File Inputs
Input Group 5 - Wind Field Options and Parameters
Variable
YG2
XBCST
YBCST
XECST
YECST
MLB
METBXtD
Type
real array
real array
real array
real array
real array
integer
integer
Description
2nd y-grid line to define box. (Used only if
LLBREZE=T.) (One for each box.)
Beginning z coordinate (km) of user defined
coastline (straight line). (Used only if
LLBREZE=T.) (One for each box.)
Beigmning y coordinate (km) of user defined
coastline (straight line). (Used only if
LLBREZE=T.) (One for each box.)
Beginning x coordinate (km) of user defined
coastline (straight line). (Used only if
LLBREZE=T.) (One for each box.)
Beginning y coordinate (km) of user defined
coastline (straight line). (Used only if
LLBREZE=T.) (One for each box.)
Number of meteorological stations (surface and
upper air stations) in a box. (Used only if
LLBREZE=T.) (One for each box.)
Station ids of the meteorological stations within each
box (surface stations first, then upper air stations).
(Used only if LLBREZE=T.) (One set per box.)
Value
I:\calmetwp\feWS\iecU21.wph
4-73
-------
Table 4-25
CALMET Control File Inputs
Input Group 6 - Mixing Height, Temperature, and Precipitation Parameters
Variable Type
CONSTB real
CONSTE real
CONSTN real
CONSTW real
FCORIOL real
DFTNflN real
DZZI
.real
ZIMAX real
ZIMIN real
ZIMAXW real
ZIMINW real
IAVEZI integer
MNMDAV integer
HAFANG real
ILEVZI integer
Pescriptiom
Neutral mechanical miring bf-*£fo
(variable B in Eqn. 2-49)
Convective miring height constant (variable E in
Eqn. 2-47)
Stable mixing height constant (variable B2 in
Eqn. 2-52)
Ovcrwater mixing height constant
Absolute value of coriolis parameter (1/s)
Minimum potential temperature lapse rate in the
stable layer above the current convecthre mixing
height (deg. K/m)
Depth of layer (m) above current convective mixing
height in which lapse rate is computed.
Maximum overland mixing height (m)
Minimum overland mixing height (m)
Maximum overwater mixing height (m) (Not used if
observed overwater mixing heights are used)
Minimum overwater mixing height (m) (Not used if
observed overwater mixing heights are used).
Conduct spatial averaging of mixing heights (0=no,
l=yes)
Maximum search radius in the spatial averaging
process (in grid cells)
Half-angle of upwind-looking cone for spatial
averaging (deg.)
Layer of winds used in upwind averaging of mixing
heights. (Must be between 1 and NZ.)
Default
Value
1.41
0.15
2400.
0.16
0.001
200.
2500.
20.
2500.
50.
1
1
30.
(Input Group 6 Continued)
I:\cabnetwp\(eWS\KCt421.wpb
4-74
-------
Table 4-25
CALMET Control File Inputs
Input Group 6 - Mixing Height, Temperature, and Precipitation Parameters
Variable
IRAD
IAVET
TGDEFB
Type
integer
integer
real
TGDEFA real
JWAT1,
JWAT2
NFLAGP
integers
integer
SIGMAP
CUTP
real
real
Description
Type of temperature interpolation
(1 = I/radius)
(2 « I/radius*)
Conduct spatial averaging of temperatures (0 « no; 1 =
yes) (WiOl use MNMDAV and HAFANG)
Default temperature lapse rate (K/m) below mixing
height over water
Default temperature lapse rate (K/m) above mixing
height over water
Beginning land use category for temperature interpolation
overwater. Range of land use categories associated with
major water bodies. Used for overwater temperature
interpolation
Method of precipitation interpolation
(1 = I/radius interpolation)
(2 = I/radius2 interpolation)
(3 = l/radius2 * exponential function)
Method 3 is based on a Thiessen method for non-
continuous fields where the exponential function =
exponent [-radius'/SIGMAP2] and SIGMAP is defined
below
Radius of influence for precipitation (km); except value of
0.0 yields half of the minimum distance between any non-
zero precipitation station and any zero precipitation
station if NFLAGP = 3
Minimum precipitation rate (mm/hr);
values < CUTP set to 0.0 mm/hr
Default
Value
-0.0098
-0.0045
999,
999
100.0
0.01
I:\aOmetwp\teb95\iect42Lwpb
4-75
-------
Table 4-25
CALMET Control File Inputs
Input Group 7 • Surface Meteorological Station Parameters
One line of data is entered for each surface station. If separate land/water interpolation is desired,
this ETOUP must include flnjy. land stations. Overwater data wffl be in SEAnDAT files. Each line contains
tiXSTarameters rad in free format: CSNAM, IDSSTA, XSSTA, YSSTA, XSLA1\ XSLON XSTZ,
ZANEM. The data for each station are preceded by! SSn-_ where n is the station number (e*.! SS1=...
for station #L! SS2=- for station #2, etc.). The station variables (SSI, SS2, etc.) must start in Column 3.
The data must start in Column 9 or greater of each record. See the sample control file in Table 4-24 for an
example.
(Repeated for each of "NSSTA" Stations)
Variable
CSNAM
IDSSTA
XSSTA
YSSTA
XSLAT
XSLON
XSTZ
ZANEM
char*4
integer
real
real
real
real
real
real
Description
Four-character station name. Must be enclosed
within single quotation marks (e.g., 'STAT,
'STA2', etc.). The onening quotation mart roust
be in Column 9 or greater nf each record.
Station identification number
X coordinate* (km) of surface station
Y coordinate* (km) of surface station
Station latitude (degrees). Positive for Northern
Hemisphere. Negative for Southern Hemisphere.
Station longitude (degrees). Positive for Western
Hemisphere. Negative for Eastern Hemisphere.
Time zone of the station (e.g., 05=EST, 06=CST,
07=MST, 08=PST.)
Anemometer height (m)
* Coordinates are UTM coordinates if LLCONF=F, or Lambert conformal coordinates if
LLCONF^T (see Input Group 2).
I:\ohmrtwp\fcb9i\iecl42Lwpb
4-76
-------
Table 4-25
CALMET Control File Inputs
Input Group 8 - Upper Air Station Parameters
One line of data is entered for each upper air station. Each line contains the following parameters
read in free format- CUNAM, IDUSTA, XUSTA, YUSTA, XULAT, XULON, XUTZ. The data for each
station are preceded by ! USn=.^ where h is the upper air station number (e^,! US1=... for station #1,!
US2=... for station #2, etc.). The station variables (US1, US2, etc.) must start in Column 3. The data must
start in Column 9 or greater of each record. See the sample control file in Table 4-24 for an example.
(Repeated for each of "NUSTA" Stations)
Variable
CUNAM
XULON
XUTZ
char*4
IDUSTA
XUSTA
YUSTA
XULAT
integer
real
real
real
real
real
Description
Four-character upper ah- station name. Must be enclosed
within single quotation marks (e.g., 'STA1', 'STA2', etc.).
The opening quotation mark must be in Column 9 or
greater of each record.
Station identification number
X coordinate* (km) of upper air station
Y coordinate* (km) of upper air station
Station latitude (degrees). Positive for Northern
Hemisphere. Negative for Southern Hemisphere.
Station longitude (degrees). Positive for Western
Hemisphere. Negative for Eastern Hemisphere.
Time zone of the station (e.g., 05=EST, 06=CST,
07=MST, 08=PST.)
' Coordinates are UTM coordinates if LLCONF=F, or Lambert conformal coordinates if
LLCONF=T (see Input Group 2).
I:\c*Unetwp\feWS\«ect421.wph
4-77
-------
Table 4-25
CALMET Control File Inputs
Input Group 9 - Precqntation Station Parameters
One line of data is entered for each precipitation station. Each line contains the following
parameters read in free format: CPNAM, IDPSTA, XPSTA, and YPSTA. The data for each station are
preceded by ! PSn=~, where n is the station number (e*,! PS1«~ for station #1,! PS2=-. for staUon *z,
etc.). The station variables (PS1,PS2, etc.) must start in Column 3. The data must start m Column 9 or
greater of each record. See the sample control ffle in Table 4-24 for an example.
(Repeated for each of "NPSTA" Stations)
Variable
CPNAM
IDPSTA
XPSTA
YPSTA
Type
char*4
integer
real
real
pescriotion
Four-character station name. Must be enclosed within
angle quotation marks (e.g., TS1', TS2', etc.). Jh£
Opening Quotation mark must be in Column 9 or greater
of each record.
Station identification number
X coordinate* (km) of surface station
Y coordinate* (km) of surface station
* Coordinates are UTM coordinates if LLCONF^F, or Lambert conformal coordinates if
LLCONF=T (see Input Group 2).
Ii\oiiDCtwp\feto9S\>cclX21 .wpfa
4-78
-------
Geophysical Data File (GEOJ5AT)
The GEO.DAT data file contains the geophysical data inputs required by the CALMET
model. These inputs include land use type, elevation, surface parameters (surface roughness,
length, albedo, Bowen ratio, soft heat flux parameter, and vegetation leaf area index) and
anthropogenic heat flux. The land use and elevation data are entered as gridded fields. The
surface parameters and anthropogenic heat flux can be entered either as gridded fields or
computed from the land use data at each grid point Default values relating each of these
parameters to land use are provided in the model
A sample GEODAT file is shown in Table 4-26. The first line of the file contains a
character string of up to 80 characters in length which can be used to identify the data set. The
second line contains grid information such as the number of grid cells, grid spacing, reference
coordinates and reference UTM zone. These variables are checked by CALMET for
consistency and compatibility with the CALMET control file inputs. Eight sets of flags and data
records follow for the land use, elevation, surface parameters, and anthropogenic heat flux data.
The default CALMET land use scheme is based on the U.S. Geological Survey (USGS)
land use classification system. The USGS primary land use categories are shown in Table 4-27.
Two Level I USGS categories (water and wetlands) are subdivided into subcategories. Along
with the default CALMET land use, the default values of the other geophysical parameters for
each land use type are also shown. The default land use classification scheme contains 14 land
use types. Note that a negative value of land use by CALMET is used as a flag to indicate
irrigated land. Irrigated land may be assigned a different Bowen ratio than unirrigated land,
and the CALPUFF dry deposition module uses the irrigated land use flag in computing the
effect of moisture stress on stomatal resistance. (If the land is irrigated, it is assumed that the
vegetation is not moisture stressed.)
CALMET allows a more detailed breakdown of land use or a totally different
classification scheme to be used by providing the option for user-defined land use categories.
An extended 52-class land use scheme based on the USGS Level I and Level n land use
categories is shown in Table 4-27(b). The user can specify up to "MXLU" land use categories
along with new values of the other geophysical parameters for each land use type. The
parameter MXLU is specified in the CALMET parameter file (PARAMS.MET). Currently, up
to 52 user-specified land use categories are allowed.
CALMET contains an option, described in detail in Section 232.1, in which
temperatures over water bodies such as the ocean or large lakes are calculated by using data
L\orimetwp\fcb9S\KCi421.wph
4-79
-------
from only those observation stations (SEA.DAT files, usually buoys) located in it, while only
land stations (SURF.DAT file) will be used to calculate temperatures over the rest of the grid.
The variables JWAT1 and JWAT2 in CALMETJNP Input Group #6 specify the range of land
use categories defining the water body for which this land/water temperature scheme will be
implemented. A range is specified to allow inclusion of multiple categories, for example "bay"
and "ocean," in the definition of the water body. To disable the overwater option, JWAT1 and
JWAT2 are set to values greater than the highest land use category listed in the GEO.DAT file.
The default values of JWAT1 and JWAT2 are both 999, indicating the overwater interpolation
scheme is not applied in default mode.
Because the temperature of any. grid cell whose land use is included in the range defined
by JWAT1 and JWAT2 will be determined by a weighting of ajl overwater data (SEA#.DAT
files), it is recommended that smaller or distant water bodies be assigned land use categories
that are distinct from those used in JWAT1 and JWAT2, to avoid use of inappropriate data in
determining their surface temperatures. Thus a small reservoir will have its temperature
determined by surrounding land stations, rather than by ocean buoy data. After viewing the
initial temperature field that results from the CALMET run, the user may wish to "fine tune"
the fields using the extended, 52-dass land use system in Table 4-27(b) and by altering the land
use assignments of particular grid cells or changing the land uses included in the JWAT1-
JWAT2 range. For instance, by limiting the range to "ocean" only and then changing which
near-shore cells are considered to be "bay" and which are "ocean" the user can control the
appearance of the temperature field in the vicinity of the coastline.
The values of IWAT1 and IWAT2 are used to determine whether the overland or
overwater method will be used to produce a mixing height value for a particular grid cell. The
default values of IWAT1 and IWAT2 are both 55, restricting the overwater mixing height
scheme to "large" bodies of water. The user may change the values of IWAT1 and IWAT2 on a
case-by-case basis to include or exclude other water bodies from being considered as overwater.
For instance, the user's domain may have a bay where the mixing height should be determined
using the overwater method but a series of small lakes where the overland method would be
more appropriate, so the "lake" category would be excluded from the IWAT range.
Alternatively, if one has a large lake that should be considered to be "overwater" and a smaller
lake that should be considered to be "overland", then the land use category for the smaller lake
could be changed to reflect some other category not in the IWAT range, such as forest or
wetland. It is recommended that if the user creates his or her own GEO.DAT fields for
roughness length, albedo, etc. they be weighted by the actual percentage of each land use in a
given cell. That method is more accurate and, if one subsequently changes the dominant land
I:\olmetwp\fcb95\iea421.wph
4-80
-------
use category, the variables used to calculate mixing height will still reflect the fact that there is
water present in the grid cell
The surface elevation data field is entered in "user units" along with a scaling factor to
convert user units to meters. The sample GEO.DAT file shown in Table 4-26 contains
elevations in meters.
The gridded fields are entered with the 'NXM' values on a line. NXM is the number of
grid cells in the X direction. The data from left to right correspond to X= 1 through NXM. The
top line of a gridded field correspond to Y^NYM, the next line to Y=NYM-1, etc. All of the
GEO.DAT inputs are read in FORTRAN free format A detailed description of the GEO.DAT
variables is contained in Table 4-28.
I:\calmawp\fcb9S\iecM21.wpfa
4-81
-------
r
Table 4-26
Sample GEO.DAT Geophysical Data File
i DAT -- 54 k» arid -- 10x10 subset fro* It corntr
54.0. -54.0, -621.0. 16 - MX. MY. DGRIDKN, XORIGMH.
- LAND USE DATA -- 0-default lu categories. 1-net» categories
40
40
40
40
40
40
40
40
40
40
1.0
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40 40 40
40 40 40
40 40 40
40 40 40
40 40 40
40 40 40
40 40 40
40 40 40
40 40 40
40 40 40
- TERRAIN
40 40
40 40
40 40
40 40
40 40
40 40
40 40
40 40
40 40
40 40
HEIGHTS -
40 40
40 40
40 40
40 40
40 40
40 40
40 40
40 40
40 40
40 40
HTFAC
185.078 147.205 146.924 156.446
138.010 173.812 203.405
221.813 144.507 142.191
133.693 158.348 192.281
316.083 189.884 139.814
123.002 146.333 195.571
253.774 157.182 121.245
144.876 152.340 200.471
182.808 98.6778 91.7038
165.023 190.390 225.489
114.193 77.9254 93.2705
190.386 187.382 204.256
78.3998 71.2785 95.3602
208.477 227.053 260.169
64.1938 79.1642 117.264
253.950 254.195 324.301
53.5650 84.5807 134.072
185.386 203.171 281.656
42.8075 71.3265 111.239
189.143 181.916 249.689
0
0
0
0
0
0
232.758
136.302
224.074
144.073
215.208
121.407
246.724
129.091
253.910
115.583
306.503
129.989
393.913
139.864
434.496
148.030
288.990
96.0823
271.627
139.487
222.710
123.083
247.634
122.189
263.082
137.051
318.109
138.407
314.988
141.910
448.922
148.870
421.927
158.785
277.916
162.781
312.717
122.349
278.849
ioy« !•»•* •**••*••» — t\ A* \ A
- zO -C0«default zO-lu table. 1-nen zO-lu tnble. 2-gridded zO field
- albedo --(Oxdefault albedo-lu tablef1-new olbedo-lu table,2*gridded albedo field
- iowen ratio --(0-def.ult Bowen-lu table.1»new Bo-en-lu table,2«gridded •"""«•"
- soil heat flux para* (HCG) »(0«default HCG-lu table.1-nw HCG-lu table.2«gridded fle d
- anthropoflenic heat flux (OF) --(0-default OF-lu table.1-ne« OF-lu *Bbl*'2"»^™.;;"ld
- leaf area index (XLAI) -{0-default XLAI-lu table.1«new XLAI-lu teble,2«gridded field
I:\atoetwp\fcMS\KxU2Lwph
4-82
-------
rameters
I
SS 52
ca
-RS
w
f
1
.2
•o
u
•|
bO
u
(J
«
D
•o
5
^
g
~a
1
y Land Use Classification
y System)
M >%fV
3 OJ
- CO
i5
BO «H
o >-^
1
O
e
o
T3
U
«
E
.2
f|
J
-g
||
J
§
^
1
•o
c
J3
2
00
o
p
1
Urban or Built-up
2
s
^
o
o
^
i
i
Agricultural Land •
S
i! « ~ 5
v) p p p
o «•• ^* o
o o o o
a 8 p §
o o "" o
1
I
Agricultural Land •
Rangeland
Forest Land
Water
R 5 S S
p p V| V) •- p
00000 —
5 5 5 o <= 2
| | 5 S S |
1
II 1 1
a a = £
21 III
i £ T? i i ^
1 * 1 2 | e
1 js 1 £ I a
K 8 S S S J5
2 2
Re
r^
0 0
in
s i
Tundra
Perennial Snow or
licate "irrigated" land
•-•
§
•S
S 8
-------
Table 4-27(b)
Extended CALMET Land Use Categories Based on the US. Geological Survey Land Use and
Land Cover Classification System (52-Category System)
Level I
Level D
10 Urban or Buih-up Land
20 Agricultural Land •
Unirrifated
-20 Agricultural Land •
Irrigated
30 Rangeland
40 Forest Land
50 Water
60 Wetland
70 Barren Land
80 Tundra
90 Perennial Snow or Ice
11 Residential
12 Commercial and Services
13 Industrial
14 Transportation, Communications and Utilities
15 Industrial and Commercial Complexes
16 Mixed Urban or Built-up Land
17 Other Urban or Built-up Land
21 Cropland and Pasture
22 Orchards, Groves, Vineyard*, Nurseries, and
Ornamental Horticultural Areas
23 Confined Feeding Operations
24 Other Agricultural Land
-21 Cropland and Pasture
-22 Orchards, Groves, Vineyards, Nurseries, and
Ornamental Horticultural Areas
-23 Confined Feeding Operations
-24 Other Agricultural Land
31 Herbaceous Rangeland
32 Shrub and Brush Rangeland
33 Mixed Rangeland
41 Deciduous Forest Land
42 Evergreen Forest Land
43 Mixed Forest Land
51 Streams and Canals
52 Lakes
53 Reservoirs
54 Bays and Estuaries
55 Oceans and Seas
61 Forested Wetland
62 Nonforested Wetland
71 Dry Salt Flats
72 Beaches
73 Sandy Areas Other than Beaches
74 Bare Exposed Rock
75 Strip Mines, Quarries, and Gravel Pits
76 Transitional Areas
77 Mixed Barren Land
81 Shrub and Brush Tundra
82 Herbaceous Tundra
83 Bare Ground
84 Wet Tundra
85 Mixed Tundra
91 Perennial SnowfieWs
92 Glaciers
Note: Negative values indicate irrigated land use.
t\e»toetwp\feWS\i«t421.wph
4-84
-------
Record Variable
1
2
2
2
2
TTELEGE
NXG
NYG
DGRTOG
XORG
2 YORG
2 IUTMG
3 IOPT1
4*
4*
4'
5'
NEXT
NY
lines
NLU.
IWAT1
IWAT2
ILUCAT
ILANDU
integer
integer 1
integer J
integer array
integer array
NEXT HTFAC
line
Table 4-28
GEO .DATA Ffle Format
Type Description
char*80 - Character title of file (up to 80 characters)
integer Number of grid cells in the X direction
integer Number of grid cells in the Y direction
real Horizontal grid spacing (km)
real Reference X coordinate** (km) of southwest corner of
grid cell (1,1)
real Reference Y coordinate** (km) of southwest corner of
grid cell (LI)
integer UTM zone of reference coordinates (used only if using
UTM projection)
integer Option flag for land use categories
(0=to use default land use categories)
(l=to specify new land use categories)
Number of land use categories
Range of land use categories associated with water
(Lc., land use categories IWAT1 to IWAT2, inclusive,
are assumed to represent water surfaces)
Array of "NLU" new user specified land use categories
Land use types for cell grid point (NX values per line).
The following statements are used to read the data:
do 20 J=NY,L-1
20 READ (iogeo,*)(ILANDU(nj), n=1, nx)
real Multiplicative scaling factor to convert terrain heights
from user units to meters (e^, HTFAC = 03048 for
user units of ft, 1.0 for user units of meters)
Included only if IOPT1 = 1
Coordinates are UTM coordinates if using a UTM projection, or Lambert conformal coordinates
if using Lambert conformal projection.
(GEO.DAT File Format Continued)
I:\ahnetwp\feb9S\Mct421.wpb
4-85
-------
Table 4-28
GEO .DAT FUe Format
Record
Variable.
NEXT NY ELEV
lines
NEXT line IOPT2
Type
real array
integer
NEXT"
NLU lines
NEXT-
NY lines
ZO
ILU integer
ZOLU real array
real array
Description
Terrain elevations (user units) for each grid point
(NX values for fine). The following statements are
used to read the data:
do30J-NY,Vl
30
Option flag for input of surface roughness lengths
(zO)
0= compute gridded zO values from land use
types "«ng default zO land use table
1» compute gridded zO values from land use
types using new, user-specified zO land use
table
2= input a gridded zO field
Land use type and associated surface roughness
lengths (m). Two variables per line read as:
do 120 I=UILU
120 READ(iogeo,*)ILU,ZOLU(I)
Surface roughness length (m) at each grid point (NX
values per line). The following statements are used
to read the data:
do 150 J=NY,1,-1
150 READ(iogeo,*)(ZO(nj),n=l,NX)
" Included only if IOPT2 = 1
'" Included only if IOPT2 = 2
I:\calmrtwp\fcb95\«ed421.»ph
4-86
-------
Table 4-28
GEO .DAT Ffle Format
Record Variable Type
NEXT line IOFT3 integer
NEXT*
NLU lines
NEXT"
NY lines
ILU integer
ALBLU real array
ALBEDO
real array
Description
Option flat for input of albedo
0=compute gridded albedo values from land
use types using the default albedo-land use
table
l*=compute gridded albedo values from land
use types using a new, user-specified
albedo-land use table
2=input a gridded albedo field
Land use type and associated albedo. Two variables per
fine read as:
do!20I=LNLU
120 READ(iogeo,*)ILU,ALBLU(I)
Albedo at each grid point (NX values per line). The
following statements are used to read die data:
do 150 J=NY,L-1
150 READ(iogeo,*)(ALBEDO(nj),n=LNX)
" Included only if IOPT3 = 1
"' Included only if IOPT3 = 2
l:\cabMtwp\fcMS\«cM21.wph
4-87
-------
Table 4-28
GEOJDAT Ffle Format
Record
NEXT line IOPT4
Type
integer
NEXT" f ILU integer
NLU lines 1 BOWLU real array
NEXT"' BOWEN
NY lines
real array
Description
Option flag for input of Bowen ratio
0- compute gridded Bowen ratio values from
land use types using default Bowen
ratio-land use table
I'compute gridded Bowen ratio values from
land use types using new, user-specified
Bowen ratio-land use table
2-input a gridded Bowen ratio field
Land use type and associated Bowen ratio. Two
variables per line read as:
do 120-I«1JILU
120 READ(iogeo,*)ILU,BOWLU(I)
Bowen ratio at each grid point (NX values per line).
The following statements are used to read the data:
do 150 J=NY,1,-1
150 READ(iogeo,»)(BOWEN(nj),n=l,NX)
" Included only if IOPT4 - 1
"' Included only if IOPT4 « 2
I:\ahnrtwp\fcb95\«ect421.wph
4-88
-------
Table 4-28
GEO .DAT Ffle Format
Record Variable
NEXT line IOPT5
Type
integer
NEXT'
NLU lines
NEXT"
NY lines
ILU
HCGLU
HCG
integer
real array
real array
Description
Option flag for input of soil heat flux constant
0« compute gridded soil heat flux constant
values from land use types using the
default sofl heat flux constant-land use
table
1= compute gridded soil heat flux n<*ant
values from land use types using new,
user-specified soil heat flux constant-land
use table
2= input a gridded soil heat flux constant field
Land use type and associated soil heat flux
constant. Two variables per line read as:
120
READ(iogeo,*)ILU,HCGLU(I)
Soil heat flux constant at each grid point (NX
values per line). The following statements are used
to read the data:
do 150 J=NY,1,-1
150 READ(iogeo,*)(HCG(nj),n=:UNX)
" Included only if IOPT5 = 1
*" Included only if IOPT5 = 2
I:\cahnetwp\fcb9S\KcU2Lwph
4-89
-------
Table 4-28
GEO DAT Ffle Format
Record i^riakk Type
NEXT line IOPT6 integer
NEXT"
NLU lines
NEXT" -QF
NY lines
ILU integer
QFLU real array
real array
Description
Option flag for input of anthropogenic heat
flux (W/m2)
0- compute gridded anthropogenic heat flux
values from land use types using default
anthropogenic heat flux-land use table
IK compute gridded anthropogenic heat flux
values from land use types using new,
user-specified anthropogenic heat flux-land
use table
2=input a gridded anthropogenic heat flux
field
Land use type and associated anthropogenic
heat flux (W/m2). Two variables per line read
as:
do 120 I=1^ILU
120 READ(iogeo,*)ILU,QFLU(I)
Anthropogenic heat flux (W/m2) at each grid
point (NX values per line). The following
statements are used to read the data:
do!50J=NY,l,-l
150 READ(iogeo,*)(QF(nj),n=l,NX)
" Included only if IOPT6 = 1
'" Included only if IOPT6 = 2
L\cataaetwp\feb95\KCt42Lwpb
4-90
-------
Table 4-28
GEOJDAT File Format
Record Variable
NEXT line IOPT7
las
integer
NEXT
NLU lines
• I
ines I
ILU
XLAILU
NEXT*" XLAI
NY lines
integer
real array
real array
Description
Option flag for input of leaf area index
0=compute gridded leaf area index values
from land use types using default leaf
area index-land use table
1=compute gridded leaf area index values
from land use types using new,
user-specified leaf area index-land use table
2=input a gridded leaf area index field
Land use type and associated leaf area index
values. Two variables per line read as:
do 120 I^LNLU
120 READ(iogeo,*)ILU,XLAILU(I)
Leaf area index value at each grid point (NX
values per line). The following statements are used
to read the data:
do 150 J=NY,1,-1
150 READ(iogeo,*)(XLAI(nj),n=l^X)
" Included only if IOPT7 = 1
"' Included only if IOPT7 = 2
I:\calmetwp\fcb9i\tect421.wph
4-91
-------
4.23 Upper Air Data Files (UP1DAT, UP2.DAT,...)
The upper air data used by CALMET are read from upper air data files called UPn.dat,
where n is the upper air station number (n=1,23, etc.). The upper air data files can be created
by the READ56 or READ62 preprocessor programs from standard NCDC upper air data
formats or by application-specific reformatting programs. Observations made at non-standard
sounding times, can be used by CALMET. The operation of the READ56 and READ62
programs is described in Section 4.1.1.
The UPn.DAT files are formatted, user-editable files containing two header records
followed by groups of data records. A sample upper air data file generated by READ62 and
hand-edited to remove informational messages and to fill in missing soundings is shown in
Table 4-29. The first header record contains the starting and ending dates of data contained in
the file and the top pressure level of the sounding data. The second header record contains the
READ56/READ62 data processing options used in the creation of the file.
The data records consist of a one-record header listing the origin of the data (5600 or
6201 NCDC data or 9999 for non-NCDC data), station ID number, date and time, and
information on the number of sounding levels. Following this are the pressure, elevation,
temperature, wind direction, and wind speed for each sounding level. The format of the
UPn.dat file is shown in Table 4-30.
As discussed in Section 4.1.1, the model allows missing values of wind speed, wind
direction, and temperature in the UP.DAT files at intermediate levels. The model will linearly
interpolate between valid levels to fill in the missing data. The user is cautioned against using
soundinps for which this interpolation would he inappropriate. Missing soundings should be
replaced with soundings for the same time period from a representative substitute station. Each
data set must be processed on a case-by-case basis with careful consideration given to how to
deal with missing data.
4-92
-------
p
Ci-
ts
4^
e
Cu
u
3
s
u
a:
.2
a,
ee
C/3
» — j2 ^_^_
""7:? $£S^
^ScvR)
CMOK— ^mi»m
£88
isss
IMI
CM
(MCMfMCM
ooTeio CM-?e>in £;£<¥ ZZSR fefcK
sans sSic 333 SKJSSQ • ess
• Join In 3>iox>5 **:°. ^ot*Tin. ^^^
V" CM m CO FO CO •—O ** 1A CO ^10^^ ^ ^ ^* >Q ^ tO >Q
EKStft BK.N.2 •OfwS IOK.N.^0 oKio« O^-KI in
•- Ki^in —CMM«» f«{»>^ —
pooq oooo °.C90
^§
fe§§ '°°fec«
CMC<3CM CMCM
K)«-CM CMOO
"SS
CMCM
S
_
•*«-«-»-to<* «-»-M »»in «-•-ruKI »» *-*-
sss esss ss^s ses§
oo^otn eo«OK.in eor-om CON-O
-5SS3S-S
CMCM 4^O O
o«—oo *-oo-oo
0K>«in oo 00^0 in in
*"*"I^S
~R.SR
CMCM
CMin»o^ •—i—^ to in infr»_-_.
CMCMCM KtCMCMCMfM Kl •—CM CM
<3«o«» ininro^-
««S>» rgeOK>«-
CM CM CM
CMCMCMCM njCMCMCMCM CM CM CM CM CM CM CM CM CM CM CM CM CM CM CM CM CM CM
0000 00000 0000 00000 0000 00000
tO • • • CM •••• O*** *^ • • • • • c> • • • •
• >«-eoo O OCMCMO^VOOO o
o CM
CM — .* m »- CM w-
•OCMCMcSS CMCM
c>inini
Sg'fcS
CMCMCMCMCM
CMCM^CMCMCMCMCM^CMCMCVICMCMCMCMCM
— U. «-
-------
Table 4-30
READ56/READ62 Output File Format
(UpnJJAT)
Columns
2-6
7-11
12-16
17-21
22-26
27-31
32-36
Format
15
15
15
15
15
15
F5.0
Columns
6
11
16
21
Format
LI
LI
LI
LI
FILE HEADER RECORD #1
Variable Description
IBYR
IBDAY
IBHR
IEYR
ffiDAY
IEHR
PSTOP
Starting year of data in the file (two digits)
Starting Julian day of data in the file
Starting hour (GMT) of data in the file
Ending year of data in the file (two digits)
Ending. Julian day of data in the file
hour (GMT) of data in the file
Top pressure level (mb) of data hi the file
(possible values are 850 mb, 700 mb, or
500mb)
FILE HEADER RECORD #2
Variable
LHT
LTEMP
LWD
LWS
Pescription
Sounding level eliminated if height missing ?
(T=yes, F=no)
Sounding level eliminated if temperature
missing ? (T=yes, F=no)
Sounding level eliminated if wind direction
missing ? (T=yes, F=no)
Sounding level eliminated if wind speed
missing? (T=yes, F=no)
(READ56/READ62 Output File Format Continued)
I:\calmet*p\kfa93\*ectt21.wpfa
4-94
-------
Table 4-30
READ56/READ62 Output File Format
(UpnJ>AT)
DATA RECORDS
For each 00 or 12 GMT sounding, a one-record data header is used followed by "N" records of data.
Each record contains up to four sounding levels.
DATA HEADER RECORD
4-7
13-17
23-24
25-26
27-28
29-30
36-37
69-70
14
A5
12
12
12
12
12
12
Variable
ITPDK
STNID
YEAR
MONTH
DAY
HOUR
MLEV
ISTOP
' Record format is (3x,i4,5x,a5r5x,4i2£x,i2,t69,i2)
(READ56/READ62 Output File Format Continued)
Description
Label identifying data format of original
data (c.g^ 5600 or 6201 for NCDC data
or 9999 for non-NCDC data)
Station ID number
Year of data
Month of data
Day of data
Hour of data (GMT)
Total number of levels in the original
sounding
Number of levels extracted from the
original sounding and stored below
I:\aOmetwp\fcMS\iecM21.wph
4-95
-------
Table 4-30
READ56/READ62 Output File Format
(IJPnJJAT)
DATA RECORDS
(Up to four levels per record)
Variable Description
PRES Pressure (mb)
HEIGHT Height above sea level (m)
TEMP Temperature (deg. K)
WD Wind direction (degrees)
WS Wind speed (m/s)
PRES Pressure (mb)
HEIGHT Height above sea level (m)
TEMP Temperature (deg. K)
\VD Wind direction (degrees)
WS Wind speed (m/s)
PRES Pressure (mb)
HEIGHT Height above sea level (m)
TEMP Temperature (deg. K)
WD Wind direction (degrees)
WS Wind speed (m/s)
PRES Pressure (mb)
HEIGHT Height above sea level (m)
TEMP Temperature (deg. K)
WD Wind direction (degrees)
WS Wind speed (m/s)
' Record format is (4(3x,f6.V/'^0,'AB.l,VA'AB)) , .
Missing value indicators are -99.9 for pressure, 9999. for height, 999.9 for temperature, and
999 for wind speed and direction.
Columns
4-9
11-15
17-21
23-25
27-29
33-38
40-44
46-50
52-54
56-58
62-67
69-73
75-79
81-83
85-87
91-96
98-102
104-108
110-112
114-116
Format'
F6.1
F5.0
F5.1
13
13
F6.1
F5.0
F5.1
13
13
F6.1
F5.0
F5.1
13
13
F6.1
F5.0
F5.1
13
13
I:\cato«wp\fcbS3\teca21.wj>fa
4-96
-------
4.2.4 Surface Meteorological Data File (SURFJDAT)
CALMET provides two options for the format of the surface meteorological data input
file, SURF.DAT. The first is to use the unformatted file created by the SMERGE
meteorological preprocessor program. SMERGE, described in Section 4.1.2, processes and
reformats hourly surface observations in standard NCDC formats into a form compatible with
CALMET. It is best used for large data sets with many surface stations.
The second format allowed by CALMET for the SURF.DAT file is a free-formatted
option. This option allows the user the flexibility of either running the SMERGE preprocessor
to create a formatted data file or for short CALMET runs, manually entering the data.
The selection of which surface data input format is used by CALMET is made by the
user with the control file variable, IFORMS (see Input Group 4 of the control file in Section
4.2.1).
A sample formatted SURF.DAT file is shown in Table 4-31. A description of each
variable in the formatted surface data file is contained in Table 4-32. The file contains two
header records with the beginning and ending dates and times of data in the file, reference time
zone, and number of stations in the first record and the station ID number in the second record.
The data are read in FORTRAN free format. One data record per hour follows the header
records. Each data record contains the date and time and for each station, the wind speed,
wind direction, ceiling height, cloud cover, temperature, relative humidity, station pressure, and
a precipitation code.
Buoy and other overwater data are normally input through the SEAn.DAT files. If the
overwater method is not used, the buoy data can be either the SURF.DAT file or SEAn.DAT
files. In any case, buoy data for a given station should not be in both files.
I:\ctlmetwp\feWS\tecU24.wph
4-97
-------
Table 4-31
Formatted SURFJDAT File - Header Records
Variable
No.
1
2
3
4
5
6
7
Variable
JBYR
IBJUL
ffiHR
IEYR
ffiJUL
IEHR
IBTZ
Type
integer
integer
integer
integer
integer
integer
integer
Variable
No.
HEADER RECORD
DescriDtion
NSTA
integer
Beginning year of the data in the file
Beginning Julian day
Beginning hoar (00-23 LST)
Ending year
Ending Julian day
Ending hour (00-23 LST)
Tune zone (c&, 05=EST, 06=CST, 07=MST,
08=PST)
Number of stations
HEADER RECORD #2
Variable
IDSTA
Type
integer array
Description
Surface station ID number (NSTA values must be
entered). The following statement is used to read
the record:
READ(io,*)(IDSTA(n),n=1J4STA)
k\eakaet«p\fet«S\ieet424.«ph
4-98
-------
Table 4-32
Formatted SURF.DAT File • Data Records*
Variable Vjnabje.
IBS
1
2
3
4
5
6
7
8
9
10
11
IYR
DUL
IHR
WS
WD
ICEIL
ICC
TEMPK
IRH
PRES
IPCODE
integer
integer
integer
real array
real array
integer array
integer array
real array
integer array
real array
integer array
Description
Year of data
Julian day
Hour (00-23 LST)
Wind speed (m/s)
Wind direction (degrees)
Ceiling height (hundreds of feet)
Opaque sky cover (tenths)
Air temperature (degrees K)
Relative humidity (percent)
Station pressure (mb)
Precipitation code
(0=no precipitation, 1-18=liquid precipitation,
19-45=frozen precipitation)
* The data records are read in free format with the following statement:
READ(io,*)IYR4JUL,IHR,(WS(n)>WD(n),ICEIL(n),
1 - ICC(n),TEMPK(n),IRH(n),PRES(n)4PCODE(n),
1 n=l,NSTA)
Missing value indicators are 9999. (real variables) and 9999 (integer variables)
I:\aUmetwp\feto95\ieet424.wph
4-99
-------
425 Overwater Data Files (SEA1.DAT, SEA2J5AT,...)
If the modeling application involves overwater transport and dispersion, the CALMET
boundary layer model requires observations of the air-sea temperature difference, air
temperature, relative humidity and overwater mixing height. If the overwater temperature
method is used, vertical temperature gradient information is also necessary, however defaults
are specified in the CALMETJNP file. The special overwater observations, along with wind
speed and direction, are contained in a set of files named SEAn.DAT, where n is a station
number (1A3,...). K SEAn.DAT files are not used, the overwater station and its standard
surface parameters (e.g., wind speed and direction, etc.) can be treated as a regular surface
station. Additionally, any overwater site that should nsl be used in the overwater temperature
interpolation scheme should be placed in the SURKDAT file instead of a SEA.DAT file. For
instance, a user may want to include wind information from a lake buoy but not have the buoy
influence temperatures over the ocean.
The overwater data files are structured to allow the use of data with arbitrary time
resolution. For example, hourly or daily air-sea temperature difference data, if available, can be
entered into the files. Otherwise, monthly or seasonal data can be used. However, any station
that is reporting non-missing wind speed and direction should use hourly data resolution or
inaccuracies will be introduced into the wind field. The inaccuracy results from the fact that the
variables retain their current values each hour until a new observation is encountered, at which
time they are updated. Thus, long periods of missing wind data between valid observations
should receive hourly records with the wind data set to missing. A similar argument applies to
temperature and vertical temperature gradient information if the overwater temperature method
is used. All times must match the base time zone of the CALMET run (variable ffiTZ).
The location of the overwater site is specified for each observation. This allows the use
of data collected from ships with time-varying locations. The data for each observation station
(fixed or moving) must be stored in a separate overwater data file.
Table 4-33 contains a sample overwater input file. A description of each input variable
and format is provided in Table 4-34. The sample data file contains hourly overwater data.
I:\e»toetwp\feWS\iea424.wph
4-100
-------
Table 4-33
Sample Overwater Data File (SEA1.DAT)
'4005',11000
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.074721.83
536.07 4721.83
536.07 4721.83
536.074721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.074721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
536.07 4721.83
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560
68.560*
68.560
68.560
68.560
68.560
68.560
68.560
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
87226
87226
87 226
87 226
87226
87226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87 226
87226
87 227
0 87226
1 87226
2 87 226
3 87 226
4 87 226
5 87 226
687226
787226
8 87 226
9 87 226
10 87226
11 87 226
12 87 226
13 87 226
14 87 226
15 87 226
16 87 226
17 87 226
18 87 226
19 87 226
20 87 226
21 87 226
22 87 226
23 87226
0 87 227
0 9999.0
1 9999.0
2 9999.0
3 9999.0
4 9999.0
5 9999.0
69999.0
7 9999.0
89999.0
9 9999.0
10 9999.0
11 9999.0
12 9999.0
13 9999.0
14 9999.0
15 9999.0
16 9999.0
179999.0
18 9999.0
19 9999.0
20 9999.0
21 9999.0
22 9999.0
23 9999.0
0 9999.0
290.
290.
290.
290.
290.
290.
290.
291.5
291.5
291.5
291.5
291.5
291.5
292.0
292.0
292.0
292.0
292.0
292.0
291.5
291.5
291.5
291.5
290.9
291.5
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
9999.0000
4.1
4.1
3.6
4.1
3.6
3.1
2.6
2.6
2.6
2.6
3.1
3.6
3.6
4.1
4.6
4.6
3.6
3.6
3.6
3.6
4.6
4.6
5.1
7.2
6.2
180.6
180.0
200.0
200.0
200.0
200.0
210.0
210.0
200.0
200.0
190.0
190.0
190.0
200.0
190.0
200.0
200.0
200.0
190.0
190.0
180.0
190.0
190.O
210.0
220.0
I:\caJmetwp\fcb9S\tecM24.wph
4-101
-------
Table 4-34
Overwater Data Ffle Format" (SEA1 DAT)
HEADER RECORD #1
Variable
No.
1
2
Variable
No.
1 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Variable Type
CHOWSTA char*4
IDOWSTA integer
Variable Type
XUTM real
YUTM real
XOWLON real
ZOWSTA real
I1YR - integer
I1JUL integer
I1HR integer
I2YR integer
I2JUL integer
I2HR integer
DTOW real
TAIROW real
RHOW real
ZIOW real
TGRADB real
TGRADA real
WSOW real
WDOW real
Description
station name
5-dJgit station TD number
DATA RECORDS
Description
X coordinate (km) of the observational site
Y coordinate (km) of the observational site
Longitude (degrees) of the observational site.
Positive for Western Hemisphere, negative for
Eastern Hemisphere
Measurement height (m) above the surface of the
water of the air temperature and air-sea
temperature difference
Starting year of the data in this record
Stalling Julian day of the data in this record
Default
Value
-
-
Default
Value
-
-
-
-
-
-
Stalling hour (00-23 LST) of the data in this record -
Ending year of the data in this record
Ending Julian day of the data in this record
-
-
Ending hour (00-23 LST) of the data hi this record -
Air-sea surface temperature difference (K)
Air temperature (K)
Relative humidity (%)
Overwater mixing height (m)
Temperature lapse rate below the mixing height
overwater (K/m)
Temperature lapse rate above the mixing height
overwater (K/m)
Wind speed (m/s)
Wind direction (degrees)
-
288.7
100
-
-0.0098
-0.0045
-
'
' Variables are read in FORTRAN free-format
Missing value indicators
I:\calinetwp\fcW5\tecU24.wph
are 9999. (real variables)
4-102
-------
42.6 Precipitation Data File (PRECIPJDAT)
If the wet removal algorithm of the CALPUFF or MESOPUFF n models is to be
applied, CALMET must produce gridded fields of hourly precipitation rates from observations.
The PXTRACT and PMERGE preprocessing programs (Sections 4.1.4 and 4.13) process and
reformat the NWS precipitation data in TD-3240 format into a formatted or unformatted file
called PRECIP.DAT. The output file of PMERGE is directly compatible with the input
requirements of CALMET. The user needs to set the precipitation file format variable,
IFORMP, in the CALMET control file to one when using PMERGE unformatted output.
An option is provided in CALMET to read the hourly precipitation data from a free-
formatted, user-prepared input file (ie., IFORMP=2). This option is provided to allow the user
an easy way to manually enter precipitation data for short CALMET runs. The use of the
formatted PRECIP.DAT option can also be used with the formatted output file from PMERGE.
A sample free-formatted PRECIP.DAT file is shown in Table 4-35. The file includes
two header records containing the beginning and ending dates and time of the data in the file,
base time zone, number of stations, and station ID codes. One data record must follow each
hour. Each data record contains the date and time and the precipitation rate (mm/hr) for each
station. The details of the format and definition of each variable in the free-formatted
PRECIP.DAT file is provided in Table 4-36.
I:\dlmetwp\fcb9S\iecM24.wph
4-103
-------
Table 4-35
Sample Free-Formatted Precipitation Data File (PRECIPDAT)
89
U236C
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
1 1 89 2
I 417943 417945 412
1 1 0.000
9999.000
1 2 0.000
9999.000
1 3 0.000
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 12
1 13
1 14
1 15
1 16
1 17
1 18
1 19
1 20
1 21
1 22
1 23
1 24
2 1
2 2
2 3
2 4
2 5
2 6
2 7
2 8
2 9
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
0.000
9999.000
9 6 14 0
797 415890 410174 411492 41!
0.000 0.000 9999.000
0.000 0.000 0.000
0.000 0.000 0.000
0.000 0.000 0.000
0.000 0.000 0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.254
0.000
0.254
0.000
0.254
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.254
0.000
0.254
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
2679 4128
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.762
0.762
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
415596 416736 418023 418252
0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
I:\ahartwp\JeWi5\ieeU24.wph
4-104
-------
Table 4-36
Free-Formatted Precipitation Data File Format (PRECEPJDAT)
NSTA
HEADER RECORDS
Head Record #1
Variable No.
1
2
3
4
5
6
7
Variable
ffiYR
IBJUL
IBHR
IEYR
ffiJUL
ffiHR
fflTZ
Type
integer
integer
integer
integer
integer
integer
integer
integer
Description
Starting year of data in the file
Starting Julian day of data in the file
Starting hour (01-24 LST) of data in the file
year, of data in the file
Julian day of data in the file
Ending hour (01-24 LST) of data in the file
Base time zone (05=EST, 06=CST, 07=MST,
08=PST)
Number of precipitation stations
Head Record #2
Variable No. Variable Type Description
1 IDSTA integer array Station codes for each precipitation station.
Read as:
READ(iol2,*)(IDSTA(n),n=1.NSTA)
I:\caliaetwp\feW5\iecU24.wph
4-105
-------
Table 4-36
Free-Formatted Precipitation Data FHe Format (PREOP.DAT)
DATA RECORDS
(Repeated for each hour of data)
Variable
IYR
UUL
fflR
XPREC
Type
integer
integer
integer
real array
Description
Year of data
Julian day of data
Hour (01-24 LST) of data
Precipitation rates (mm/h
precipitation station in the station order
specified in Header Record #2. Each data
record is read as:
READ(iol2,*)iyr4jul,ihr,(XPREC(n),
Missing value indicator is 9999.
L\cttortwp\leb95\»cct424.wph
4-106
-------
42.7 Preprocessed Diagnostic Model Data File (DIAGJDAT)
The CALMET control file contains variables which determine how the meteorological
data required by the diagnostic wind field module are entered into the program. The variables
IDIOPT1 through IDIOPT5 of Input Group 5 in the control file determine whether the hourly
station observation and domain-scale average surface temperature, lapse rate, and wind
components are internally computed from the data in the surface and upper air data files or
read directly from a separate file, DIAGJDAT.
The DIAG.DAT file allows the user to by-pass the internal CALMET computation
involving the interpolation and spatial averaging of the meteorological inputs to the model by
specifying these inputs directly. This option has been retained in the operational version of the
model although it was intended primarily as a testing tool. The use of the DIAG.DAT file
requires that the time interpolation of the sounding data and routine averaging of upper layer
winds through the depth of each vertical layer, as well as conversion of the wind components
from wind speed and direction to U and V components, all be performed externally.
A sample DIAG.DAT file containing two hours of data is shown in Table 4-37. A
description of each variable in the file and its input format is contained in Table 4-38. The
variables included in the DIAG.DAT file depend on the option selected in the CALMET
control file. A value of one for the following control file parameters is used to flag input of the
corresponding meteorological variable via the DIAG.DAT file. A value of zero indicates the
meteorological variable is internally computed by the model from the data in the SURF.DAT
and UPn.DAT files. The default value for each control file parameter is set to compute the
meteorological variables internally.
Control File Parameter
IDIOPT1
IDIOPT2
IDIOPT3
IDIOPT4
IDIOPT5
Meteorological Variable
Domain-average surface temperature
Domain-average vertical temperature lapse rate
Domain-average winds (U and V components)
Hourly surface station winds (U and V components)
Hourly upper air station winds (U and V components)
The wind observations in DIAG.DAT are entered with data for one station per line.
The end of the surface data and upper air data are both flagged by a record with a station name
of 'LAST.
I:\cmtostwp\fcto95\teet424.wph
4-107
-------
TaMe 4-37
Sample DIAGJDAT Input Data File
TINF: 300.15
GAMMA hr 1 2.5
UN hr 1 -1.8
VM hr 1 -0.9
SURFACE KIND 0 PTN1
SURFACE UINO 0 PLGN
. SURFACE WIND 0 LAST
UPPER WIND 0 LOS
UPPER UIKO 0 OFLT
UPPER UINO 0 LAST
TINF: 300.15
GAMHA hr 2 3.5
UK hr 2 -1.8
VM hr 2 -0.9
SURFACE WIND 1 PTM1
SURFACE WIND 1 PLGN
SURFACE WIND 1 LAST
UPPER WIND 1 LCMB
UPPER WIND 1 OFLT
UPPER WIND 1 LAST
1.0
1.0
-0.6 -0.8
3.0 -2.6
1.0999.0999.0 -0.9 0.0
1.0 -0.2 -0.1 -0.1 -0.5
-1.1 0.2 -0.3 0.1 -0.2 -0.3
-0.3 -0.8 -0.4 -0.5 -2.2 -1.5
1.0
1.0
0.0 0.0
4.9 -3.3
1.0999.0999.0 -1.3 -0.2 -0.6 0.3 -0.9 0.8 -0.9 1.1
1.0 -0.1 0.0 0.2 0.1 -0.3 -1.3 -0.2 -0.9 0.3 -0.4
I:\catoetwp\fcW5\Kt424.wph
4-108
-------
Table 4-38
DIAGDAT Input File
(Records 1-6 reported for each hour)
Record
11
2"
y
4C
5"
5"
5"
5"
(Repeated
Variable No.
1 .
1
1
1
1
1
1
1
one station per
Variable
TINF
GAMMA
UM
VM
CNAM
WT
US
VS
record)
Xas
real
real
real
real
char*4
real
real
real
Description
Domain-average surface temperature (deg. K).
Input format: (10X4*6.2).
Domain-average temperature lapse rate (deg.
K/km). Input format: (H»yF5.1).
Domain average U wind component (m/s). Input
format: (10X^5.1).
Domain average V wind component (m/s). Input
format: (10X^5.1).
Four-character surface station name ('LAST
indicates end of surface data)
Data weighting factor (usually set to 1.0)
U component of surface wind (m/s)
V component of surface wind (m/s)
Input format: (15XA4.1X3F5.1)
(DIAG.DAT Input File Continued)
1 Record included only if control file variable IDIOPT1=1
b Record included only if control file variable IDIOPT2=1
c Record included only if control file variable IDIOPT3=1
" Record included only if control file variable IDIOPT4=1
I:\cntoetwp\feb9S\teca24.wph
4-109
-------
Table 4-38
DIAG.DAT Input File
Record Variable No. Variable
ff 1 CUNAM
6* 2 WTU
ff 3 ULEV1
6« 4 VELV1
6e 5 ULEV2
6' 6 VELV2
char'4
real
ireal
ireal
ireal
ireal
Description
Four-character upper air station name.
(TAST indicates end of upper air data.)
Data weighting factor (usually set to 1.0)
U component of wind (m/s) at upper air
station for CALMET layer 1
V component of wind (m/s) at upper air
station for CALMET layer 1
U component of wind (m/s) at upper air
station for CALMET layer 2
V component of wind (m/s) at upper air
station for CALMET layer 2
' Record included only if control file variable IDIOPT5=1
I:\ahnrtwp\fcW5\itttC4.wph
4-110
-------
4.2.8 Prognostic Model Data File (PROG.DAT)
The CALMET model allows the use of gridded prognostic model (CSUMM) winds to be
used as the initial guess field or Step 1 wind field in the diagnostic model analysis procedure as
a substitute for the normal Step 1 analysis. The use of the prognostic wind field option is
controlled by the variable IPROG in Input Group 5 of the CALMET control file. If IPROG is
set equal to one or two, the gridded prognostic model wind fields are read from a file called
PROG.DAT. These winds are interpolated from the prognostic model grid system to the
CALMET grid to produce either the initial guess field or the Step 1 wind field.
The PROG .DAT file is an unformatted data file containing the time, grid specifications,
vertical layer structure, and three-dimensional fields of U and V wind fields. Table 4-39
contains a description of the variables included in each hourly set of winds.
Note that CSUMM does not allow the use of a Lambert conformal projection, so the
coordinate system must be a UTM system when CSUMM data are used (i.e., IPROG = 1 or 2).
I:\
-------
Table 4-39
Gridded Prognostic Model Wind Field Input File (PROG.DAT)
Record
1
2
2
2
3
3
3
4
Next
NZP'NYP
Records
Next
NZP'NYP
Records
Variable No.
1
1
2
3
1
2
3
1
1
1
Variable
TIMEH
NXP
NYP
NZP
UTMXOP
UTMYOP
DXKP
Z
UP
VP
Type
real
real
real
real
real
real
real
real
array
real
array
real
array
Description'
Prognostic model simulation time (hours)
Number of prognostic model grid cells in
the X direction
Number of prognostic model grid cells in
the Y direction
Number of prognostic model vertical layers
Reference UTM X coordinate of
prognostic model grid origin
Reference UTM Y coordinate of
prognostic model grid origin
Grid spacing (km)
Grid point heights (m) in prognostic model
grid (NZP values)
Prognostic model U components (m/s) of
wind. The following statements are used to
read the UP array.
dolOK=l,NZP
dolOJ=l,NYP
10 READ(90)(UP(ij,k),i=l,NXP)
Prognostic model V components (m/s) of
wind. The following statements are used to
read the VP array:
20
do20J=l,NYP
READ(90)(W(y,k)i=l^IXP)
(All records repeated each hour)
I:\olmetwp\fct95\iect424.wpb
4-112
-------
4.2.9 MM4-FDDA Model Data File (MM4.DAT)
The CALMET model allows the use of gridded MM4-FDDA prognostic winds to be
used as input. The use of the prognostic wind field option is controlled by the variable IPROG
in Input Group 5 of the CALMET control file. A choice of three methods of incorporating the
MM4-FDDA wind data into the model is available.
If IPROG = 3 use MM4-FDDA winds as the Step 1 field when using the
objective analysis
IPROG = 4 use MM4-FDDA winds as the initial guess field when using the
diagnostic module
IPROG = 5 treat MM4-FDDA winds as observations.
If one of these three methods is chosen, the gridded MM4-FDDA wind fields are read from a
file called MM4.DAT. Within CALMET these winds are interpolated from the prognostic
model grid system to the CALMET grid.
The MM4.DAT file is a formatted data file containing header records describing the
date, time, and domain of the prognostic model run. The extraction subdomain is defined in
terms of (LJ) and latitude and longitude. Terrain elevation and land use description code are
also provided for each grid cell in the subdomain. The sigma-p values used by MM4-FDDA to
define each of the vertical layers are also contained in the header records of MM4.DAT.
The data records consist of a date and time record, then a data record consisting of
elevation (msl) and winds at each grid ceE for each vertical level. The surface level is followed
by the mandatory levels of 1000, 925, 850, 700, 500, 400, and 300 mb. All-subterranean
mandatory levels will have wind direction and wind speed of 0.
I:\calroetwp\fcb95\tect424.wph
4-113
-------
Table 4-40
Sample MM4-FDDA Derived Gridded Wind Data File (MM4.DAT)
THIS FILE CHEATED 17:17:33 04-21-92
88071500 7*4 60 « 15 100.0
35 16 5 5
0.0500
0.1500
0.2500
0.3500
0.4500
0.5500
.0.6500
0.7400
0.8100
0.8650
0.9100
0.9450
0.9700
0.9850
0.9950
35 16 34.756 -85.988 0272 02
36 16 34.715 -85.098 0321 06
37 16 34.666 -84.210 0386 04
38 16 34.609 -83.323'0406 04
39 16 34.544 -82.438 0319 04
35 17 35.488 -85.943 0277 04
36 17 35.447 -85.043 0343 04
37 17 35.397 -84.145 0464 04
38 17 35.340 -83.248 0581 04
39 17 35.274 -82.353 0539 04
35 18 36.222 -85.897 0252 04
36 18 36.180 -84.987 0323 04
37 18 36.130 -84.078 0443 04
38 18 36.071 -83.172 0609 04
39 18 36.004 -82.266 0670 04
35 19 36.957 -85.849 0217 02
36 19 36.914 -84.929 0282 04
37 19 36.863 -84.010 0365 04
38 19 36.804 -83.093 0504 04
39 19 36.737 -82.178 0639 04
35 20 37.693 -85.801 0192 04
36 20 37.650 -84.870 0244 02
37 20 37.599 -83.941 0293 04
38 20 37.539 -83.013 0373 04
39 20 37.470 -82.087 0509 04
(Continued)
I:\cilBetwi>\fcb95\iecM24.wph
4-114
-------
Table 4-40
Sample MM4-FDDA Derived Gridded Wind Data File (MM4.DAT)
88071500 35
9649 00272
10000 00136
9250 00831
8500 01571
7000 03218
5000 05943
4000 07655
3000 09747
9805 00313
9716 00394
9584 00517
9362 00724
9053 01021
8654 01414
8168 01914
7548 02586
6752 03518
5867 04668
4982 05971
4097 07475
3212 09262
2327 11485
1442 14523
88071500 36
9796 00321
10000 00136
9250 00831
8500 01571
7000 03217
5000 05940
4000 07654
3000 09746
9752 00361
9664 00442
9532 00565
9312 00772
9004 01068
8608 01461
8124 01960
7509 02630
6717 03559
5838 04706
4958 06006
4078 07508
3199 09290
2319 11505
1440 14530
16 1015.2 0.00 0
30056 24507
30657 00000
25232 26510
19814 29009
10661 03011
04971 07013
17170 05011
32566 05012
29656 24507
28852 24508
27846 25509
26038 26510
23823 27010
21015 28509
17612 30008
14058 00007
09064 03512
02866 05012
05171 07013
15971 05011
28767 05011
46364 05517
66159 02514
16 1015.2 0.00 0
29456 25007
30656 00000
25231 26511
20015 30009
10261 01510
04775 06512
17173 05513
32567 05014
29052 25007
28246 25007
27239 25509
25634 26511
23620 27010
20816 29509
17214 32009
13458 35509
08463 02011
02667 04011
05176 06513
16173 05513
28968 05012
46565 05018
66360 01515
l:\talmetwp\teb95\tecM24.wph
4-115
-------
Table 4-41
MM4-FDDA Derived Gridded Wind Data File Format (MM4.DAT)
HEADER RECORDS
Header Record *1
Variable No. Variable Type
1 CTEXT char*36
Description
Text date/time stamp for file creation
Header Record #2
Variable No.
1
2
3
4
5
6
7
8
9
Variable
IBYRM
ffiMOM
EBDYM
IEHRM
NHRSMM4
NXMM4
NYMM4
NZP
PTOPMM4
Type
integer
integer
integer
integer
integer
integer
integer
integer
real
Description
Beginning year of the data in the file
Beginning month of the data in the file
Beginning day of the data in the file
Beginning hour (GMT) of the data in the file
Length of period (hours) of the data in the file
Number of columns in the MM4-FDDA domain
Number of rows in the MM4-FDDA domain
Number of layers hi the MM4-FDDA domain
Top pressure level of the data in the file
format (4i2,4i4,f6.1)
I:\olmetwp\fcb95\iKU24.wph
4-116
-------
Table 4-41
MM4-FDDA Derived Gridded Wind Data File Format (MM4.DAT) (Continued)
Variable No. Variable Type
1 II integer
2 Jl integer
3 NXP integer
4 NYP integer
HEADER RECORDS
Header Record #3
Desolation
I-index of the lower left corner of the extraction
subdomain
J-index of the lower left corner of the extraction
subdomain
Number of grid cells in the X direction in the
extraction subdomain
Number of grid cells in the Y direction in the
extraction subdomain
format (4i4)
Next NZP Records
Variable No. Variable Type
1 SIGMA real array
Description
Sigma-p values used by MM4-FDDA to define
each of the NZP layers
Read as:
10
20
READ(iomm4,20)SIGMA(i)
FORMAT(F6.4)
I:\cilmetwp\fcMS\fecM24.wph
4-117
-------
Table 4-41
MM4-FDDA Derived Gridded Wind Data Ffle Format (MM4J3AT) (Continued)
HEADER RECORDS
Variable
No.
1
2
3
Variable Type
IINDEX
JINDEX
XLAT4
integer
integer
real array
XLONG4 real array
5
6
IELEV4
ILU4
integer array
integer array
Next NXP'NYP Records
Description
I-index of the grid point in the extraction subdomain
J-index of the grid point in the extraction subdomain
Latitude (degrees) of the grid point in the extraction subdomain
(positive for the Northern Hemisphere, negative for Southern
Hemisphere)
Longitude (degrees) of the grid point in the extraction
subdomain (N.B., the MM4 convention is different than the
CALMET convention: MM4 uses fl£gaiiv£ values for Western
Hemisphere and positive values for Eastern Hemisphere.
CALMET internally converts the longitudes in the MM4DAT
file, so the MM4 convention must be used in the MM4 J>AT
file)
Terrain elevation of the grid point in the extraction subdomain
Land use description code of the grid point in the extraction
subdomain
format (^
DATA RECORDS (repeated for each grid cell in extraction subdomain)
Date Record
Variable
No.
1
2
3
4
5
6
7*
8*
9*
Variable
MYR
MMO
MDAY
MHR
DC
JX
-
-
.
Type
integer
integer
integer
integer
integer
integer
real
real
integer
Description
Year of MM4-FDDA wind data
Month of MM4-FDDA wind data
Day of MM4-FDDA wind data
Hour (GMT) of MM4-FDDA wind data
I-index of grid cell
J-index of grid cell
sea level pressure (mb)
total rainfall for the past hour (cm)
snow cover indicator (0 or 1, where 1 =
to be present for the MM4 simulation)
format (4i2,2i3,f7.Lf5.2,i2)
* variable not read by CALMET
I:\atortwp\fcb9S\iect424.wph
4-118
-------
Table 4-41
MM4-FDDA Derived Gridded Wind Data File Format (MM4.DAT) (Concluded)
DATA RECORDS (repeated for each grid cell in extraction subdomain)
Data Records (one record for each mandatory Level(8)* plus 14ZP* significant levels)
Variable No.
1**
2
3'*
4
5
Variable ' Type Description
integer Pressure (tenths of millibars)
Z integer Elevation (meters above m.sl)
integer Temperature/dew point depression in NWS format
(TTTDD)
WD integer Wind direction (degrees)
WS integer Wind speed (knots)
format of data (i53»6,5x)
format used by CALMET to read the data (5x,f6.0,6x44.0,G.O)
The surface level is followed by the mandatory levels of 1000,925, 850, 700, 500, 400, and 300 mb.
All subterranean mandatory levels will have wind direction and wind speed of 0.
Variable not used by CALMET
TTT = °C*10, odd number = negative temperature
even number = positive temperature
Examples: TTT = 202 - 20^°C
TTT = 203 - -203eC
DD < 56 - °C*10
DD 2 56 - "C+50
Examples: DD = 55 - 5-5°C
DD = 56 - 6.0°C
I:\adme«wp\fcb95\«ec«<24.wph
4-119
-------
4.2.10 Terram Weightmg Factor Data File (WT.DAT)
CALMET contains several options for introducing MM4-FDDA winds into the
calculation of the wind fields. These include the use of the MM4-FDDA winds as:
• initial guess field (IPROG - 3)
• Step 1 field (IPROG - 4)
• "observation" (IPROG * 5)
If the MM4-FDDA fields are used as in initial guess field for CALMET, the MM4-
FDDA winds are subject to a full diagnostic adjustment for terrain effects on the fine-scale
(CALMET) grid. If the MM4-FDDA winds are used as either a Step 1 field or as
"observations," CALMET does not perform additional terrain adjustment to the MM4-FDDA
winds. In combining the MM4-FDDA winds with actual observational data, the question of
what relative weight should be given to the MM4-FDDA winds (which reflects its coarse-grid
(e.g., 80 km) resolution of terrain versus the observational data. The factors used to determine
this weighting is assumed to be a function of the fine-scale terrain unresolved by the MM4-
FDDA grid and height above the surface. Section 2.23.1 provides a detailed description of the
weighting factors and how they are used in CALMET.
The WT.DAT file contains the terrain-weighting factor. This file is required only if
IPROG = 4 or IPROG = 5 (i.e., MM4-FDDA data are used as the Step 1 field or as
"observation").
Table 4-42 contains a sample WT.DAT file for a 25 x 23 18-km CALMET grid. A
detailed description of the contents of the WT.DAT file are contained in -Table 4-43. The first
three lines consist of descriptive information on the development of the weighting factor.
Records 4 and 5 describe the fine-scale (CALMET) grid system and the coarse-scale (MM4-
FDDA) grid. These are followed by a set of NZ groups of records, one for each CALMET
layer, which contain the actual weighting factors.
I:\otortwp\fcW5\iecU24.wph
4-120
-------
Table 4-42
Sample Terrain Wei^iting Factor Data File (WT.DAT)
Sensitivity Power for Uz *
Sensitivity Power for Us «
Significant Length-Scale <•> -
Fine-Grid : ' 342.0 -135.0
Coarse-Grid : -80.0 -680.0
2.00000
2.00000
10.0000
25 23 18.000
24 21 80.000
Height(M)
i«
1
j
j- 23 .51 .56
j* 22 .51 .56
21 .49 .54
20 .43 .48
j* 19 .37 .41
j* 18 .31 .35
j* 17
j* 16
15
.26 .29
.25 .29
.26 .30
j~ 14 .27 .31
j= 13 .27 .32
j= 12 .28 .33 .
j« 11 .31 .35
j= 10 .33 .37
j* 9 .35 .39
j= 8 .37 .41
j* 7 .31 .35
j* 6 .26 .30
j= 5 .20 .24
j= 4 .15 .18
j= 3 .15 .19
j= 2 .20 .25
j= 1 .26 .31
i= 1 2
Height(m) *
i= 1 2
j= 23 .11 .11
22
21
.11 .11
.10 .11
j= 20 .09 .09
j= 19 .07 .08
18
.06 .06
17 .04 .05
j= 16 .06 .06
j= 15 .08 .09
.09 .11
.11 .13
14
j= 13
j= 12
.12 .13
.10 .11
j* 10 .08 .09
j= 9 .06 .07
j= 8 .05 .06
j= 7 .04 .04
j= 6 .03 .03
j= 5 .02 .02
j= 4 .01 .01
j* 3 .02 .02
j= 2 .04 .04
j= 1 .06 .07
i= 1 2
10.0000
3456
.53 .51 .48 .45
.53 .51 .48 .45
.51 .49 .46 .44
.46 .44 .42 .40
.40 .39 .38 .37
.35 .34 .34 .33
.29 .29 .30 .30
.30 .31 .31 .32
.31 .33 .34 .35
.33 .35 .36 .38
.34 .37 .39 .41
.35 .38 .40 .42
,36 .38 .39 .40
.37 .37 .38 .38
.38 .37 .37 .36
.39 .37 .36 .34
.35 .34 .34 .34
.31 .32 .33 .34
.26 .29 .31 .33
.22 .26 .30 .33
.23 .27 .31 .35
.28 .32 .35 .39
.34 .37 .40 .42
3456
50.0000
3456
.10 .08 .07 .05
.10 .08 .07 .05
.09 .08 .07 .05
.08 .07 .06 .05
.07 .06 .05 .04
.05 .05 .04 .03
.04 .04 .03 .03
.06 .06 .05 .05
.08 .08 .08 .07
.11 .10 .10 .10
.13 .13 .13 .13
.13 .13 .14 .14
.11 .12 .12 .12
.10 .10 .10 .11
.08 .08 .09 .09
.06 .07 .07 .08
.05 .05 .06 .07
.04 .04 .05 .05
.03 .03 .03 .04
.01 .02 .02 .02
.02 .02 .02 .03
.04 .04 .05 .05
.07 .07 .07 .07
3456
7 8
.44 .43
.44 .43
.43 .41
.38 .36
.34 .31
.30 .27
.26 .22
.28 .25
.32 .29
.36 .34
.40 .38
.41 .41
.40 .40
.39 .40
.38 .40
.37 .40
.36 .39
.36 .37
.35 .36
.34 .35
.36 .36
.39 .39
.42 .42
7 8
7 8
.05 .04
.05 .04
.05 .04
.04 .03
.03 .03
.03 .02
.02 .02
.04 .03
.06 .05
.08 .07
.11 .08
.12 .10
.11 .10
.11 .10
.10 .11
.10 .11
.08 .09
.06 .07
.05 .06
.03 .04
.03 .04
.06 .07
.08 .09
7 8
9 10 11
.42 .41 .42
.42 .41 .42
.40 .38 .40
.34 .32 .34
.29 .26 .28
.23 .20 .21
.18 .14 .15
.21 .18 .19
.27 .24 .25
.32 .29 .30
.37 .35 .36
.40 .39 .40
.41 .41 .42
.41 .43 .43
.42 .44 .45
.43 .46 .47
.41 .44 .44
.39 .41 .42
.38 .39 .39
.36 .37 .37
.37 .37 .37
.39 .40 .40
.42 .42 .43
9 10 11
12 13
.45 .48
.45 .48
.43 .47
.38 .41
.32 .36
.26 .31
.21 .26
.24 .29
.29 .32
.33 .36
.38 .40
.41 .43
.43 .44
.44 .45
.46 .46
.47 .47
.44 .44
.42 .41
.39 .38
.36 .35
.37 .37
.41 .41
.45 .46
12 13
14 15 16
.52 .52 .40
.52 .52 .40
.50 .51 .40
.45 .47 .38
.41 .43 .37
.36 .39 .35
.31 .35 .34
.33 .37 .35
.36 .39 .37
.39 .41 .38
.42 .43 .40
.44 .45 .41
.45 .45 .41
.46 .45 .41
.46 .46 .41
.47 .46 .41
.44 .43 .41
.41 .41 .41
.38 .38 .41
.35 .35 .41
.36 .37 .43
.42 .43 .47
.48 .49 .51
14 15 16
9 10
.04 .03
.04 .03
.03 .03
.03 .02
.02 .02
.02 .01
.01 .00
.02 .01
.04 .02
.05 .03
.06 .04
.08 .06
.09 .08
.10 .10
.11 .12
.13 .14
.11 .12
.09 .10
.07 .07
.04 .05
.05 .06
.07 .OB
.10 .11
9 10
11 12
.03 .04
.03 .04
.03 .04
.02 .03
.02 .02
.01 .01
.00 .01
.01 .01
.02 .02
.03 .03
.04 .04
.05 .05
.07 .07
.10 .09
.12 .11
.14 .13
.12 .11
.10 .09
.08 .07
.06 .05
.07 .08
.11 .14
.15 .21
11 12
13 14
.05 .05
.05 .05
.04 .05
.03 .04
.03 .03
.02 .02
.01 .01
.02 .02
.02 .03
.03 .04
.04 .05
.05 .06
.07 .07
.09 .09
.11 .10
.12 .11
.11 .10
.09 .08
.07 .07
.05 .05
.09 .11
.18 .21
.27 .32
13 14
15 16
.06 .04
.06 .04
.05 .04
.04 .04
.03 .03
.02 .02
.01 .02
.02 .02
.03 .03
.04 .04
.05 .04
.06 .05
.07 .06
.08 .07
.09 .07
.10 .08
.09 .11
.09 .13
.08 .16
.07 .19
.14 .25
.26 .34
.38 .42
15 16
17 18
.28 .16
.28 .16
.28 .17
.29 .21
.31 .24
.32 .28
.33 .32
.34 .32
.34 .32
.35 .32
.36 .32
.36 .32
.36 .32
.36 .31
.36 .31
.35 .30
.38 .36
.41 .41
.44 .47
.46 .52
.49 .55
.51 .55
.53 .55
17 18
17 18
.03 .02
.03 .02
.03 .02
.03 .02
.03 .02
.02 .02
.02 .02
.02 .03
.03 .03
.03 .03
.04 .04
.04 .04
.05 .04
.05 .04
.05 .04
.06 .04
.12 .13
.18 .23
.24 .33
.31 .42
.36 .48
.42 .49
.47 .51
17 18
19 20
.03 .00
.03 .00
.05 .02
.12 .09
.18 .16
.24 .22
.30 .29
.31 .30
.30 .30
.29 .30
.29 .29
.28 .29
.27 .29
.27 .29
.26 .29
.25 .29
.33 .37
.41 .45
.50 .53
.58 .61
.60 .63
.58 .61
.56 .58
19 20
19 20
.00 .00
.00 .00
.01 .00
.01 .01
.02 .01
.02 .02
.03 .03
.03 .03
.03 .03
.03 .03
.03 .03
.03 .03
.03 .03
.02 .03
.02 .02
.01 .02
.15 .14
.28 .27
.41 .39
.54 .51
.59 .56
.57 .56
.56 .55
19 20
21 22
.00 .00
.00 .00
.02 .02
.09 .08
.15 .14
.21 .20
.28 .26
.29 .29
.30 .30
.31 .32
.32 .34
.33 .36
.34 .38
.35 .40
.35 .42
.36 .44
.43 .49
.50 .55
.56 .60
.63 .65
.65 .66
.62 .64
.60 .61
21 22
21 22
.00 .00
.00 .00
.00 .00
.01 .01
.01 .01
.02 .01
.02 .02
.02 .02
.02 .02
.03 .02
.03 .03
.03 .03
.03 .04
.03 .04
.04 .05
.04 .06
.14 .13
.24 .20
.33 .28
.43 .35
.48 .40
.50 .45
.52 .49
21 22
23 24 25
.00 .00 .00
.00 .00 .00
.02 .02 .01
.08 .07 .05
.13 .12 .09
.19 .17 .13
.25 .22 .17
.28 .26 .20
.31 .29 .22
.34 .32 .25
.36 .36 .27
.39 .39 .31
.42 .44 .37
.45 .48 .43
.48 .52 .49
.51 .56 .55
.55 .59 .57
.59 .62 .58
.63 .65 .60
.67 .68 .62
.68 .68 .62
.65 .65 .61
.63 .63 .60
23 24 25
23 24 25
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.01 .01 .00
.01 .01 .01
.01 .01 .01
.02 .01 .01
.02 .02 .01
.02 .02 .01
.02 .02 .02
.03 .03 .03
.04 .05 .04
.05 .06 .06
.07 .08 .08
.08 .09 .10
.13 .12 .12
.17 .15 .14
.22 .17 .16
.27 .20 .18
.33 .26 .22
.39 .34 .28
.46 .41 .35
23 24 25
I:\ialmetwp\feWS\iea424.wph
4-121
-------
Table 4-42
Sample Teirain Weighting Factor Data File (WTJDAT) (Continued)
1« 1 2
j- 23 .03 .03
j* 22 .03 .03
j- 21 .03 .03
j* 20 .02 .02
j« 19 .02 .02
j* 18 .01 .02
j« 17 .01 .01
j- 16 .01 .02
j- 15 .02 .02
j- 14 .02 .03
J- 13 .03 .03
j« 12 .03 .03
j« 11 .02 .03
j- 10 .02 .02
j* 9 .02 .02
8 .01 .01
7 .01 .01
6 .01 .01
5 .00 .01
4 .00 .00
3 .00 .00
2 .01 .01
1 .01 .02
= 1 2
Height(n) «
i« 1 2
j* 23 .00 .00
j* 22 .00 .00
j* 21 .00 .00
j* 20 .00 .00
j* 19 .00 .00
j= 18 .00 .00
j* 17 .00 .00
JB 16 .00 .00
j* 15 .00 .00
j* 14 .00 .00
j* 13 .00 .00
j- 12 .00 .00
j* 11
j- 10
f«
.00 .00
.00 .00
9 .00 .00
.00 .00
.00 .00
6 .00 .00
5 .00 .00
4 .00 .00
2 .00 .00
1 .00 .00
1 2
8
7
100.000
3456
.02 .02 .02 .01
.02 .02 .02 .01
.02 .02 .02 .01
.02 .02 .01 .01
.02 .01 .01 .01
.01 .01 .01 .01
.01 .01 .01 .01
.02 .01 .01 .01
.02 .02 .02 .02
.03 .03 .03 .03
.03 .03 .03 .03
.03 .03 .03 .03
.03 .03 .03 .03
.02 .03 .03 .03
.02 .02 .02 .02
.02 .02 .02 .02
.01 .01 .01 .02
.01 .01 .01 .01
.01 .01 .01 .01
.00 .00 .00 .01
.01 .01 .01 .01
.01 .01 .01 .01
.02 .02 .02 .02
3456
400.000
3456
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
.00 .00 .00 .00
3456
78
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .00
.01 .01
.02 .01
.02 .02
.03 .02
.03 .02
.03 .02
.03 .03
.03 .03
.02 .03
.02 .02
.02 .02
.01 .01
.01 .01
.01 .01
.01 .02
.02 .02
78
9 10 11
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .00 .00
.00 .00 .00
.00 .00 .00
.01 .00 .00
.01 .01 .00
.01 .01 .01
.02 .01 .01
.02 .01 .01
.02 .02 .02
.03 .02 .02
.03 .03 .03
.03 .04 .04
.03 .03 .03
.02 .02 .02
.02 .02 .02
.01 .01 .01
.01 .01 .02
.02 .02 .03
.02 .03 .04
9 10 11
12 13
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.00 .00
.00 .00
.00 .00
.01 .01
.01 .01
.01 .01
.01 .01
.02 .02
.02 .02
.03 .03
.03 .03
.03 .03
.02 .02
.02 .02
.01 .01
.02 .02
.04 .05
.06 .07
12 13
14 15
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.00 .00
.00 .01
.01 .01
.01 .01
.01 .01
.01 .01
.02 .02
.02 .02
.02 .02
.03 .03
.02 .02
.02 .02
.02 .02
.01 .02
.03 .04
.06 .08
.09 .11
14 15
16 17
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.00 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.02 .01
.02 .01
.02 .01
.03 .03
.03 .05
.04 .06
.05 .08
.08 .12
.12 .17
.17 .23
16 17
18 19 20
.00 ,00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.01 .00 .00
.01 .01 .00
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .01 .01
.01 .00 .01
.01 .00 .01
.03 .04 .04
.06 .07 .07
.08 .10 .10
.11 .14 .13
.15 .19 .19
.22 .27 .27
.29 .35 .35
18 19 20
21 22
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.01 .00
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.01 .01
.03 .03
.06 .05
.08 .07
.11 .09
.17 .14
.25 .23
.34 .32
21 22
23 24 25
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.01 .00 .00
.01 .01 .00
.01 .01 .01
.01 .01 .01
.01 .02 .02
.02 .02 .02
.02 .02 .02
.03 .03 .03
.04 .04 .03
.06 .04 .04
.07 .05 .04
.12 .10 .08
.21 .19 .,15
.30 .27 .,22
23 24 25
789
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
789
10 11
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
10 11
12 13 14
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .01
12 13 14
15 16
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .01
.01 .01
15 16
17 18 19
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00-
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .00 .00
.00 .01 .01
.00 .01 .01
.01 .01 .02
.01 .02 .02
17 18 19
20 21
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.01 .01
.01 .01
.02 .02
.02 .02
20 21
22 23
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.01 .00
.01 .01
.02 .02
22 23
24 25
.00 .00
.00 .00
.00 .00
.00 ,.00
.00 ,.00
.00 ,.00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.01 .01
.02 .01
24 25
I:\ohoctwp\fcb95\iecl424.wph
4-122
-------
Table 4-42
Sample Terrain Weighting Factor Data File (WT.DAT) (Concluded)
Height <•) «
i»
j* 23
j= 22
j* 21
j* 20
j« 19
j= 18
j* 17
j= 16
j* 15
j= 14
j= 13
j* 12
j= 11
j= 10
j= 9
jn 8
j= 7
j= 6
j= 5
j= 4
j= 3
j= 2
j= 1
i=
1
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
1
2
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
2
800.000
3
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
3
4
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
4
5
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
5
6 7 8 9 10 11 12 13 14 15 16 17 18 19
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .01
6 7 8 9 10 11 12 13 14 15 16 17 18 19
20
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.01
20
21
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.01
21
22
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
22
23
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
23
24 25
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
24 25
Heighten) =
i=
j= 23
j= 22
j= 21
j= 20
j= 19
j= .18
j= 17
j= 16
j= 15
j= 14
j= 13
j= 12
Js 11
j= 10
j* 9
j= 8
j« 7
j= 6
j* 5
j« 4
j= 3
j= 2
j«= 1
i=
1
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
1
2
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
2
3500.00
3 4
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
3 4
5
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
5
6
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
6
7
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
7
8
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
8
9
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
9
10 11
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
.00 .00
10 11
12
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
12
13 14 15 16 17 18 19 20 21 22 23 24 25
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00. .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 -.00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
,00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
.00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00
13 14 15 16 17 18 19 20 21 22 23 24 25
I:\oilmetwp\feW5\iecU24.wph
4-123
-------
Variable No.
1
Table 4-43
Variable No. Variable
1 Cl
Terrain Weigiting Factor Data Ffle Format (WTJDAT)
HEADER RECORDS
Header Record #1
Type • Description
char*42 Documentation for
C2
Variable No. Variable
1 C3
Header Record #2
Type
char*42
Description
Documentation for W,
Header Record #3
Type
char*42
Description
Documentation for RMS0
Variable No.
1
2
3
4
5
Variable
XOFIN
YOFIN
NXFIN
NYFIN
DFIN
Jus
real
real
integer
integer
real
Header Record #4
Description
X coordinate (km) of fine grid origin (Le., origin
of CALMET grid)
Y coordinate (km) of fine grid origin
Number of columns in the fine grid domain
Number of rows in the fine grid domain
Horizontal grid spacing (km) of fine grid
format (15x,2f8.1^i5,f83)
t\ol»ttwP\fcWS\«ecl424.wph
4-124
-------
Table 4-43
Terrain Weighting Factor Data File Format (WT.DAT) (Continued)
HEADER RECORDS
Header Record #5
Variable No.
1 XOCRS
2
3
4
5
YOCRS
NXCRS
NYCRS
DCRS
Type
real
real
integer
integer
real
Description
X (km) coordinate of coarse grid origin (Le.,
origin of MM4 grid)
Y coordinate (km) of coarse grid origin
Number of columns in the coarse grid domain
Number of rows in the coarse grid domain
Horizontal grid spacing (km) of coarse grid
format
l:\otoetwp\fcMS\ieet424.wph
4-125
-------
Table 4-43
Terrain Weigiting Factor Data Ffle Format (WTJDAT) (Continued)
DATA RECORDS (repeated for NZ layers)
Record
Next
NY
records
NY-1-3*
Variable
No.
Variable Type Description
HT real Grid point height (m) of CALMET layers
format (12xJ12.4/)
lint- of text containing i indices
WO real array Terrain weighting factors. The following
statements are used to read the WO array:
dol5JJ~NYFIN,l,-l
15 READ (io99,113) (WO(ijj,k),i=:U«fin)
113 FORMAT (6x,150(lx,f3.2)/)
Line of text containing i indices
* line skipped by CALMET
I:\alnKtwp\fcWS\KcM24.wpb
4-126
-------
42.11 CALMET Output Files
42.11.1 CALMET.DAT
The CALMET.DAT file contains the meteorological data fields produced by the
CALMET model It also contains certain geophysical fields, such as terrain elevations, surface
roughness lengths, and land use types, which are used by both the CALMET meteorological
model and the CALGRID and CALPUFF air quality models.
CALGKED requires three-dimensional fields of temperature and vertical velocity which
are not used by CALPUFF unless the subgrid scale complex terrain (CTSG) option is employed.
Therefore, a switch is provided in the CALMET control file which allows the user to eliminate
these variables from the CALMET.DAT output file if the generated meteorological fields will be
used to drive CALPUFF in a mode where they are not needed. The larger version of
CALMET.DAT with the extra parameters can always also be used with CALPUFF. The option
to exclude the 3-D temperature and vertical velocity fields from the CALMET.DAT file is
provided to reduce the storage requirements of the output file and to a lesser extent to reduce
the CPU requirements of the CALMET model run.
CALMET.DAT File - Header Records
The CALMET.DAT file consists of a set of up to fourteen header records, followed by a
set of hourly data records. The header records contains a descriptive title of the meteorological
run, information including the horizontal and vertical grid systems of the meteorological grid,
the number, type, and coordinates of the meteorological stations included in the CALMET run,
gridded fields of surface roughness lengths, land use, terrain elevations, leaf area indexes, and a
pre-compute field of the closest surface meteorological station number to each grid point.
The actual number of header records may vary because, as explained below, records
containing surface, upper air, and precipitation station coordinates are not included if these
stations were not included in the run. A description of each variable in the header records is
provided in Table 4-44.
I:\ealmetwp\fcb95\feel424.wph
4-127
-------
Sample FORTRAN write statements for the CALMET.DAT header records are:
c —
Header record 1 - Run title
write(iunit)TITLE
Header record 2 — General run and grid information
1 NX^W^Z4X5WDPCORIGR,YORIGR4UTMZNJWFCOD J4SSTA,
2 NUSTA^IPSTA^OWSTA^LU JWATMWAT2J-CALGRD
Header record 3 - Vertical cell face heights (nz+ 1 values)
c —
c —
c —
c —
c --
Header records 4 and 5 - Surface station coordinates
if(nssta.ge.l)then
write(iunit)dAB24DUMpCSSTA
write(iuiut)CLAB34DUM,YSSTA
cndif
Header records 6 and 7 - Upper air station coordinates
if(nusta.ge.l)then
write(iunit)CLAB4JDUNpOJSTA
write(iunit)CLAB54DUM,YUSTA
endif
Header records 8 and 9 - Precipitation station coordinates
if(npsta.ge.l)then
write(iunit)CLAB64DUM,XPSTA
wite(iunit)CLAB7^DUM,YPSTA
endif
Header record 10 — Surface roughness lengths
write(iunit)CLAB84DUM^O
Header record 11 - Land use categories
write(iunit)CLAB9^DUM,ILANDU
Header record 12 — Terrain elevations
write(iunit)CLAB10,IDUNfJELEV
Header record 13 - Leaf area indexes
write(iunit)CLAB114DUM^aAI
Header record 14 - Nearest surface station to each grid point
write(iunit)CLAB124DUl^NEARS
L\citort*p\feb95\»ecU24.wph
4-128
-------
where the following declarations apply:
real ZFACEM(nz+ l)tXSSTA(nssta),YSSTA(nssta)^CUSTA(nusta),YUSTA(nusta)
real XPSTA(npsta),YPSTA(npsta)
real ZO(nx^y)rELEV(iK^iy)pOLAI(nx^y)
integer ILANDU(mc^iy)^JEARS(mMiy)
character*80 TITLE(3)
character's VER4^VE^CLABl,CL\B2,Clv^B3,CLAB4,CLAB5,CLAB6
character's CLAB7,CLAB8,CLAB9,C1AB10,CLAB11,CLAB12
logical LCALGRD
I:\catoetwp\feM5\KcM24.wph
4-129
-------
Table 4-44
CALMETDAT file - Header Records
Description
Header
Record No.
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
Variable No.
1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Variable
TITLE
VER
LEVEL
IBYR
IBMO
IBDY
IBHR
IBTZ
IRLG
ERTYPE
NX
NY
NZ
DGRID
XORIGR
YORIGR
IUTMZN
Tvne*
char'80
array
char*8
char'8
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
real
real
real
integer
Array with three 80-character lines of the user's
title of the CALMET run
CALMET model version number
CALMET model level number
Starting year of CALMET run
Starting month
Starting day
Starting hour
Base time zone (e.g., 05=EST, 06=CST,
07=MST, 08=PST)
Run length (hours)
Run type (0=wind fields only, l=wind and
micrometeorological fields). IRTYPE must be
run type 1 to drive CALGRID or the CTSG
option of CALPUFF
Number of grid cells hi the X direction
Number of grid cells in the Y direction
Number of vertical .layers
Grid spacing (m)
X coordinate (m) of south-west corner of grid
point (1,1)
Y coordinate (m) of south-west corner of grid
point (1,1)
UTM zone of coordinates
•char*80 = Character*80
char*8 = Character's
4-130
-------
Table 4-44
CALMET.DAT file - Header Records
Description
Header
Record No.
2
2
2
2
2
2
2
2
2
3
3
3
4b
4b
4b
Variable No.
17
18 .
19
20
21
22
23
24
25
1
2
3
1
2
3
Variable
IWFCOD
NSSTA
NUSTA
NPSTA
NOWSTA
NLU
IWAT1
IWAT2
LCALGRD
CLAB1
IDUM
ZFACEM
CLAB2
IDUM
XSSTA
Type*
integer
integer
integer
integer
integer
integer
integer
integer
logical
char*8
integer
real
array
char*8
integer
real
array
Wind field module used (0=objective
analysis, 1=diagnostic model)
Number of surface meteorological stations
Number of upper air stations
Number of precipitation stations
Number of over water stations
Number of land use categories
Range of land use categories
Corresponding to water surfaces (IWAT1 or
IWAT2, inclusive)
Flag indicating if special meteorological
parameters required by CALGRID are
contained in the file (LCALGRD must be
TRUE to drive CALGRID or the CTSG
option of CALPUFF)
Variable label ('ZFACE')
Variable not used
Heights (m) of cell faces (NZ + 1 values)
Variable label CXSSTA')
Variable not used
X coordinates (m) of each surface met.
station
• char*8 - Character'8
b Included only if NSSTA > 0
I:\eahnetwp\fcWS\tecH24.wph
4-131
-------
Table 4-44
CALMET.DAT file - Header Records
Description
Header
Record No.
5"
5"
5"
6"
6C
6e
r
r
r
3d
3d
8"
9"
91
9"
10
10
10
Variable No.
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
Variable
CLAB3
IDUM
YSSTA
CLAB4
IDUM
XUSTA
CLASS
IDUM
YUSTA
CLAB6
IDUM
XPSTA
CLAB7
IDUM
YPSTA
CLAB8
IDUM
ZO
Type'
char*8
integer
real
array
cbar*8
integer
real
array
char*8
integer
real
array
char»8
integer
real
array
char*8
integer
real
array
char*8
integer
real
array
Variable label («YSSTA*)
Variable not used
Y coordinates (m) of each surface met. station
Variable label (-XUSTA')
Variable not used
X coordinates (m) of each upper air met.
station
Variable label («YUSTA')
Variable not used
Y coordinate (m) of each upper air met.
station
Variable label ('XPSTA')
Variable not used
X coordinate (m) of each precipitation station
Variable label ('YPSTA')
Variable not used
Y coordinate (m) of each precipitation station
Variable label ('ZO')
Variable not used
Gridded field of surface roughness lengths! (m)
for each grid cell
1 char*8 « Character'8
b Included only if NSSTA > 0
c Included only if NUSTA > 0
d Included only if NPSTA > 0
I:\eatoetwp\feW3\teeU24.wph
4-132
-------
Table 444
CALMET.DAT file - Header Records
Description
Header
Record No.
11
11
11
12
12
12
13
13
13
14
14
14
Variable No.
1
2
3
1
2
3
1
2
3
1
2
3
Variable
CLAB9
IDUM
ILANDU
CLAB10
IDUM
ELEV
CLAB11
IDUM
XLAI
CLAB12
IDUM
NEARS
IBS'
char'8
integer
integer
array
char'8
integer
real
array
char'8
integer
real
array
char»8
integer
integer
array
Variable label (ILANDU')
Variable not used
Gridded field of land use category for
each grid cell
Variable label ('ELEV)
Variable not used
Gridded field of terrain elevations for
each grid cell
Variable label CXLAT)
Variable not used
Gridded field of leaf area index for
each grid cell
Variable label ('NEARS')
Variable not used
Nearest surface meteorological station
to each grid point
'char*8 = Character's
I:\catoetwp\feW5\iect424.wph
4-133
-------
CALMETDAT File - Data Records
The CALMET.DAT data records include hourly fields of winds and meteorological
variables. In addition to the regular CALMET output variables, CALGRID and the subgrid
scale complex terrain (CTSG) module of CALPUFF require additional three-dimensional fields
(air temperature and/or vertical velocity). The presence of these fields in the CALMET output
file is flagged by the header record logical variable, LCALGRD, having a value of TRUE.
The data records contain three-dimensional gridded fields of U, V, and W wind
components and air temperature, twc-dimensional fields of PGT stability class, surface friction
velocity, mixing height, Monin-Obukhov length, convective velocity scale, and precipitation rate
(not used by CALGRID), and values of the temperature, air density, short-wave solar radiatiion,
relative humidity, and precipitation type codes (not used by CALGRID) defined at the surface
meteorological stations. A description of each variable in the data records is provided in
Table 4-45.
Sample FORTRAN write statements for the CALMET.DAT data records are:
c —
Write U, V,.W wind components
— Loop over vertical layers, k
write(iunit)CLABU^IDATHR((U(ij,k),i=!,«) j=l,ny)
write(iunit)CLABV,NDATHR((V(ij,k),i=l^x)j=l,ny)
if(lX^LGRD)write(iunit)CLABW,NDATHR((W(ij,k+l),i=l,nx) j = l,ny)
— End loop over vertical layers
Write 3-D temperature field
if(LCALGRD.and.irtype.eq.l) then
— Loop over vertical layers, k
write(iumt)CIJ^T,NDATHR((2TEMP(i1j,k),i=l,iBan)j==l^ym)
— End loop over vertical layers
endif
I:\cmtortwp\fcW5\iecU24.wph
4-134
-------
c — Write 2-D meteorological fields
if(irtype.eq.l) then
write(iunit)CLABSQNDATmUPGT
write(iunk)CLABUSJ4DAiIHR,USTAR
write(iunit)CLABZI^DATHIlZI
write(iunit)CLABL>NDATHR3L
write(iunU)CLABWS^rDATHR,WSTAR
write(iunit)CLABRMM^DATHRJRMM
endif
c — Write 1-D variables defined at surface met stations
if(irtype.eq.l) then
write(iunit)CLABTK^IDATHR,TEMPK
write(iumt)CLABD,NDA'raR^HO
write(iunit)CLABQ,NDATHR,QSW
write(iunit)C!ABRIiNDATHRJRH
write(iunit)CLABP<^NDATHR4PCODE
endif
where the following declarations apply:
real U(nx,ny,nz),V(nx,ny,nz),W(nx,ny,nz)
real ZTEMP(nx,ny,nz)
real USTAR(nx,ny),2a(nx,ny)^L(nx,ny)
real WSTAR(nx,ny),RMM(nx^y)
real TEMPK(nssta),RHO(nssta),QSW(nssta)
integer IPGT(nx,ny)
integer IRH(nssta),IPCODE(nssta)
character's CLABU, CLABV, CLABW, CLABT, CLABSC, CLABUS, CLABZI
character's CLABL, CLABWS, CLABRMM, CLABTK, CLABD, CLABQ, CLABRH
character'8 CLABPC
I:\eahattwp\feW5\iecJ424.wph
4-135
-------
Table 4-45
CALMETJDAT file - Data Records
Record
Type
1
A
1
1
2
2
2
Variable
No.
1
2
3
1
2
3
Variable
Njne.
CLABU
NDATHR
U
CLABV
NDATHR
V
Type*
char'8
integer .
real array
char'3
integer
real array
Description
Variable label (IT-LEVxxx*, where xxx
indicates the layer number)
Year, Julian day and hour in the form
YYJJJHH
U-component (m/s) of the winds at each grid
point
Variable label CV-LEVxxx*, where xxx
indicates the layer number)
Year, Julian day and hour in the form
YYJJJHH
V-component (m/s) of the winds at each grid
point
CLABW char*8 Variable label CWFACExxx"), where xxx
indicates the layer number)
3b
3b
3b 3 W
(Record types 1^3 repeated NZ tunes (once per layer) as a set)
2 NDATHR integer Year, Julian day and hour in the form
YYJJJHH
real array W-component (m/s) of the winds at each grid
point
4»
CLABT char*8 Variable label (T-LEVxxx1, where xxx
indicates the layer number)
NDATHR integer Year, Julian day and hour in the form
YYJJJHH
4»> 3 ZTEMP real array Air temperature (deg. K) at each grid point
(Record type 4 repeated NZM times (once per layer))
• char*8 - Character's
b Record types 3 and 4 are included only if LCALGRD is TRUE
I:\ohnetwp\feb95\iect424.wpb
4-136
-------
Record
Type
5
5
5
6
6
6
7
7
7
8
8
8
9
9
9
10
10
10
Variable
No.
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
Variable
Njm£
CLABSC
NDATHR
IPGT
CLABUS
NDATHR
USTAR
CLABZI
NDATHR
ZL
CLABL
NDATHR
EL
CLABWS
NDATHR
WSTAR
CLABRMM
NDATHR
RMM
las'
char*8
integer
integer
array
char*8
integer
real art
char*8
integer
real art
char*8
integer
real arr
char*8
integer
real an
char*8
integer
real an
Table 4-45
CALMET.DAT file - Data Records (Continued)
Description
Variable label (TPGT)
Year, Julian day and hour in the form YYJJJHH
PGT stability class at each grid point
Variable label ('USTAR')
Year, Julian day and hour in the form YYJJJHH
real array Surface friction velocity (m/s)
Variable label ('ZT)
Year, Julian day and hour in the form YYJJJHH
real array Mixing height (m)
Variable label
Year, Julian day and hour in the form YYJJJHH
real array Monin-Obukhov length (m)
Variable label (WSTAR')
Year, Julian day and hour in the form YYJJJHH
real array Convective velocity scale (m/s)
Variable label ('RMM')
Year, Julian day and hour in the form YYJJJHH
real array Precipitation rate (mm/hr). Not used by CALGRID.
1 char*8 - Character's
I:\olraetwp\feb95\iecU24.wph
4-137
-------
X^WiSt
Type
11
11
11
12
12
12
13
13
13
14
14
14
15
15
15
w aiuaisA*
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
CLABTK
NDATHR
TEMPK
CLABD
NDATHR
RHO
CLABQ
NDATHR
QSW
CLABRH
NDATHR
IRH
CLABPC
NDATHR
IPCODE
• «••**••
char*8
integer
realarra
char'8
integer
real am
char*8
integer
real am
char'8
integer
integer
array
char'8
integer
integer
array
Table 4-45
CALMETDAT file - Data Records
Description
Variable label (TEMPI?)
Year, Julian day *nr* hour in the form YYJJJHH
real array Temperature (deg. K) at each surface met. station
Variable label (
-------
4.2.11.2 PACOUTJ5AT
CALMET has the option to output the unformatted meteorological data file in a form
compatible with MESOPUFF n. If IFORMO is set to two in Input Group 3 of the CALMET
control file, the output data file is called PACOUT.DAT.
The PACOUT.DAT output meteorological file consists of six header records followed by
a set of twelve data records for each hour. The header records contain the date and length of
the run, grid size and spacing, land use categories and surface roughness lengths at each grid
point, as well as other information required by MESOPUFF n. A description of each variable
in the header records is provided in Table 4-46. Sample FORTRAN write statements for the
PACOUT.DAT header records are:
c — Header record 1 — General run and grid information
1 ILWF,IUWF,DGRID,VK
c — Header record 2 — Surface station coordinates
write(io7)XSCOOR,YSCOOR
c — Header record 3 — Upper air station coordinates
write(io7)XUCOOR,YUCOOR
c — Header record 4 — Surface roughness lengths
write(io7)ZO
c — Header record 5 — Nearest surface station to each grid point
write(io7)NEARS
c — Header record 6 — Land use categories
write(io7)ILANDU
where the following declarations apply:
realXSCOOR(nssta),YSCOOR(nssta)pCUCOOR(nusta),YUCOOR(nusta)
real ZQ(nx,ny)
integer ILANDU(nx,ny)NEARS(nx,ny)
I:\catmetwp\feMS\iect424.wph
4-139
-------
The data records of the PACOUT.DAT are repeated once each hour. A description of
each variable in the data records is provided in Table 4-46. Sample FORTRAN write
statements for the data records are:
Write date and time
c —
c —
c —
c —
Write lower level wind components
I - Loop over grid ceDs
— End loop over grid cells
I Loop over grid cells
write(io7)((VL(ij)4=Lnx,)j!
— End loop over grid cells
Write upper level wind components
I Loop over grid cells
write(io7)((UUP(ij),i=Lnx,)j=l,ny)
— End loop over grid cells
— Loop over grid cells
write(io7)((VUP(ij),i=
— End loop over grid cells
Write mixing height
— Loop over grid cells
write(io7)((HTMIX(ij),i=l,nx,)j=l,ny)
End loop over grid cells
Write friction velocity
Loop over grid cells
write(io7)((USTAR(ij),i=l,nx,)i=l,ny)
End loop over grid cells
Write convective velocity scale
— Loop over grid cells
write(io7)((WSTAR(ij),i=Lnx,)j=Lny)
— End loop over grid cells
I:\almetwp\fcb9i\ieca24.wph
4-140
-------
Write Monin-Obukhov length
I Loop over grid cells
vvrite(io7)((XMONIN(y),i=Lnx,)j
— End loop over grid cells
Write PGT stability class
— Loop over grid cells
write(io7)((IPGT(y)4
1 - End loop over grid cells
Write precipitation code
— Loop over grid cells
write(io7)((RMM(y),i=
— End loop over grid cells
Lny)
Write average surface air density, air temperature, total solar radiation, relative humidity, and
precipitation code
write(io7)AVRHO,TEMPK,SRADJRH,IPCODE
where the following declarations apply:
real UL(nx,ny),VL(nx,ny),UUP(nx,ny),VUP(n)yiy)
real HTMK(nx^y),USTAR(nx^y),WSTAR(io^y)
real XMONIN(nx,ny),RMM(nx,ny)
real TEMPK(nssta),SRAD(nssta)
integer IPGT(nx,ny)
integer IRH(nssta) JPCODE(nssta)
fc\cata>etwp\fcWS\ieci424.wph
4-141
-------
Table 446
PACOUTJ5AT Ffle - Format
HEADER RECORDS - First six records of output file
yieaacr
Record No.
1
1
1
1
1
1
1
1
1
1
1
1
2
2
3
3
4
5
6
Y m Lnm&
No.
1
2
3
4
5
6
7
8
9
* 10
11
12
1
2
1
2
1
1
1
j^m^^^uiic
NYR
IDYSTR
ffiRMAX
NSSTA
NUSTA
IMAX
JMAX
IBTZ
ILWF
IUWF
DGRID
VK
XSCOOR
YSCOOR
XUCOOR
YUCOOR
ZO
HEARS
ILANDU
• iiiry
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
real
real
real array
real array
real array
real array
real array
integer
array
integer
array
Starting year
Starting Julian day
Number of hours in run
Number of surface stations
Number of rawinsonde stations
Number of grid points in X direction
Number of grid points in Y direction
Reference time zone
Lower-level wind field code
Upper-level wind field code
Grid spacing (m)
von Karman constant
Surface station X coordinates (grid units)
Surface station Y coordinates (grid units)
Upper air station X coordinates (grid units)
Upper air station Y coordinates (grid units)
Surface roughness lengths (m)
Station number of closest surface station to
grid point
Land use categories
I:\atortwp\fcb9S\tect424.wph
4-142
-------
Table 4-46
PACOUTJJAT File - Format (Concluded)
DATA RECORDS -Repeated for each hour of run
Description
Year
Julian day
Hour (00-23)
Header
Record No.
7
7
7
8
9
10
11
12
13
14
15
16
17
18
18
18
18
18
Variable
No.
1
2
3 '
1
1
1
1
1
1
1
1
1
1
1
2
3
4
5
Variable
KYR
KJUL
KHR
UL
VL
UUP
VUP
HTMDC
USTAR
WSTAR
XMONIN
IPGT
RMM
AVRHO
TEMPK
SRAD
IRH
IPCODE
ZSK
integer
integer
integer
real array
real array
real array
real array
real array
real array
real array
real array
integer array
real array
real
real array
real array
integer array
integer array
Lower-level u Mind component (m/s)
Lower-level v wind component (m/s)
Upper-level u wind component (m/s)
Upper-level v wind component (m/s)
Mixing height (m)
Friction velocity (m/s)
Convective velocity scale (m/s)
Monin-Obukhov length (m)
PGT stability class
Hourly precipitation rate (mm/hr)
Average surface air density (kg/m3)
Air temperature*(K)
Total solar ramalion'CV/m2)
Relative humidity*(%)
Precipitation code*
* At surface meteorological stations
I:\calmetwp\fcWS\teeM24.wph
4-143
-------
43 Postprocessing Program
43.1 PRTMET Meteorological Display Program
The CALMET meteorological model generates a large, binary meteorological file which
includes hourly gridded wind fields at multiple levels and hourly gridded surface meteorological
fields such as PGT stability class, friction velocity, Monin-Obukhov length, mixing height,
convective velocity scale, and precipitation rate. For many typical applications, this output file
wfll be several megabytes or more in length. The PRTMET program is a postprocessor
intended to aid in the analysis of the CALMET output data base by allowing the user to display
• selected portions of the meteorological data.
PRTMET has the following capabilities and options.
Option to print or suppress printing of the gridded hourly meteorological fields
(wind fields and surface meteorological variables).
User-selected levels of the wind fields printed.
Option to display wind fields as U, V components or as wind speed and wind
direction.
User-selected wind speed conversion factor for changing units (default units:
m/s).
Option to print or suppress printing of non-gridded surface meteorological
variables (air temperature, density, short-wave radiation, relative humidity,
precipitation type code).
Option to print or suppress printing of the gridded geophysical variables (surface
roughness lengths, land use categories, terrain elevations).
Option to print or suppress printing of X, Y coordinates of surface stations,
upper air stations, and precipitation stations used in the modeling.
Option to print or suppress printing of the CALMET run control variables stored
in the header records of the CALMET output file.
I:\caliartwp\fcW5\iecM24.wph
4-144
-------
User-selected portion of horizontal grid printed for all gridded meteorological
fields. Options include printing entire grid, subset of grid, or a single data point.
User-selected time period(s) printed.
User-selected format for display of gridded meteorological fields (self-scaling
exponential format or fixed format).
Two input files are read by PRTMET: a user-input control file and the unformatted
meteorological data file containing the gridded wind and micrometeorological fields generated
by CALMET. The output file, PRTMET.LST contains the printed data selected by the user.
Table 4-47 contains a summary of the input files and output file for PRTMET.
The PRTMET control file contains the user's inputs entered in FORTRAN free format.
A description of each input variable is shown in Table 4-48. A sample input file is presented in
Table 4-49.
PRTMET extracts and prints the data selected by the user from the CALMET data file.
A sample output file is shown in Table 4-50.
I:\catoetwp\feWS\ieca24.wpb
4-145
-------
Table 447
PRTMET Input and Output Files
6
7
Me Name Type
PRTMET JNP input
PRTMETJ-ST output
CALMETDAT input
formatted
formatted
formatted
Description
Control file containing user
inputs
List file (line printer output file)
Unformatted CALMET output
file containing meteorological
and geophysical data to be
printed
I:\e»baetwp\feb95\««U24.wph
4-146
-------
Table 4-48
PRTMET Control Ffle Inputs (PRTMETJNP)
inning date, time, nin length, and printing interval
r*h ^— *— Mm -^-— •
Columns
*
*
*
*
*
*
—• U u
Variable
IYR
IMO
IDAY
fflR
ITHR
ICHR
BBC
integer
integer
integer
integer
integer
integer
Description
Starting year of data to print (two digit)
Starting month ••
Starting day
Starting hour (00-23)
Total number of hours of data to read
Time interval between printed fields
(ICHR=1 to print every hour, ICHR=2
to print every second hour, etc.)
Entered in FORTRAN free format
I:\otoetwp\fcWS\tea424.wpb
4-147
-------
Table 448 (Continued)
PRTMET Control FHe Inputs (PRTMET.INP)
RECORD 2. Horizontal grid cells to print
Variable
NBX
NBY
NEX
NEY
Type
integer
integer
integer
integer
Description
X grid cell of lower left corner of grid to
print
Y grid cell of lower left corner of grid to
print
X grid ceD of upper right corner of grid
to print
Y grid cell of upper right corner of grid
to print
* Entered in FORTRAN free format
I:\olnetwp\feW5\xxW24.wph
4-148
-------
Table 4-48 (Continued)
PRTMET Control Ffle Inputs (PRTMETJNP)
RECORDS 3-7. Print control variables for CALMET run variables and station coordinates.
Record1 Columns Variable
3 * IHDV
ISUR
IUP
IPRC
INEARS
Type Description
integer Control variable for printing of
CALMET run variables stored in header
records of output file.
(0«do not print, Imprint)
integer Control variable for printing of X,Y
surface station coordinates.
(0«*do not print, 1« print)
integer Control variable for printing of X,Y
upper air station coordinates.
(0=do not print, 1=print)
integer Control variable for printing of X,Y
precipitation station coordinates.
(0=do not print, 1=print)
integer Control variable for printing of nearest
surface station number to each grid
point.
(0=do not print, 1=print)
' Entered in FORTRAN free format
1 Note: One variable entered per input record.
I:\eatoetwp\feWS\tecU24.wpb
4-149
-------
Table 4-48 (Continued)
PRTMET Control File Inputs (PRTMETJNP)
RECORDS 8-10. Print control variables and format for geophysical data.
Record1 f-nlnmns Variable
8 * ISRC
8
10
10
ILUC
IFF(2)
ITE
IFF(3)
Type
integer
integer array
element
integer
integer array
element
integer
integer array
element
Description
Control variable for printing of gridded
surface roughness lengths.
(0«do not print, Imprint)
Output format for surface roughness
lengths.
(0s self-scaling exponential format,
Infixed format). USED ONLY IF
ISRC=1.
Control variable for printing of gridded
land use categories.
(0=do not print, 1= print)
Output format for land use categories.
(0= self-scaling exponential format,
Infixed format). USED ONLY IF
ILUC=1.)
Control variable for printing of terrain
elevations.
(0=do not print, l=print)
Output format for terrain elevations.
(0= self-scaling exponential format,
l=fixed format). USED ONLY IF
* Entered in FORTRAN free format
1 Note: Two variables entered per input record.
t\ahartwp\feb95\K«t4M.wph
4-150
-------
Table 4-48 (Continued)
PRTMET Control Ffle Inputs (PRTMETJNP)
NEXT "NZ" RECORDS.
Wind field print control variables for each vertical layer.
Record1 Columns Variable
11 * IUVOUT(1)
11
11
IWOUT(1)
ITOUT(l)
Type Description
integer array Control variable for printing of Layer 1
element of wind fields.
(0=do not print, 1=print)
integer array Control variable for printing of Layer 1
element W component of winds.
(0=do not print, 1=print)
integer array Control variable for printing of Layer 1
element temperature field.
(0-do not print, 1=print)
12
12
12
IUVOUT(2)
IWOUT(2)
ITOUT(2)
integer array
element
integer array
element
integer array
element
Control variable for printing of Layer 2
of wind fields.
(0=do not print, 1 = print)
Control variable for printing of Layer 2
W component of winds.
(0=do not print, 1=print)
Control variable for printing of Layer 2
temperature field.
(0=do not print, 1=print)
(NZ records in all)
' Entered in FORTRAN free format
1 Note: Three variables entered per input record.
I:\ealroetwp\leb95\teet424.wph
4-151
-------
Table 4-48 (Continued)
PRTMET Control Ffle Inputs (PRTMETJNP)
NEXT RECORD1. Wind field format and units.
(polmnns
•
Variable
IPWS
XFACT
BFF(4)
integer
real
integer array
element
Description
Control variable for display of wind
field. (0=U,V components, l=wind
speed, wind direction)
Wind speed units conversion factor.
(1.0 for m/s, 1.944 for knots, 2237
for miles/hour)
Output format for wind speeds.
(0=self-scaling exponential format,
1=fixed format) .
* Entered in FORTRAN free format
1 Note: Three variables entered on the input record.
l:\caha«wp\feb95\t«J424.wph
4-152
-------
Table 4-48 (Continued)
PRTMET Control File Inputs (PRTMETJNP)
NEXT 6 RECORDS. Print control variables and format for gridded surface meteorological
variables.
Record1 Columns Variable
N+l • IPSC
N+l
N+2
N+2
N+3
N+3
IFF(5)
IFV
IFF(6)
IMH
IFF(7)
Type Descripdon
integer Control variable for printing of PGT
stability class.
(0«do not print, 1=print)
integer array Output format for PGT stability class.
element USED ONLY IF IPSC=1.
(0=self-scaling exponential format,
1=fixed format)
integer Control variable for printing of friction
velocity.
(0=do not print, 1=print)
integer array Output format for friction velocity.
element USED ONLY IF IFV=1. (0=self-scaling
exponential format, Infixed format)
integer Control variable for printing of mixing •
height.
(0=do not print, 1=print)
integer array Output format for mixing height. USED
element ONLY IF IMH=1. (0=self-scaling
exponential format, 1=fixed format)
(Continued)
" Entered in FORTRAN free format
1 Note: Two variables entered per input record.
I:\c«linetwp\feW5\«ecU24.wph
4-153
-------
Table 4-48 (Continued)
PRTMET Control Ffle Inputs (PRTMETJNP)
NEXT 6 RECORDS. Print control variables and format for griddcd surface meteorological
variables.
Record' CflllUflU* Variable
N+4 * IMOL
N+4
N+5
N+5
IFF(8)
ICVS
IFF(9)
Type Description
integer Control variable for printing of Monin-
Obukhov length.
(0~do not print, 1-print)
integer array Output format for Monin-Obukhov length.
element USED ONLY IF IMOL= 1.
(0=self-scaling exponential format, 1=fixed
format)
integer Control variable for printing of convective
velocity scale.
(0=do not print, l=print)
integer array Output format for the convective velocity
element scale. USED ONLY IF ICVS=1. (0=self-
scaling exponential format, 1=fixed format)
N+6
N+6
* IPR
IFF(10)
integer Control variable for printing of precipitation
rates.
(0=do not print, l=print)
integer array Output format for precipitation rates.
element USED ONLY IF IPR -L (0=self-scaling
exponential format, 1=fixed format)
" Entered in FORTRAN free format
1 Note: Two variables entered per input record.
l:\atesrtwp\fcW5\KcU24.wph
4-154
-------
Table 448 (Concluded)
PRTMET Control File Inputs (PRTMETJNP)
NEXT RECORD. Print control variable for non-gridded surface meteorological variables.
Columns
*
Variable
ISURF
integer
Description
Control variable for display of non-
gridded surface meteorological variables
(air temperature, air density, short-wave
solar radiation, relative humidity,
precipitation code). (0<=do not print,
Imprint)
' Entered in FORTRAN free format
I:\calmetwp\fcb9S\iecW24.wph
4-155
-------
Table 4-49
Sample PRTMET Control File (PRTMETJNP)
83,10,25,23, 2
10,20, 1
1,
0,
0,
0.
o.
0.
0,
0.
0.
0.
0.
1, 1
w. 1
0,20
1.
1.
l' 1
o', o
0. 0
0. 0
o. o
o. o
0, 0
o. o
0, 0
o. o
o. o
.0, 0 •
1, 1 •
1, 0 •
1, 0
1. 0
1, 0
1. 0
0
MS. YR, MO, DAT, MR to print. LENGTH, MINT INTERVAL
Ms. GRID to print. Ending GRID O.J) to print
Print CALMET RUN VARIASLES ? (e.g.. grid parameters, etc.)
Print x-y coordinates of SURFACE STATIONS?
Print x-y coordinate* of UPPER AIR STATIONS ?
Print x-y coordinates of PRECIPITATION STATIONS ?
Print NEAREST SURFACE STATION no. to each grid pt. ?
Print SURFACE ROUGHNESS LENGTHS
Print LAND USE CATEGORIES ?,
Print TERRAIN HEIGHTS ?,
Print LEAF AREA INDEX ?,
Print U-V, W, TEMP FIELDS ?
?, Fixed forwt
Fixed forMt ?
Fixed forwt ?
Fixed forwt ?
(LAYER 1)
(LAYER 2)
(LAYER 3)
(LAYER 4)
(LAYER 5)
(LAYER 6)
(LAYER 7)
(LAYER 8)
(LAYER 9)
(LAYER 10)
(LAYER 11)
Convert U.V to VS. WD ?, Units conv.. Fixed format
Print PGT STABILITY CLASS ?,
'Print FRICTION VELOCITY ?,
Print MIXING HEIGHT ?,
Print MONIN-OBUKHOV LENGTH ?,
Print CONVECTIVE VEL. SCALE ?
Print PRECIP. RATE ?,
Print SURFACE MET. STATION DATA
Fixed forMt
Fixed forMt ?
Fixed forMt ?
Fixed forMt ?
Fixed forMt ?
Fixed forMt ?
I:\catortwp\feW5\tttJ424.wj*
4-156
-------
Table 4-50
Sample PRTMET Output Ffle (PRTMETiST)
PRTMET INPUT OPTIONS
Version: 3.0 level: 941215
Beginning yaar 83
Beginning nanth 10
Beginning dny 25
Beginning Julian day 298
Beginning hour (00 to 23) 23
Total number of hours 30
Print interval (hours) 1
Subset of grid will be displayed.
Only a single point was selected
Tables will be generated for the point: ( 10, 20)
Display X-Y coordinates of surface sta. ?
Display X-Y coordinates of upper air sta. ?
Display X-Y coordinates of precip. sta. ?
Display nearest surface station array ?
Display surface roughness length ?
Display land use categories ?
Display terrain elevations ?
Display leaf area index ?
Control variables for printing of 3-D fields.
LEVEL
1
2
3
4
5
6
7
8
9
10
11
U,V
1
0
0
0
0
0
0
0
0
0
0
u
1
0
0
0
0
0
0
0
0
0
0
TEMP
1
0
0
0
0
0
0
0
0
0
0
Wind components (U, V) converted to US, UD ?
Display wind field in fixed format ?
Multiplicative factor for wind units: 1.0000
(If the factor is 1.0 then units will remain in M/S)
Display PGT stability class ? 1
Display friction velocity ? 1
Display Nonin-Obukhov length ? 1
Display Mixing height 7 1
Display eonvective velocity scale ? 1
Display precipitation rate ? 1
Display surface Met. station variables ? 0
Fixed format ?
Fixed format ?
Fixed format ?
Fixed format ?
Fixed format ?
Fixed format ?
Fixed format ?
Fixed format ?
Fixed format ?
Fixed format ?
1
0
0
0
0
0
I:\almetwp\feb93\*ecU24.«iph
4-157
-------
Table 4-50
Sample PRTMET Output File (PRTMETXST)
Data read fro- header records of CALMET output fHe
CAUtT Test Case: CAPTEX «xp *5; HH4 a* Step 1 flleld;
80 x 63 18 tan «eteorological grid — 10/25/83 SsOO - 10/28/83 4:00
20 Upper Mr. 149 Surface, 59 Precip stations. 2 Ovemater stna
CALHET Version: 3.0
Level: 941215
IBYR
IBHO
IIOY
liHR
ISTZ
IRLG
IRTYPE
LCALGRD
NX
NY
NZ
DCRID
XORIGR
YORIGR
IUTMZN
IWFCOO
NSSTA
NUSTA
NPSTA
NOUSTA
NLU
IUAT1
1WAT2
83
10
25
5
5
72
1
T
80
63
11
18000.000000
342000.000000
-135000.000000
0
0
149
20
59
2
10
50
55
LCALGRD = T
ZFACE * .000. 20.000.
2200.000,
3000.000, 4000.000,
80.000, 120.
000, 280.000, 520.000,
XSSTA * 416860.000000 230990.000000 805819.900000 745130.000000
728670.100000 483210.000000
1164370.000000 874140.000000
975100.000000 732620.000000
188560.000000 439060.000000
896290.100000 615550.000000
873069.900000 910050.100000
1511010.000000 1173380.000000
1646240.000000 1531730.000000
1451410.000000 1560330.000000
1387430.000000 1636080.000000
1774460.000000 1549040.000000
1269490.000000 1146550.000000
726780.000000 445940.000000
461530.000000 1002900.000000
351860.000000 335270.000000
270670.000000 64320.010000
165860.000000 321200.000000
464480.000000 86700.020000
353550.000000 -51750.000000
-50310.000000 850260.000000
701600.000000 747730.000000
-289450.000000 -383960.000000
-314650.000000 -374040.000000
149020.000000 47959.990000
712160.100000
-168770.000000
66079.980000
734010.000000
532020.000000
1026270.000000
1614620.000000
1187330.000000
1833230.000000
1435950.000000
184240.000000
1297560.000000
600550.000000
389870.000000
216740.000000
1091750.000000
937650.000000
463020.000000
189010.000000
1172370.000000
-198740.000000
-315840.000000
245590.000000
83799.980000
942400.000000
893209.900000
-174080.000000
1014370.000000
455190.000000
821810.100000
1427290.000000
1923270.000000
1484080.000000
1335730.000000
1529520.000000
885770.000000
847939.900000
212520.000000
334980.000000
320540.000000
1251400.000000
539450.000000
-340210.000000
644630.000000
-232490.000000
-270290.000000
211380.000000
-176810.000000
1080.000, 1400.000, 1800.000,
I:\dhartwp\fcWS\tKtC4.wpb
4-158
-------
Table 4-50
Sample PRTMET Output Ffle (PRTMETXST)
•46640.020000
411580.000000
769120.000000
566970.000000
541980.000000
1151070.000000
735900.000000
805569.900000
-131420.000000
1015400.000000
156490.000000
313160.000000
847920.100000
75459.990000
440040.000000
586590.000000
936560.100000
942790.100000
1033490.000000
1135980.000000
708530.000000
-32519.990000
802740.000000
145030.000000
872360.000000
-46420.010000
266970.000000
289110.000000
369310.000000
928079.900000
939709.900000
621360.000000
104940.000000
118240.000000
1088530.000000
10679.990000
743220.000000
-5010.010000
354240.000000
768990.000000
962910.100000
842680.100000
1094310.000000
741319.900000
137650.000000
21170.010000
457600.000000
509800.000000
520880.000000
YSSTA * -62850.010000 -100570.000000 48900.000000 99060.000000
58060.000000
546800.000000
338940.000000
397280.000000
857270.000000
846950.000000
1088460.000000
965090.000000
979310.000000
1021470.000000
1112700.000000
1474260.000000
1288820.000000
582050.000000
499560.000000
1089220.000000
-537220.000000
-337500.000000
-384330.000000
-279140.000000
355370.000000
472150.000000
116720.000000
473900.000000
483180.000000
313670.000000
139180.000000
393560.000000
512740.000000
567920.000000
247440.000000
380860.000000
-72479.990000
404620.000000
326700.000000
321300.000000
206680.000000
224700.000000
269670.000000
659440.000000
869340.000000
652990.000000
1189990.000000
1323960.000000
966500.000000
1139970.000000
989990.000000
829930.000000
1742780.000000
1662770.000000
1190700.000000
683610.000000
845630.000000
-214540.000000
-390100.000000
-440000.000000
-97420.000000
-404500.000000
291380.000000
89.996340
254480.000000
845330.000000
407050.000000
-91030.000000
199220.000000
337890.000000
492250.000000
493540.000000
104130.000000
113080.000000
773880.000000
699850.000000
234220.000000
356010.000000
361380.000000
618690.000000
803670.000000
1069260.000000
876150.000000
1141610.000000
1268690.000000
1210010.000000
1363430.000000
1172350.000000
1860960.000000
849550.000000
1009140.000000
404020.000000
1938220.000000
-262000.000000
-477340.000000
-297870.000000
714840.000000
618610.000000
207290.000000
161140.000000
447600.000000
324940.000000
251860.000000
-11710.010000
-3750.000000
560000.000000
751230.000000
545170.000000
47320.000000
-62370.000000
542120.000000
454920.000000
-49280.000000
264160.000000
14910.000000
350480.000000
1024450.000000
1074250.000000
900110.000000
1163030.000000
986980.000000
821940.000000
1242570.000000
1918200.000000
1702650.000000
864840.000000
793000.000000
885630.000000
-329400.000000
1093630.000000
-234150.000000
-401780.000000
-243160.000000
906790.000000
372350.000000
419740.000000
454750.000000
653090.000000
271470.000000
471610.000000
349650.000000
313170.000000
646120.000000
564980.000000
141590.000000
-51970.000000
237810.000000
68120.000000
-100720.000000
XUSTA - 144490.000000 706370.000000 922209.900000 289110.000000
928079.900000 456390.000000 541980.000000 1172370.000000
150580.000000 1251400.000000 73989.990000 1251440.000000
539450.000000 -50310.000000 893209.900000 -315840.000000
-198740.000000 -255010.000000 937650.000000 691880.000000
I:\atoetwp\fcW5\iecU24.wph
4-159
-------
Table 4-50
Sample PRTMET Output File (PRTMET1ST)
YUSTA « 138850.000000 WTO70.000()00^2^0(«000-11710.010000
560000.000000 2*0920.000000 512740.000000 JJSt
474020.000000 1093630.000000 845220.000000 515270.
-234150.000000 -279140.000000 14910.000000 207290.000000
618610IOOOOOO -10240.010000 -262000.000000 911740.000000
768990.000000 872360.000000 743220.000000
369310.000000 962910.100000
928079.900000 842680.100000
939709.900000 1094310.000000
-50310.000000 850260.000000
747730.000000 -198740.000000
741319.900000 805569.900000
211380.000000 149020.000000
75459.990000 -46420.010000
266970.000000 354240.000000
104940.000000 137650.000000
21170.010000 1015400.000000
156490.000000 145030.000000
321200.000000 937650.000000
-314650.000000
471610.000000 234220.000000 -49280.000000
-3750.000000 349650.000000
560000.000000 313170.000000
751230.000000 646120.000000
-279140.000000 -97420.000000
-404500.000000 618610.000000
564980.000000 380860.000000
419740.000000 473900.000000
845330.000000 324940.000000
251860.000000 271470.000000
47320.000000 141590.000000
-51970.000000 404620.000000
326700.000000 699850.000000
-214540.000000 -262000.000000
116720.000000
XPSTA « 289110.000000 76»
520880.000000
541980.000000
1151070.000000
1135980.000000
1172370.000000
-232490.000000
313160.000000
47959.990000
411580.000000
769120.000000
-32519.990000
1088530.000000
10679.990000
1251400.000000
847920.100000
942790.100000
1033490.000000
539450.000000
644630.000000
621360.000000
245590.000000
83799.980000
440040.000000
936560.100000
118240.000000
457600.000000
509800.000000
-383960.000000
YPSTA « -11710.010000 471
-100720.000000
512740.000000
567920.000000
493540.000000
714840.000000
906790.000000
321300.000000
254480.000000
313670.000000
139180.000000
113080.000000
542120.000000
454920.000000
1093630.000000
206680.000000
337890.000000
492250.000000
-234150.000000
-243160.000000
545170.000000
161140.000000
447600.000000
407050.000000
199220.000000
-62370.000000
237810.000000
68120.000000
291380.000000
I:\olmetwp\fcb95\tect424.wpti
4-160
-------
Table 4-50
Sample PRTMET Output Ffle (PRTMETXST)
** -- TABLE FOR ONE POINT -• •*
The point selected is < 10, 20)
Surface Roughness Length (•)
Land Use Category
Terrain Elevation (•)
Leaf area index
Nearest surface sta. to I,J
Met. Variables for point
YEAR MONTH DAY HOUR
83 10 25 23
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
-------
TaMe 4-50
Sample PRTMET Output File (PRTMET.LST)
Net. Variables for point (x.y) '
YEAR MONTH DAY HOUR PGT
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
83
Met.
YEAR
83
83
83
83
83
83
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
25
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
Variables for
MONTH DAY
10
10
10
10
10
10
26
27
27
27
27
27
23
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
point
HOUR
23
0
1
2
3
4
5
6
5
6 .
5
4
5
5
5
4
4
4
4
4
4
• 4
4
4
4
4
5
5
6
6
(x.y)
LEVEL
1
1
1
1
1
1
• ( 10. 20)
U*
(ai/s)
.453
.319
.373
.316
.325
.374
.331
.296
.191
.297
.295
.160
.084
.060
.153
.254
.470
.505
.461
.350
.354
.376
.315
.316
* ( 10, 20)
WIND SPEED
On/s)
2.83
3.60
3.95
3.41
3.49
2.85
NIX HT L V*
309.3 1.613B5E*02 .000
182.6 7.95247E+01 .000
232.2 1.10071E+02 .000
183.2 8.12215E-KJ1 .000
237.1 1 .383206*02 .000
323.2 2.18336E+02 .000
273.6 1.71256E+02 .000
225.1 1.37510E+02 .000
108.9 4.1993SE+01 .000
233.4 1.38406E+02 .000
224.9 -4.50452E+02 .189
140.4 -2.20051E+01 .356
165.8 -1.033S5E+00 . .465
185.2 -1.40114E-01 .538
214.7 -9.37766E+00 .578
256.6 -5.10777E+01 .593
471.9 -4.14514E+02 .570
592.6 -2.37370E+02 .835
741.0 -4.11301E+02 .540
209.6 9.65873E+01 .000
212.1 9.80819E+01 .000
236.9 1.11263E+02 .000
181.1 7.78793E+01 .000
178.1 7.79874E+01 .000
MIND DIRECTION U-VEL.
(Deg) («/s)
302.7 -.00019
306.4 -.00043
308.1 -.00040
303.7 -.00016
310.6 -.00051
308.4 -.00055
Precip.
(aw/hr)
.000
.000
.000
.000
.000
.000
.000
.000
.000
.028
.027
.605
.112
.227
.157
.120
.168
.088
.110
.392
.700
.246
.098
.122
TEMP
(deg K)
277.0
276.7
276.4
276 .-0
275.5
275.4
Met. Variables for point (x.y)
YEAR MONTH DAY HOUR PGT
83
83
83
83
83
83
10
10
10
10
10
10
26
27
27
27
27
27
23
0
1
2
3
4
6
5
5
5
5
6
« ( 10, 20)
U* MIX HT
(•/s) («i)
.266
.375
.422
.350
.361
.268
138.7
227.7
270.7
205.7
214.5
140.3
L
(*)
5.47473E+01
1.09870E+02
1.38653E+02
9.50717E+01
1.00966E+02
5.57894E+01
W* Preeip.
(•/«) (am/hr)
.000
.000
.000
.000
.000
.000
.130
.295
.134
.131
.537
.307
t\e«toetwp\feb95\»«M24.wpb
4-162
-------
5. REFERENCES
Allwine, KJ. and CD. Whiteman, 1985: MELSAR: A mesoscale air quality model for complex
terrain: Volume 1-Overview, technical description and user's guide. Pacific Northwest
Laboratory, Richland, Washington.
Berkowicz, R. and L.P. Prahm, 1982: Evaluation of the profile method for estimation of surface
fluxes of momentum and heat Atmospheric Environment, 16, 2809-2819.
Briggs, GA., 1982: Simple substitutes for the Obukhov length. Proceeding, 3rd Joint Conference
onAppUc. of Air Poll Meteor., American Meteorological Society, Boston, MA, pp. 68-71.
Briggs, GA., 1985: Analytical parameterizations of diffusion: The convective boundary layer. J.
Oim, andAppl Meteor^ 24, 1167-1186.
Carson, D J., 1973: The development of a dry, inversion-capped, convectively unstable boundary
layer. Quart. /. Roy. Meteor. Soc., 99, 450-467.
Douglas, S. and R. Kessler, 1988: User's guide to the diagnostic wind field model (Version 1.0).
Systems Applications, Inc., San Rafael, CA, 48 pp.
Dean, J.D., and W.M. Snyder, 1977: Temporally and areally distributed fainfall. J. Irrigation
and Drainage Div., American Society of Civil Engineers, 103, 221-229.
Dyer, AJ. and B.B. Hicks, 1970: Flux-gradient relationships in the constant flux layer. Quart. J.
Roy. Meteor. Soc., 96, 715-721.
EPA, 1993: Interagency Workgroup on Air Quality Modeling (IWAQM) Phase I report:
Interim recommendations for modeling long range transport and impacts on regional
visibility. U.S. EPA, Research Triangle Park, NC.
EPA, 1995: Testing of meteorological and dispersion models for use in regional air quality
modeling. Report prepared for U.S. EPA by Sigma Research/EARTH TECH,
Concord, MA.
Garratt, J.R., 1977: Review of drag coefficients over oceans and continents. Mon. Wea. Rev.,
105, 915-929.
Godden, D. and F. Lurmann, 1983: Development of the PLMSTAR model and its application
to ozone episode conditions in the South Coast Air Basin. Environmental Research and
Technology, Inc., Westlake Village, CA.
Goodin, W.R., GJ. McRae and J.H. Seinfeld, 1980: An objective analysis technique for
constructing three-dimensional urban scale wind fields. /. Appl Meteorol., 19,98-108.
Hanna, S.R., L.L. Schulman, R J. Paine, J.E. Pleim and M. Baer, 1985: Development and
evaluation of the Offshore and Coastal Dispersion Model JAPCA, 35,1039-1047.
I:\almetwp\feb95\refer.wpb
5-1
-------
Hanna, S.R., J.C. Wefl and RJ. Paine, 1986: Plume model development and evaluation. Report
Number D034-500. Electric Power Research Institute, Palo Alto, CA.
Holtslag, AAJM. and A.P. van Ulden, 1982: Simple estimates of nighttime surface fluxes from
routine weather data. KNMI Scientific Report, W.R. 82-4, 11 pp.
Holtslag, AA.M. and A.P. van Ulden, 1983: A simple scheme for daytime estimates of the
surface fluxes from routine weather data. /. Clim. andAppL Meteor., 22, 517-529.
Hosker, R.P., 1974: A comparison of estimation procedures for overwater plume dispersion.
on Atmo^heric Diffusion and Air Pottution. American
Meteorological Society, Boston, MA.
Kessler, R.C., 1989: User's guide Systems Applications, Inc. version of the Colorado State
University mesoscale model (Version 2.0). Systems Applications, Inc., San Rafael, CA,
75pp.
Kitaigorodskii, SA., 1973: The physics of air-sea interaction. Israel Program for Scientific
Translations. Jerusalem.
Landsberg, H.E., 1981: The Urban Heat Island. Academic Press, New York, NY.
Liu, M.K. and M. A. Yocke, 1980: Siting of wind turbine generators in complex terrain. 7.
Energy, 4, 10:16.
Maul, P.R., 1980: Atmospheric transport of sulfur compound pollutants. Central Electricity
Generating Bureau MTO/SSD/80/0026/R. Nottingham, England.
O'Brien, J J., 1970: A note on the vertical structure of the eddy exchange coefficient in the
planetary boundary layer. /. Attnos. ScL, 27, 1213-1215.
Oke, T.R., 1978: Boundary Layer Climates. John Wiley & Sons, New York, NY.
Oke, T.R., 1982: The energetic basis of the urban heat island. Quart. J.R. Met. Soc., 108, 1-2:4.
Pearson II, F., 1990: Map Projections: Theory and Applications. CRC Press, Inc., Boca Raton,
FL., 372 pp.
Scire, J.S., F.W. Lurmann, A. Bass and S.R. Hanna, 1984: User's guide to the MESOPUFF II
model and related processor programs. EPA-600/8-84-013. U.S. Environmental
Protection Agency, Research Triangle Park, NC.
Scire, J.S., D.G. Strimaitis and RJ. Yamartino, 1990a: Model formulation and user's guide for
the CALPUFF dispersion model. Sigma Research Corp., Concord, MA.
Scire, J.S., E.M. Insley and RJ. Yamartino, 1990b: Model formulation and user's guide for the
CALMET meteorological model. Sigma Research Corp., Concord, MA.
I:\calmetwp\feb9S\Kfer.wph
5-2
-------
Scire, J.S., RJ. Yamartino, G.R. Carmichael and Y.S. Chang, 1989: CALGRID: A mesoscale
photochemical grid model. Volume II: User's guide. Sigma Research Corp., Concord,
MA.
Steyn, D.G. and T.R. Oke, 1982: Hie depth of the daytime mixed layer at two coastal locations:
A model and its validation. Bound. Layer Meteor., 24, 161-180.
Tesche, T.W., J.G. Wilkinson, D.E. McNally, R. Kapahi and W.R. Oliver, 1988: Photochemical
modeling of two SCCCAMP-1984 oxidant episodes. Volume H-ModeUng procedures
and evaluation results. Prepared for the U.S. Environmental Protection Agency, Region
IX by Radian Corporation, Sacramento, CA.
van Ulden, A.P. and AA.M. Holtslag, 1985: Estimation of atmospheric boundary layer
parameters for diffusion applications. J. Clint andApp. Meteor., 24,1196-1207.
Venkatram, A., 1980a: Estimating the Monin-Obukhov length in the stable boundary layer for
dispersion calculations. Boundary Layer Meteorology, 19, 481-485.
Venkatram, A., 1980b: Estimation of turbulence velocity scales in the stable and the unstable
boundary layer for dispersion applications. In: Eleventh NATO-CCMS International
Technical Meeting on Air Pollution Modeling and its Application. 54-56.
Wheeler, N., 1990:. Modeling of mixing depths during a southern California air quality study
ozone episode. Proceedings oftheAWMA International Specialty Conference on
Tropospheric Ozone and the Environment. March 19-22, Los Angeles, CA.
Wei, T.C. and J.L. McGuiness, 1973: Reciprocal Distance Squared Method, A computer
technique for estimating areal precipitation. ARS NC-8, U.S. Dept. of Agriculture,
Washington, DC.
Weil, J.C. and R. P. Brower, 1983: Estimating convective boundary layer parameters for
diffusion application. Draft Report Prepared by Environmental Center, Martin Marietta
Corp. for Maryland Dept. of Natural Resources.
Weil, J.C., 1985: Updating applied diffusion models. / Clim. AppL Meteor., 24, 1111-1130.
Yamartino, R J., J.S. Scire, S.R. Hanna, G.R. Carmichael and Y.S. Chang, 1989: CALGRID: A
mesoscale photochemical grid model. Volume I: Model formulation document. Sigma
Research Corp., Concord, MA.
Yamartino, RJ., J.S. Scire, S.R. Hanna, G.R. Carmichael and Y.S. Chang, 1992: The
CALGRID mesoscale photochemical grid model -1. Model formulation. Atmospheric
Environment, 26A, 1493-1512.
Zilitinkevich, S.S., 1972: On the determination of the height of the Ekman boundary layer.
Boundary Layer Meteorology, 3, 141-145.
I:\calrnetwp\feb95\refer.wph
5-3
-------
-------
APPENDIX A
Tree Diagram of the CALMET Model
and SubroatiiDe/Fniictioo Calling Strnctnn
I:\eabnetwp\feb9S\vduLWph
-------
-------
Appendix A
Subroutine/Function Calling Structure - Tree Diagram
(Return to Calling Routine Indicated by *)
(Setup Phase of Model Execution)
MAIN First
Program level
Subr.
MAIN > underO
setup
Second
Level
Subr.
Third
Level
Subr.
Fourth
Level
Subr.
> datetn > date *
ti«e *
etine*
openfl *
readcf — -> readin
openot *
readge -
setcoffi
readhd
julday *
•> out
fillgeo *
-> out
-> rdhd
deltt *
rds
rdp
rehdu *
rchdt
Bicroi *
diagi -
outhd -
outpcl —
rdwt *
indecr
-> terset
-> wrtrld
wrtrZd
wrti2d
-> wpcrZd
Mpci2d
out
-> dablnk *
•Heap *
altonu *
setvar *
-> wt *
wrt2 *
-> Hrt *
wrt2 *
-> dedat *
-> unpcks *
dedat *
-> rdnud •
upack *
dedat *
-> julday *
iner •
-> julday •
indecr *
qcksrtS *
bilinear *
•-> Hrt *
nrt2 *
Fifth
Level
Subr.
A-l
-------
Appendix A
Subroutine/Function Calling Structure - Tree Diagram
(Return to Calling Routine Indicated by *)
(COMPUTATIONAL and TERMINATION Phases of Model Execution)
MAIN
Program
Fir«t
Level
Subr.
MAIN > COM?
Second
Level
Subr.
-> grday *
aolar *
rds
Third
Level
Subr.
Fourth
Level
Subr.
Fifth
Level
Subr.
Sixth
Level
Subr.
-> unpcks *
dedat *
Miasfc > cMpdZ *
ireplac •
rreplac *
rdp > rdnud *
unpack *
dedat *
rdow *
diag2 *
indecr *
rdup
vertav *
dedat *
deltt *
facet
prepdi
diagno — -
> julday *
-> intp *
-> cgamna --
vertnv *
XMit *
dedat *
deltt *
> uindbc *
XMit *
progrd
topof2 *
Minim
-> dedat *
intp*
deltt *
windpr -
outfit *
slope
> XMit *
-> divcel
windbc
-> imdlpt
-> XMit *
tmdlpt
-> undlpt
wndpr2 -
fradj *
fMinf *
stheor > water2
—> esat*
siMilt*
—> siMilt*
elustr2
interZ > XMit *
barier * > unidot *
fMinf *
interp > XMit *
barier * ---•> unidot "
fMinf *
rdmrt > juldey *
indecr *
qeksrtS *
bilinear *
(Continued)
L\c*laetwp\feWS\ifxha.'wph
A-2
-------
Appendix A
Subroutine/Function Calling Structure • Tree Diagram
(Return to Calling Routine Indicated by *)
(COMPUTATIONAL and TERMINATION Phases of Model Execution)
MAIN First
Program Level
Subr.
Second Third
Level L«vel
Subr. Subr.
Hindi >
llbreez >
adjust *
snooth *
divcel *
divpr >
rtheta >
out > wrt *
Hft2 *
Fourth
Level
Subr.
rsowts
box
interb
wndlpt *
undlpt *
Fifth
Level
Subr.
> nit *
— •> unidot
> nit *
barter
farfnf '
> unidot •
water > esat *
pgtstb *
heatfx *
airden *
elustr *
•rixht
avemix *
Hstarr *
gride *
taapSd -
avetMp *
outhr
pacave *
outpc
> nixdt *
out
-> dedat *
deltt *
-> nrtr2d
wrti2d
urtrld
urtild
-> npcr2d
npci2d
grday *
out
•> nrt *
wrt2 •
-> wrt *
MTt2 *
MAIN > fin
grday *
datetm
julday *
deltt *
date •
time *
etiwe *
I:\almetwp\feb9S\«pdxa.wpb
A-3
-------
Appendix A
Subroutine/Function Calling Structure Table
(* indicated no routines called)
SUBROUTINE
adjust
airden
alkap
altonu
avcnux
avetmp
barier
bilinear
box
cgamma
onpd2
comp
date
datetm
deblnk
dedat
deltt
diag2
diagi
diagno
divcel
divpr
CALLED BY
diagno
comp
readin
readin
comp
comp
interp4nter2Tmterb
rdmm4
llbreez
predpi
missfc
main
datetm
setup,fin
readin
rdhd^dvdp,comp,cgamma,
prepdi,temp3d
prepdi,cgamma,temp3d,
readhd,comp,fin
comp
setup
comp
diagnn,minim
diagno
CALLS
•
•
•
•
*
•
unidot
*
unidot
intp,dedat,deltt
*
rduplvertav,gfday>rdstrdptrdow>incr>dcdat,
facet^olar,water5pgtstbieatfe,airden,elustr,
mixht,wstarr^ridpr,out,outhr,ddtt,prepdi,
diagno^nissfc,temp3d,avemix,pacave,outpc
*
date,time,etime
*
•
*
*
terset
wmdTxixmit,topof2^ninimwindpr,outfil,
slope,wndpr2^radj^min£,progrd^nter2,
mterp^djust^mooth,divcel,divpr^theta,
rdmm4,windljlbrecz
*
wndlpt
—
A-4
-------
Appendix A
Subroutine/Function Calling Structure Table
(* indicated no routines called)
SUBROUTINE
elustr
elustr2
esat
crime
facet
fillgeo
fin
fminf
fradj
grday
gride
hcatfx
incr
indecr
inter2
interb
interp
intp
ireplac
julday
llbreez
micro!
minim
missfc
mixdt
mixht
openfl
CALLED BY
comp
stheor
water
datetm
comp
readge
main
diagno^nterp4nter2,
interb
diagno
comp,fin
comp
comp
rdhd4
comp,rdmm4,readhd
diagno
llbreez
diagno
cgamma,facet
missfc
Gn,rdup,readcf,rdhd4
diagno
setup
diagno
comp
mixht
comp
setup
CALLS
*
nmifa
•
•
intp
•
datetmjulday,deltt£rday
*
*
*
*
•
*
*
xmit,barier,fminf
xmit,baricr,fminf
jmit,barier,fminf ~
*
*
*
box4nterb
*
divcei,windbc
anpd2*eplacjrePlac
*
mixdt,out
*
-
A-5
-------
Subroutine/Function Calling Structure Table
(* indicated no routines called)
SUBROUTINE
openot
out
outfit
onthd
outhr
outpc
outpcl
pa cave
pgtstb
prepdi
progrd
qcksrtS
rdhd
rdhd4
rdhdu
rdmm4
rdnwd
rdow
rdp
rds
rdup
rdwt
readcf
readge
readhd
readin
rreplac
CALLED BY
setup
setcom,comp^eadge,
outpcl^miditjOUtpc
diagno
setup
comp
comp
setup
comp
comp
comp
diagno
rdmm4
readhd
readhd
readhd
readhd,diagno
rdp
comp
readhd,comp
readhd,comp
comp
setup
setup
setup
setup
readcf
missfc
CALLS
•
wrt,wrt2
*
wrtrld,wrtr2d,wrti2d
wrtr2d,wrti2d,wrtrld,wrtild
wpa2d,wpci2d«rday,out
wpcr2d,wpci2d,out
*
•
cgamma,vertav,xmit,deltt,dedat
xmit
*
dedat
julday^ncr
*
julday4ndecr,qcksrt3,bUinear
*
*
rdnwd,unpack,dedat
unpcks,dedat
julday
*
readinjulday
out^llgeo
ronOj"dnj^^^^ i "x*^ ™ t^
deblnk^allcaptaltonu^tvar
*
.. _
• 1 •- T-
. ...
• •>•
III mt m " —
mir —
m
, _,. -
— .
m
• ••••
^^
__
>-rn
.
_
.
im4 indetcr
A-6
-------
Appendix A
Subroutine/Function Calling Structure Table
(* indicated no routines called)
SUBROUTINE
rsqwts
rtheta
setcom
setup
setvar
similt
slope
smooth
solar
stheor
tempSd
terset
time
topofZ
underO
unidot
unpack
unpcks
vertav
water
water2
windl
windbc
windlpt
windpr
wndprZ
CALLED BY
windl
diaeno
setup
main
readin
elustrZ, water2
diagno
diagno
comp
diagno
comp
diagi
datetm
diagno
main
barier,barier2
rdp
rds
comp,prepdi
comp
stheor
diagno
Hiapnr^TninJTn
windpr,wndpr2,dtvpr,
rtheta^lope
diagno
diagno
CALLS
•rmit
wndlpt
out
datetm,opern%rcadc£openoMttad
TCiHhri tnirmijHiapijnnthd, nutpc]
•
*
xmit,wndlpt
*
•
elustrZ, water2
dedat,deltt
*
*
*
*
*
*
»
*
esat
esat, similt
rsqwts
*
•
wndlpt
wndlpt
ge^etcom,
Urdwt
I:\c»hnetwp\feW5\ipdii.wph
A-7
-------
SUBROUTINE
wpci2d
wpcr2d
wit
wrti2d
wrtr2d
wrt2
wrtild
wrtrld
wstarr
xmit
A^ipendixA
Subroutine/Function Calling Structure Table
(* indicated no routines called)
CALLED BY
ootpcLoutpc
outpcLootpc
out
outhr,outhd
outhd,outhr
out
outhr
outhd,outhr
comp
CALLS
prepdi,diagno^lope,progrd,
mterp4nter2^sqwts,interb
I:\eateetwp\feM3\ip(ix>.wph
A-8
-------
APPENDIX B
Description of Each CALMET Subroutine and Function
I:\cahnetwp\fcW5Vvdxb.wpfa
-------
-------
ROUTINE NAME TYPE
PURPOSE
ADJUST
AIRDEN
ALLCAP
ALTONU
AVEMDC
AVETMP
BARER
BILINEAR
BOX
CGAMMA
CMPD2
COMP
DATE
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Adjusts surface U and V wind components for terrain
effects.
Computes the density of air at surface meteorological
stations using the station pressure and temperature.
Converts all lower case letters within a character string
from a control file data record into upper case.
Converts a character string from a control file data record
into a real, integer, or logical variable. Computes the
repetition factor for the variable.
Calculates the average mixing height (m) at each grid point
based on an average of values at the grid point and grid
points upwind.
Calculates the average temperature (K) at each grid point
based on an average of values at the grid point and grid
points upwind, for each vertical level.
Determines which side of a barrier a point is on. Barriers
are finite length line segments.
Performs bilinear interpolation among values obtained at
the center of cells.
Calculates whether a point is within a defined box.
Computes the time-interpolated average temperature lapse
rate in the layer from the ground through a specified
height.
Computes the (distance)2 from each station to the
reference coordinates (XREF,YREF).
Controls the computational phase of the CALMET run.
Contains the basic time loop and calls all time-dependent
computational routines.
System routine supplying the current data (MM-DD-YY)
into a Character's variable.
B-l
-------
ROUTINE NAME TYPE
PURPOSE
DATETM
DEDAT
DEBLNK
DELTT
DIAG2
DIAGI
DIAGNO
DIVCEL
DIVPR
ESAT
ELUSTR
ELUSTR2
ETIME
FACET
L\c»J«»«wP\fcW5\tpdjb.wph
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Function
Subr.
Subr.
Subr.
Subr.
Gets the data and time from the system clock. Calls the
system date and time routines.
Convert a coded integer containing the year, Julian day,
and hour (YYJJJHH) into three separate integer variables.
Removes all blank characters from a character string within
a pair of delimiters in a control file data record.
Computes the difference (in hours) between two dates and
integer times (time 2 - time 1).
Initiates the wind field common blocks for overwater
stations.
Sets the default values for the diagnostic wind field
parameters. Initiates the wind field common blocks.
Main routine for the diagnostic wind field module. Calls
routines for the computation of kinematic effects of
terrain, slope flows, terrain blocking effects, divergence
minimization, objective analysis, and optional input of
gridded prognostic wind field data. Produces 3-D fields of
U, V, and W wind components.
Computes the three-dimensional divergence for a X-Y
plane of grid cells using a central difference technique.
Controls printing of "NZPRNT layers of 3-D divergence
fields.
Computes the saturation water vapor pressure using the
method of Lowe (1977).
Computes the surface friction velocity and Monin-Obukhov
length at grid points over land using an iterative technique.
Computes the surface friction velocity and Monin-Obukhov
length at surface stations over land using an iterative
technique.
CPU time routine for SUN system.
Calculate the temperature at the vertical cell faces at the
upper air sounding stations.
B-2
-------
ROUTINE NAME TYPE
PURPOSE
FILLGEO
Subr.
FIN
FMINF
FRADJ
Subr.
Subr.
Subr.
GRDAY
GRIDE
HEATFX
INCR
INDECR
INTER2
INTERS
INTERP
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Determines geophysical parameters from gridded land use
data and a table relating the parameter values to land use.
Reads a gridded geophysical parameter field directly from
the GEODAT file if the gridded input option is selected.
Main routine for the termination phase of the CALMET
run. Computes run time, writes termination messages.
Determines the minimum value among "NF" consecutive
elements of an array and returns both the value and its
array index.
Determines terrain blocking effects. Computes the local
Froude number at each grid point using 3-D arrays of U
and V wind components. If the Froude number exceeds a
specified critical value, and the wind is blowing toward an
obstacle, adjusts the wind components.
Computes the Gregorian date (month, day) from the Julian
day and year.
Computes a gridded precipitation rate at each grid point
using a nearest observational station technique.
Computes the sensible heat flux at each grid point over
land using the energy balance method.
Increment the time and date by a specified number of
hours.
Increment or decrement a date/time by a specified number
of hours.
Incorporates observational wind data into gridded Step 1
diagnostic wind fields using a 1/R2 interpolation weighting
technique and radius of influence parameters.
Interpolates the observed data in the lake breeze region to
the CALMET grid.
Incorporates observational wind data into gridded fields of
interpolated prognostic model winds using a 1/R2
interpolation weighting technique and radius of influence
parameters. If prognostic winds not used, performs
interpolation only.
I:\olmetwp\fcb95\^xJxb.wph
B-3
-------
ROUTINE NAME TYPE
PURPOSE
INTP
IREPLAC
Subr.
Subr.
JULDAY
LLBREEZ
MICROI
MINIM
MISSFC
Subr.
Subr.
Subr.
Subr.
Subr.
M3XDT
MIXHT
OPENFL
OPENOT
OUT
Subr.
Subr.
Subr.
Subr.
Subr.
Performs a linear interpolation of a variable to a specified
height using arrays of height and parameter values.
Replaces the missing value of an INTEGER variable with
the value from the closest station with valid data. If all
values are missing, sets variable equal to the default value
(IDEFLT).
Computes the Julian day number from the Gregorian date
(month, day).
Sets up the lake breeze region of influence.
Performs setup computations for the boundary layer
model Initializes certain heat flux constants and mixing
height variables.
Executes an iterative scheme to reduce three dimensional
divergence to within a specified limit subject to a cap on
the number of iterations.
Fills in missing values of certain surface met. variables
using data from the nearest station with non-missing data.
Met. variables checked in this routine are: ceiling height
(ICEIL), cloud cover (ICC), air temperature (TEMPK),
relative humidity (IRH), and surface pressure (PRES).
Computes the potential temperature lapse rate in a layer
"DZZT meters deep above the previous hour's convective
mixing height.
Calculates the convective and mechanical mixing height at
each grid point above land.
Opens the input control file and output list file.
Opens all input/output files (other than the control file
and list file), based on the values in the control file inputs.
Prints a gridded 2-D field of real or integer numbers to a
specified number of digits. Internally computes a scaling
factor for printing the field based on the maximum value
within the grid.
t\a!aei«p\fcb9S\ipdxb.vph
B-4
-------
ROUTINE NAME TYPE
PURPOSE
OUTFTL
OUTHD
OUTHR
OUTPC
OUTPC1
PACAVE
PGTSTB
PREPDI
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
PROGRD
QCKSRT3
RDHD
RDHD4
RDHDU
RDMM4
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Prints 3-D fields of U and V wind components using F7.2
format and W wind components using E8.1 format.
Writes the header records of the CALMET meteorological
data file.
Outputs hourly gridded wind fields to the unformatted
output file (CALMET.DAT).
Writes the data records in MESOPAC H format.
Writes the header records in MESOPAC n format.
Calculates the vertically-averaged winds in two layers.
Computes PGT stability class at grid point over land.
Fills data arrays with observed wind data for the wind field
module. If the preprocessed wind data option is used,
reads U and V components and/or temperature data
directly from the input file (DIAG.DAT), otherwise,
performs time interpolation of upper air sounding data and
converts surface wind components to U and V components.
Reads and interpolates gridded fields of prognostic model
wind fields to the grid system used by the diagnostic wind
field model.
Sorts three arrays into ascending numerical order using the
quicksort algorithm.
Reads the header records from the unformatted version of
the surface meteorological data file (SURF.DAT).
Reads the IWAQM-formatted MM4-FDDA file header
records.
Reads the two header records from an upper air data file.
Reads and interpolates the MM4-FDDA prognostic winds
to the diagnostic model grid.
I:\cdmetwp\fcb9S\qxhb.wph
B-5
-------
ROUTINE NAME TYPE
PURPOSE
RDOW
Subr.
RDP
RDS
RDUP
Subr.
Subr.
Subr.
RDWT
READCF
READGE
READHD
Subr.
Subr.
Subr.
Subr.
READIN
RDNWD
RREPLAC
Subr.
Subr.
Subr.
Reads a data record from an overwater data file.
Date/hour of data in the current array is compared with
model date/hour to determine if it is time to read the next
record.
Reads a data record from a precipitation data file. If data
are packed, RDP unpacks the data before returning to the
calling routine.
Reads a data record from the surface meteorological data
file. If data are packed, RDS unpacks data before
returning to calling routine.
Reads a sounding from the upper air data file. Reads a set
of data including wind speed, wind direction, pressure,
height, and temperature. Converts wind speed and wind
direction to U and V components.
Reads the weighting factors used for station observations
vs. the MM4-FDDA data used as observations or the Step
1 field.
Controls the reading of the control file. Calls subroutine
READIN for each input group.
Reads or calls other routines to read data from the
geophysical data file (GEO.DAT). Prints the data back to
the output list file (CALMET.LST).
Controls the reading of the header records from the
meteorological data files (surface and upper air data).
Positions pointers at correct record for starting date and
time. Performs QA checks to ensure consistency of file
data with control file inputs.
Reads one input group of a free formatted control file data
base.
Reads "N" words from an unformatted data file.
Replaces the missing value of a REAL variable with the
value from the closest station with valid data. If all values
are missing, sets variable equal to the default value
(RDEFLT).
I:\ataiSwp\fcb9S\ipdib.wph
B-6
-------
ROUTINE NAME TYPE
PURPOSE
RSQWTS
RTHETA
SETCOM
SETUP
SETVAR
SIMILT
SLOPE
SMOOTH
SOLAR
STHEOR
TEMP3D
TERSET
TIME
TOPOF2
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Computes inverse distance squared weights for all the
surface and upper air locations at a specified grid cell
Converts gridded 3-D arrays of U and V wind components
to wind speed and wind direction. Controls printing of the
wind speed and wind direction fields.
Computes miscellaneous common block variables in the
setup phase of the run.
Controls the setup phase of the CALMET model. Calls all
initialization and one-time setup routines.
Fills a variable or array with the value read from a control
file data record.
Performs surface-based wind profile adjustment using
similarity theory.
Adjusts the surface wind components for slope flow effects.
Applies a smoother to 3-D gridded fields of U and V wind
components.
Computes the sine of the solar elevation angle for the
midpoint of every hour of the day at surface
meteorological stations.
Determines whether station is on land or water and calls
similarity theory subroutines.
Computes a 3-D temperature field, either treating water
and land separately or making no distinction.
Determines the maximum terrain height within a given
radius of a grid point for each point in a gridded field.
System routine supplying the current clock time
(HH:MM:SS.hh) into a Character*!! variable .
Computes a 3-D array of terrain-induced vertical velocities.
Determines kinematic effects, exponential vertical decay
factor, and transforms W components to terrain-following
coordinates.
B-7
-------
ROUTINE NAME TYPE
PURPOSE
UNDERO
UNIDOT
UNPACK
.UNPCKS
VERTAV
WATER
WATER2
WIND1
WINDBC
WINDLPT
WINDPR
WNDPR2
WPCI2D
WPCR2D
Subr. A Lahey PC FORTRAN library routine used to set
underflows to zero.
Function Computes the dot product of a 3-element unit vector A
with a 3-etement unit vector B.
Subr. Unpacks an array of packed data using the "zero-removal"
packing method.
Subr. Unpacks an array of surface meteorological data using an
integer packing method.
Subr. Vertically averages U and V wind components through a
specified vertical depth.
Subr. Computes boundary layer parameters at grid points over
water using a profile technique. Also computes PGT
stability class based on the Monin-Obukhov length.
Subr. Computes boundary layer parameters at surface stations
over water using a profile technique.
Subr. Creates spatially-varying first-guess wind field by using a
1/R* interpolation weighting technique for both the upper
air and surface observations.
Subr. Sets the boundary conditions for a single level of U and V
wind fields using no inflow - no outflow boundary
conditions.
Subr. Scales a 2-D array of real numbers by an internally-
computed factor for printing purposes. Prints the scaled
2-D array along with the scaling factor.
Subr. Controls the printing of "NZ" layers of 2-D fields of U, V,
and W wind components.
Subr. Prints one layer of U and V wind components.
Subr. Writes "NX*NY" words of a 2-D integer array to an
unformatted file in MESOPAC U format.
Subr. Writes "NX*NY" words of a 2-D real array to an
unformatted file in MESOPAC U format.
I:\ea3actwp\fcb93\qxfab.vph
B-8
-------
ROUTINE NAME TYPE
PURPOSE
WRT
WRT2
WRTI1D
WRTI2D
WRTR1D
WRTR2D
WSTARR
XMTT
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Subr.
Writes one Y row of formatted gridded data (in
conjunction with subroutine OUT).
Writes a line labeling the X coordinates of a row of
gridded data (in conjunction with subroutines OUT and
OUTFX).
Writes "NWORDS" of a 1-D integer array to an
unformatted file along with a C*8 label and integer
date/hour record header.
Writes "NX*NY" words of a 2-D integer array to an
unformatted file along with a C*8 label and integer
date/hour record header.
Writes "NWORDS" of a 1-D real array to an unformatted
file along with a C*8 label and integer date/hour record
header.
Writes "NX*NY" words of a 2-D real array to an
unformatted file along with a C*8 label and integer
date/hour record header.
Computes the convective velocity scale at each grid point
over land.
Initializes "N" values of 1-D array B with a constant or set
all values of array B equal to corresponding elements of
array A.
I:\ataMtwp\feM5\ipdxb.wph
B-9
-------
-------
APPENDIX C
Equations Used in Lambert Confbrmal Conversions
I:\ctbaeJwp\fcb9S\mtippc.wp
-------
-------
The following equations are based on Pearson (1990) and can be used before running
CALMET to convert meteorological station locations from latitude/longitude to x/y coordinates
when using the two-standard parallel Lambert conformal projection in CALMET. The equations
are incorporated within CALMET to adjust winds from true north (south) to map coordinates and
to convert MM4 grid points to the Lambert conformal map for use in CALMET, based on the
values of RLATO, RLONO, XLAT1, and XLAT2 entered by the user. To use CALMET and these
equations with a Lambert conformal domain in the Southern hemisphere, enter all latitudes
(standard parallels, origin, and stations) as negative numbers. Regardless of the hemisphere in
which the domain is located, the resulting x/y coordinate system has y increasing from south to
north and the CALMET origin coordinates must be specified at the southwest corner of the
domain. This holds true also if UTM coordinates are used in place of a Lambert conformal
projection. The order of the standard parallels XLAT1 and XLAT2 does not matter but it is
conventional to have the latitude closest to the equator be XLAT1. The reference coordinates input
to CALMET should be identical to those used to derive the x/y coordinates of observation sites.
All longitudes are entered as positive in the Western hemisphere and negative in the Eastern
hemisphere, with the exception of the MM4.DAT input file, in which the opposite convention is
used. Lambert conformal projections are best in mid-latitudes (—30-60° latitude). It is not
recommended that a Lambert conformal projection be used in a domain near the equator (z 30°
latitude) or in polar regions (> 60° latitude).
Equations C-l and C-2 give the* andy coordinate definitions for the Lambert conformal
projection, in kilometers:
x = psinB
(C-l)
(C-2)
where 6 is the polar angle (one of the two coordinates used in describing the projection) and is
defined by Equation C-3:
6 =
(C-3)
where X is the longitude (positive in the Western hemisphere, negative in the Eastern hemisphere)
and A,0 is the reference longitude (RLONO). The sin(4>0) is known as the cone constant and relates
longitude on Earth to its representation in the mapping system. It is a measure of the rate of
I:\c»lmetwp\feb9S\mf»ppcwp
C-l
-------
change in the polar angle as longitude changes. 4>0 is the latitude where the cone is tangent to the
sphere (ie., the standard latitude) in a one-standard parallel Lambert confonnal projection, and is
an artifact of the mathematical derivation of the two-standard parallel case. In the two-standard
parallel case its definition is given in Equation C-4:
In.
/In
tan
90-V
(C-4)
where 4^ and 4>2 are the standard reference latitudes (XLAT1 and XLAT2).
Equation C-5 defines the polar radius to the given (positive) latitude 4>, where the polar
radius is the second coordinate used to describe the map projection:
(05)
Equation C-6 gives the polar radius to the origin latitude (4>ORi)» i-e., the latitude along X0 at which
y equals zero (RIATO):
PORI
(C-6)
Note that the MM4 domain to which CALMET defaults uses an origin latitude (RIATO) of 40°,
standard reference latitudes *„ *2 (i.e., XLAT1, XLAT2) of 30° and 60°, and a reference longitude
(X0)of90°W.
Psi (V) is an auxiliary function that is introduced to simplify the derivation from the one
standard parallel case to the two parallel case and is defined by Equation C-7:
I:\almetwp\fefaSS\mIippc.wp
C-2
-------
tan
90-4>J
where a equals 6370 km is Earth's radius.
(C-7)
I:\9S\ml«ppc.wp
C-3
-------
-------
APPENDIX D
The Universal Transverse Mercator (UTM) Grid
-------
-------
U.S. Dapartmnrrt of th» Interior
U.S. Geological Survay
Earth ScfencB
Information C«ntar (ESIC)
Factsheei
The Universal Transverse
Mercator (UTM) Grid
126° 120° 114* 108° 102° 96° 90° 84° 78° 72° 66°
Figura 1. Th« UrmMrsal Trantv*n* M«rcaBr grid that covers th« ooracmunou* 4« UniM SIUM compMM
10 zrxi«»—torn zone 10 on th«w«« coast through zon* 19 in Maw England.
Map projections
The most convenient way to identify
points on the curved surface of the
Earth is with a system of reference
lines called parallels of latitude and
meridians of longitude. On some
maps the meridians and parallels
appear as straight lines. On most
modem maps, however, the meridians
and parallels may appear as curved
lines. These differences are due to the
mathematical treatment required to
portray a curved surface on a flat
surface so that important properties
of the map (such as distance and area!
accuracy) are shown with minimum
distortion. The system used to portray
a portion of the round Earth on a flat
surface is called a map projection.
Grids
To simplify the use of maps, and
to avoid the inconvenience of pin-
pointing locations on curved reference
lines, a rectangular grid consisting of
two sets of straight, parallel lines,
uniformly spaced, each set perpen-
dicular to the other, is superimposed
on the map. This grid is designed so
that any point on the map can be
designated by its latitude and longi-
tude or by its grid coordinates, and a
reference in one system can be
convened into a reference in another
system. Such grids are usually
identified by the name of the parti-
cular projection for which they are
designed.
The Universal Transverse Mercator
grid
The Defense Mapping Agency
adopted a special grid for military
use throughout the world called the
Universal Transverse Mercator
(UTM) grid. In mis grid, the world is
divided into 60 north-south zones,
each covering a strip 6° wide in
longitude. These zones are numbered
consecutively beginning with zone 1.
between 180° and 174° west
longitude, and progressing eastward
to zone 60, between 174° and 180°
east longitude. Thus, the conter-
minous 48 States are covered by 10
zones, from zone 10 on the west coast
through zone 19 in New England
(fig. 1). In each zone, coordinates are
measured north and east in meters.
(One meter equals 39.37 inches, or
slightly more than 1 yard.) The
northing values are measured contin-
uously from zero at the Equator, in a
northerly direction. Southerly values
are similarly measured from the
Equator, south. A central meridian
through the middle of each 6° zone is
assigned an easting value of 500,000
meters. Grid values to the west of
this central meridian are less than
500,000; to the east, more than
500,000.
Determining a UTM grid value for
a map point
The UTM grid is shown on all
quadrangle maps prepared by the
U.S. Geological Survey. On 7.5-
minute quadrangle maps (124,000
scale) and 15-minute quadrangle
-------
maps (1:50,000,1:62,500 and
standard-edition 1:63360 scales) the
UTM grid lines are indicated at
intervals of 1,000 meters, either by
blue ticks in the margins of the map
or with faH grid lines. The 1.000-
meter value of the tides is shown for
every tick or grid line. In addition, the
actual meter value is shown for ticks
nearest the southeast and northwest
comers of the map. Provisional maps
at 1:63360 scale show Ml UTM
grids at 5,000-meter intervals.
To use me UTM grid, a transparent
grid overlay can be used that sub-
divides the grid, or lines can be drawn
on the map connecting corresponding
ticks on opposite edges. The distances
can be measured in meters at the map
scale between any map point and the
nearest grid lines to the south and
west The northing of the point is the
value of the nearest grid line south of
it plus its distance norm of that line;
its easting is the value of the nearest
grid line west of it plus its distance
east of that line (see fig. 2).
On maps at 1:100,000 and 1:250,000
scale, a full UTM grid is shown at
intervals of 10,000 meters and is
numbered and used in the same way.
Information
For further information contact any
Earth Science Information Center
(ESIC) or caU 1-800-USA-MAPS.
1 I
B —
:
355
Ettt
.
1,000m
I
356
[^- 1,000m*.
1
k
-
P
750
357
\
358
IB
r.
V
g
M
in
10
V
Bour« 2.Th« flnd v*u» tX Kr» AJk it 3S7JOOO m«Mf* MM. Th« end \nkM at Mm B-8 a 4.276,000 fflMm
Point P \» MO mMMS Mtt and 750 nwm north at tw grid irm: tmtten. 0w giid eoordnMM o» port P
north 4278.7SO and M« 357.800.
-------
TECHNICAL REPORT DATA
(Please read Instructions on reverse before completing,)
1. REPORT NO.
EPA-454/B-95-002
3. RECIPIENTS ACCESSION NO.
4. TTTLE AND SUBTITLE
A User's Guide for the CALMET Meteorological Model
i. REPORT DATE
March 1995
«. PERFORMING ORGANIZATION CODE
7. AUTHOR(S)
8. PERFORMING ORGANIZATION REPORT NO.
9. PERFORMING ORGANIZATION NAME AND ADDRESS
USDA Forest Service
Ft. Collins, CO 80526
10. PROGRAM ELEMENT NO.
It. CONTRACT/GRANT NO.
IAG DW12544201
12. SPONSORING AGENCY NAME AND ADDRESS
U.S. Environmental Protection Agency
Office of Air Quality Planning and Standards
Emissions, Monitoring and Analysis Division
Research Triangle Park, NC 27711
13. TYPE OF REPORT AND PERIOD COVERED
Final Report
14. SPONSORING AGENCY CODE
15. SUPPLEMENTARY NOTES
EPA Project Officer:
John S. Irwin
16. ABSTRACT
This report describes the CALMET meteorological model and associated meteorological
data processing programs. The CALMET model described in this report includes
improvements to the model such as 1) a modification to make it more suitable for
regional applications such as the use of a spatially variable initial guess field, 2)
an option for using hourly gridded wind fields from the Perm State/NCAR Mesoscale Model
with four dimensional data assimilation (MM4-FDDA) as a supplement to observational
data, 3) the ability to compute Lambert conformal map factors and, 4) a modified mixing
height scheme.
KEY WORDS AND DOCUMENT ANALYSIS
DESCRIPTORS
b. IDENTIFIERS/OPEN ENDED TERMS
c. COSAT1 Ficld/Onup
Air Pollution
Long Range Transport
Meteorological Modeling
Dispersion Modeling
Meteorology
Air Pollution Control
18. DISTRIBUTION STATEMENT
Release Unlimited
19. SECURITY CLASS (Ktfon)
Unclassified
21. NO. OF PAGES
273
20. SECURITY CLASS (Page)
Unclassified
22. PRICE
EPA Form 2220-1 (Rev. 4-7T) PREVIOUS EDITION IS OBSOLETE
-------
------- |