CALPUFF v7 UserGuide Addendum
CALPUFF v7 UserGuide Addendum
CALPUFF Version 7
Users Guide Addendum
CALPUFF Version 7
Users Guide Addendum
Prepared by
Exponent
1 Mill and Main Place
Suite 150
Maynard, MA 01754
October 2019
Exponent, Inc.
Page
List of Figures 3
List of Tables 4
Introduction 5
2 Roadway 29
2.1 Introduction 29
2.2 Modeling Procedures 29
2.3 Road Emission File (RDEMARB.DAT) 31
3 Spray 38
3.1 Introduction 38
3.2 CALPUFF Code Updates 38
3.3 Control File Updates 39
3.4 External Variable Emissions SPRAY File (SPEMARB.DAT) 44
3.5 Preparation of External Variable Emissions Files from AGDISP Output. 49
3.5.1 Header Records 50
Z170308064614 - 0072
1
3.5.2 Time Invariant Records 50
3.5.3 Time Varying Records 50
Appendix A
Appendix B
Appendix C
Z170308064614 - 0072
2
List of Figures
Page
Z170308064614 - 0072
3
List of Tables
Page
Table 2-1 New Flare Variables in Input Group 0 of the CALPUFF.INP v7.0 Control
File 10
Table 2-2 New Flare Variables in Input Group 2 of the CALPUFF.INP v7.0 Control
File 10
Table 2-3 New Flare Input Group 17 of the CALPUFF.INP v7.0 Control File 11
Table 2-4 Example Flare Emissions File With Arbitrarily Varying Data
(FLEMARB.DAT) 14
Table 2-5 Flare Emissions File With Arbitrarily Varying Data (FLEMARB.DAT):
Description of Header Variables 15
Table 2-6 Flare Emissions File With Arbitrarily Varying Data (FLEMARB.DAT):
Description of Time-Invariant Data 16
Table 2-7 Flare Emissions File With Arbitrarily Varying Data (FLEMARB.DAT):
Description of Time-Varying Data 17
Table 2-8 Example TIMESERIES.TSF file (with CALMET surface pressure output) 19
Table 3-1 Example Road Emissions File with Arbitrarily Varying Data
(RDEMARB.DAT) 33
Table 3-2 RDEMARB.DAT Header Record Variables 34
Table 3-3 RDEMARB.DAT Time-Invariant Data Records 35
Table 3-4 RDEMARB.DAT Time-Varying Data Records 36
Table 3-5 RDEMARB.DAT Map Projection Records 37
Table 4-1 Example Spray Emissions File with Arbitrarily Varying Data
(SPEMARB.DAT) 45
Table 4-2 Spray Emissions File With Arbitrarily Varying Data (SPEMARB.DAT):
Description of Header Variables 46
Table 4-3 Spray Emissions File With Arbitrarily Varying Data (SPEMARB.DAT):
Description of Time-Invariant Data 47
Table 4-4 Spray Emissions File With Arbitrarily Varying Data (SPEMARB.DAT):
Description of Time-Varying Data 48
Z170308064614 - 0072
4
Introduction
With the release by Exponent of CALPUFF Version 71, several new capabilities have been
added to the CALPUFF modeling system. These include the ability to model flares,
roadways and aerial spray sources. Each of these potential sources is included as a new
source type within the CALPUFF model. The new source types are used to develop realistic
emission profiles at the point of emission. All of the new source types fit within the existing
dispersion frame work of CALPUFF.
The following sections detail the setup and use of the new source type modules. For all
three source types, external variable emissions files can be used to define emissions. For the
new Roadway source, constant emissions or emissions based on simple temporal profiles
can alternatively be defined in the CALPUFF input file. Spray and Flare emissions and
locations cannot be defined within the CALPUFF input file and require an external variable
emission file.
The formats of the external variable emissions files are also detailed in the sections which
follow. External variable emissions files are in ASCII format and can be generated by the
user. For the Spray source type, recent versions of the AGDISP code distributed by the US
Forest Service will produce many of the necessary input blocks for the external variable
emissions files. Similarly, emissions files for the Flare source can be generated by external
software including ABFLARE, which is available for download from Zelt PSI
(http://www.zeltpsi.com/aertools.html).
This User’s Guide Addendum serves as a supplement to the available CALPUFF Version 5
and Version 6 documentation. For additional information on the use and setup of
CALPUFF Version 7, the reader is referred to the “CALPUFF Modeling System Version 6
User Instructions” (April 2011). Background information on CALPUFF model theory is
1
CALPUFF modeling software, including EPA approved versions, is distributed by Exponent, Inc. to those that
wish to apply the CALPUFF model for a particular situation. User’s may download a copy of CALPUFF
source code at the www.src.com website after their explicit acceptance of the CALPUFF End User License
terms published on that website.
Z170308064614 - 0072
5
also available in the “Version 5 CALPUFF User Guide” (January 2000). All documentation
is available on the CALPUFF website at www.src.com.
Z170308064614 - 0072
6
1 CALPUFF Flare Module
1.1 Introduction
The CALPUFF model has been enhanced with new modeling capabilities to model flares.
The development work was sponsored by an Alberta Upstream Petroleum Research Fund
(AUPRF) grant funded by the Petroleum Technology Alliance Canada (PTAC) under
subcontract to Zelt Professional Services Inc (Zelt PSI). The CALPUFF model reads inputs
computed by external programs including the ERCB Flare Spreadsheet and ABFLARE
(available from Zelt PSI at http://www.zeltpsi.com/aertools.html).
The new developments include a new CALPUFF source-type, FLARE, which is a point
source with all arbitrarily-varying emissions parameters, including (potentially) varying
location and stack height. FLARE source specific processing flags can be turned on and off,
independently of the general processing flags which apply to all other sources in a given
CALPUFF simulation. Those FLARE-specific switches relate to the plume rise method and
stack-tip downwash.
Exponent also created a series of new postprocessors to compute time-averages, maxima, nth
ranked and percentile concentrations (and deposition fluxes). Those new postprocessors are
CALAVE, CALMAX and CALRANK. One of the applications for this new set of
CALPUFF postprocessors is to meet emergency flaring impact assessment requirements in
general and in the Province of Alberta (Canada) in particular. This new set of postprocessors
streamlines the computation of the maximum (or nth highest, or percentile) impact created by
a short-lived event that can occur anytime during the year. This type of situation is typical
for emergency events or upset conditions.
The new features are available when using CALPUFF v7.2.0 and METSERIES v7.0.0. The
new postprocessors, CALAVE, CALMAX and CALRANK are distributed as new stand-
alone FORTRAN codes.
Z170308064614 - 0072
7
1.2 CALPUFF System Flare Enhancements
1.2.1 CALPUFF
The developers of the CALPUFF modeling system (Scire et al., 2000a, 2000b) added a new
flare source type to CALPUFF v7.2.0. In CALPUFF terms, a FLARE is a point source with
arbitrarily-varying emissions parameters, including (potentially) varying location and stack
height. FLARE source specific processing flags can be turned on and off, independently of
the general processing flags which apply to all other sources in a given CALPUFF
simulation. Those flare-specific flags are:
1) MRISE_FL: determines the plume rise module for flare sources. Available selection is
either Briggs plume rise (MRISE_FL=1) or CALPUFF numerical plume rise
(MRISE_FL=2). The numerical plume rise model is recommended for flares and is set as
the default. The CALPUFF numerical plume rise algorithm is recommended for flares
because:
- Flares are very hot sources and the Boussinesq approximation, one of the Briggs plume
rise assumptions, is not valid when the plume density is much smaller than the ambient air
density.
- Flares generate highly buoyant plumes and the ambient air stratification and vertical
wind shear above stack top should be taken into account during plume rise calculations
(Briggs plume rise does not take either into account).
Z170308064614 - 0072
8
1.2.2 CALPUFF Input File
Input Group 0 of the updated CALPUFF input control file (CALPUFF.INP Version 7.0)
includes variables to define the number and names of the external variable emissions files
for FLARE sources (FLEMARB.DAT). More details on the format of the new external
variable emissions files are included in Section 2.2.3 of this report. The updates to Input
Group 0 are shown in Table 1-1.
The two new processing flags, MTIP_FL and MRISE_FL, are defined in Input Group 2 and
the input format for these two new variables is shown in Table 1-2. As usual, all key
information must be specified between exclamation point delimiters.
A new Input Group 17 has been added to the updated CALPUFF input control file. This
allows the user to define the total number of Flare sources contained in the external variable
emissions files. The format of Input Group 17 is shown in Table 1-3. Note that, unlike
other source types (points, volumes, roads), Flare sources require the use of an external
variable emissions file. Constant source parameters cannot be defined directly in the
CALPUFF input file.
Z170308064614 - 0072
9
Table 1-1 New FLARE Variables in Input Group 0 of the CALPUFF.INP v7.0 Control File
-------------
Subgroup (0e) – FLEMARB.DAT files
-------------
Table 1-2 New FLARE Variables in Input Group 2 of the CALPUFF.INP v7.0 Control File
-------------------------------------------------------------------------------
…
Apply stack-tip downwash to FLARE sources?
(MTIP_FL) Default: 0 ! MTIP_FL = 0 !
0 = no (no stack-tip downwash)
1 = yes (apply stack-tip downwash)
Z170308064614 - 0072
10
Table 1-3 New FLARE Input Group 17 of the CALPUFF.INP v7.0 Control File
!END!
Z170308064614 - 0072
11
1.2.3 FLARE External Variable Emissions File (FLEMARB.DAT)
CALPUFF v7.2.0 accepts a new type of emission source suitable for emergency flare modeling,
namely a point source for which all parameters can arbitrarily vary in time. This new format,
dubbed FLEMARB.DAT, is an extension of the point-varying emission source format,
PTEMARB.DAT.
FLARES are treated as arbitrarily-varying point sources with the added flexibility of time-
varying location and height in order to track the location of the flame tip. No building
downwash is allowed.
The file format is designed to be as general as possible in order to allow additional variables to
be used by CALPUFF in the future without a change to the FLEMARB.DAT format. There are
8 time invariant variables defined for each source (labeled Var1 through Var8). Currently only
Var1 is used. The remaining seven variables are retained for possible future use.
The variable Var1 allows alternative formats for the source data to be used. Setting Var1=1
specifies that source parameters will include values of exit temperature (T) and exit velocity
(u,v,w). Note that though all three vector components of the exit velocity (u, v, w) have to be
specified for each time record, only the vertical exit velocity (w) is currently used by the
CALPUFF code. Setting Var1 to a value other than 1 allows for alternate data formats such as
the use of buoyancy (Fb) and momentum (Fmx, Fmy, Fmz), though these input options are not
currently implemented in CALPUFF.
A FLEMARB.DAT file can contain multiple sources and species. The beginning and ending
times of each record are specified in year, Julian day, hour and seconds, and can be of arbitrarily
varying duration. However, the ending time of one record must be equal to the beginning time
of the next record and periods of inactivity (zero emission) must be explicitly defined (zero
emission rates), so that there are no time gaps in the FLEMARB.DAT file.
Z170308064614 - 0072
12
The FLEMARB.DAT record description and format are detailed in Table 1-4 through Table 1-7.
Not all records in a FLEMARB.DAT file are “free reading” and attention must be paid to the
length of each variable, type, and spacing in between them.
Z170308064614 - 0072
13
Table 1-4 Example FLARE Emissions File with Arbitrarily Varying Data (FLEMARB.DAT)
FLEMARB.DAT 1.0 Initial configuration
9
Header records are a mix of formatted and free-format structures
Time-invariant data records are free-format
Time-invariant data records have 8 assignments per source (2-8 are not currently used)
var1=1: stack inputs are T(K), U, V, W (m/s)
var1=2: stack inputs are Fb, Fmx, Fmy, Fmz (i.e., buoyancy and momentum fluxes)
Time-variable data records are free-format
Time-variable data records contain (if var1=1)
X(km), Y(km), H(mAGL), Elev(mMSL), D(m), T(K), U, V, W, Sigy(m), Sigz(m), Q(g/s)...
Time-variant records contain (if var1=2) --- Not currently available!
UTM
19N
NAS-C 02-21-2003
KM
UTC-0500
1990 009 04 0000 1990 009 10 0000
3 4
'SO2' 'NO' 'NO2' 'PM10'
30.000 30.000 30.000 30.000
'Source 1' 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
'Source 2' 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
'Source 3' 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
1990 009 04 0000 1990 009 05 0000
'Source 1' 340.011 4870.443 18.6 160.4 9.754 280.55 0.0 0.0 8.66 1.0 1.0 10.0 4.0 1.0 10.0
'Source 2' 340.486 4870.640 50.1 160.7 4.251 380.4 0.0 0.0 7.66 1.0 1.0 10.0 4.0 1.0 10.0
'Source 3' 341.051 4870.048 35.85 160.9 3.1 289.9 0.0 0.0 2.66 1.0 1.0 10.0 4.0 1.0 10.0
1990 009 05 0000 1990 009 10 0000
'Source 1' 340.011 4870.443 18.6 160.4 9.754 280.55 0.0 0.0 8.66 1.0 1.0 10.0 4.0 1.0 10.0
'Source 2' 340.486 4870.640 50.1 160.7 4.251 380.4 0.0 0.0 7.66 1.0 1.0 10.0 4.0 1.0 10.0
'Source 3' 341.051 4870.048 35.85 160.9 3.1 289.9 0.0 0.0 2.66 1.0 1.0 10.0 4.0 1.0 10.0
Polar Stereographic
PS
40.5N 90.0W 30.0N
Equatorial Mercator
EM
0.0N 90.0W
Z170308064614 - 0072
14
Table 1-5 FLARE Emissions File with Arbitrarily Varying Data (FLEMARB.DAT): Description of Header Variables
FLEMARB.DAT 1.0 Initial configuration Dataset Name, Dataset Version, Dataset Message
(char*16, char*16, char*64) Format: (2a16,a64)
9 Number of comment lines to follow (integer) Free-Format
Header records are a mix of formatted and free-format structures Comment lines (80 characters per record are read)
Time-invariant data records are free-format
Time-invariant data records have 8 assignments per source (2-8 not used)
var1=1: stack inputs are T(K), U, V, W (m/s)
var1=2: stack inputs are Fb, Fmx, Fmy, Fmz (not currently available)
Time-variable data records are free-format
Time-variable records(if var1=1) X,Y,H,Elev,D,T,U,V,W,Sigy,Sigz,Q(g/s)..
Time-variable records(if var1=2) --- var1=2 Not currently available!
UTM - Map Projection (char*8) Format: (a8)
19N - UTM Zone, Hemisphere (integer,char*1) Format: (i4,a1)
Z170308064614 - 0072
15
Table 1-6 FLARE Emissions File with Arbitrarily Varying Data (FLEMARB.DAT): Description of Time-Invariant Data
'Source 1' 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 Source Name, Var1 - Var8 (char*16, real)
'Source 2' 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
'Source 3' 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 Free-Format (quotes required on Source Name)
Source Name Var1 Var2 Var3 Var4 Var5 Var6 Var7 Var8
Time-invariant data must be assigned to each of the sources, which are identified by name.
In this example, there are 3 sources so there are 3 records.
Only the first variable (Var1) is currently defined for use, but all 8 variables must have values. Zeros are used for variables Var2-Var8.
Z170308064614 - 0072
16
Table 1-7 FLARE Emissions File with Arbitrarily Varying Data (FLEMARB.DAT): Description of Time-Varying Data
1990 009 04 0000 1990 009 05 0000
'Source 1' 340.011 4870.443 18.6 160.4 9.754 280.55 0.0 0.0 8.66 1.0 1.0 10.0 4.0 1.0 10.0
'Source 2' 340.486 4870.640 50.1 160.7 4.251 380.4 0.0 0.0 7.66 1.0 1.0 10.0 4.0 1.0 10.0
'Source 3' 341.051 4870.048 35.85 160.9 3.1 289.9 0.0 0.0 2.66 1.0 1.0 10.0 4.0 1.0 10.0
Time-varying data must be assigned to each of the sources, which are identified by name. These are matched to the names entered in the time-
invariant data section. In this example, there are 3 sources and 4 records. The first record contains the start-time and end-time for the period in
which the data are valid. The source data follow in the form determined by the value of Var1 entered in the time-invariant data section (current
implementation recognizes Var1=1). This set of records is repeated for all time periods in the file.
Record 1: (8 variables)
Start Year, Julian Day, Hour, Second (0-3599), End Year, Julian Day, Hour, Second(0-3599) (integers) Free-Format
(Var1=1)
Record 2 through NSRC+1 (NSRC=number of sources):
Source Name, X, Y, H, Elev, D, T, U, V, W, Sigmay, Sigmaz, (Q(n), n=1,NSPEC) (char*16, reals) Free-Format (quotes required on Source Name)
Z170308064614 - 0072
17
1.2.4 METSERIES V7.0.0
Modifications to METSERIES v1.81 Level 110308 allow the CALMET surface pressure to be
written out in the TIMESERIES output file (TSF file). METSERIES Version 7.0.0, outputs the
CALMET surface pressure along with the “OTHER” CALMET micrometeorological variables
when the input parameter OTHER is set to 1 in the METSERIES.INP input file. The CALMET
surface pressure is flagged by the symbol “SFC_PRESS”, written in the last column of the TSF
records, and expressed in millibar units. A TIMESERIES example is displayed in Table 1-8.
With this modification, all the variables that are needed by ABFLARE to compute the flame
length, combustion efficiency and flare emissions can be extracted at the location of the flare
stack and height of the flame by METSERIES, either from a CALMET dataset or from a
MM5/WRF file (in M3D format).
Additionally, a bug in the prior versions of METSERIES has been fixed and will now avoid run
termination when processing a SURF.DAT file with missing records.
Z170308064614 - 0072
18
Table 1-8 Example TIMESERIES.TSF file (with CALMET surface pressure output)
Z170308064614 - 0072
19
1.3 Post-Processing
1.3.1 Overview
This new set of postprocessors streamlines the computation of the maximum (or nth highest,
or percentile) impact created by a short-lived event that can occur anytime during the year.
This type of situation is typical for emergency events or upset conditions. In order to assess
the potential impact of such an event, ideally 8,760 (8,784 in a leap year) simulations should
be run, averages (if non-hourly averaging times are of interest e.g. daily averages) should be
taken for each simulation, maxima should be identified, and then statistics (nth highest,
percentile) should be computed across all simulations. The suite of CALAVE-CALMAX-
CALRANK postprocessors streamlines this approach as illustrated in Figure 1-1.
For short-lived events (couple of hours) and short-range impacts, it may not be necessary to
run 8,760 (8,784) simulations. The number of simulations could for example be reduced to
24, with each simulation dealing with events starting at one of the 24 hours of the day, and
repeating the event at this hour for each day of the year (Simulation 1 would model releases
starting during the first hour of each day, Simulation 2 would model releases starting during
the second hour of each day, etc.). Because the events and their impacts are short-lived,
events on successive days are effectively independent of each other. This approach is often
used for the assessment of emergency flaring and is illustrated in Figure 1-2. In any case,
whether explicit simulations are run for each possible start time, or whether they are
combined, the CALAVE-CALMAX-CALRANK suite can compute the necessary statistics.
Furthermore, any ranked-value or percentile can be computed with CALRANK, which thus
extends the CALPOST nth rank capability. Additionally, because specific percentile(s) can
Z170308064614 - 0072
20
be requested explicitly, the user does not have to convert the percentile into an nth rank
equivalent before conducting the post-processing.
Z170308064614 - 0072
21
Figure 1-1 Post-Processing Flow
Z170308064614 - 0072
22
Figure 1-2 Simulation sequence for short-lived, short-range events which can occur any
time of the year. Example illustrates 24 simulations with independent events
starting every 24 hours in a cyclic fashion can be run instead of 8,760 individual
runs (hour-long events are shown here).
1.3.2 CALAVE
CALAVE processes one or more CALPUFF binary output files (dataset v2.1 [CALPUFF output
file created by CALPUFF prior to v6.41] or v2.2 [current output format with CALPUFF v6.42
and v7.2.0]) and computes either running-averages or block-averages of concentrations, dry
deposition fluxes, or wet deposition fluxes for each file. The user instructs CALAVE when to
start the averaging and what averaging time to use. A binary output file with a format similar to
that of a binary CALPUFF output file is generated for each CALPUFF binary file that is being
processed. When block averages are produced, the output file is the ‘standard’ CALPUFF file
that can be processed by any of the postprocessors in the CALPUFF system. Running averages
use the same format, but because begin and end-times for each average span a duration longer
than the interval between the reported values, most of the postprocessors will not accept the
running averages.
Z170308064614 - 0072
23
1.3.2.1 Mode 1: Running Averages
In Mode 1, CALAVE reads a CALPUFF output file (CONC, WET, DRY) and creates a running
average of its contents. These averages are reported from a specified start-time and are written
for each original data-period thereafter.
For example, if 24-hour averages starting at 10 a.m. (start time = 1000) are requested and the
original CALPUFF output file contains half-hour values beginning at 0930 on March 13, the
following averages will be computed:
In Mode 2, CALAVE reads a CALPUFF output file (CONC, WET, DRY) and creates a block
average of its contents. These averages are reported from the specified start-time and are
written end-to-end thereafter.
For example, if calendar-day 24-hour averages are requested (start time = 0000) and the original
CALPUFF output file contains half-hour values beginning at 0930 on March 13, the following
averages will be computed:
1.3.3 CALMAX
CALMAX reads a set of CALPUFF-type binary output files either created by CALPUFF
directly or averaged with CALAVE, and selects the maximum value at each receptor for each
Z170308064614 - 0072
24
time period, for each species. The output time periods are contiguous blocks starting at a user-
selected date and time, and the averaging time found in the data files determines the length of
the block. All input data with a start-time within a block are associated with that block
regardless of whether such data include times outside of the block. For example, a 3-hour
running-average starting at 0700 covers the period 0700-1000. A CALMAX application with a
start-time of 0000 will associate this running-average with the block from 0600-0900.
Many such files can be included without limit and CALMAX will cycle through all, selecting
the maximum modeled value for each location and time. Since the main output file from
CALMAX is also a CALPUFF-type binary file of “block-averages”, CALMAX can be applied
sequentially, using a mix of ‘regular’ CALPUFF files, CALAVE output files, and CALMAX
files. The averaging time, receptors and species must be the same in all files.
1. An ASCII time series file (PERIODMAX.OUT) of the maximum value over all
receptors for each block of time for each species (one value per species per period).
2. A binary CALPUFF-format file of all maximum values (one maximum value at each
receptor for each species and ‘timestep’).
A sample CALMAX input file and PERIODMAX.OUT output file is displayed in Appendix B.
1.3.4 CALRANK
CALRANK reads a CALPUFF-type concentration/flux output file (Dataset v2.1 or v2.2), ranks
the time series for each species at each receptor for the entire application period, and identifies
the nth-highest values and the percentile values requested in the CALRANK.INP input file.
More than one rank or percentile can be requested in a single run, and because of the overhead
of ranking all of the values at each receptor, a single application with all desired ranks is
normally prepared.
Z170308064614 - 0072
25
Individual plot-files are created for each requested rank/percentile, and include the location of
each receptor, the value of the requested rank/percentile at that receptor, and the date and time at
which that value occurred. If more than one species is in the file, this information is provided
for each species. Additionally, the largest among all receptors is tabulated for each requested
rank/percentile and species in the CALRANK.LST file.
1.3.5 EXAMPLE
Step 1: CALPUFF
… (2 - 22 removed)
Z170308064614 - 0072
26
Step 2: CALAVE
Run a single CALAVE simulation which will compute 1 hour block averages for each of the 24
annual CALPUFF simulations at each receptor, and create 24 annual CALPUFF binary output
files with hourly timesteps (i.e. the 5 minute concentrations within every hour will be averaged
to hourly values). CALAVE should be set up with:
→ 24 output files:
CALPUFF_00.CON.1BLOCK
CALPUFF_01.CON.1BLOCK
CALPUFF_23.CON.1BLOCK
Z170308064614 - 0072
27
Step 3: CALMAX
Run a single CALMAX simulation to compute the maximum hourly concentrations at each
receptor for each hour of the year. The maximum at each receptor is taken across the 24
CALPUF.CON.1BLOCK files generated by CALAVE.
Step 4: CALRANK
Run a single CALRANK simulation requesting the 90th percentile (90th percentile at each
receptor for each species, date and time at which it occurred)
Z170308064614 - 0072
28
2 Roadway
2.1 Introduction
Emissions from roadways are typically characterized by a distribution of sources located along
each road. Commonly applied methods use strings of closely-spaced point/volume sources
distributed along the roads. For large or complex road networks that can incur significant
computational expense due to the large number of sources required, CALPUFF Version 7
introduces the capability of modeling the transport and dispersion of roadway emissions more
efficiently than was previously possible.
The new approach simulates line sources such as roadways using the concept of rod-like puffs,
or simply “rods”. Emitting rods follow the same rules as emitting horizontally symmetric
Gaussian puffs, but far fewer rods aligned with road segments are needed to emulate the
uniform distribution of emissions along a road segment. Furthermore, the notion of a rod
release can be applied to individual intermittent roadway sources, with a representative temporal
pattern specified through the use of the module’s variable emissions input file.
A rod represents a special case of the CALPUFF slug formulation in which all properties are
uniformly distributed along its axis. This allows all transport and dispersion after release to be
accomplished using the slug algorithms already in place. Reduced simulation times for larger
domains are expected while maintaining the near-field details embodied in the initial effective
source distributions. Near-field “hot spots” can be resolved as well as the drift of pollutants to
sensitive areas further away.
Each roadway link in a simulation is treated as a discrete, named source and is defined as a
section of the road for which emissions (g/m/s) are uniform. Link properties include the
effective height above ground, the initial concentration distribution width (y) and height (z)
perpendicular to the link axis, and the emission rate for all emitted species. Links with constant
properties for the simulation period can be described in the model control file. Some variability
Z170308064614 - 0072
29
in emission rates may be included using emission factors for selected links and species. These
factors can be specified by time-of-day, day-of-week, month, temperature, etc., so simple
emissions profiles can be accommodated. Much more variation can be obtained using external
variable emissions (RDEMARB.DAT) files which can include sub-hourly updates that do not
need to be uniform in time.
A link is located by a series of two or more coordinate triples (x,y,z) that describe its path,
where the vertical coordinate is the road elevation above mean sea level. A long, winding
isolated road might be characterized by a single link made up of many coordinate triples. These
points should be sufficient to resolve curves, but need not have uniform spacing. For example, a
straight flat segment can be defined by 2 points, regardless of the distance covered. All line
segments are automatically divided further within the model into segments that are limited by
the modeling grid-cell boundaries (no segment may extend across multiple meteorological grid
cells). One emission rate for each species is used for the entire link. Near a congested
intersection, many short links may be required to resolve the spatial and temporal distribution of
emissions.
Individual segments of a link emit rod-like puffs with the long axis aligned with the segment.
Like symmetric puffs, many discrete rods are emitted sequentially in time and concentrations
are obtained at receptors by integrating their impact during a sampling period as they are
transported by the wind. A rod has a uniform mass distribution along its length and a single
Gaussian lateral (σy) and vertical (σz) distribution across it and at each end. The ends of the rod
have identical properties, as there is no difference in “age”. Unlike slugs emitted from point
sources, rods do not elongate in the transport direction during the emission time step, and so
they have no young and old ends. Otherwise, they are treated just like slugs in the sampling
routines. As the σy at the ends of a rod grow with time and become large compared to its length,
the elongation of the rod becomes imperceptible and each eventually converts to a symmetric
puff. Because puffs are sampled more quickly than slugs, this improves the overall efficiency of
the simulation.
Z170308064614 - 0072
30
2.3 Road Emission File (RDEMARB.DAT)
This CALPUFF emissions file characterizes the distribution of one or more pollutants resulting
from activities that are distributed along a network of roads or similar line-segments. Each
segment generates an elongated puff or ‘tube’, which is described by the location and height of
the endpoints of the segment and the effective vertical and horizontal cross-segment distribution
sigmas at these points. Mass emissions per unit length along the segment are provided for all
species modeled.
Roads are described by a sequence of coordinates provided for each road-link. Each link is
entered as a discrete, named source and is defined as a section of the road for which emissions
are uniform. A long, winding isolated road might be characterized by a single link made up of
many coordinate triples (x,y,z) that describe its pathway. These points should be sufficient to
resolve curves, but need not have uniform spacing. For example, a straight flat segment can be
defined by two points, regardless of the distance covered. Long line segments are automatically
divided further within the model into segments that are limited by the grid-cell boundaries (no
segment may extend across multiple cells). One emission rate (in grams per second per meter)
for each species is used for the entire road-link. Near a congested intersection, many short links
might be required to resolve the spatial and temporal distribution of emissions. Each is entered
and modeled as a discrete source.
The sequence of coordinates (x,y,z) that defines each link appears in the header, and so is
constant for the simulation. The sequence may be specified in a coordinate system other than
that used in the dispersion model, and will be transformed within the model. Time-varying
properties are provided in the data records that follow the header, and include the height above
ground, the initial distribution parameters (y and z,) and the emission rate for all emitted
species.
The beginning and ending times of each data record are specified as year, Julian-day, hour and
seconds, and can be of arbitrarily varying duration. However, as for all other arbitrarily-varying
emissions files, the ending time of one record must be equal to the beginning time of the next
Z170308064614 - 0072
31
record and periods of inactivity (zero emission) must be explicitly defined with zero emission
rates.
The RDEMARB.DAT record description and format are detailed in Table 2-1 through Table
2-5. As some records in the RDEMARB.DAT file are processed via a formatted read in
CALPUFF, attention must be paid to the length, type, and spacing in between each variable
when preparing the RDEMARB.DAT file.
Z170308064614 - 0072
32
Table 2-1 Example Road Emissions File with Arbitrarily Varying Data (RDEMARB.DAT)
Z170308064614 - 0072
33
Table 2-2 RDEMARB.DAT Header Record Variables
RDEMARB.DAT 1.0 Initial configuration Dataset Name, Dataset Version, Dataset Message
(char*16, char*16, char*64)
Format: (2a16,a64)
3 Number of comment lines to follow (integer)
Free-Format
Comment Line 1 Comment lines (80 characters per record are read)
Comment Line 2
Comment Line 3
UTM Map Projection Type (char*8)
19N Format: (a8)
UTM Zone, Hemisphere (integer,char*1)
Format: (i4,a1)
[See Table 3-5 for alternate map projection records]
NAS-C 02-21-2003 DATUM code and date (char*8, char*12)
Format: (a8,a12)
KM Map units are kilometers (char*4)
Format: (a4)
UTC-0500 Time Zone as (UTC+hhmm) (char*8)
Format: (a4)
2002 009 00 0000 2002 009 20 0000 Start time and end time of data in file as Year, Julian Day,
Hour, Second (0-3599) (integer)
Free-Format
2 1 Number of sources, Number of species (integer)
Free-Format
'SO2' Species names (char*16)
Free-Format (single quotes required)
30.000 Molecular weights for species (real)
Free-Format
Z170308064614 - 0072
34
Table 2-3 RDEMARB.DAT Time-Invariant Data Records
Time-invariant data must be assigned to each of the sources (identified by Source Name). In the example above, there are two sources
('MAIN_ST_32' and 'CENTRAL') with a corresponding block of time-invariant data records for each.
Coordinates are in the map projection defined in the header (see CALPUFF documentation for supported projection and datum codes).
The NULL variables are currently placeholders and should be entered with zero values as shown above.
Z170308064614 - 0072
35
Table 2-4 RDEMARB.DAT Time-Varying Data Records
2002 009 00 0000 2002 009 05 0000 Time Period 1 to N (spanning start to end time in file):
'MAIN_ST_32' 2.0 4.2 3.0 .040 Period start and end times (integers)
'CENTRAL' 1.0 3.5 1.5 .020 Start Year, Julian Day, Hour, Second(0-3599),
2002 009 05 0000 2002 009 06 0000 End Year, Julian Day, Hour, Second(0-3599)
'MAIN_ST_32' 2.0 4.2 3.0 .050 Free-Format
'CENTRAL' 1.0 3.5 1.5 .021
2002 009 06 0000 2002 009 20 0000 Time-varying data (repeated for Source 1 to N)
'MAIN_ST_32' 2.2 4.2 3.5 .060 Name (char*16; single quotes required)
'CENTRAL' 1.1 3.5 1.6 .025 Height above ground of initial distribution (real)
(meters above ground level)
Initial sigma-y (across the ‘tube’) (real)
(meters)
Initial sigma-z (real)
(meters)
Emission rate (repeated for each species in the
order defined by the species names in the
header) (real)
(grams per second per meter)
Free-Format
Time-varying data must be entered for each source matching the source names entered in the time-invariant data section.
In the example above, there are three time periods (spanning the start to end times of the data in the file) with a corresponding block of time-
varying data for each of the two sources ('MAIN_ST_32' and 'CENTRAL') below each.
Z170308064614 - 0072
36
Table 2-5 RDEMARB.DAT Map Projection Records
Z170308064614 - 0072
37
3 Spray
3.1 Introduction
Exponent was retained by the U.S. Department of Agriculture (USDA) Forest Service to update
the CALPUFF model in order to accommodate emissions produced during aerial spraying
activities. The emissions input to the CALPUFF model are produced by the model AGDISP
which predicts the motion of spray material released from aircraft, including evaporation and
turbulent dispersion within the aircraft wake. The hand-off to CALPUFF will be executed at a
time after release when all turbulent vortices have died down and evaporation of the droplet
volatile fraction is complete. AGDISP will export the position, elevation, final droplet diameter
and emissions associated with the range of particle sizes released from each aircraft nozzle.
These values will be accepted by CALPUFF version 7.3.0 and used to define sources for the
purpose of predicting further down-wind dispersion and deposition.
The CALPUFF version 7.3 code was updated to include a new SPRAY source type. This
source type has been developed in order to represent the distribution of liquid droplets which are
generated by aerial spraying applications or similar activities. Conceptually, this new source
corresponds to a set of line-sources or ‘tubes’, which are described by the location and height of
the endpoints of the flight track and an effective initial vertical and horizontal cross-track
distribution (x and y) at these points. The concentration distribution for each tube is
essentially equivalent to the distribution which would be achieved through the use of a large
number of adjacent volume sources and is similar to the configuration used for the ROAD
source introduced in CALPUFF version 7.2. Mass emissions per unit length per second along
the track are provided for all species modeled. Each ‘tube’ will contain droplets of a single
diameter size and all species are modeled as being contained within the common droplets.
Multiple ‘tubes’ in the same spray-track can be used to represent the distribution of different
droplet diameters.
Z170308064614 - 0072
38
The SPRAY source and CALPUFF code have been designed conceptually to allow the
evaporation calculations present in the AGDISP model to be continued in the CALPUFF
simulation after hand-off. At the present time, the values necessary to perform these
calculations have been included in an updated CALPUFF control file and external variable
emissions file, but the evaporation option is not active. It is anticipated that for the initial
situation under consideration, evaporation will be complete within a reasonably short period
after the release, so that further evaporation in CALPUFF is not presently required.
In order to implement this new SPRAY source type, updates have been made to the CALPUFF
input control file and a new variable emissions file for SPRAY sources (SPEMARB.DAT) has
been created. The sections below detail the changes and updates which have been made.
The CALPUFF version 7.0 control file has been updated to version 7.01 in order to accept
parameters necessary to model the SPRAY source. The following additions were made to the
control file structure.
The value of NSPDAT reflects the number of external time varying emissions files which will
be provided. The external time varying emissions files follow a format which will be explained
in section 4.
Z170308064614 - 0072
39
Input Group 0g (Added field)
-------------
Subgroup (0g) – SPEMARB.DAT files
-------------
The name and path (if required) of each time varying emissions file is provided in input group
0g.
The parameter MEVAP has been added to the control file structure in order to allow for future
implementation of evaporation within the CALPUFF model. The option is not presently
implemented and use of any value other than 0 will result in a warning message and termination
of the run.
The table in Input Group 3a has been modified to include a column (column 5) noting which
species will be modeled as droplets. Species which are modeled as droplets will all have a
common diameter defined by the diameter of the droplet. Any modification to the droplet
Z170308064614 - 0072
40
diameter will affect all species contained within it. Presently droplets can only be emitted from
SPRAY sources and a run which includes droplets cannot contain other non-droplet species.
!END!
Input Group 8 provides for the input of size parameters for dry deposition of particles. Droplets
are modeled as particles, but size parameters are not entered in this input group for species
included in droplets. For these species, the size parameters will be provided in the external
variable emissions file. Documentation has been added in this section to clarify use when
modeling droplets.
Z170308064614 - 0072
41
Input Group 10b (New Input Group)
---------------
Subgroup (10b)
---------------
!END!
Input Group 10b provides wet deposition scavenging coefficients for species modeled as
droplets. For non-droplet species, these parameters are provided for each species in Input
Group 10a (which in previous input file formats was labeled as Input Group 10). Droplet
species will all have common values.
Input Group 11c was implemented to accept an evaporation rate consistent with the evaporation
calculations made in AGDISP. The option to calculate evaporation is not presently active in
CALPUFF so this value is not used in the current version of the code.
Z170308064614 - 0072
42
Input Group 19 (New Input Group)
---------------
Subgroup (19)
---------------
Emissions from spray lines are generated from individual line segments
defined by a sequence of coordinates provided for each spray-link. Each
link is entered as a discrete source and is defined as a section of the
spray line for which emissions are uniform.
!END!
Input Group 19 is a new input group to accept the SPRAY emission source. The variable NSP2
denotes the number of spray-lines which will be included in the external variable emissions file
(SPEMARB.DAT).
Z170308064614 - 0072
43
3.4 External Variable Emissions SPRAY File (SPEMARB.DAT)
The CALPUFF external variable spray emissions file characterizes the distribution of air-born
droplets or particulates resulting from spraying operations carried out from a moving platform
(e.g., aircraft, truck, etc.) where the speed of the spray-craft dominates the geometry of the
emitted trail.
The tracks locations, droplet diameters and mass emission rates are specified in
SPEMARB.DAT. Coordinate projection parameters and time zones are defined in the header
and so may be independent of the map projection and time zone selected for the CALPUFF
simulations.
The beginning and ending times of each record are specified as year, Julian-day, hour and
seconds, and can be of arbitrarily varying duration. However, as for all other arbitrarily-varying
emissions files, the ending time of one record must be equal to the beginning time of the next
record and periods of inactivity (zero emission) must be explicitly defined with zero emission
rates.
The SPEMARB.DAT record description and format are detailed in Table 3-1 through Table 3-4.
Not all records in a SPEMARB.DAT file are “free reading” and attention must be paid to the
length of each variable, type, and spacing in between them.
Z170308064614 - 0072
44
Table 3-1 Example SPRAY Emissions File with Arbitrarily Varying Data (SPEMARB.DAT)
SPEMARB.DAT 1.0 Initial configuration
6
Header records are a mix of formatted and free-format structures
Time-invariant data records are free-format
Time-invariant data records allow 3 assignments per source (none are currently used)
Time-variable data records are free-format
Time-variable data records contain
X1(km),Y1(km),Z1(mASL),H1(mAGL),Sigy1(m),Sigz1(m),X2(km),Y2(km),Z2(mASL),H2(mAGL),Sigy2(m),Sigz2(m),
Pdiam(um),Dcut(um),Q(g/m/s)...
UTM
19N
NAS-C 02-21-2003
KM
UTC-0500
1990 009 04 0000 1990 009 10 0000
3 2
‘NONVOLATILE’ 'ACTIVE1'
30.00 30.000
'Source 1' 0.0 0.0 0.0
'Source 2' 0.0 0.0 0.0
'Source 3' 0.0 0.0 0.0
1990 009 04 0000 1990 009 04 0001
'Source 1' 340.486 4870.640 10.0 9.4 5.1 5.1 341.051 4870.048 10.0 9.4 5.1 5.1 3.0 2.0 .10 .05
'Source 2' 340.486 4870.640 10.0 6.9 5.8 5.8 341.051 4870.048 10.0 6.9 5.8 5.8 3.0 2.0 .10 .05
'Source 3' 340.486 4870.640 10.0 5.9 5.9 5.9 341.051 4870.048 10.0 5.9 5.9 5.9 3.0 2.0 .10 .05
1990 009 04 0001 1990 009 04 1835
'Source 1' 340.486 4870.640 10.0 9.4 5.1 5.1 341.051 4870.048 10.0 9.4 5.1 5.1 3.0 2.0 .00 .00
'Source 2' 340.486 4870.640 10.0 6.9 5.8 5.8 341.051 4870.048 10.0 6.9 5.8 5.8 3.0 2.0 .00 .00
'Source 3' 340.486 4870.640 10.0 5.9 5.9 5.9 341.051 4870.048 10.0 5.9 5.9 5.9 3.0 2.0 .00 .00
1990 009 04 1835 1990 009 10 1836
'Source 1' 341.486 4871.640 10.0 9.4 5.1 5.1 342.051 4871.048 10.0 9.4 5.1 5.1 3.0 2.0 .10 .05
'Source 2' 341.486 4871.640 10.0 6.9 5.8 5.8 342.051 4871.048 10.0 6.9 5.8 5.8 3.0 2.0 .10 .05
'Source 3' 341.486 4871.640 10.0 5.9 5.9 5.9 342.051 4871.048 10.0 5.9 5.9 5.9 3.0 2.0 .10 .05
1990 009 04 1836 1990 009 10 0000
'Source 1' 341.486 4871.640 10.0 9.4 5.1 5.1 342.051 4871.048 10.0 9.4 5.1 5.1 3.0 2.0 .00 .00
'Source 2' 341.486 4871.640 10.0 6.9 5.8 5.8 342.051 4871.048 10.0 6.9 5.8 5.8 3.0 2.0 .00 .00
'Source 3' 341.486 4871.640 10.0 5.9 5.9 5.9 342.051 4871.048 10.0 5.9 5.9 5.9 3.0 2.0 .00 .00
Example header records for each map projection (either 2 or 3 records):
Polar Stereographic
PS
40.5N 90.0W 30.0N
Equatorial Mercator
EM
0.0N 90.0W
Z170308064614 - 0072
45
Table 3-2 SPRAY Emissions File With Arbitrarily Varying Data (SPEMARB.DAT): Description of Header Variables
SPEMARB.DAT 1.0 Initial configuration Dataset Name, Dataset Version, Dataset Message
(char*16, char*16, char*64) Format: (2a16,a64)
6 Number of comment lines to follow (integer) Free-Format
Header records are a mix of formatted and free-format structures Comment lines (80 characters per record are read)
Time-invariant data records are free-format
Time-invariant data records allow 3 assignments per source (none are currently used) These should provide any information related to the model
Time-variable data records are free-format application. Here, the comments provide some
Time-variable data records contain documentation on the file structure.
X1(km),Y1(km),Z1(mASL),H1(mAGL),Sigy1(m),Sigz1(m),X2(km),Y2(km),Z2(mASL),H2(mAGL),Si
gy2(m),Sigz2(m), Pdiam(um),Dcut(um),Q(g/m/s)...
Z170308064614 - 0072
46
Table 3-3 SPRAY Emissions File With Arbitrarily Varying Data (SPEMARB.DAT): Description of Time-Invariant Data
'Source 1' 0.0 0.0 0.0 Source Name, Var1 - Var3 (char*16, real)
'Source 2' 0.0 0.0 0.0
'Source 3' 0.0 0.0 0.0 Free-Format (quotes required on Source Name)
Time-invariant data must be assigned to each of the sources, which are identified by name. In this example, there are 3 sources so there are 3
records.
None of “Var” values are currently defined for use, but all 3 columns must have values (zeros).
Z170308064614 - 0072
47
Table 3-4 SPRAY Emissions File With Arbitrarily Varying Data (SPEMARB.DAT): Description of Time-Varying Data
1990 009 04 0000 1990 009 04 0001
'Source 1' 340.486 4870.640 10.0 9.4 5.1 5.1 341.051 4870.048 10.0 9.4 5.1 5.1 3.0 2.0 .10 .05
'Source 2' 340.486 4870.640 10.0 6.9 5.8 5.8 341.051 4870.048 10.0 6.9 5.8 5.8 3.0 2.0 .10 .05
'Source 3' 340.486 4870.640 10.0 5.9 5.9 5.9 341.051 4870.048 10.0 5.9 5.9 5.9 3.0 2.0 .10 .05
Time-varying data must be assigned to each of the sources, which are identified by name. These are matched to the names entered in the time-
invariant data section. In this example, there are 3 sources and 4 records. The first record contains the start-time and end-time for the period in
which the data are valid. The entries when the source is emitting are 1 second long which is used to represent an instantaneous release. The
source data follow. This set of records is repeated for all time periods in the file.
Record 1: (5 variables)
Year, Julian Day, Hour, Second(0-3599), Number of Active Sources for this Release (integers) Free-Format
Source Name, X1, Y1, Z1,Sigmay1,Sigmaz1, H1, X2, Y2, Z2, H2, Sigmay2, Sigmaz2, Pdiam, Dcut, (Q(n), n=1,NSPEC) (char*16, reals)
Free-Format (quotes required on Source Name)
- X1,Y1,Z1,H1 Location of end 1 of track (X1,Y1,Z1 coordinate and H1 Height above ground)
- Sigmay1, Sigmaz1 Initial sigma-y across the ‘tube’ and initial sigma-z at end 1
- X2,Y2,Z1,H2 Location of end 2 of track (X1,Y1,Z1 coordinate and H1 Height above ground)
- Sigmay2, Sigmaz2 Initial sigma-y across the ‘tube’ and initial sigma-z at end 2
- Pdiam Aerodynamic particle size (um)
- Dcut Minimum diameter for evaporation (um)
- Q(n) Instantaneous Emission rate for each species (g/m/s), in the order defined by the species names in the header
Z170308064614 - 0072
48
3.5 Preparation of External Variable Emissions Files from
AGDISP Output.
Coupling between AGDISP and CALPUFF is accomplished through an output file generated by
AGDISP which can be used to produce a SPRAY External Variable Emissions file
(SPEMARB.DAT) readable by CALPUFF. In AGDISP, an option must be selected under
“Advanced Settings” specifying that the model should “Save CALPUFF data”. After
completion of the AGDISP run, the user can then select the menu option to “Export CALPUFF
Data” which will open a screen for data input. The “Export CALPUFF Data” screen will allow
input of 5 values:
Values for the SPRAY Line Beginning X and Y coordinates should be entered in a coordinate
system consistent with the configuration of the CALPUFF run. Base Z Elevation represents a
single base elevation representative of the field being sprayed. It will be used as the base
elevation for all sources produced by AGDISP. The SPRAY Line Length and Flight Direction
define the length and direction of the spray line relative to the beginning point.
The output file generated by AGDISP does not represent a complete SPRAY External Variable
Emissions file (SPEMARB.DAT). Additional user editing is necessary to configure the data file
for use in CALPUFF. A SPEMARB.DAT file consists of 3 main sections: Header Records
(described in Table 3-2), Time Invariant Records (described in Table 3-3) and Time Varying
Records (described in Table 3-4). The following sections describe generation of each of these
record sections for a simple CALPUFF application using AGDISP output.
Z170308064614 - 0072
49
3.5.1 Header Records
The header records must be generated by the user and, consistent with Table 3-2, contain the
following fields:
The time invariant records contain a list of the modeled sources and their format is summarized
in Table 3-3. No user editing is required in this section. Time invariant data is provided in the
first portion of the output file generated by AGDISP. Each line contains a source name in
quotes, followed by 3 numerical fields, each containing a value of 0.0. The numerical fields are
not presently used by the CALPUFF code, but must be present. The number of lines of data
defined in this section should match the number of sources listed in the Header Records.
Time varying records must be provided to cover the entire period of the CALPUFF run. Each
time varying record includes a line containing a time beginning and time ending stamp for the
emissions data. It then includes emissions data for each modeled source. The format is
documented in Table 3-4. Data must be provided both for the time when the spray is released
and the periods of time between spraying releases. The periods of time between releases
include records for all sources, but emissions are zero for every source.
Z170308064614 - 0072
50
The output file generated by AGDISP provides blocks of time varying data required to define
the source and emissions for multiple aerial passes. It includes records both for the spray
emission periods, and the times between spray emissions. The user is required to edit the time
beginning and ending fields, as described on the next page. Each time varying data record will
contain multiple rod sources with differing locations and/or droplet diameters. The source and
emissions data represent the values at the handoff time between AGDISP and CALPUFF. The
fields contained in the AGDISP output file include:
Note that the emissions provided by AGDISP are in units of g/m. In order to ensure that these
units are consistent with the CALPUFF units of g/m/s, the length of the timestep when the spray
is emitting will need to be defined to be 1 second long (See Table 3-1 for an example).
Z170308064614 - 0072
51
Each block of time varying data output by AGDISP begins with a place-holder string of text
which reads “YYYY DDD HH SSSS YYYY DDD HH SSSS”. These fields must be replaced
by the user with the year, Julian day, hour, and second representing the beginning and ending
time of the represented period. For periods when a spray is emitted, the total length of time
between the beginning and ending time must be 1 second. For example, to represent a spray
release which occurs at 10 am on July 1st (Julian Day 182), 2010 the following beginning and
ending time stamps should be used.
Time varying records must also be supplied for periods between spray releases. AGDISP will
produce a second time varying block of data for this period with zero emissions for all sources.
This block of data will again include a place-holder string of text which must be updated by the
user. The time stamps used for this section should represent the period of time between the end
of the last spray release and the beginning of the next release. For example, if spray releases are
spaced 30 seconds apart, the time varying record representing the period between releases (with
zero emissions) should use the following beginning and ending time stamps.
The time stamps for the next emitting spray line with a period of 1 second would be:
If AGDISP is configured to model multiple aerial passes, the output file will contain multiple sets of
emitting and non-emitting time varying records. Each record will require the user to provide time
stamps which follow the above pattern. The final non-emitting time varying record should cover the
full time from the end of the last emitting spray to the end of the CALPUFF run.
Z170308064614 - 0072
52
Appendix A
Sample CALAVE.INP
CALAVE.INP
This utility reads a CALPUFF output file (CONC, WET, DRY) and creates a running
average of its contents. These averages are reported from a specified start-time
and are written for each data period thereafter.
For example, if 24-hour averages starting at 10AM (start time = 10:00) are
requested and the original CALPUFF output file contains half-hour values
beginning at 0930 on March 13:
The last 24-hour period will end at the end of the last 30-minute period in the file.
This utility reads a CALPUFF output file (CONC, WET, DRY) and creates a blocked
average of its contents. These averages are reported from a specified start-time
and are written end-to-end thereafter.
For example, if calendar-day 24-hour averages are requested (start time = 00:00)
and the original CALPUFF output file contains half-hour values beginning at 0930
on March 13:
The last 24-hour period will end at the end of the last full day in the file.
--------------------------------------------------------------------------------
Processing Options
-------------------
Define the output averaging period in hours and minutes. Typically, the
hours will be zero when minutes are non-zero, and minutes will be zero
when hours are non-zero.
Output Files
------------
Output files are named by adding characters to the end of the input filenames
in the form of a new extension. For example, if an extension '.24_running'
is entered, the output associated with the first file above would be named
'source1.dat.24_running'. Enter the extension, including any punctuation
(must resolve to a legal file name) between delimiters:
Input Files
-----------
! INPFILE = source1.dat !
! INPFILE = source2.dat !
! INPFILE = source3.dat !
! INPFILE = source4.dat !
! INPFILE = source5.dat !
! INPFILE = source6.dat !
Appendix B
This utility reads a set of CALPUFF-format output files (CONC, WET, or DRY)
and selects the maximum value at each receptor for each block of time. These
time-blocks start at the beginning of the processing period defined below,
and the length of each block is equal to the averaging time of the data in the
input files (averaging time in all input files must match). The input data
may consist of block-averages or running-averages. The start of each average
may be different among the set of input files. All averages with a start-time
that falls within an output time-block are compared when selecting the maximum
for the time-block. If the period of data in a file begins later or ends
earlier than the processing period, CALMAX assumes that those data are zero at
these times.
Example:
Many CALPUFF output files can be included without limit and CALMAX will cycle
through all. Receptors and species must be the same in all files.
Processing Period
-------------------
Output Files
------------
Input Files
-----------
! INPFILE = flare.con.01-03blk !
! INPFILE = flare.con.02-03blk !
! INPFILE = flare.con.03-03blk !
! INPFILE = flare.con.04-03blk !
! INPFILE = flare.con.05-03blk !
! INPFILE = flare.con.06-03blk !
! INPFILE = flare.con.07-03blk !
! INPFILE = flare.con.08-03blk !
! INPFILE = flare.con.09-03blk !
! INPFILE = flare.con.10-03blk !
! INPFILE = flare.con.11-03blk !
! INPFILE = flare.con.12-03blk !
! INPFILE = flare.con.13-03blk !
! INPFILE = flare.con.14-03blk !
! INPFILE = flare.con.15-03blk !
! INPFILE = flare.con.16-03blk !
! INPFILE = flare.con.17-03blk !
! INPFILE = flare.con.18-03blk !
! INPFILE = flare.con.19-03blk !
! INPFILE = flare.con.20-03blk !
! INPFILE = flare.con.21-03blk !
! INPFILE = flare.con.22-03blk !
! INPFILE = flare.con.23-03blk !
! INPFILE = flare.con.24-03blk !
PERIODMAX.OUT
PERIODMAX.OUT 1.0
8
---------------------------------------------------------------------------
Prepared by CALMAX Version 1.1 Level 120915
Maxima from a set of CALPUFF output files; information about first is:
Processed by CALAVE Version 1.1 Level 120915
Original CALPUFF output is averaged to 3-hour, 0-minute periods
Averaging Method for Output: RUNNING
CALPUFF Version 6.42 Level 110325
---------------------------------------------------------------------------
START(YYYYJJJHHSSSS) = 1995181160000
END (YYYYJJJHHSSSS) = 1995212190000
NUMBER_PERIODS = 249
NUMBER_SPECIES = 2
'SO2 1' 'g/m3 '
'SO4 1' 'g/m3 '
1995181160000 1995181190000 0.0000000E+00 0.0000000E+00
1995181190000 1995181220000 0.1236652E-06 0.4296419E-06
1995181220000 1995182010000 0.1620922E-06 0.4367350E-06
1995182010000 1995182040000 0.1920760E-06 0.5641223E-06
1995182040000 1995182070000 0.2449551E-06 0.6999548E-06
1995182070000 1995182100000 0.2414128E-06 0.7225233E-06
1995182100000 1995182130000 0.2257391E-06 0.8143888E-06
1995182130000 1995182160000 0.2091050E-06 0.7982892E-06
1995182160000 1995182190000 0.1993398E-06 0.7821818E-06
1995182190000 1995182220000 0.1405862E-06 0.8824974E-06
1995182220000 1995183010000 0.1541312E-06 0.7509557E-06
1995183010000 1995183040000 0.1941535E-06 0.7105132E-06
1995183040000 1995183070000 0.2419434E-06 0.7160419E-06
1995183070000 1995183100000 0.2379932E-06 0.7245426E-06
1995183100000 1995183130000 0.2252482E-06 0.7410509E-06
1995183130000 1995183160000 0.2118052E-06 0.7659141E-06
1995183160000 1995183190000 0.2213503E-06 0.6943087E-06
1995183190000 1995183220000 0.2206614E-06 0.7885833E-06
1995183220000 1995184010000 0.1754233E-06 0.6280415E-06
. . . (records removed)
1995211040000 1995211070000 0.2389819E-06 0.9125792E-06
1995211070000 1995211100000 0.2448705E-06 0.9817674E-06
1995211100000 1995211130000 0.2148565E-06 0.9891634E-06
1995211130000 1995211160000 0.2138693E-06 0.8830513E-06
1995211160000 1995211190000 0.2050581E-06 0.8602494E-06
1995211190000 1995211220000 0.1671577E-06 0.8617992E-06
1995211220000 1995212010000 0.1653654E-06 0.7678133E-06
1995212010000 1995212040000 0.1733464E-06 0.7147995E-06
1995212040000 1995212070000 0.2328687E-06 0.7122401E-06
1995212070000 1995212100000 0.2320222E-06 0.4438733E-06
1995212100000 1995212130000 0.2211245E-06 0.4894759E-06
1995212130000 1995212160000 0.2021380E-06 0.5094999E-06
1995212160000 1995212190000 0.1918380E-06 0.5112856E-06
Appendix C
Sample CALRANK.INP,
CALRANK.LST, and
CALRANK_PLOT_PCTL.DAT
CALRANK.INP
CALRANK.INP 1.0 Test Configuration
--------------------------------------------------------------------------------
Input File
----------
Results File
------------
Name of output list file of results for run (include path if desired):
Plot Files
----------
Plot files are created for each rank/percentile requested, reporting the ranked value
of each species for each receptor with records containing x,y,v(1),v(2),...,v(nspec).
The filenames have a default structure composed of the results file name [LSTFILE]
with the rank or percentile appended.
! NTH_HIGHEST = 2 !
! NTH_HIGHEST = 8 !
! NTH_HIGHEST = 12 !
! PERCENTILE = 98 !
! PERCENTILE = 95 !
! PERCENTILE = 90 !
! PERCENTILE = 75 !
Peak values that are ranked may be restricted to no more than 1 per calendar
day (e.g., the calendar-day maximum). The day in which a value is placed is
determined by its start-time.
Averages (DAY,HH,MM,SS) = 0 3 0 0
Type of Averaging = BLOCK
Number of averages/day = 8
Number of days = 32
Number of receptors = 20
Number of species = 6
First day (YYYYJJJ) = 1995181 UTC-0700
Last day (YYYYJJJ) = 1995212 UTC-0700
Model data for each receptor are ranked over all times based on magnitude and
the requested Nth-Highest and/or Percentile values are reported for each receptor
in the output files:
CALRANK_TEST_BLK_UG.LST_PLOT_RANK-0002.DAT
CALRANK_TEST_BLK_UG.LST_PLOT_RANK-0008.DAT
CALRANK_TEST_BLK_UG.LST_PLOT_RANK-0012.DAT
CALRANK_TEST_BLK_UG.LST_PLOT_PCTL-98.000.DAT
CALRANK_TEST_BLK_UG.LST_PLOT_PCTL-95.000.DAT
CALRANK_TEST_BLK_UG.LST_PLOT_PCTL-90.000.DAT
CALRANK_TEST_BLK_UG.LST_PLOT_PCTL-75.000.DAT
The largest of these for each rank are tabulated below with the location and time
--------------------------------------------
Tabulation for Requested Nth-Highest Values
Results for the Maximum Receptor
All Values in Each Day are Included
--------------------------------------------
Location Starting UTC-0700
X Y Date Time
N Percentile Species - Level Modeled Units (KM) (KM) (YYYY_JJJ)(HH:MM:SS)
--------------------------------------------
Note: number of times in period = 256
--------------------------------------------
Tabulation for Requested Percentile Values
Results for the Maximum Receptor
All Values in Each Day are Included
--------------------------------------------
Location Starting UTC-0700
X Y Date Time
N Percentile Species - Level Modeled Units (KM) (KM) (YYYY_JJJ)(HH:MM:SS)
--------------------------------------------
Note: number of times in period = 256
CALRANK_PLOT_PCTL.DAT
---------------------------------------------
Requested Values for Percentile (%) = 75.000
Corresponding Nth-Highest N = 65
All Values in Each Day are Included
Number of times in period = 256
---------------------------------------------
Model data for each receptor are ranked over all times based on magnitude and
the requested Nth-Highest and/or Percentile values are reported for each receptor