U Af ••*«;
DECEMBER 1986
USER'S GUIDE FOR PEM-2:
POLLUTION EPISODIC MODEL (VERSION 2)
ATMOSPHERIC SCIENCES RESEARCH LABORATORY
OFFICE OF RESEARCH AND DEVELOPMENT
U.S. ENVIRONMENTAL PROTECTION AGENCY
RESEARCH TRIANGLE PARK, NORTH CAROLINA 27711
-------
-------
USER'S GUIDE FOR.PEM-2:
POLLUTION EPISODIC MODEL (VERSION 2)
by
K. Shankar Rao
Atmospheric Turbulence and Diffusion Division
National Oceanic and Atmospheric Administration
Oak Ridge, Tennessee 37830
IAG-DW13930021-01-1
Project Officer
James M. Godowitch
Meteorology and Assessment Division
Atmospheric Sciences Research Laboratory
Research Triangle Park, North Carolina 27711
ATMOSPHERIC SCIENCES RESEARCH LABORATORY
OFFICE OF RESEARCH AND DEVELOPMENT
U.S. ENVIRONMENTAL PROTECTION AGENCY
RESEARCH TRIANGLE PARK, NORTH CAROLINA 27711
-------
NOTICE
The information in this document has been funded in part by the United
States Environmental Protection Agency under Interagency Agreement
IAG-DW13930021 to the Atmospheric Turbulence and Diffusion Division of the
National Oceanic and Atmospheric Administration. It has been subject to
the Agency's peer and administrative review, and it has been approved for
publication as an EPA document. Mention of trade names or commercial
products does not constitute endorsement or recommendation for use.
-------
PREFACE
This report contains a technical description and complete user instructions
for the Pollution Episodic Model Version 2 (PEM-2) computer program. The PEM-2
urban air quality dispersion model was developed to simulate the relevant
physical processes in order to predict short-term ground level concentrations
of particulate matter and/or gaseous pollutants from multiple point and area
sources over an urban domain. Gaussian plume modeling techniques were adapted
to allow for dry deposition processes by a gradient transfer approach and a
chemical reaction between two species by a linear transformation method. The
deposition and settling velocities for each species, and a transformation rate
constant must be specified by the user. The model algorithms are subject to
specific assumptions and limitations described in the report. PEM-2 is currently
a non-guideline model.
Input requirements include source characteristics and emission rates, hourly
measurements of meteorological parameters, and upwind boundary concentration.
The latter should be representative of the incoming regional background measured
sufficiently upwind of the urban emissions region. A comprehensive quality-
assured emissions inventory and representative, accurate meteorological and
concentration measurements aid in reducing model uncertainty.
The computer code has been thoroughly tested with example cases; however,
errors are occasionally discovered and revisions may be made. Future revisions
may be obtained if issued by completing and returning the form on the last page
of this publication. Comments and questions about this publication should be
directed to; Chief, Atmospheric Modeling Branch, Meteorology and Assessment
Division (MD-80), Environmental Protection Agency, Research Triangle Park, NC
27711.
This user guide is available from the National Technical Information
Service (NTIS), Springfield, VA 22161. The computer code is contained on the
UNAMAP Version 6 magnetic tape and it may be obtained from Computer Products,
NTIS, Springfield, VA 22161 (phone: (703) 487-4763).
iii
-------
ABSTRACT
The Pollution Episodic Model Version 2 (PEM-2) is an urban-scale model
designed to predict short term average ground-level concentrations and depo-
sition fluxes of one or two gaseous or particulate pollutants at multiple
receptors. The two pollutants may be non-reactive, or chemically-coupled
through a first-order chemical transformation. Up to 300 isolated point
sources and 50 distributed area sources may be considered in the calcula-
tions. Concentration and deposition flux estimates are made using hourly
mean meteorological data. Up to a maxiumum of 24 hourly scenarios of
meteorology may be included in an averaging period.
The concentration algorithms used in PEM-2 are specially developed to
account for the effects of dry deposition, sedimentation, and first^order
chemical transformation. The Gaussian plume-type algorithms for point
sources are derived from analytical solutions of a gradient-transfer model.
In the limit, when deposition and settling velocities of the pollutants and
the chemical transformation rate are zero, these expressions reduce to the
familiar Gaussian plume diffusion algorithms. The concentrations from area
sources in PEM-2 are calculated by numerical integration of the point: source
algorithms.
When the chemical transformation option is considered, PEM-2 calculates
the average surface concentrations and deposition fluxes of both the primary
(reactant) and the secondary (reaction product) pollutants. The model
also permits a possible direct emission of the secondary pollutant. The
deposition and settling velocities of the two species may be different.
Either of the species may be a gaseous or particulate pollutant. PEM-2 is
intended for studies of the atmospheric transport, transformation, and
deposition of acidic, toxic, and other pollutants in urban areas to assess
the impact of existing or new sources or source modifications on air
quality for regulatory purposes and urban planning.
The User's Guide lists the concentration algorithms and computational
techniques used in the PEM-2 program, and describes the input/output parame-
ters, optional features, capabilities, and limitations of the model.
Modifications to the previos version of the model are outlined. The
information contained in this report is directed to the model user and the
programmer.
This User's Guide to PEM-2 was prepared by NOAA's Atmospheric
Turbulence and Diffusion Division in partial fulfillment of an Interagency
Agreement with the U.S. Environmental Protection Agency. This work,
covering the period December 1983 to July 1984, was completed as of
September 30, 1984.
iv
-------
CONTENTS
Preface iii
Abstract iv
Figures vii
Tables viil
Acknowledgements • ix
1. MODEL OVERVIEW
1.1 Introduction 1
1.2 Capabilities and Applications 2
1.3 Assumptions and Limitations 3
1.4 Summary of Input Data 5
1. 5 Summary of Model Output 7
2. TECHNICAL DISCUSSION
2.1 Theoretical Basis 9
2.2 Point Sources 10
2.2.1 Concentration Algorithms 10
2.2.2 Plume Rise 12
2.2.3 Dispersion Parameters • 13
2.2.4 Restrictions on Receptors for Calculations 14
2.3 Area Sources 15
2.3.1 Emission Grid 15
2.3.2 Concentration Algorithms 21
2.3.3 Dispersion Parameters 24
2.4 Receptors 24
2.4.1 Receptor Grid 24
2.4.2 Automatic Grid Selection 25
-------
2.5 Meteorology 30
2.5.1 Atmospheric Stability 31
2.5.2 Wind Speed 32
2.5.3 Wind Direction 34
2.5.4 Mixing Depth 35
3. COMPUTER PROGRAM OVERVIEW
3.1 Basis for PEM-2 Program 37
3.2 Structure of the Program 38
3.3 General Flow of the Program 40
4. PROGRAM USER'S GUIDE
4.1 Summary of Program Input 42
4.2 Details of Program Input 43
4.2.1 Control Parameters 43
4.2.2 Scenario Parameters . 50
4.2.3 Area Source Parameters 51
4.2.4 Point Source Parameters 52
4.3 Guide to Program Output 53
4.4 Discussion of I/O Parameters 55
4.5 Example Problems 58
References 60
Appendices
A. Point Source Algorithms 61
B. Plume Rise Equations and Plume Penetration Methods 70
C. Surface Deposition Fluxes, and Deposition and Settling
Velocities 85
D. D01AJF - NAG FORTRAN Library Routine Document 88
E. Input and Output Listings of Example Problems 92
F. PEM-2 FORTRAN Listing 147
vi
-------
FIGURES
Number Page
1. Schematic diagram showing a single grid square with emissions
and four downwind calculation grid squares with receptors, and
the distances used in area-source algorithms. These distances
are measured downwind from the source Qo 17
2. Spatial patterns of affected calculation grid squares downwind
of an area source 18-19
3. Points used for automatic selection of receptor grid by AUTGRD
subroutine 27
4. Example of a receptor grid selected by AUTGRD subroutine 29
5. Structure of PEM-2 computer program 39
vn
-------
TABLES
Number Pag
1 Values of coefficients in the formulas for Oy(x) and az(x) in
urban conditions 14
2 Maximum crosswind half-angle values for point source plumes 15
3 Values of i and j for each spatial pattern of affected squares
downwind of an area source 20
4 Atmospheric stability classes 31
5 Atmospheric conditions defining stability classes 31
6 Wind speed classification ,. 32
7 Values of exponent p in wind speed power law 33
8 Wind direction sectors 34
vin
-------
ACKNOWLEDGEMENTS
This report was prepared for the Office of Research and Development,
Atmospheric Sciences Research Laboratory (ASRL) of the U. S. Environmental
Protection Agency (EPA) to support the needs of EPA's Office of Air Quality
Planning and Standards in urban particulate modeling. This work was
accomplished under interagency agreements among the U. S. Department of
Energy, the National Oceanic and Atmospheric Administration, and the EPA.
The author is grateful to Dr. Jack Shreffler and James Godowitch of ASRL
for their interest and advice during the course of this work. The author
thanks Atmospheric Turbulence and Diffusion Division Director Bruce Hicks
for his support, and Mrs. Mary Rogers for her excellent typing and patient
revisions. Special thanks are due to Cheryl Stieneke, Martha Stevens, and
Mike Ku, who worked as programmers for this project at various times and
assisted in the development and testing of the PEM-2 program.
Several figures and tables shown in this report are reproduced from the
Users' Guide to Texas Episodic Model with permission from the Texas Air
Control Board. The library routine D01AJF used for numerical integration
in PEM-2 has been released by the Computer Sciences Division of the Oak
Ridge National Laboratory for inclusion in the program listing. The
Numerical Algorithms Group (NAG) holds the copyright to this routine and
its document. The latter is reproduced in this report from the NAG FORTRAN
Mini-Manual.
ix
-------
SECTION 1
MODEL OVERVIEW
1.1 INTRODUCTION
The Pollution Episodic Model Version 2 (PEM-2) is an urban-scale air
quality model designed to predict short term ground-level concentrations
and deposition fluxes of one or two, gaseous or particulate, reactive or
non-reactive pollutants in an urban area with multiple point and area
sources. PEM-2 uses the concentration algorithms developed by Rao (1982)
which explicitly account for the effects of dry deposition, gravitational
settling, and a first-order chemical transformation. These algorithms,
derived analytically from a gradient-transfer model, are based on Gaussian
plume modeling assumptions. For chemically-coupled pollutants, the surface
concentrations and deposition fluxes of both the primary (reactant) and the
secondary (reaction product) pollutant are calculated.
PEM-2 is based on the Pollution Episodic Model (PEM) developed by Rao
and Stevens (1982). The latter, in turn, is based on the Texas Episodic
Model Version 8 (TEM-8) developed by the Texas Air Control Board (1979) for
the atmospheric dispersion of non-reactive pollutants over a perfectly
reflecting (non-depositing) surface. In the limit, when the deposition and
settling velocities and the chemical transformation rate are zero, the con-
centration algorithms used in PEM-2 reduce to the familiar Gaussian plume
dispersion algorithms used in TEM-8. The two models share essentially the
same framework for calculations, though there are differences in the com-
putational techniques utilized in the models.
1
-------
Besides the concentration algorithms, there are other important dif-
ferences between PEM-2 and TEM-8 models:
1. PEM-2 uses Briggs' (1973) urban dispersion parameters for both point
and area sources to represent 1-hour average dispersion. This treat-
ment is similar to that used in EPA's RAM model (Turner and Novak,
1978). TEM-8 uses the Pasquill-Gifford (PG) curves to represent
10-minute average dispersion from point sources; for averaging periods
longer than 10 minutes, the ay values are adjusted to account for the
greater horizontal plume meander due to fluctuations in wind direction.
For area sources, TEM-8 uses the oz's from Gifford and Hanna (1970) to
represent 1-hour average dispersion.
2. PEM-2 determines the concentrations for a period longer than an hour
by summing and averaging the concentrations calculated for each hour
in the period. TEM-8 does not do this time-averaging for con-
centrations from area sources. Thus, with a constant meteorology for
N hours, the area-source concentration at a receptor predicted by
TEM-8 would be N times its hourly concentration.
3. TEM-8 estimates the point source concentrations by interpolating bet-
ween the relative concentrations precalculated for selected values of
model parameters and stored in large look-up tables. Because of the
large number of model parameters, PEM-2 does not use this inter-
polation technique.
Other differences between these two models are listed in Section 3.
1.2 CAPABILITIES AND APPLICATIONS
The capabilities of PEM-2 are as follows:
1. PEM-2 is an urban-scale air quality model applicable to downwind
distances of up to 50 km. Up to a maximum of 300 point sources and 50
area sources can be included in the model inputs to estimate concentra-
tions at a maximum of 2500 receptors located on a 50 x 50 square recep-
tor grid.
2. PEM-2 calculates short-term (1 to 24 hr) average ground-level con-
centrations and deposition fluxes of one or two gaseous or particulate
pollutants.
3. The two pollutants may be non-reactive, or chemically-coupled through
a first-order chemical transformation. If only one pollutant is
calculated, the effects of a first-order chemical decay can be con-
sidered. The chemical transformation (or decay) rate may vary from
0.1 to 100 percent per hour.
-------
4. The deposition (and settling) velocities of the two species may be
equal or different. Direct emission of the secondary (reaction
product) pollutant can be considered for both point and area sources.
Some areas of potential application of PEM-2 are the following:
1. Urban particulate modeling.
2. Studies of the transport, diffusion, transformation, and deposition of
acidic, toxic, and other pollutants in urban areas. An important _
example is the atmospheric transport and transformation of S02 to SO,.
3. Impact analyses of existing or new sources or source modifications for
regulatory purposes and urban planning.
4. Stack design, and fuel conversion/switching studies. Evaluation of
pollution control technology and strategies for prevention of signifi-
cant deterioration.
1.3 ASSUMPTIONS AND LIMITATIONS
PEM-2 is based on steady state Gaussian plume modeling assumptions.
Some of the important assumptions of PEM-2 are as follows:
1. Concentration estimates may be made for each hour using the mean
meteorological conditions for that hour. Average concentrations for a
period longer than an hour are determined in the program by averaging
the hourly concentrations of that period.
2. The sources are stationary and the emission rates are constant over the
concentration-averaging period. The latter assumption is reasonable
since PEM-2 is designed to predict only short-terra average con-
centrations; this assumption is intended solely to limit the amount of
input data required by the model.
3. If the hourly emission rates are highly variable over the
concentration-averaging period, then the average concentrations may be
obtained by averaging externally, with minimal programming, the con-
centrations calculated hourly and stored on tape by the model. This
can be done, for example, to calculate the daily mean concentrations
with diurnally varying emission rates.
4. Total concentration at a receptor is the sum of the concentrations
calculated at the receptor from each source; i.e., concentrations are
additive.
5. Pollutants released from a stack are transported downwind at a rate
equal to the mean wind speed at the physical stack height. The wind
direction is constant for each hour. The horizontal wind field is
homogeneous and the effects of directional wind shear are neglected.
-------
6. Diffusion of continuous plumes gives time-averaged Gaussian distribu-
tions for concentrations in the crosswind and vertical directions.
The diffusion in the downwind direction is negligible compared to
advection. This assumption obviously excludes calm conditions..
7. The reactant and the product species are coupled through a first-order
chemical transformation. The deposition and settling velocities of
the species, and the chemical transformation rate are constant over
the concentration-averaging period. The diurnal variation of these
parameters can be considered, if necessary, by averaging the hourly
concentrations as discussed above.
8. Particulate pollutants consist of particles of a known size (or size
distribution) with a representative settling velocity.
9. Pollutant concentration at a receptor due to the distributed area
sources depends only on sources located in a narrow upwind sector.
Therefore, horizontal diffusion can be ignored for area sources.
10. The crosswind variations of urban area source-strength patterns can be
ignored. The contributions of more remote upwind area sources to the
concentration at a receptor are quite small. For this reason, it is
generally adequate to consider only eight area source grid squares
immediately upwind of each receptor grid square.
Every air pollution model is limited by the assumptions used to pre-
dict the pollutant concentrations in the atmosphere. PEM-2 is subject to
the same basic limitations as any Gaussian plume-type model. The limiting
assumptions of the concentration algorithms developed for PEM-2 are
discussed in detail by Rao (1982). Other general limitations of the model
can be summarized as follows:
1. Receptors farther than 50 km downwind of a source are ignored. Thus
the maximum downwind distance is limited to 50 km.
2. The number of point sources is limited to 300, and the number of area
sources is limited to 50. The computer program can be easily modified
by the user to increase the maximum number of point and/or area sour-
ces, if necessary. All sources are stationary.
3. The maximum number of scenarios (sets of hourly meteorological data)
in an averaging period is limited to 24. PEM-2 is designed to calculate
only short-term (1 to 24 hr) average surface concentrations and depo-
sition fluxes of one or two pollutants.
4. PEM-2 does not make any adjustment for differences in terrain elevation
between sources and/or receptors. The model assumes level terrain. No
adjustments are made for building wake-induced downwash, wake entrainment,
or other building-related effects on the various effluent plumes.
-------
5. Only a first-order chemical transformation/decay is considered. The
transformation rate, and the deposition and settling velocities of the
species, must be specified by the user, if these options are selected.
6. The model cannot perform calculations for calm conditions; if such
conditions occur, the wind speed is arbitrarily set to 1 m/s.
7. PEM-2 does not attempt to deal with wet removal processes; hence, the
model does not apply during periods of precipitation.
1.4 SUMMARY OF INPUT DATA
Input to PEM-2 is divided into four main sections:
1) Control parameters
Control parameters remain constant throughout the model run. They
specify:
1. An alphanumeric title
2. Time-averaging option
3. Options for types of input and output
4. Number of scenarios (sets of hourly meteorological data)
5. Options for using stack-tip downwash, new plume rise and new plume
penetration schemes for point sources
6. Receptor grid coordinates and spacing
7. Automatic receptor grid option
8. Potential temperature gradient d9/dz for calculation of plume rise
with E and F atmospheric stability classes
9. Parameters for one or two pollutants:
a) Deposition velocity
b) Gravitational settling velocity
10. Option to calculate chemical transformation or decay of first
pollutant
a) Chemical transformation or decay rate
b) Ratio of molecular weights of product to reactant
11. Scaling factors for area source emission rates
12. Calibration coefficients to be applied to the calculated
concentrations
-------
13. Alphanumeric labels for pollutants
14. Alphanumeric labels for the calibrated concentrations
15. Site-specific values of anemometer height and/or wind-profile expo-
nents (optional)
2) Scenario Parameters
A scenario is a set of mean meteorological data for one hour. From one
to twenty-four scenarios may be included in each run. Each scenario uses
the same receptor grid and the same point and area source inventories.
Meteorological parameters for each scenario are:
1. Atmospheric stability class
2. Wind speed class or specific wind speed
3. Wind direction sector or specific wind direction
4. Ambient temperature
5. Mixing height
6. Potential temperature gradient in the elevated stable layer above
mixing height
3) Area Source Inventory
From zero to fifty area sources may be included in each run. Each
area source square is described by:
1. Location in receptor grid coordinates
2. Length of a side
3. Emission rates for pollutants
4) Point Source Inventory
From zero to three hundred point sources may be included in each run.
Each point source is described by:
1. Location in receptor grid coordinates
2. Emission rates for pollutants
3. Stack height
-------
4. Inside diameter of the stack-tip
5. Exit velocity of the plume
6. Exit temperature of the plume
7. Alphanumeric identification
Details of the input data to PEM-2 are given in Section 4 of this
report.
1.5 SUMMARY OF MODEL OUTPUT
For ease of reference, PEM-2 prints out and briefly explains all I/O
control parameters and technical options used in a run. Input data for
meteorological conditions, area sources, and point sources are also listed.
Calculated values of surface concentrations, deposition fluxes, and
other useful information may be displayed in the following optional forms:
1. List Option For each receptor in the grid, the calculated values
of concentrations and deposition fluxes are listed at the end of each
averaging-period consisting of 1 to 24 scenarios.
2. Spatial Array Option The calculated values of concentrations and
deposition fluxes at each receptor are displayed in map form at the
end of each averaging-period.
3. Tape Option The calculated values of concentrations and deposition
fluxes at each receptor are written on a magnetic tape (designated
for output) at the end of each averaging-period. This option may be
used to generate inputs to a contour-plotting routine, or to store
hourly output data for averaging externally in order to account for
the variability of hourly emission rates in an averaging-period con-
sisting of more than one scenario (see Section 1.3).
4. Culpability List Option The five point sources which contributed
most to the total concentration at each receptor are identified by
point-source sequence number. A list of these source numbers and
their percent contributions are printed for one or two pollutants at
each receptor in the grid at the end of each scenario.
5. Maximum Concentration Option The maximum calculated values of sur-
face concentration and deposition flux, and the receptor where these
values occur, are printed for each pollutant at the end of the last
scenario or averaging-period.
-------
6. Point Source List Option The input stack parameters, the wind
speed at physical stack height, the maximum effective source height,
the dominant plume rise influence (buoyancy or momentum), and the
plume penetration fraction (see Appendix B) are listed for each point
source at the beginning of each scenario.
These output options are selected by the user by specifying
appropriate values for the control parameters in the inputs to the model.
It may not be possible to select some of these options in combination with
others. The details are discussed in Section 4.
-------
SECTION 2
TECHNICAL DISCUSSION
2.1 THEORETICAL BASIS
The concentration algorithms used in PEM-2 are derived from analytical
solutions of a steady state gradient-transfer (K-theory) model, which
describes the atmospheric transport, diffusion, deposition, and first-order
chemical transformation of gaseous or particulate pollutants from an ele-
vated continuous point source. The eddy diffusivity coefficients in these
analytical solutions are expressed in terms of the empirical Gaussian
plume dispersion parameters, so that the latter can be conveniently spe-
cified as functions of the downwind distance and the atmospheric stability
class within the framework of the standard turbulence-typing schemes. The
point-source concentration algorithms for the primary (reactant) and the
secondary (product) pollutants are presented for various stability and
mixing conditions of the atmosphere. In the limit when deposition and
settling velocities and the chemical transformation rate are zero, these
algorithms reduce to the well-known Gaussian plume dispersion algorithms
presently used in EPA air quality models. Details of the gradient-transfer
model formulations, analytical solutions, parameterizations, and develop-
ment of the point-source concentration algorithms can be found in the
reports by Rao (1981, 1982).
-------
In PEM-2, the ground-level concentrations of the primary and secondary
pollutants resulting from urban area source emissions are computed by
numerical integration of the corresponding point-source concentration
algorithms. The urban area-source modeling techniques of Gifford and Hanna
(1970) are utilized in these computations. For point sources, PEM-2 provides
options for using the standard or new plume rise formulations due to Briggs
(1969, 1984), and new schemes for plume penetration of an elevated stable
layer. For both point and area sources, PEM-2 uses the urban dispersion
parameters of Briggs (1973) as given by Gifford (1976).
2.2 POINT SOURCES
2.2.1 Concentration Algorithms
The ground-level concentrations of the primary and the secondary
pollutants (denoted by subscripts 1 and 2, respectively) from an elevated
continuous point source are calculated in PEM-2 from one or both of the
following sets of algorithms, depending on the atmospheric stability and
mixing conditions:
Near-source region (0 < x < xm),
Ql gl g22
10
-------
Well-Mixed region (x > 2
Q
ci = IT • I1 • r1 <2a)
Ql gl g42
IT • L1 • r2- (2b)
y
where L = /2ir a , L = /2ir a (3)
y y z z
In the above, Q, is emission rate (source strength) of the primary pollu-
tant, U is mean wind speed at physical stack height, L is mixing depth
(height of inversion lid), xm is the downwind distance (from source) deter-
mined such that az(xm) = 0.47 L, and L and LZ are length scales charac-
teristic of diffusion in the horizontal crosswind and vertical directions,
respectively. The nondimensional functions gi(x,y), g' (x,0), g' (x,0),
g?,(x), and g/2(x), defined in terms of dimensionless parameterized
variables, are given in Appendix A.
In Eqs. (1) and (2), it should be noted that the concentrations for
both primary and secondary pollutants are expressed in terms of Q,. This
does not preclude consideration of a non-zero value for Q2> the direct
emission rate of the secondary pollutant. The algorithms for g^ and §/„
provide for this possibility.
The well-mixed region algorithms, Eq. (2), are generally used under
convective or neutral stability conditions. The ground-level plume center-
line concentrations of the species in the plume-trapping region (xm < x < 2
11
-------
can be obtained by calculating the concentrations at x^ and 2xm from Eqs.
(1) and (2), and interpolating between these values on a log-log plot of
concentrations versus downwind distance (Turner, 1970). PEM-2 uses this
interpolation approach in the plume-trapping region.
2.2.2 Plume Rise
Plume rise is calculated from the standard or new equations given by
Briggs (1969, 1984). The stack-exit conditions of the plume and the
ambient temperature determine whether the upward motion of the plume is
dominated by momentum or buoyancy. For atmospheric stability classes A to
D, the unstable/neutral plume rise equations are used. For stability
classes E and F, the stable plume rise equations are used. Thus, there are
four different situations for plume rise:
(1) buoyancy-dominated plume in unstable/neutral atmosphere,
(2) momentum-dominated plume in unstable/neutral atmosphere,
(3) buoyancy-dominated plume in stable atmosphere, and
(4) momentum-dominated plume in stable atmosphere.
In each situation except the last one, the plume rise is calculated as
a function of downwind distance from the stack until the final plume rise
is attained. The standard plume rise equations for these four cases, the
optional stack-tip downwash correction following Briggs (1973), and the
crossover techniques used in PEM-2 to determine whether the plume is domi-
nated by momentum or buoyancy are listed in Appendix B. The optional new
equations of Briggs (1984) for estimating the maximum rise of a buoyancy-
dominated plume in unstable/neutral atmosphere, and new schemes for plume
penetration of an elevated stable layer are also given in this Appendix.
12
-------
2.2.3 Dispersion Parameters
The Gaussian dispersion parameters, a and oz, used in PEM-2 for each
scenario are identical to those used in EPA's RAM model (Turner and Novak,
1978) to represent a 1-hour average dispersion over urban areas. Assuming a
rectangular cross-section for the plume, Briggs (1973) gave interpolation
formulas for these urban diffusion coefficients, which are based on the
diffusion data from near-surface releases of a neutrally-buoyant tracer in
St. Louis by McElroy and Pooler (1968). The corresponding expressions for
0y and az for a Gaussian plume, based on Briggs' formulations, are given by
Gifford (1976, Figure 7, Table 8). Hosker (1973) compared these urban
dispersion parameter curves to the Pasquill-Gifford (PG) a curves, and
showed that their values are greater than all but the more unstable of the
corresponding PG curves because of the enhanced mechanical and convective
turbulence over an urban area compared to that over open country.
PEM-2 uses the expressions for Briggs' urban dispersion parameters
given by Gifford (1976). These formulas are written in a convenient form
for programming as follows:
-1/2
az(x) = azx (l+czx) (l+bzx) ' (4a)
ay(x) = ayx (1+0.0004X) (4b)
In Eq. (4), x is given in meters. The coefficients ay, az, bz, and cz are
functions of atmospheric stability class, and their values are shown in
Table 1.
13
-------
TABLE 1
Values of Coefficients in the Formulas for av(x) and az(x),
Equation (4), in Urban Conditions
P-G Stability
Class
A-B
C
D
E-F
ay
.32
.22
.16
.11
az
.24
.20
.14
.08
bz
.001
0
.0003
.0015
cz
.001
0
0
0
2.2.4 Restrictions on Receptors for Calculations
Pollutants emitted from each point source may not contribute to all of
the receptors in a grid. The receptors excluded from the calculations are
those located upwind of the source, too far from the plume centerline, or
more than 50 km downwind of the source. For each source and each scenario,
PEM-2 selects a rectangular area of the receptor grid downwind of the
source, and calculations for that set of conditions are restricted to the
receptors located within that area. The source contribution is considered
to be zero at receptors located outside the area. Model inputs used for
determining this area are the source coordinates, grid boundaries, wind
direction, and the crosswind angle (A) between wind direction azimuth and
the azimuth from the source to the receptor. If A exceeds the maximum
crosswind half-angle of the plume (Amax), then the receptor is excluded
from calculations. The values of the maximum crosswind half-angle used in
PEM-2 for 1-hour averaging of the plume are shown in Table 2 as a function
of the atmospheric stability class.
14
-------
TABLE 2
Maximum Crosswind Half-angle Values
for Point Source Plumes
Atmospheric
Stability Class
A-B
C
D
E-F
max
(degrees)
43
33
25
18
At x = 100 m, these Amax values give a maximum plume half-width of 3 ov
for calculations in the lateral direction. For x > 100 m, the maximum
half-width of the calculated plume is larger than 3 0V.
2.3 AREA SOURCES
2.3.1 Emission Grid
PEM-2 defines a "calculation grid" by shifting the receptor grid to the
South and to the West by one-half the side of a grid square (Ax/2). Thus
each square in the calculation grid has one receptor at its center, since
the calculation grid squares are of the same size (Ax) as the receptor grid
squares.
Each area source used in PEM-2 should be sized so that it covers an
integral number of calculation grid squares. The size Ax should be defined
such that the smallest area source is at least as large as one calculation
grid square.
15
-------
The relationship between area sources and calculation grid squares can
be divided into three cases. In the first case, the area source is of the
same size as a calculation grid square. Emissions (Qo) are assumed to be
located at the center of the square; contributions of this area source are
determined at the receptor (Ro) located at the center of the emission grid
square, and at the receptors (R, to Rft) located at the center of each of
the eight calculation grid squares immediately downwind of the source.
This is schematically illustrated in Fig. 1, which shows only the first
five receptors Ro, , R^«
The location of the eight downwind squares is not apparent in cases
when the wind direction is not parallel to one of the calculation grid
coordinate axes as shown in Fig. 2. The angle, £, between the wind azimuth
and the nearest calculation grid coordinate axis is defined such that
0 £ 5 £ 45°. PEM-2 considers ten ranges of values for % as shown in
Table 3. For each range of 5, the location of each downwind square is
denoted by i (the number of calculation grid squares downwind from the area
source) and j (the number of calculation grid squares off the axis used to
define 5), as illustrated in Fig. 2. These patterns of squares are stored
in PEM-2 data tables that list values of i and j as shown in Table 3. For
a given scenario, each area source will have the same spatial pattern of
affected squares downwind.
16
-------
cc
ro
OJ
CM
(T
o
. CM
X
ro
. CM.
x
CM
CM
X
ro
. CM.
X
CM
X
O
CM
X
O
x —
VI
(/J T3 D >-4
d d o o
o oj d **-*
•H 03 en
M - 4J U /->
C/3 W VI 0) 00
£ O T3 -H
g
CU
*
<
ex
cu
u
S-l
3
O
VJ
CU
r"j
4-)
E
O
1^
14-1
•a
c
• H
3
d
5
o
T3
-o
i!
&-t
3
-------
WIND
AZIMUTH
CALCULATION GRID I
COORDINATE AXIS
i=4
j=0
9.46
i =4
i=3
i=2
i =^1
i=0
j=0
< 20.56°
Figure 2. Spatial patterns of affected calculation grid squares downwind
of an area source. PEM-2 considers eight (i.e., i=l, ,8)
affected grid squares downwind of an area source (i=0), though
only the first four are shown in this figure.
18
-------
j=3 j=2 j=1 j=0
"2 O f~\ A O ^~ f ^» "3C Q"7O
o^.ui •
-------
TABLE 3
Values of i and j for Each Spatial Pattern
of Affected Squares Downwind
of an Area Source
£ range, degrees
0 - 7.12
7.12 - 9.46
9.46 - 14.04
14.04 - 20.56
20.56 - 26.57
26.57 - 32.01
32.01 - 36.87
36.87 - 39.81
39.81 - 41.19
41.19 - 45.00
Values for j**
i=0*
0
0
0
0
0
0
0
0
0
0
i-i
0
0
0
0
0
1
1
1 •
1
1
i-2
0
0
0
1
1
1
1
2
2
2
i-3
0
0
1
1
1
2
2
2
3
3
i=4
0
1
1
1
2
2
3
3
3
4
i=5
0
1
1
2
2
3
3
4
4
5
i=6
0
1
1
2
3
3
4
5
5
6
i-7
0
1
1
2
3
4
5
6
6
7
i-8
0
1
2
2
3
4
5
6
7
8
**
i is the number of calculation grid squares
downwind from the area source
j is the number of calculation grid squares
off the axis used to define C
For each value of £, a diagram of the first four affected
squares downwind of an area source in square i=0, j=0 is
shown in Figure 2.
20
-------
In the second case, the area source is larger than one calculation grid
square. Let m be the number of calculation grid squares covered by the
source of area A. Then the emissions, Q, from the source are divided into
m component emission rates defined by
Qj = Q Aj/A , j = 1,2, ..., m
where Aj is the area of the source contained in the jth square,
m m
A = I A. and Q = I Q,
J-l J j-1 J
Then the contributions from each of the m emission grid squares are deter-
mined following a procedure similar to that for a single emission grid
square.
In the third case, a small area source may be imbedded in a large area
source. The emission rate of the latter source is divided into components
for each covered square as described above. Then each square is considered
as an area source with an emission rate equal to the sum of the component
emission rates from the original area sources.
2.3.2 Concentration Algorithms
The urban area sources consist of fugitive dust, highway, residential,
commercial and industrial emissions, and their inventories are generally
not detailed enough to provide information on the source height and
plume-release conditions such as plume velocity, temperature, building
wakes, etc. Furthermore, there are no reliable methods to estimate the
plume rise from these distributed sources. Therefore, their emissions are
21
-------
generally assumed to be located at the ground-level (i.e., H=0) for
simplicity. This assumption, however, may lead to calculation of large
surface-concentrations, especially under light wind conditions when
building wake-induced dispersion is less important and hot emissions from
roof-top sources may have a rise comparable to the building height. The
area-source concentration algorithms used in PEM-2 permit the user to
specify a value of H j> 0 to represent the average effective height of
emissions from the area sources in the inventory. This value of H is
assumed to be constant for each concentration-averaging period.
The ground-level concentrations of the primary and secondary pollutants
resulting from urban area source emissions in PEM-2 are computed by numeri-
cal integration of the corresponding point-source concentration algorithms.
The urban area-source modeling techniques due to Gifford and Hanna (1970)
are utilized in these computations. These techniques are based on the
"narrow plume hypothesis," which postulates that the concentration at a
receptor is influenced only by the distributed area sources located in a
fairly narrow, plume-shaped upwind sector. This assumption allows one to
ignore the lateral variation of concentration and the "end effects" due to
the finite size of an area source grid; the concentration downwind of the
center of the emission grid is then the same as that if the area source
were infinitely wide in the crosswind direction.
We consider nine calculation grid squares (denoted by i=0, 1, 2, , 8),
each with a receptor R^ located at its center. Figure 1 illustrates this
schematically for the first five squares. The source emissions are assumed
to be located at the center of the first square (i=0) upwind of the recep-
tors. The emission rate of the primary pollutant from this single area
22
-------
source is Qj. Then the ground-level concentrations of the primary and
secondary pollutants, C^ii and CA2i respectively, at the receptor R^ in
the ith calculation grid square downwind are obtained, following Rao (1982),
by integrating the point-source concentration algorithms as follows:
x2i
Q Z1 g' (x,z=0)
-^4 dx (5a)
7
11
g' (x,z=0)
CA2i
xli
The nondimensional functions g' and gl? are defined in Appendix A, and
LZ = /2ir az; x^ and X££ are distances measured from the center of the
first square (i=0) to the upwind and downwind edges, respectively, of the
calculation grid square with the ith receptor (see Fig. 1); U is the
surface wind speed input to the model if the effective height of emissions
H < 10 m, or the adjusted wind speed of H > 10 m (see Section 2.5.2).
The relative concentrations, UC^A^ and UCA2l/Qi, determined from
Eq. (5) are independent of the emission rates of the species (except for
the ratio 0.2/Ql which appears in goo) atlc* their values at the receptors in
the nine downwind calculation grid squares are calculated only once for
each scenario. These relative concentrations are then multiplied by the
emission rate Qi of each area source and U to obtain the contributions to
the concentrations CAi and C^2 at each of the nine affected receptors. Note
that, for a given scenario, each area source will have the same spatial
pattern of affected receptors downwind. The contributions of all area
23
-------
sources affecting each receptor are summed to obtain the total concentra-
tion at that receptor.
In PEM-2, the integrations indicated in Eq. (5) are performed numeri-
cally by the trapezoidal rule together with Romberg's extrapolation method.
Utilizing a maximum of 14 bisections of the interval (xi±**2±)> this method
computes an approximation for the integral to within 1 percent relative
accuracy between successive approximations.
2.3.3 Dispersion Parameters
The dispersion parameters, az> used in Eq. (5) for area-source con-
centrations are the same as those used for point sources (see Section
2.2.3). These dispersion coefficients, given by Briggs (1973) and Gifford
(1976), account for the effects of increased surface roughness and heat
flux in the urban environment, and are most representative for zo =• 1 m and
near-surface releases typical of the area sources.
2.4 RECEPTORS
2.4.1 Receptor Grid
PEM-2 calculates pollutant concentrations at each receptor in a recti-
linear receptor array. A maximum of 2500 receptors may be used, with 50
columns and 50 rows. The spacing between each column and row is uniform,
and is specified by the user. Receptors are located at the intersections
of grid columns and rows. The grid spacing, number of columns, number of
rows, and coordinates of the receptor at the southwest corner of the grid
are used to define the grid.
24
-------
Point and area sources need not necessarily be located within the grid
boundaries. If area sources are included in the source inventory, the
receptor grid spacing should be selected so that the smallest area source
is of the same size as a grid square. An area source is positioned on the
grid by specifying the coordinates of the southwest corner of the source.
This corner should be located in the center of a receptor grid square, so
that each square covered by the area source is centered on a receptor. For
computations involving area sources, therefore, a calculation grid is
defined with its grid squares the same size as receptor grid squares, but
with a receptor located in the center of each calculation grid square. For
details, see Section 2.3.1.
2.4.2 Automatic Grid Selection
PEM-2 has an optional subroutine which will automatically select a
receptor grid for each scenario. The size and location of grids for dif-
ferent scenarios may differ since the selection of the receptor grid is
based upon wind speed, wind direction, and atmospheric stability class.
Each source is examined sequentially. Two orthogonal axes are used
with the origin located at the origin of the coordinate system for the
point sources. The y axis is oriented in the north-south direction with
positive values in the northerly direction. The x axis is oriented in the
east-west direction with positive values in the easterly direction. Angle
E is defined by
E = 90° - W
25
-------
where W is the angle (measured relative to north) of the direction of the
flow (see Fig. 3). The axes are then rotated through angle E such that the
wind blows down the x axis. Negative values of E correspond to a clockwise
rotation of coordinate axes; positive values correspond to a counter-
clockwise rotation.
For each scenario, the grid is automatically selected so as to provide
good coverage by receptors near the point of maximum concentration. This
point is estimated from the Gaussian plume concentration algorithm without
the pollutant removal or transformation mechanisms. For a point source,
the downwind distance to the point of maximum concentration, x^* is calcu-
lated from the equation
a dx a dx a 2
y z L z
(6)
by the Newton-Raphson iterative method. In Eq. (6), H is the effective
source height and ay and 0Z are the dispersion parameters given by Eq. (4).
Equation (6) is derived by differentiating the expression for ground-level
centerline concentration due to an elevated point source with respect to x,
and equating it to zero.
Equation (6) is also used to determine x^, the point of maximum con-
centration using the physical stack height hs instead of H. Then let
XTM(l) = XT + xml
XTM(2) = XT + xm2
where XT is the x coordinate of the point source in the rotated coordinate
system.
26
-------
EMISSION SOURCE
Figure 3. Points used for automatic selection of receptor grid by AUTGRD
subroutine.
-------
The largest value of XTM(2) for all point sources Is GX2 and the
smallest value of XTM(l) for all point sources is GX1. Let YT be the y
coordinate of the point source in the rotated coordinate system. Then GY2
is the largest value YT for all point sources and GY1 is the smallest value
of YT for all point sources. These points are illustrated in Fig. 3.
Next, the points (GX1, GY1), (GX2, GY1), (GX2, GY2) and (GX1, GY2) are
rotated back to the original coordinate system. The largest of the. four x
values and the largest of the four y values are chosen for the coordinates
of the northeast corner of the grid. The smallest of the four x values and
the smallest of the four y values are chosen for the coordinates of the
southwest corner of the grid.
Then XT is defined as the distance between the x coordinates of the grid
corners and YT is the distance between the y coordinates of the grid cor-
ners. Let DJJ^X be the larger of XT and YT. Then Dmax is used to determine
the number of columns and rows in the receptor grid and the grid spacing.
If Dmax is larger than 10 km, then the number of rows (or columns) is 50
and the grid spacing is XT/50 (or YT/50) km. If 5 < Dmax < 10 km, then a
grid spacing of 0.2 km is used and the number of rows (or columns) is
XT/0.2 (or YT/0.2). If 0.25 < Dmax < 5 km, then the number of rows (or
columns) is 25, and the grid spacing is Dmax/25. If Dmax < 0.25 km, the
grid spacing is 0.01 km, the smallest possible, and the number of rows (or
columns) is XT/0.01 (or YT/0.01). A typical example of the receptor grid
selected by the automatic grid option is illustrated in Fig. 4.
28
-------
(GX2,GYi)
WIND
(GX1, GY2)
NORTH
EMISSION SOURCE
Figure 4. Example of a receptor grid selected by AUTGRD subroutine.
29
-------
If the culpability list option is elected in PEM-2, the receptor grid
is limited to 25 rows and 25 columns. In this case, the grid spacing is
increased so that the number of rows (or columns) does not exceed 25.
The automatic grid selection procedure, outlined above, considers only
point sources. Therefore, the chosen receptor grid may not be suitable if
area sources are included in the inventory. Furthermore, the point of
maximum concentration determined from Eq. (6) may be in error for problems
which include significant deposition, sedimentation, and chemical decay
or transformation. The optimum receptor grid in this case should be
determined by trial and error, using the receptor grid defined by this
automatic grid option as the first approximation.
2.5 METEOROLOGY
The meteorological data used as input to PEM-2 consist of the
atmospheric stability class index, wind speed, wind direction, ambient
temperature, mixing depth, and the potential temperature gradient in the
elevated stable layer. This data set, which represents the mean
atmospheric conditions over an hour, is called a scenario. The maximum
number of scenarios in an averaging period is limited to 24, i.e., PEM-2 is
designed to predict only short-term (1 to 24 hr) average concentrations.
When available, quality-assured on-site meteorological data are preferable
to the National Weather Service (NWS) data.
30
-------
2.5.1 Atmospheric Stability
The Pasquill-Gifford atmospheric stability classes used in PEM-2 are
defined in Table 4.
TABLE 4
Atmospheric Stability Classes
Stability
Class Index
1
2
3
4
5
6
Atmospheric
Stability Class
A
B
C
D
E
F
Description
of Conditions
Extremely unstable
Moderately unstable
Slightly unstable
Neutral
Slightly stable
Moderately stable
The relationship between the atmospheric stability classes and wind
speed, incoming solar radiation, and cloud cover is given by Turner (1970)
and shown below in Table 5.
TABLE 5
Atmospheric Conditions Defining
Stability Classes
Surface Wind Speed
(at
10 meters ),m/s
<2
2-3
3-5
5-6
>6
Incoming
Day
Solar
Strong Moderate
A
A-B
B
C
C
A-B
B
B-C
C-D
D
Radiation Thin
Slight >4/8
B
C
C
D
D
Night
overcast or
low clouds <3/
E
D
D
D
'8 cloud
F
E
D
D
31
-------
Class A is the most unstable, while class F is the most stable class
considered in PEM-2. Night refers to the period from one hour before sun-
set to one hour after sunrise. Note that the neutral class, D, should be
assumed for overcast conditions during day or night, regardless of wind
speed.
2.5.2 Wind Speed
PEM-2 gives the user an option for specifying either an hourly mean
wind speed or the wind speed class number. The latter is based on National
Weather Service (NWS) classification. Any wind speed which lies in a given
range is assigned that class number; PEM-2 uses a representative wind speed
for each class as shown in Table 6.
TABLE 6
Wind Speed Classification
NWS Wind Speed Wind Speed Range
Class (knots)
1 0
2 4
3 7
4 11
5 17
6
- 3
- 6
- 10
- 16
- 21
> 21
Representative
Wind Speed (m/s)
1.50
2.46
4.47
6.93
9.61
12.52
Wind speed near the surface generally increases with height. Most NWS
wind speed measurements are taken at a height (ho) of 10 m above the sur-
face and are listed as "ground-level" wind speeds (UQ) in knots. Then the
32
-------
wind speed (U) at the physical stack height (hg) is determined as follows:
U = UQ (hs/h0)P (7)
The adjusted wind speed U is used (in meters/sec) in the plume rise calcu-
lations and the point-source concentration algorithms. Equation (7) is
applied only when the stack height is greater than 10 m. The exponent p is
a function of atmospheric stability class. The standard (default) values
of p used in PEM-2 are shown in Table 7. For "ground-level" area source
releases, the input wind speed (Uo) is used directly without any adjust-
ment. If the effective height of area source emissions exceeds 10 m, then
Eq. (7) is used to adjust the wind speed. For calm conditions (UQ = 0),
the wind speed Uo is arbitrarily set to 1 m/s. However, since it is dif-
ficult to specify the wind direction under these conditions, it is better
to remove "calm" hours from the input data.
TABLE 7
Values of Exponent p in Wind Speed Power Law
Atmospheric Stability p
Class
A = 1 0.15
B = 2 0.15
C = 3 0.20
D = 4 0.25
E = 5 0.30
F = 6 0.30
PEM-2 includes an option that allows the user to input site-specific
values for ho and/or p derived from local observations. The user should
refer to Section 4.2.1 for details.
33
-------
2.5.3 Wind Direction
By convention, wind direction is defined as the direction from which
the wind is blowing. PEM-2 gives the user an option for specifying either
an hourly mean wind direction, or the wind direction sector number based on
the standard 16-point compass. Wind blowing from any angle in a 22.5° sec-
tor is assigned the number of that wind direction sector, and the wind
direction is represented in the calculations by the median of that sector,
as shown in Table 8.
TABLE 8
Wind Direction Sectors
Sector Number
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Compass Point
N
NNE
NE
ENE
E
ESE
SE
SSE
S
SSW
SW
WSW
w
WNW
NW
NNW
Representative
Wind Direction (deg)
0.0
22.5
45.0
67.5
90.0
112.5
135.0
157.5
180.0
202.5
225.0
247.5
270.0
292.5
315.0
337.5
PEM-2 also includes an option in which the user specifies the wind
direction in degrees for the first of four sub-scenarios; for each suc-
ceeding sub-scenario, the wind direction is automatically shifted clockwise
34
-------
by 90, 45, 30, 15, 10, or 5 degrees depending on the option number speci-
fied in the input, while keeping the other meteorological parameters
constant. Details of these I/O control parameters are given in Section
4.2.1.
2.5.4 Mixing Depth
The turbulent mixing layer near the ground is frequently bounded by a
layer of stable air aloft. The latter effectively limits vertical disper-
sion to the mixing layer. The height of the base of the inversion above the
ground is called the mixing depth, L. The hourly mixing depths are spe-
cified in the input to PEM-2.
If vertical mixing is limited, pollutants emitted from a point source
into the mixing layer will be trapped and, beyond some point downwind, will
become uniformly mixed in the vertical. PEM-2 uses different sets of con-
centration algorithms for the (near-source) mixing region and the well-mixed
region. The concentrations in the intermediate plume-trapping region are
then obtained by interpolation as described in Section 2.2.1. The deter-
mination of the mixing regime and the algorithms to be used in the model
depend on the atmospheric stability class, mixing depth, effective height of
the source, and the downwind distance.
If the physical stack height exceeds the mixing depth, pollutants are
emitted in the stable layer aloft; these pollutants will not be brought to
the ground level and the source is neglected.
35
-------
If the physical stack height is less than the mixing depth, but: the
effective source height H exceeds L, then the plume may or may not escape
the mixing layer. A buoyant plume rising into a convectively or mechani-
cally mixed layer may partially or completely penetrate the capping stable
layer, depending on the stratification strength and elevation of the latter
with respect to the plume.
The default penetration scheme in PEM-2 does not allow partial penetra-
tion of the elevated stable layer. For H ^ L, no penetration occurs; for
H > L, complete penetration occurs and the source is ignored. However,
PEM-2 includes optional new penetration schemes that consider the potential
temperature gradient 39a£/3z in the elevated stable layer to estimate the
extent of its penetration by a buoyancy-dominated plume in unstable/neutral
atmosphere. The value of 39aj;/9z is specified by the user in the meteoro-
logical data input to PEM-2; otherwise, a default value of O.Ol°C/m
(corresponding to an isothermal atmosphere) will be assumed in the calcula-
tions. The plume penetration schemes used in PEM-2 are discussed in detail
in Appendix B.
36
-------
SECTION 3
COMPUTER PROGRAM OVERVIEW
3.1 BASIS FOR PEM-2 PROGRAM
The PEM-2 computer program, listed in Appendix F, was developed by
modifying the FORTRAN program of the Pollution Episodic Model (Rao and
Stevens, 1982). The latter, in turn, was based on the computer program of
the Texas Episodic Model Version 8 (TEM-8) and its Users' Guide (1979).
TEM-8 uses the Gaussian plume concentration algorithms developed for non-
reactive pollutants and a perfectly reflecting lower boundary. Chemical
and physical depletion processes are therefore ignored, except for an
option which allows a simple exponential decay of pollutant concentration
with travel time. This method requires an accurate estimate of Che
pollutant's half-life.
In contrast, both PEM-2 and PEM explicitly account for dry deposition,
gravitational settling, and a first-order transformation of two chemically-
coupled gaseous or particulate pollutants in the concentration algorithms.
The surface concentrations and deposition fluxes of both the primary pollu-
tant (species-1 or reactant) as well as the secondary pollutant (species-2
or reaction product) are calculated. Thus, since PEM-2 accounts for these
processes, the concentration algorithms used in PEM-2 and TEM-8 are dif-
ferent, though both models share essentially the same framework for calcu-
lations.
37
-------
The PEM-2 model is developed from the PEM (Rao and Stevens, 1982) and
the TEM-8 (Texas Air Control Board, 1979) with the following key
modifications:
1. PEM-2 uses Briggs' (1973) urban dispersion parameters (based on the
St. Louis diffusion data of McElroy and Pooler, 1968) for both point
and area sources, whereas PEM and TEM-8 use power laws based on
Pasquill-Gifford (PG) o's for point sources and Gifford-Hanna (1970)
oz's for area sources.
2. The number of atmospheric stability classes in PEM-2 are reduced to
six, from seven in PEM and TEM-8, by combining the DD (neutral/day) and
the DN (neutral/night) classes into a single D (neutral) class to con-
form with the current regulatory practice of the EPA.
3. For buoyancy-dominated plumes in unstable/neutral atmosphere, Briggs'
(1984) new plume rise equations and plume penetration (of an elevated
stable layer) schemes are included as optional features in PEM-2. On
the other hand, PEM and TEM-8 use only the standard "all or none" cri-
terion for determining plume penetration, and simulate inversions of
various strengths by arbitrarily specifying an inversion penetration
factor.
4. An option is provided in PEM-2 to use site-specific input values for
the exponents of the wind-profile power law and anemometer height.
5. Concentrations from area source emissions (located at any effective
height H>0) are computed by numerical integration in PEM-2, while con-
centrations from area source emissions (assumed to be at ground-level)
in PEM and TEM-8 are calculated from analytical concentration algorithms,
The number of calculation grid squares used for each area source has
been increased from 5 (in PEM and TEM-8) to 9 in PEM-2 to increase the
calculated plume length and improve the model accuracy.
3.3 STRUCTURE OF THE PROGRAM
Figure 5 shows the structure of the PEM-2 computer program, its
subroutines and functions. All input data to the model are read through
subroutine INMOD. In order to calculate the relative concentrations of
the species from area sources, the main program calls subroutine XINTEG to
38
-------
MAIN
Input
INMOD
Start loop on scenarios
INMOD
1
AUTGRD 1 RISE
ROOT FUNR
Area Sources
XINTEG 1 FUN 3
FUNS
XINTEG FUN4
ARGCHK
EXPO
D01AJF FUN1A EXPO
ARGCHK
EXPO
Start loop on area sources
-End loop on area "sources
Point Sources
-Start loop on point sources
RISE
QZCAL
RISE
EXPO
ARGCHK
PSG4P D01AJF FUN2
D01AJF FUN1 1 ARGCHK
I EXPO
-End loop on point sources
Output
WORST
WOROUT
OUTMOD
WOROUT
ARRAY
SCENMX
•-End loop on scenarios
MAXOUT
Figure 5. Structure of computer program.
39
-------
perform the numerical integrations. For each scenario, these numerical
integrations are done only once, and each area source will have the. same
spatial pattern of affected squares downwind. These relative con-
centrations are then multiplied with the effective emission rates of the
area sources to obtain the contributions to the concentrations at each
receptor. After the area source calculations are completed, the program
starts point source calculations by calling subroutines RISE and QZCAL»
The latter calculates the probability densities of vertical distributions
of concentrations of the two pollutants using the appropriate algorithms.
All output is printed in subroutine OUTMOD, which calls and uses other
optional output routines. This procedure is repeated for all scenarios.
3.3 GENERAL FLOW OF THE PROGRAM
At the beginning of the run, PEM-2 reads in all input data, screens
them, prints warning messages, and sets default values as necessary. All
control parameters are listed and explained. Input data for meteorological
conditions, area sources, and point sources are also listed. Some errors
in input data may be serious enough to cause cancellation of the run;
however, in general, PEM-2 attempts to recover from input errors and
complete the run using default values. The program prints an appropriate
message whenever it resets an important input parameter to a default
value.
Inventories of area and point sources must include the locations of the
sources on a receptor grid, their emission rates, the size for area sources,
and stack parameters for point sources.
40
-------
These inventories are used with sets of hourly meteorological data
called scenarios. For each scenario, the concentration and surface deposi-
tion flux are calculated at each impacted receptor in the grid.
Output options are many and varied. Concentration and surface deposi-
tion flux may be presented in the form of lists, array maps, or records on
tape. Other options include a culpability list of point sources, and
information on plume rise and effective stack heights for each scenario.
At the end of the averaging period, a list of receptors with the highest
concentration for each pollutant may be printed. The details of these I/O
options are given in Section 4. The calculation of the surface deposition
fluxes of the pollutant species is discussed in Appendix C.
41
-------
SECTION 4
PROGRAM USER'S GUIDE
4.1 SUMMARY OF PROGRAM INPUT
Control Parameters (7 cards)
Control parameters remain constant throughout the run. They
specify 1) a title; 2) run options for time-averaging, and types of
input and output, and technical options for use of stack-tip downwash
algorithm, new plume rise equations and plume penetration schemes;
3) receptor grid coordinates and spacing; 4) deposition and settling
velocities of pollutants and an option to calculate chemical transforma-
tion or decay at a given rate; 5) scaling factors for area source emis-
sions and calibration coefficients to be applied to the calculated concen-
trations; 6) labels for the pollutants and calibrations; and 7) an
option for using site-specific values for wind-profile exponents and
anemometer height.
Scenario Parameters (1-24 cards)
Each card contains information for one scenario; i.e. , the
meteorological data for one hour. It includes atmospheric stability
class, wind speed, wind direction, temperature, mixing height, and poten-
tial temperature gradient in the elevated stable layer above the mixing
height.
Area Source Parameters (0-50 cards)
Each card contains information for one area source. It includes
the location of the area source on the receptor grid, the size of the
area source, and its emission rates.
A blank card must follow the last area source card to signal the
end of the area source data.
Point Source Parameters (0-300 cards)
Each card contains information for one point source. It includes
the location of the point source on the receptor grid; its emission
rates; the stack parameters of height, diameter, plume velocity and
temperature; and a label which identifies the point source.
A blank card must follow the last point source card to
signal the end of the point source data.
42
-------
4.2 DETAILS OF PROGRAM INPUT
4.2.1 Control Parameters (7 cards)
Card 1 : Title FORMAT (20A4)
Information identifying the run, which is printed at the top of each
page of output. Up to 80 alphanumeric characters are allowed.
Card 2 : Input and output options FORMAT (1814)
NTOPT Averaging time option
=1 One hour: Concentrations are calculated for each scenario.
No averaging done.
=2 Twenty-four hours: Concentrations are calculated for
exactly 24 scenarios .and averaged.
=3 Variable (2 to 23 hours): Concentrations are calculated
for a given number of scenarios and averaged.
The default value is NTOPT = 1 .
NWDOPT Wind direction input option
=0 The user will specify wind direction in degrees for each
scenario.
=1 The user will specify a wind direction sector number (from
1 to 16) for each scenario.
=2-7 The user will specify wind direction in degrees for the
first of four sub-scenarios. For each succeeding sub-
scenario, the wind direction is automatically shifted
clockwise by 90, 45, 30, 15, 10, or 5 degrees for option
numbers 2, 3, 4, 5, 6, and 7, respectively.
NWDOPT = 2-7 is not allowed with time-averaging, i.e.,
when NTOPT = 2 or 3 .
The default value is NWDOPT = 0 .
NWSOPT Wind speed input option
=0 The user will specify surface wind speed in meters/sec for
each scenario.
=1 The user will specify a wind speed class number (from 1 to
6) for each scenario.
The default value is NWSOPT = 0 .
NWPOPT Wind-profile exponents input option
=0 The model uses the standard (default) values for the urban
wind—profile exponents. The anemometer height for surface
wind observations is assumed to be 10 m.
43
-------
=1 The user will input site-specific values for wind-profile
exponents and anemometer height on Card 7.
The default value is NWPOPT = 0 .
NSCEN Number of scenarios
=1-24 The number of sets of hourly meteorological data to be
read and processed by the program. If NTOPT=2 is specified,
then NSCEN must equal 24 . If NSCEN is not specified
correctly, then either the input data file will be misread
or the run will be terminated.
The default value is NSCEN = 1
NLIST Output option for printing lists of uncalibrated concentration
and surface deposition flux, and calibrated concentration at
each receptor in the grid.
=0 The lists are not printed.
=1 Lists of concentration and surface deposition flux are
printed, for one or two pollutants, at grid receptors with
uncalibrated concentrations of at least 1 microgram per
cubic meter.
NLIST = 1 may not be used with the automatic windshift
option (NWDOPT > 1) .
The default value is NLIST - 0 .
NARRAY Output option for array maps of calculated concentration and
surface deposition flux at each receptor in the grid.
=0 No array maps are printed.
=1 Separate maps of uncalibrated concentration and surface
deposition flux, and calibrated concentration are printed
a total of three maps for each pollutant.
=2 Maps of uncalibrated concentration and surface deposition
flux are printed two maps for each pollutant.
=3 Maps of calibrated concentration and surface deposition
flux are printed two maps for each pollutant.
The default value is NARRAY = 0 .
NTAPE Tape output option for a list of both uncalibrated and cali-
brated concentrations and surface deposition fluxes at each
receptor in the grid.
=0 The list is not written on tape.
=1 A list of concentrations and deposition fluxes is written
on a separate output tape, one receptor per record. Control
parameter INTER may be set to limit the number of receptors
written on tape. The program checks the total number of
records to be written; if the number is greater than
62500, a message is printed and NTAPE is set to zero.
44
-------
NTAPE=1 may not be used with the automatic windshift
option (NWDOPT > 1). NTAPE=1 may he used with NTOPT=1 to
store the hourly concentrations, in order to calculate
average concentrations externally for problems with highly
variable emission, transformation, and deposition rates
(see Section 1.3).
The default value is NTAPE = 0 ,
NCSOPT Output option for a culpability list of the five point sources
which contribute most to the total concentration calculated
at each receptor.
=0 The culpability list is not printed.
=1 For each receptor in the grid, the program lists up to
five point sources and the percentages of total concentra-
tion contributed by these sources. The total concentration
and surface deposition flux at each receptor are also
listed. This information is printed, for one or two pollu-
tants, only at receptors with the highest contributions
exceeding 1 microgram per cubic meter. NCSOPT=1 can be
used only with NTOPT=1 . This option may not be used for
more than one scenario with the automatic windshift option
(NWDQPTM). It also may not be used when the number of
columns (LX) or the number of rows (LY) in the grid is
greater than 25 .
The default value is NCSOPT = 0 .
NMAX Output option for listing the maximum concentration and
surface deposition flux calculated for each pollutant.
=0 The lists are not printed.
=1 At the end of the run, for each scenario or averaging
period, lists are printed to show the receptor which
received the highest concentration and deposition flux for
each pollutant.
The default value is NMAX = 0 .
NSTDWN Technical option for stack-tip downwash algorithm for point
sources.
=0 The stack-tip downwash algorithm is used in the program to
include the downwash effects.
=1 The downwash algorithm is not used.
The default value is NSTDWN = 0 .
NPRISE Technical option to use Briggs' new equations for maximum
rise of buoyancy-dominated plumes from point sources.
=0 Standard Briggs' plume-rise equations are used for all
stability classes.
45
-------
=1 New equations are used for maximum plume rise of buoyancy-
dominated plumes for stability classes A-D (unstable/neu-
tral atmosphere).
The default value is NPRISE = 0 .
NINPEN Technical option to use new schemes for penetration
of buoyancy-dominated plume above mixing height.
=0 Standard "all or none" criterion for plume penetration
above mixing height is used.
=1 New schemes are used for buoyancy-dominated plume penetra-
tion of elevated stable layer for stability classes A-D
(unstable/neutral atmosphere).
The default value is NINPEN = 0 .
INTER Output option for interval of receptors written on tape.
=N When the output option NTAPE=1 is selected, the value of
INTER determines which receptors are written on the tape.
When INTER is specified as integer N, every Nth receptor
in each column and row is listed. Thus, if INTER=2, one
fourth of the receptors will be listed; if INTER=5, one
twenty-fifth will be listed. Effectively, an output grid
is set up with "new" spacing equal to the value of
INTER*GRID, and only those receptors on the "new" grid
will be listed on the tape.
The default value is INTER = 1 .
NPRINT Output option for point source information.
=0 Input point source data is printed only at the beginning
of each run.
=1 A list of input point source parameters and calculated
plume rise information is printed for each scenario.
The default value is NPRINT = 0 .
INPTSC Input option for point source data.
=1 Point source data is read from the normal input stream (on
cards, for example).
=2 Point source data is read from a disk file specified by
the user.
The default value is INPTSC = 1 .
46
-------
NGPR Gradual plume rise option for point sources.
=0 Gradual plume rise used close to point source(s).
=1 Final effective plume rise height used for all distances.
NBID Option to consider bouyancy induced dispersion (BID).
=0 BID is not used.
=1 BID is considered for elevated point sources.
Card 3 : Grid information
FORMAT (2F10.0,2I10,3F10.0)
XRSWC The x, or east-west coordinate of receptor at the southwest
corner of the grid, in kilometers.
The default value is XRSWC =0.0 .
YRSWC The y, or north-south coordinate of receptor at the south-
west corner of the grid, in kilometers.
The default value is YRSWC =0.0 .
LX The number of columns of receptors in the grid. Allowable
values are 1 to 50 .
The default value is LX = 1
LY The number of rows of receptors in the grid. Allowable
values are 1 to 50 .
The default value is LY = 1
GRID Automatic grid option or grid spacing.
=0.0 The program designs the receptor grid for each scenario
such that there is good receptorcoverage near the point of
maximum concentration. For point sources, this location is
determined from the Gaussian plume algorithm without
deposition or transformation. For problems that include
these removal mechanisms and area source emissions, there-
fore, this automatic grid may not be the optimum grid.
This option cannot be used when NTOPT > 1 .
>0.0 The size of the spacing between columns and rows of recep-
tors in the grid, in kilometers.
The default value is GRID =0.0 .
DTDZ(l), The atmospheric potential temperature gradient for
DTDZ(2) E and F stability classes, respectively, in
deg. C/meter. These values are used in the plume
47
-------
rise equations under stable conditions.
The default values are DTDZ(l) = 0.02 and
DTDZ(2) = 0.035 .
Card 4 : Pollutant deposition and chemical transformation
parameters FORMAT (215, 6F10.0)
NPOL The number of pollutants (1 or 2)
The default value is NPOL = 1 .
ICT Chemical transformation or decay option.
=0 Transformation/decay of pollutant-1 is ignored.
=1 If NPOL = 1, a first-order chemical decay of
the pollutant-1 is considered.
If NPOL = 2, a first-order chemical transforma-
tion of pollutant-1 to pollutant-2 is considered.
The default value is ICT = 0 .
VD1 Deposition velocity of pollutant-1, in cm/sec.
Wl Settling velocity of pollutant-1, in cm/sec.
VD2 Deposition velocity of pollutant-2, in cm/sec.
W2 Settling velocity of pollutant-2, in cm/sec.
The default values of W and VD for both species are
zeros. If either W or VD is less than 0.01 cm/sec,
then the value of that parameter is set to zero.
This reduces computer run times and job costs
without significantly altering the calculated
concentrations.
In general, for deposition to occur, the settling
velocity (W) should be less than or equal to the
deposition velocity (VD). For gases and very small
particles, W should be zero. For small particles,
W should be less than VD. For particles of size
d > 50 microns, W should equal VD.
XKT Chemical transformation or decay rate of pollu-
tant-1 , in percent/hour. Allowable values are
0.1 to 100.0 ; input values outside this range
are set to the nearer limit. For example,
if XKT=0.0 is specified (when ICT-1), then the
program prints a message and sets XKT=0.1 .
GAMMA The ratio of molecular weights of pollutant-2
(product) to pollutant-1 (reactant) in the
chemical transformation (when ICT=1).
The default value is GAMMA =0.0 .
48
-------
Card 5 : Scaling and calibration FORMAT (7F10.0)
HAS The effective height of area source emissions in
meters. Note that a single value is used to
approximate the height of emissions from all urban
area sources.
The default value is HAS = 0.0 .
ASCALE(l), Area source scaling factors for pollutants 1 and 2.
ASCALE(2) All area source emission rates are multiplied
by ASCALE(l) for pollutant-1 and by ASCALE(2)
for pollutant-2. These factors may be utilized to
scale the entire area source inventory to account
for higher emission rates expected in future years
(from an increased traffic volume, for example),
or to convert the units of emission rates in the
inventory to grams/sec.
The default values are ASCALE(l) =1.0 and
ASCALE(2) = 1.0 .
A(l), Coefficients used to calibrate the calculated
B(l) concentration of pollutant-1.
The calibrated concentration, C* , is computed
from the formula C* = A + B . C ,
where C is the uncalibrated concentration.
The normal output units of the latter are
micrograms per cubic meter. The calibration
coefficients can be used to convert the units
to percent allowable, parts per million, or
any other convenient units.
The default values are A(l) = 0.0 and B(l) = 0.0 .
A(2), Coefficients used to calibrate the calculated
B(2) concentration of pollutant-2.
The default values are A(2) = 0.0 and B(2) = 0.0 .
Card 6 : Labels FORMAT (3A4,7A4,3A4,7A4)
POLNAM(l) Name for pollutant-1
Up to 12 alphanumeric characters are allowed.
CALNAM(l) Label for calibrated values of concentration
of pollutant-1, computed from calibration
coefficients A(l) and B(l).
Up to 28 alphanumeric characters are allowed.
POLNAM(2) Name for pollutant-2
Up to 12 alphanumeric characters are allowed.
CALNAM(2) Label for calibrated values of concentration
of pollutant-2, computed from calibration
coefficients A(2) and B(2).
Up to 28 alphanumeric characters are allowed.
Defaults for all labels are blanks.
49
-------
Card 7 (optional): Site-specific values of anemometer height and/or
wind-profile exponents FORMAT (10F7.0)
HA Anemometer height of wind speed measurement in meters.
This is the height at which the surface wind speed is measured.
The default value is HA = 10.0 ..
HMIN Wind speed held constant below this height in meters.
Default value is HMIN = 10.
HMAX Wind speed held constant above this height in meters.
Default value is HMAX - 200.
TJMIN Wind speed not allowed less than this value (raeters/s).
Default value is UMIN = 1.0
P1(I), Wind profile exponents derived from local observations
1=1,6 for stability classes 1 to 6 .
The default values are given in Section 2.5.2.
Note that site-specific values for anemometer height and/or
wind-profile exponents can be specified only if the wind-profile
option NWPOPT on Card 2 is specified as NWPOPT=1.
4.2.2 Scenario Parameters
FORMAT(3I5,5F10.0)
One to 24 cards, each containing a set of meteorological data for
one hour.
NSC Atmospheric stability class number
Allowable values are 1 to 6 ; an input value outside that
range will be set to the nearer limit.
NWS Wind speed class
Allowable values are 1 to 6 ; an input value outside that
range will be set to the nearer limit. Note that NWS is
used only when the windspeed input option NWSOPT on Card 2
is specified as NWSOPT=1 .
NWD Wind direction sector
Allowable values are 1 to 16 ; an input value outside that
range will be set to the nearer limit. Note that NWD is
used only when the wind direction input option NWDOPT on
Card 2 is specified as NWDOPT=1 .
WS Surface wind speed in meters/sec
This is assumed to be measured at a height of 10 meters
unless a different value for anemometer height is specified
on Card 7 above. Note that WS is used only when the wind
speed input option NWSOPT on Card 2 is specified as NWSOPT
= 0 . If WS=0.0 (calm) is specified
50
-------
under this option, a message is printed and WS
is set to 1.0 meter/sec.
WD Wind direction
The azimuthal angle in degrees of the direction
from which the wind is blowing. Allowable values
are 0.0 through 360.0 degrees. Note that WD is
used only when the wind direction input option on
Card 2 is specified as NWDOPT=0 or 2 through 7.
The default value is WD = 0.0, wind from the north.
TA Ambient temperature at 10 m height in deg. C.
The default value is TA = 0.0 .
HMIX Mixing height in meters
The height of the base of the inversion above
the ground. This is also effectively the depth
of the turbulent mixing layer.
The default value is HMIX = 9999.99 .
DTDZI Potential temperature gradient in the elevated
stable layer above mixing height in deg. C/meter.
The default value is DTDZI =0.01 .
4.2.3 Area Source Parameters FORMAT(5F10.0)
Zero to 50 cards, each containing parameters for one
area source. A blank card must follow the last area
source data card.
XA The x, or east-uest, coordinate of southwest
corner of the area source, in kilometers.
The default value is XA = 0.0 .
YA The y, or north-south, coordinate of southwest
corner of the area source, in kilometers.
The default value is YA = 0.0 .
SIZE The length of a. side of area source in meters.
The default value is SIZE = GRID*1000.0, the side
of a receptor grid square in meters. If GRID=0.0
(i.e., automatic grid option is elected), then
SIZE is arbitrarily set to 1.0 .
EA(1), Emission rates for pollutants 1 and 2 in gms/sec.
EA(2)
Note that EA is not an emission rate per unit
area; this is the emission rate of an equiva-
lent point source located at the center of the
area source.
The default values are EA(1) =0.0
and EA(2) = 0.0 .
51
-------
Note that area source inventory must be followed by a
blank card to signal the end of area source data.
4.2.4 Point Source Parameters FORMAT(8F9.0, 2A4)
Zero to 300 cards, each containing parameters for one
point source. A blank card must follow the last point
source data card.
XP The x, or east-west, coordinate of point
source, in kilometers.
The default value is XP = 0.0 .
YP The y, or north-south, coordinate of point
source, in kilometers.
The default value is YP = 0.0 .
EP(1), Emission rates for pollutants 1 and 2 in gms/sec.
EP(2)
The default values are EP(1) =0.0
and EP(2) = 0.0 .
HP The physical height of the stack in meters.
The default value is HP = 0.0 .
DP The inside diameter of the stack-tip in meters.
If DP=0.0 is specified, a message is printed and
DP is set to l.OE-4 meters.
VP The stack-exit velocity of plume in meters/sec.
The default value is VP = 0.0, which results in
zero plume rise.
TP The stack-exit temperature of plume in deg. C.
The default value is TP = 0.0 , which usually
results in a momentum-dominated plume rise.
NAME Label which identifies the point source. Up to
eight alphanumeric characters may be used.
The default is blanks.
Note that the point source inventory is followed by a blank
card to signal the end of the point source data.
52
-------
4.3 GUIDE TO PROGRAM OUTPUT
PEM-2 has several output options which are outlined below.
In order to avoid a large output, the user may select only
the necessary options on Card 2.
NPRINT Point source information
At the beginning of each scenario or sub-scenario*, for
each point source, the output lists its coordinates on the
receptor grid, emission rates, stack parameters, dominant
influence (momentum or buoyancy) of plume rise, wind speed
at physical stack height, maximum effective source height,
and plume penetration fraction (see Appendix B).
NCSOPT Point source culpability list
At the end of each scenario or sub-scenario , for each
receptor in the grid, the five point sources which contri-
buted most to the total concentration at that receptor are
identified. For each receptor, the output includes the
five point-source sequence numbers, the percentage of total
concentration each of the five produced, and the total
concentration and surface deposition flux at the receptor.
This information is printed for one or two pollutants.
To reduce the amount of output produced, only receptors
with highest contributions exceeding 1 microgram per cubic
meter are printed.
NLIST Concentration and surface deposition flux list
At the end of an averaging-period consisting of 1 to
24 scenarios, the uncalibrated concentration and deposition
flux, as well as the calibrated concentration, of one or two
pollutants are listed at each receptor in the grid. To reduce
the amount of output produced, only receptors with uncalib-
rated concentrations of at least 1 microgram per cubic meter
are listed.
NTAPE Concentration and surface deposition flux tape
At the end of the averaging-period, for each receptor in
the grid, the calculated concentration and surface deposition
flux are written on to a separate output tape. All records on
the tape contain eighty alphanumeric characters. A separate
record is written for every receptor in the grid, unless the
interval parameter INTER has been specified as greater than
*When the automatic windshift option is selected (NWDOPT > 1),
a scenario is divided into four sub-scenarios, each with the
same meteorological data except for the wind direction. The
latter is shifted automatically by a given number of degrees
for each sub-scenario.
53
-------
one. The first record on the tape contains the title infor-
mation given on Card 1 of the Control Parameter cards,
written by FORMAT(20A4). Succeeding records contain the
x,y coordinates of the receptor, values for concentration,
deposition flux, calibrated concentration, and calibrated
surface deposition flux for pollutant-1, followed by the
values of these parameters for pollutant-2. These values
are written by FORMAT(10F8.2).
NARRAY Array maps of concentration and surface deposi-
tion flux
At the end of each averaging-period, separate maps are
printed for concentration and deposition flux for each
pollutant. The values are printed at each receptor at
its relative location on the grid to aid in visualization
of the distribution of the pollutant.
The value specified for NARRAY determines which maps
are printed. If NARRAY=1, separate maps of uncalibrated
and calibrated concentrations, and uncalibrated deposition
flux are printed (3 maps); if NARRAY=2, maps of uncali-
brated concentration and deposition flux only are printed
(2 maps); and if NARRAY=3, two maps of only the calibrated
values are printed. Each map may require one, two, or four
pages of output to display the entire grid, since each page
can display values for up to 25 columns and 25 rows of the
grid.
NMAX Maximum concentration and surface deposition flux
At the end of the last scenario or sub-scenario (if
NTOPT=1) or at the end of the averaging period (if NTOPT>1),
the receptors which receive the highest concentrations of
pollutants-1 and 2, and the values of these concentrations,
are listed. A second list gives the surface deposition
fluxes at these receptors.
Note : The NCSOPT option can be used only with NTOPT=1;
therefore, the output data printed with this option refer
to hourly concentrations. When the NMAX option is used
with NTOPT=1 and NSCEN > 1, the list of hourly maximum
concentration and deposition flux values, and the receptors
where they occur, is printed only after the last scenario
has been processed.
When the time-averaging is selected (NTOPT=2 or 3), the
output for option NPRINT is printed after each scenario,
but the output for options NLIST, NTAPE, NARRAY, and NMAX
is printed only after all scenarios of the averaging period
have been processed. Thus, the concentrations and surface
deposition fluxes printed in the output of the latter set
of options represent the time-averaged values.
54
-------
4.4 DISCUSSION OF I/O PARAMETERS
The PEM-2, designed to predict short-term (1 to 24 hr) average ground-
level concentrations, assumes that emission rates are constant over the
averaging period for NTOPT > 1. This may not be a good assumption for
cases where the emissions are strongly time-dependent. For these cases,
concentration estimates may be made for each hour with NTOPT = 1, using the
appropriate emissions data and the mean meteorological conditions for that
hour. Then concentrations for a period longer than an hour can be
determined by averaging the hourly concentrations of that period. This can
be done externally with minimal programming. The tape output option
NTAPE=1 may be used to store the hourly concentration data.
The deposition and sedimentation velocities of the species and the
chemical transformation rate are also assumed to be constant over the
concentration-averaging period. If it is important to consider the diurnal
variations of these parameters, a procedure similar to that described above
for emissions can be used in concentration calculations.
The meteorological data input to PEM-2 consist of atmospheric stability
class, wind speed, wind direction, temperature, mixing height, and the
potential temperature gradient in the elevated stable layer. Each of these
hourly data sets is called a scenario. For a given set-up of the receptor
grid, the pattern of the impacted receptors downwind of a source depends
primarily on the wind direction. For urban-planning or regulatory
purposes, it may be necessary to investigate the effects of different wind
directions on the calculated concentration patterns in the receptor grid.
The PEM-2 has an option which divides each scenario into four sub-
scenarios, each consisting of the same hourly meteorological data except
55
-------
for the wind direction. When the user selects this automatic windshift
option (i.e., NWDOPT > 1), the wind direction for only the first of the
four sub-scenarios is specified by the user. For each succeeding sub-
scenario, the wind direction is automatically shifted clockwise by a fixed
number of degrees and the concentration calculations are repeated. The
magnitude of this shift may be as large as 90° (for NWDOPT = 2), or as
small as 5° (for NWDOPT = 7).
The calculated concentrations, C^, of the species in the PEM-2 are
3
given in yg/m ; these are referred to as uncalibrated values, and represent
only the contributions of the sources to the concentrations at the recep-
tors. The user may add the background concentrations, or express the
calculated concentrations in parts per million or percent allowable, by the
formula
C* = A! + Bi' C± , i = 1 or 2,
where A^ and B^ are the user-specified calibration coefficients (with
*
default values of zero), and C-^ are the calibrated concentrations of the
species. Depending on the value specified for NARRAY, the PEM-2 output may
consist of array maps of either uncalibrated values or calibrated values,
or both, of concentrations and surface deposition fluxes.
The culpability list output option, NCSOPT, is used for evaluation of
control strategies. When this option is in effect, the five point sources
which contributed most to the total concentration at each receptor are
identified and their percent contributions are printed for each scenario.
This option may be used for one or two pollutants, but only when the model
calculates hourly concentrations with the time-averaging option NTOPT = 1.
56
-------
Based on the number of pollutants (NPOL = 1 or 2) and the chemical
transformation/decay option parameter (ICT = 0 or 1) specified in the input
to the model, the PEM-2 program does one of the following:
1. If NPOL = 1 and ICT = 0 or 1, surface concentrations and deposition
fluxes of one gaseous or particulate pollutant, with the given
deposition and settling velocities, VD1 and Wl respectively, are
calculated. If ICT = 1, then chemical decay of the pollutant is also
considered if the decay rate XKT > 0. is given.
2. If NPOL = 2 and ICT = 0, surface concentrations and deposition fluxes
of two different and uncoupled gaseous or particulate pollutant
species with the given deposition and settling velocities, VD1 and Wl
(for species-1) and VD2 and W2 (for species-2) respectively, are
calculated. Emission rates for both species may be different.
Chemical decay is not considered for either species even if XKT > 0.
3. If NPOL = 2 and ICT = 1, the two gaseous or particulate pollutant
species are coupled through a first-order chemical transformation.
The surface concentrations and deposition fluxes of both the primary
pollutant (species-1 or reactant) as well as the secondary pollutant
(species-2 or reaction product) are calculated. The chemical
transformation rate (XKT > 0.) should be given. Non-zero direct
emissions of the secondary pollutant from the point and/or area
sources may also be specified as input for this case.
The specification of the deposition and gravitational settling veloci-
ties in the model is discussed in Appendix C.
57
-------
4.5 EXAMPLE PROBLEMS
Three example problems are described below and the
input data and output results of PEM-2 runs for these
problems are shown in Appendix E to illustrate the use
of the PEM-2 model.
Example 1
This problem deals only with area sources of all types.
The first area source is of the same size as one receptor
(or calculation) grid square. The second and third area
sources are large and each covers several receptor grid
squares. The fourth area source, covering one grid square,
is imbedded in the third. All area source emissions are
assumed to be at 10 m height. The receptor grid has 25
columns and 25 rows with a fine spacing of 1 km. Two
chemically-coupled pollutants with a transformation rate
of 1 percent per hour, and deposition velocities of
VD1=1.0 and VD2=0.1 cm/sec, are calculated. Direct
emission rates for pollutant-2 are specified to be one-
tenth of the emission rates for pollutant-1. The input
meteorology consists of three scenarios, each with the
same wind direction but different wind speed and stabi-
lity class. The output consists of array maps of 3-hour
average surface concentrations and deposition fluxes, and
a listing of the receptor with the highest average con-
centration of each pollutant.
Example 2(a)
This example considers two isolated point sources
with tall stacks and very hot emissions to illustrate the
new schemes in PEM-2 for buoyancy—dominated plume rise and
plume penetration above mixing height. The direct emission
rate of pollutant-2 is assumed to be 5 percent of the
emission rate of pollutant-1. The chemical transformation
rate is 10 percent/hour, and the deposition parameters are
VD1=2.0, Wl=0.0, VD2=0.5, and W2=0.2 cm/sec. The receptor
grid has 25 columns and 25 rows, each spaced 2 km apart.
Only one scenario is specified with stability class D, wind
speed class 2, wind direction sector number 9, and a
potential temperature gradient of 0.001 deg C/m above a
mixing height of 550 m. The low values of the last two
parameters are selected so that the plumes from the two
stacks show significant penetration above the mixing height;
the calculated plume penetration fractions (see Appendix B),
printed by output option NPRINT (which gives the plume rise
information), are 0.450 and 0.163 for stacks 1 and 2,
respectively. Other output options selected print array maps
of surface concentration and deposition flux for each
pollutant, and the receptor with the highest concentrations
for the hour.
58
-------
Example 2(b)
The problem described above is repeated here, but with
the standard (default) plume rise and penetration schemes in
PEM-2; all of the other input-option parameters and data
remain the same as given above, in order to facilitate
comparison of the surface concentrations calculated by the
"old" and "new" methods of accounting for the plume rise and
penetration. The maximum effective source heights calculated
by the two methods are about the same for stack 1, but the
new penetration scheme (Example 2a) estimates that only 55
percent of the plume remains in the mixed layer and contri-
butes to the concentrations, whereas the entire plume
remains in the mixed layer in Example 2b. Therefore, for
stack 1, the concentrations calculated in Example 2b are
nearly twice as large as the corresponding values in
Example 2a. For stack 2, the new schemes give a larger
effective source height and estimate that only 84 percent
of the plume remains within the mixed layer; therefore,
the concentrations calculated in Example 2a are again
smaller than in Example 2b.
This comparison clearly illustrates the need for the
new plume rise equations which account for the differences
between unstable and neutral conditions, and the new pene-
tration schemes which consider partial plume penetration
while accounting for the stratification in the elevated
stable layer. In general, the standard "all or none" cri-
terion predicts more occurences of plume penetration (which
results in zero ground-level concentrations) than the new
penetration schemes; the Examples given above are clearly
designed to show the opposite in order to facilitate
comparison.
Example 3
This problem deals with one large ground-level area
source and three isolated point sources. The average
direct emission rate of pollutant-2 is about 10 percent
(or less) of the emission rate of pollutant-1. The chemi-
cal transformation rate is 5 percent/hour, and the depo-
sition parameters are VD1=2.0, Wl=0.0, VD2=0.2, and
W2=0.0 cm/sec. The receptor grid has 25 columns and 25
rows with 1.5 km spacing. Six scenarios, representing
moderately stable conditions, low temperatures, and
variable wind speeds and directions, are specified. The
input option NWPOPT=1 is elected; this requires the use
of site-specific values for wind profile exponents and
anemometer height given on Card 7. The atmospheric
potential temperature gradients for E and F stability
classes are specified as 0.015 and 0.030 deg C/m, respecti-
vely. The output includes array maps of 6-hour average
concentrations and deposition fluxes for each pollutant,
and the receptor with the highest concentrations for the
averaging period.
59
-------
REFERENCES
Briggs, G. A., 1969: Plume Rise. AEG Critical Review Series. Available
as TID-25075 from NTIS, Springfield, VA, 81 pp.
, 1973: Diffusion estimation for small emissions. ATDL
Annual Report, NOAA, Oak Ridge, TN, 83-146.
, 1984: Plume rise and buoyancy effects. Atmospheric Science and
Power Production, D. Randerson, ed., DOE/TIC-27601, Tech. Info'.
Center, Oak Ridge, TN, Chapter 8, 327-366.
Gifford, F. A., and S. R. Hanna, 1970: Urban air pollution modeling. jLn_
Proc. of 2nd Int. Clean Air Congress, Washington, D.C.
, 1976: Turbulent diffusion-typing schemes: A review. Nuclear
Safety 17, 68-86.
Hosker, R. P., 1973: Estimates of dry deposition over forests and grass-
land. Proc. IAEA Symposium. IAEA-SM-181/19. Vienna, 291-309.
McElroy, J. L., and F. Pooler, 1968: St. Louis dispersion study. U.S.
Public Health Service. National Air Pollution Control Administration,
Publication AP-53, Vol II, 51 pp.
Rao, K. S., 1981: Analytical solutions of a gradient-transfer model for
plume deposition and sedimentation. EPA-600/3-82-079, U.S.
Environmental Protection Agency, Research Triangle Park, NC, 75 pp.
[NTIS PB 82-215 153].
, 1982: Plume concentration algorithms with deposition,
sedimentation, and chemical transformation. EPA-600/3-84-042, U.S.
Environmental Protection Agency, Research Triangle Park, NC, 87 pp.
[NTIS PB 84-138 742].
, and M. M. Stevens, 1982: Pollution Episodic Model User's
Guide. EPA-6QQ/8-84-008, U.S. Environmental Protection Agency,
Research Triangle Park, NC, 186, pp. [NTIS PB 84-164 128].
Texas Air Control Board, 1979: User's Guide: Texas Episodic Model.
Permits Section, Austin, TX, 215 pp.
Turner, D. B., 1970: Workbook of Atmospheric Dispersion Estimates. Public
Health Service. Publication No. 999-AP-26, U.S. Environmental
Protection Agency, Research Triangle Park, NC, 84 pp.
, and J. H. Novak, 1978: User's Guide for RAM.
EPA-600/8-78-016a, U.S. Environmental Protection Agency, Research
Triangle Park, NC, Vol. 1, 60 pp.
60
-------
APPENDIX A
POINT SOURCE ALGORITHMS
The algorithms used in PEM-2 to calculate ground-level concentrations
of gaseous or particulate pollutants released from an elevated continuous
point source are derived by Rao (1982). These algorithms are based on a
gradient-transfer model which describes the atmospheric transport, dif-
fusion, dry deposition, sedimentation, and a first-order chemical transfor-
mation of pollutants. The analytical solutions of the model are expressed
in terms of the empirical Gaussian plume dispersion parameters and extended
to various atmospheric stability and mixing conditions. Details of the
model and the solutions can be found in that reference. Here we only list
the parameterized point source algorithms for the primary (reactant) and
the secondary (reaction product) pollutants, denoted by subscripts 1 and 2,
respectively.
For convenience, we adopt the following nondimensionalization scheme:
All velocities are nondimensionalized by U, the constant mean wind speed.
The horizontal downwind distance x and all vertical height quantities are
nondimensionalized by /2~ az; the chemical transformation time scale T is
nondimensionalized by /2~ az/U. The horizontal crosswind distance y is
nondimensionalized by /2 oy. Thus, we define
61
-------
where
Vdl • V ' Vd2 ' V
V =V -W/2 V =V — W/2
11 dl V ' 12 d2 V
-W2)/2 (A-l)
V =V -W V =V -W
21 Vdl 1 ' 22 d2 W2
x = x//2 oz , S = z//2
H = H//2 a_ , L = L//2
U//2 az , y = y//2
a
z
H = effective height of source
L = height of the inversion lid or mixing depth
deposition velocities of primary and secondary
pollutants
W, , W_ = gravitational settling velocities of primary and
secondary pollutant particles
x, y, z = horizontal downwind, horizontal crosswind, and vertical
coordinates
ay , az = Gaussian dispersion parameters in y and z directions
TC = characteristic time scale of first-order chemical
transformation.
The nondimensional functions g«i and g~2 used in Eq. (1) of Section
2.2.1 are now defined as follows:
62
-------
>y) = exp(- y
(A-2)
= 2
- X/TC)
(A-3)
where
a = 2/rF V x e erfc £.
x - H
H + 2
(A-4)
g^2(X>0) = 2 e
$
- Y exp(- X/TC) • (1
2/TT (V21 - V22) x • e
(A-5)
where
2/iT V x 'e erfc
a
2/TT V x e erfc Co
- H
H + 2 V12 x , C3 = H + 2 V13 x
(A-6)
63
-------
and
[" 1 - /? U4 - H//t) e 4 erfc £4 "1
fl - /IT 55 e 5 erfc £5 J dt (A-7)
where C4 - H//t + 2 V13 x /t
?5 = 2 V12 x /I - t (A-8)
In Eq. (A-5), y is the ratio of molecular weight of the secondary pollutant
to molecular weight of the primary pollutant, and Qo/Q, is the
corresponding ratio of emission rates of species. In Eq. (A-7), t is a
parameterized dimensionless variable of integration with limits of 0 and 1.
The nondimensional functions g/, and g/« used in Eq. (2) of Section
2.2.1 are defined as follows:
For Vdl * Wl or V21 * 0,
*/TC) I (Vt1/V01) e erfc ?, (A-9)
P, -i
(W1/2V21) e erfc &l J
64
-------
where £, = 2 V,. x and 3, = W, x.
For Vdl = Wj or V^ = 0,
•? - X/T ) f (1 + 2 ??) e * erfc
l c I l
/ i/IT I
(A-10)
where 5, = 2 V
W, x.
For V21 * 0 and V22 # 0,
(x) = e
-e.
(Q2/Qi
e erfc
~ (W2/2V22} e erfc
~Ye
(V13/V21) e J erfc
(W2/2
e erfc
- Y
H . F2(x)
(A-11)
where
= 2
W
= 2
x ,
- W2)/2
(A-12)
65
-------
F2(
i r1 i
x) - ^ I -^
•'o /t
~ " r — 4
exp(-xt/T ) J 1 - /TT £, e erfc
e erfc
e erfc
(A-13)
where
/1-t
(A-14)
For V21 * 0 and V22 = 0,
.2
'2
+ Y) (1 + 2 $> e erfc C ~ 2
-Ye J (V13/V21) e J erfc C3 - (W2/2V21> e * erfc
F V21 x • F2(x)
(A-15)
where
x
x = W2 x
S , C = 2 V
13
F2(x)
1 f 1 / - /" N f
5- — exp(-xt/T )
2ir Jo yT c L
1 -
S4 e erfc ?4
[
(1 + 2 C.) e erfc
- 2
1 dt,
(A-16)
66
-------
with
/t ,
/1-t
For V21 = 0 and V * 0,
-5-
e erfc
e erfc
-X/T
-ye
(1 + 2 g e erfc ? - 2
Y 4/Tr V22 x • F2(x)
(A-17)
where
= 2
" 1O O """ P O J
and F2(x) is given by Eq. (A-13).
For V2i = 0 and V22 = 0,
• [v^i
Y (1 -
/s
'%,]
2
2
(1 + 2 ?) e 2 erfc
~ 2
(A-18)
where
67
-------
In Eqs. (A-7), (A-13), and (A-16), t is a parameterized integration
variable. The integrand functions in these equations have singularities
at the end-points t=0 and t=l of the integration domain it t. Because of
their complexity, these integrations cannot be carried out analytically;
therefore, they should be evaluated by numerical integration to a suf-
ficiently high degree of accuracy.
A computer-library subroutine named D01AJF, developed by the Numerical
Algorithms Group (NAG), is utilized in PEM-2 for the numerical integration.
This general purpose integrator routine, which is capable of handling the
singularities, has been selected because of its accuracy and applicability.
It estimates the value of a definite integral of an externally defined
function over a finite range to a specified absolute or relative accuracy,
using Gauss-Kronrod rules in an adaptive strategy with extrapolation.
Further details of this subroutine can be found in Appendix D.
In the limit, when V,. = W. = 0 and T and «, the algorithms for g' ,
di ic 2.1
g' , gJ. , and gj™ (defined above) reduce to the familiar Gaussian-plume
diffusion algorithms currently used in EPA air quality models. Thus the
new algorithms given in this section may be though of as extensions of the
latter to include deposition, sedimentation, and chemical transformation.
It should be noted that the algorithms for gl. and gl_ are also used
in Eq. (5) of Section 2.3.2 to calculate ground-level concentrations from
area sources.
68
-------
REFERENCE
Rao, K. S., 1982: Plume Concentration Algorithms with Deposition
Sedimentation, and Chemical Transformation. EPA-60Q/3-84-Q42, U.S.
Environmental Protection Agency, Research Triangle Park, NC, 87 pp.
[NTIS PB 84-138 742].
69
-------
APPENDIX B
PLUME RISE EQUATIONS AND PLUME PENETRATION METHODS
The various optional schemes used in PEM-2 for treatment of the stack-
plume downwash, plume rise (including criteria for the crossover between
momentum and buoyancy), and plume penetration of elevated stable layers are
briefly described and the equations listed here. For further information,
the user should consult the references cited.
Stack Downwash
PEM-2 provides a default option (NSTDWN=0) to account for the stack-tip
downwash of the plume, following Briggs (1973), as follows:
h' = h + 2 (R - 1.5) d , for R < 1.5
s s
h' = h , for R > 1.5
s s =
where R = Vg/U and h' > 0 is the "reduced" physical stack height. The
S ~~
various symbols are defined below. If the user specifies NSTDWN=1, the
downwash correction is not used.
(B-l)
70
-------
Plume Rise
The plume rise is estimated using Briggs ' (1969, 1971) standard
equations if the default option NPRISE=0 is used in PEM-2. There are
four different situations for plume rise, and the corresponding equations
can be written as follows:
1) For a buoyancy-dominated plume in unstable/neutral atmosphere,
Ah(x) = 1.6 F X2/3 iT1 , for x < x (B-2)
b max
and
Ah = 1.6 F x2/3 U l , for x > x (B-3)
b max = max
where x =49 F , for F, < 55
max b b
2/5
and Xmax = 119 Fb > for Fb >=
(B-4)
Note that by substituting (B-4) in (B-3), the maximum plume rise can also
be expressed as
(B-5)
3/4 -1
Ah = 21.425 F;;' U , for F, < 55
b b
3/5 -1
and Ah = 38.71 F£ U , for Ffe ^ 55
2) For a momentum-dominated plume in unstable/neutral atmosphere,
Ah(x) = 1.89 [R2d/(R+3)]2/3 X1/3 , for x < x (B-6)
max
71
-------
and Ah = 3 R d , for x > x (B-7)
= max
where x = 4d(R+3)2/R and R = V /U (B-8)
max s
3) For a buoyancy-dominated plume in stable atmosphere,
Ah(x) =1.6 F x2/3 if1 , for x < x (B-9)
b max
and Ah = 2.6 (F,/U s)1/3 , for x > x (B-10)
D —
where x = 2.0715 U s (B-ll)
max
and s = (g/T ) 39 /3z (B-12)
3. a
In (B-12), 89 /8z > 0 is the vertical gradient of potential temperature in
a
stable atmosphere. Its value may be specified by the user; otherwise,
PEM-2 uses the default values of 0.02 and 0.035°K/m for E and F stability
classes, respectively.
4) For a momentum-dominated plume in stable atmosphere,
Ah = 1.5 (Fm/U)1/3 s"1/6 (B-13)
and x =0
max
For this case, there is no expression given for Ah(x) since (B-13) is
assumed to apply for all values of x. The smaller of the two Ah values
calculated from (B-7) and (B-13) is taken as the final plume rise in this
case.
72
-------
After calculating the maximum plume rise from one of the equations given
above, the effective source height can be obtained from
H = h' + Ah (B-14)
s
The variables used in the equations listed above are defined here:
F, = 0.25 (g/T ) V d2 AT (B-15)
b s s
4 3
= plume buoyancy flux at stack exit, m /s
Fm = 0.25 (T /T ) V2 d2 (B-16)
3. S S
4 2
= plume momentum flux at stack exit, m /s
d = inside diameter of stack-tip, m
2
g = acceleration due to gravity, 9.8 m/s
h = physical stack height, m
S
h1 = "reduced" physical stack height for downwash cases, m
S
H = effective source height, m
-2
s = stability parameter, s
T = atmospheric temperature, °K
3,
T = plume temperature at stack exit, °K
U = mean wind speed at physical stack height, m/s
V = plume velocity at stack exit, m/s
S
x = downwind distance from stack, m
x = downwind distance at maximum plume rise, m
max
Ah(x) = distance-dependent plume rise, m
Ah = maximum or final plume rise, m
AT = T - T , plume temperature excess, °K
s a
73
-------
Crossover Between Momentum and Buoyancy
In order to properly use the plume rise equations given above, one
should know whether the plume is dominated by momentum or buoyancy. This
determination is generally based on the crossover temperature difference,
(AT) . Analytic expressions for (AT) can be derived, for given
c c
atmospheric conditions, by setting the maximum plume rise equation for the
buoyancy-dominated plume equal to the corresponding equation for the
momentum-dominated plume.
For unstable/neutral atmosphere, equating (B-5) to (B-7), we obtain the
expressions
(AT) = .02964 T V1/3 d~2/3, for Fv < 55 (B-17)
c s s b
and (AT) = .00575 T V2/3 d"1/3, for Fu > 55 (B-18)
c s s b =
For stable atmosphere, equating (B-10) to (B-13), we obtain the
expression
(AT) = .01957 T V s1/2 (B-19)
For any given atmospheric stability, the plume is assumed to be.
buoyancy-dominated if T > T and AT = T - T exceeds the crossover tem-
s a s a
perature difference (AT) calculated from the appropriate expression given
above. If T < T or if AT < (AT) , the plume is assumed to be momentum-
s = a = c
dominated.
From (B-15), (B-17) and (B-18), the crossover criteria for
unstable/neutral atmosphere may also be expressed in terms of the crossover
plume-buoyancy flux, (F ) , as follows:
74
-------
(F ) = .0727 (V d)4/3 , for Fv < 55 (B-20)
be s b
(Fj = .0141 (V d)5/3 , for Fv > 55 (B-21)
DC S D =
If F > 0 and F > (F ) , then the plume is buoyancy-dominated; otherwise,
D b b c
it is momentum-dominated.
Similarly, from (B-12) and (B-19), the crossover criteria for stable
conditions can be expressed in terms of the crossover plume velocity,
(V ) , as follows:
s c
1/2
(V ) = 115.28 AT/T for E-stability
s c a
(V ) = 87.14 AT/T1/2 for F-stability
s c a
(B-22)
The default values of 0.02 and 0.035°K/m for E and F stability classes,
respectively, are assumed for 39 /3z in the above expressions. If the
a
values specified by the user are significantly different, then the
following general expression may be utilized:
1/2
(V ) = 16.30 AT/(T 36 /3z) ' (B-23)
s c a a
If (V ) > 0 and V < (V ) , then the plume is buoyancy-dominated; other-
o C S S C
wise, it is momentum-dominated.
New Plume Rise Equations
For a buoyancy-dominated plume, the maximum plume rise given by (B-5)
compromises substantial differences between unstable (convective turbulence)
and neutral (mechanical turbulence) atmospheric conditions. The inverse
75
-------
dependence of final plume rise on wind speed in (B-5) is rather simplistic,
and the equations may seriously overpredict Ah for low-level sources at
high wind speeds.
PEM-2 provides an option (NPRISE=1) to use Briggs ' (1975, 1984) new
equations to estimate the maximum rise of a buoyancy-dominated plume in
unstable/neutral atmosphere. The new plume-rise equations show a weaker
dependence of Ah on U in unstable conditions and a considerably stronger
dependence on U in neutral conditions. These equations, which contain the
minimum essential physics with the maximum allowable simplifications, can
be written as follows:
For unstable atmosphere,
Ah = 30 (F, /U)3/5 , for x > x (B-24)
D = max
where x = 81.2 F2/5 U3/5 (B-25)
max b
For neutral atmosphere,
Ah = 24 (Fb/u3)3/5 (h^ + 200 Fb/U3)2/5 , for x ^ x^ (B-26)
where xmaY = 58.1 (F, /U3)2/5 (h' + 200 F,/U3)3/5 (B-27)
D S D
In PEM-2, for unstable /neutral conditions, Ah is evaluated from both
(B-24) and (B-26), and the lower of these two values is selected as the
maximum buoyancy rise of the plume. Generally, (B-24) gives the lower Ah
value for low wind speeds, and (B-26) gives the lower value for high wind
speeds. The maximum buoyancy rise thus determined is then compared with
the maximum momentum rise of the plume evaluated from (B-7), and the
higher of these two values is selected as the maximum plume rise. The
76
-------
distance to the maximum plume rise, x , is then obtained from one of the
max
equations (B-8), (B-25), and (B-27) that is appropriate for the selected
final plume rise. For x < x , the distance-dependent plume rise is
r max
determined from (B-2), as before. This procedure was suggested by Turner
(1985).
Plume Penetration of Elevated Stable Layer
The daytime turbulent mixed layer with a near-adiabatic lapse rate
above the ground is frequently bounded by a thick layer of stably-stratified
air aloft. This situation also occurs in the marine inversion layer in
some coastal areas. The elevated stable layer then effectively limits ver-
tical dispersion to the mixed layer of depth L. A buoyant plume rising
into a convectively or mechanically mixed layer may partially or completely
penetrate the capping stable layer, depending on the stratification
strength and elevation of the latter with respect to the plume.
The default penetration-option (NINPEN=0) in PEM-2 does not consider
partial penetration of the elevated stable layer. If the maximum effective
source height, H = h' + Ah, exceeds the mixing depth L, then the pollutants
s
are assumed to be emitted into the stable layer aloft; these pollutants
will not be brought to the ground and, therefore, the source is ignored. If
H <£ L, then the plume is assumed to be trapped within the mixed layer with
no ability to penetrate the stable layer aloft. This treatment, which
assumes either complete penetration of the elevated stable layer or no
penetration at all, is similar to that used in EPA air quality models such
as CRSTER.
77
-------
PEM-2 provides an option (NINPEN=1) to use new penetration schemes that
allow consideration of the strength of stratification of the elevated
stable layer in estimating the extent of its penetration by a buoyancy-
dominated plume in unstable/neutral atmosphere. These schemes, based on
the work of Briggs (1975, 1984), Weil and Brower (1982), Turner (1985), and
others, are briefly described below.
For a buoyant bent-over plume, the penetration criteria are based on
the heights of the upper and lower edges of the plume at final rise, rela-
tive to the stable layer height, z.', above the stack:
z.' = L - h (B-28)
1 S
Based on field observations, Briggs approximated the heights (above the
stack) of the upper and lower edges of the bent-over plume by 1.5 Ah and
0.5 Ah, respectively, where Ah is the final rise of the plume. Penetration
commences only when the upper edge of the plume is at the top of the mixed
layer, i.e., 1.5 Ah = zj or Ah = (2/3) z!. Therefore, the minimum effec-
tive plume centerline height necessary to consider penetration is given by
H = h + (2/3) z! (B-29)
pen s i
where H is referred to, hence, as the penetration height. If the effec-
tive source height, H, estimated from the standard or new plume-rise formulas
given above, is less than H , then no penetration occurs. If H > H ,
pen r = pen
then the fraction of the plume that penetrates the elevated stable layer is
computed as given below.
78
-------
Following Briggs, we define the plume penetration fraction, P, as the
ratio of the depth of the plume above the elevated stable layer to the
total plume depth:
P = (1.5 Ah - zj)/(1.5 Ah - 0.5 Ah) = 1.5 - z^/Ah (B-30)
As a simple and conservative approach to estimate the final plume rise,
Briggs assumed that the mixed layer is stably-stratified with the same
atmospheric potential temperature gradient, 36 ./3z, as that in the ele-
vated stable layer. Thus Ah in (B-30) is estimated from an expression
similar to (B-10) for a buoyancy-dominated plume in stable atmosphere:
Ah = 2.6(FU/U s.)1/3 (B-31)
b i
where s. = (g/T ) 39 /3z (B-32)
i a ai
The value of the atmospheric potential temperature gradient in the elevated
stable layer is specified by the user in PEM-2; if it is not specified, a
default value of O.Ol°C/m (corresponding to an isothermal atmosphere) will
be assumed by the model. This approach is conservative since the plume
rise thus estimated will be much lower than that computed using a near-
adiabatic lapse rate which is appropriate for the mixed layer.
The plume penetration fraction P is calculated from (B-30) and (B-31)
such that 0 £ P ^ 1. No penetration (P=0) is assumed to occur when the
plume upper edge is at or below the top of the mixed layer, i.e., Ah < (2/3)z.'.
Complete penetration (P=l) occurs when the lower edge of the plume is at or
above the top of the mixed layer, i.e., Ah > 2z.'. Partial penetration
(0 < P < 1) occurs for 0.5 Ah < z\ < 1.5 Ah.
79
-------
In PEM-2, we assume that only the fraction (1-P) of the plume material
remaining within the mixed layer contributes to the ground-level con-
centrations (GLC); essentially, the fraction P of the plume material is
lost. The effective source strength, Q , , is then given by
Qek = (1~P) \ ' k = 1)2 (B"33)
where Q is the emission rate of species-k from the stack. In the con-
K.
centration algorithms, the effective source height H represents only the
height of the centerline of the plume, and not the heights of its upper and
lower edges, when the plume is within the mixed layer. For partial
penetration cases, therefore, a new effective source height (H ) should be
determined for the fraction of the plume remaining within the mixed layer.
First, we consider the two limiting cases, P-K) and P>1. For P-K), H is
obviously given by H , the penetration height defined in (B-29). As P > 1,
pen
the new effective source height should approach L, or H •»• h + zl from (B-28),
c S 1
since the small fractional plume of thickness (l-P)Ah that is left at the
top of the mixed layer vanishes in the limit P-*-!.
Now, from simple geometric considerations, a general expression for
H valid for any value of P (0 < P < 1) can be written as
H = h + [zj - 0.5 (l-P)Ah]
e s i
Substituting Ah = z'/(1.5-P) from (B-30) in the above, we obtain
H = h + [(1-0.5 P)/(1.5-P)]zJ (B-34)
63 1
This equation for H is consistent with the definition of P, and also
satisfies the limiting behavior, for P=0 and P=l, discussed above. The
elevations (above the stack) of the .upper and lower edges of the plume
80
-------
material whose centerline is given by (B-34) are z' and z|/(3-2P), respec-
tively. The solid lines in Figure (B-l) show the variations of normalized
elevations of the centerline and edges of this plume as functions of P.
Equation (B-34) for H differs from that given by Weil and Brower (1982),
e
who interpolated linearly between the limiting values of H at P=0 and P=l,
as follows:
H = h + [(2+P)/3]z.' (B-35)
e s i
The elevations of the upper and lower edges of the plume whose centerline
is given by (B-35) are z! and (l+2P)z.'/3, respectively. Figure (B-l)
shows the centerline and lower edge of this plume in broken lines. It is
clear that, though both (B-34) and (B-35) give the same values for H at
P=0 and P=l, the linear model consistently overpredicts the effective
source height of the fractional plume left in the mixed layer for 0 < P < 1.
At P=0.5, for example, (B-35) overpredicts H by about 11 percent, and the
elevation of the lower edge is overestimated by about 33 percent.
For 0 < P < 1, the distance downwind from the stack to the location
where the new effective source height H occurs can be obtained by equating
the plume rise from (B-34) to the distance-dependent plume rise given by
(B-2) and solving for x:
x = [(l-0.5P)z! U / 1.6(1.5-P)]3/2 F""1/2 (B-36)
max i b
For x < x^ the plume rise is predicted from (B-2); for x > x , H is
given by (B-34).
The various formulas for computing the effective source height and
effective source strength can be summarized as follows:
81
-------
CM
CO
d
CM
d
o
co
d
to
d
CM
d
0)
e
3
cd
C
O
4J
CJ
CO
M
CU
4=
C ro
O I
«
V4 •
4-i cr
cu cd
c
cu >,
cx42
cu c
e cu
3 >
o
•H
4-> CU
cfl 6
rJ 3
4-J rH
CU CX
cu bO
cx a
•H O
4-1 CX
CX bO S-i CO
CO CU
CX JH
M T3
CO CU
cu
C >-i
•H CU
iH ex
ex
CU 3
f.
4-1 CU
B §
O iH
CX
CU
14-1
cu cu
4-j £ d
O 4J i-l
rH
'"*> <4-< (-1
o cu
cu o
4= CJ
0)
bOH
T3
CU
00
U
«J
a)
x
4J
a>
>
O
43
«3
C C
O 0)
o a>
c e
3 3
MH iH
ex
M
cu
4-1 CU
T) O
C rJ
cfl pa
• TJ
/^N C
in to
en
PQ iH CO
^ CU rH
R)
>
0)
r-l
(U
CU
CO
CU
"O
B)
>
0)
X rH
4-1 O
C/2
C
•rH
Si •
4-1 C
-H O
4J O
c
iH C iH
bO O
CU 4-1 g
C rt cd
•H iH CO
rH O
&J cx a)
CU tH 43
4-1 CU 4-i
C CO
I
pa
cu
i-i
00
•H
Pn
82
-------
(a) For H < H , the plume does not penetrate the elevated stable layer,
pen
and penetration need not be considered.
H = H
e (B-37)
Qek=Qk, k-1,2
(b) For H > H , the plume penetration fraction P should be computed from
(B-30) and (B-31). Then, depending on the value of P, one of the following
applies:
(i) For P=l, the entire plume penetrates the elevated stable layer, and
the source is ignored since it does not contribute to the GLC.
H > L
6 ~ (B-38)
Q = 0
ek
(ii) For P=0, the entire plume remains within the mixed layer and
contributes to the GLC.
H = H
e Pen (B-39)
Qek = Qk
(iii) For 0 < P < 1, the plume partially penetrates the elevated stable
layer; only the fraction (1-P) of the plume material left in the mixed layer
contributes to the GLC.
H = h + [(l-0.5P)/(1.5-P)]z'
8 S i (B-40)
Q . = (1-P) Q,
ek xk
For cases (ii) and (iii), the downwind distance x to the effective
max
source height is estimated from (B-36).
83
-------
REFERENCES
Briggs, G. A., 1969: Plume Rise. AEG Critical Review Series. Available
as TID-25075 from NTIS, Springfield, VA, 81 pp.
, 1971: Some recent analyses of plume rise observations. Proc.
of 2nd Int. Clean Air Congress, H. M. Englund and W. T. Beery, eds.
Academic Press, New York, 1029-1032.
, 1973: Diffusion estimation for small emissions. ATDL Annual
Report, NOAA, Oak Ridge, TN, 83-146.
, 1975: Plume rise predictions. Lectures on Air Pollution and
Environmental Impact Analysis, D. A. Haugen, ed. Amer. Meteorol. Soc.,
Boston, MA, 59-111.
, 1984: Plume rise and buoyancy effects. Atmospheric Science and
Power Production, D. Randerson, ed. DOE/TIC-27601, Tech. Info. Center,
Oak Ridge, TN, Chapter 8, 327-366.
Turner, D. B., 1985: Proposed pragmatic methods for estimating plume rise
and plume penetration through atmospheric layers. Atmos. Environ. 19,
1215-1218.
Weil, J. C., and R. B. Brower, 1982: The Maryland PPSP Dispersion Model
for Tall Stacks. Report PPSP-MP-36, Environ. Center, Martin Marietta
Corp., Baltimore, MD.
84
-------
APPENDIX C
SURFACE DEPOSITION FLUXES, AND
DEPOSITION AND SETTLING VELOCITIES
C.I SURFACE DEPOSITION FLUXES
The surface deposition fluxes of the primary and the secondary
pollutants at ground level receptors are calculated directly as
C^x.y.O) (C-l)
D2(x,y) = Vd2 • C2(x,y,0) (C-2)
D£ gives the amount of pollutant i deposited per unit time per unit
2
surface area, and is usually calculated in the short term as yg/m -hr or
2 2
kg/km -hr, while seasonal estimates are expressed as kg/km -month. The
estimation of the monthly or yearly surface deposition fluxes at a given
downwind distance x from the source in a given wind-directional sector
requires the knowledge of the fraction of the time that a mean wind of a
given magnitude blows in that direction in a month or a year, respectively.
2 3
To obtain Dj[ in kg/km -hr when V^i is given in cm/s and C^ in yg/m , the
right-hand side of the equations should be multiplied by 0.036. To obtain
2 3
D^ in yg/m -hr when Vji is given in cm/s and C^ in yg/m , the
corresponding multiplication factor is 36. For D^ calculations, the
ground-level receptor is generally defined as any receptor which is not
higher than 1 meter above the local ground-level elevation.
85
-------
PEM-2 calculates the surface deposition fluxes of one or two
pollutants. These values are printed in a map or list form, as specified
by the user, in the same way the program prints the concentrations. The
2
flux units are generally yg/m -hr; however, if these values are too large
to be clearly printed in a map format, the program automatically converts
2
them into kg/km -hr before printing.
C.2 DEPOSITION AND SETTLING VELOCITIES
The values of the settling and deposition velocities primarily depend
on the particle diameter d. (i) In the trivial case of W = V^ = 0,
settling and deposition effects are negligible. (ii) For very small
particles (d < 0.1 ym), gravitational settling can be neglected, and dry
deposition occurs primarily due to nongravitational effects. In this case,
W = 0 but V 0. (iii) For small to medium-sized particles (d = 0.1 ~ 50ym),
0 < W < Vjj; deposition is enhanced here beyond that due to gravitational
settling, primarily because of increased turbulent transfer resulting from
surface roughness. (iv) For larger particles (d > 50 ym), it is generally
assumed that V^ = W > 0, since gravitational settling is the dominant depo-
sition mechanism. (v) When W > V, > 0, turbulent re-entrainment of the
deposited particles from the surface back into the atmosphere is implied,
as in a dust storm, for example. Model parameters such as those given
above for cases (i) to (iv) are widely used in the atmospheric dispersion
and deposition of particulate material. The deposition of gases is a spe-
cial case of the particulate problem with W = 0; this is similar to case
(ii). Thus, one has to carefully select the values of W and V(j for use Ln
the models. A more complete discussion of these model parameters is given
by Rao (1982).
86
-------
REFERENCE
Rao, K. S., 1982: Plume Concentration Algorithms with Deposition,
Sedimentation, and Chemical Transformation. EPA-600/3-84-042, U.S.
Environmental Protection Agency, Research Triangle Park, NC, 87 pp.
[NTIS PB 84-138 742].
87
-------
APPENDIX D
D01AJF - NAG FORTRAN Library Routine Document
NOTE: before tiling thii routine, please read the appropriate implementation document to check the interpretation of bold iial
terms and other implementation-dependent details. The routine name may be precision-dependent
I. Purpose
DOlAJFisa general-purpose integrator which calculates an approximation to the integral of a function
F(jr) over a finite interval (A,B):
/ - | F(*) dx.
2, Specification
SUBROUTINE DOIAJF (F. A. B. EPSABS. EPSREL, RESULT. ABSERR,
1 W.LW, IW, LIW. IFAIL)
C INTEGER LW, IW(LIW), LIW, IFAIL
C real F. A. B. EPSABS, EPSREL, RESULT. ABSERR, W(LW)
C EXTERNAL F
3. Description
DOIAJF is based upon the QUADPACK [3]
routine OQAGS. It is an adaptive routine, using
the Gauss 10-point and Kronrod 21-point rules.
The algorithm, described in [1], incorporates a
global acceptance criterion (as defined by
Malcolm and Simpson [2]) together with the
c—algorithm [4] to perform extrapolation. The
local error estimation is described in [3].
The routine is suitable as a general purpose
integrator, and can be used when the integrand
has singularities, especially when these arc of
algebraic or logarithmic type.
4. References
{!] DEDONCKER, E.
An Adaptive Extrapolation Algorithm for
Automatic Integration.
Signum -Newsletter 13. No. 2, pp. 12-18,
1978.
[2] MALCOLM, M.A. and SIMPSON. R.B.
Local versus Global Strategics for Adaptive
Quadrature.
A.C.M. Trans. Math. Software I, pp.
129-146, 1976.
(3) PIESSENS. R.. DE DONCKER, E.,
U BERHUBER, C. and KAHANER. D.
'QUADPACK', A Quadrature Subroutine
Package.
To be published, 1980.
HI \YYNN, P.
On a Device for Computing the em ($„)
Transformation.
M.T.A.C, 10. pp. 91-96. 1956.
5. Parameters
F - real FUNCTION, supplied by the user.
F must return the value of the integrand at a
given point.
Its specification is:
real FUNCTION F(X)
realX
X - real.
On entry, X specifics the point at which the
integrand value is required by DOIAJF. X
must not be reset by F.
F must be declared as EXTERNAL in the
(sub)program from which DOIAJF is called.
A - real.
On entry, A must specify the lower limit of
integration.
Unchanged on exit.
B - real.
On entry, B must specify the upper limit of
integration.
Unchanged on exit.
EPSABS -real.
On entry, EPSABS must specify the absolute
accuracy required. If EPSABS is negative, the
absolute value is used. Sec Section 10.
Unchanged on exit.
88
-------
EPSREL - real.
On entry, EPSREL must specify the relative
.accuracy required. If EPSREL is negative, the
absolute value is used. See Section 10.
Unchanged on exit
RESULT -real.
On exit, RESULT contains the approximation to
the integral /.
ABSERR - real.
On exit, ABSERR contains an estimate of the
modulus of the absolute error, which should be
an upper bound for (/—RESULT).
W - real array of DIMENSION (LW).
Used as workspace.
LW-INTEGER.
On entry. LW must specify the dimension of W
as declared in the calling (sub)program. LW/4 is
an upper bound for the number of subintervals
into which the interval of integration is divided.
A value in the range 800 to 2000 is adequate for
most problems. The more difficult the integrand,
the larger LW should be. Trivially LW > 4. See
IW below.
LW is unchanged on exit.
IW - INTEGER array of DIMENSION (LIW).
Used as workspace.
On exit, IW(1) contains the amount of real
workspace actually used (the smallest possible
value of LW).
LIW - INTEGER.
On entry, LIW must specify the dimension of
IW, as declared in the calling (sub)program.
LIW > LW/8 + 2.
Unchanged on exit.
IFAIL- INTEGER.
Before entry, IFAIL must be assigned a value.
For users not familiar with this parameter
(described in Chapter P01) the recommended
value is 0.
Unless the routine detects an error (see next
section). IFAIL contains 0 on exit.
6. Error Indicators and \Yarnings
Errors detected by the routinc.-
IFAIL - 1
The maximum number of subdivisions allowed
with the given workspace has been reached
without the accuracy requirements being
achieved. Look at the integrand in order to
determine the integration difficulties. If the
position of a local difficulty within the interval
can be determined (e.g. a singularity of the
integrand or its derivative, a peak, a
discontinuity...) one will probably gain from
splitting up the interval at this point and calling
the integrator on the subranges. If necessary.
another integrator which is designed for
handling the type of difficulty involved, must be
used. Alternatively consider relaxing the
accuracy requirements specified by EPSABS
and EPSREL, or increasing the amount of
workspace.
IFAIL - 2
Roundoff error prevents the requested
tolerance from being achieved. The error may
be under-estimated. Consider requesting less
accuracy.
IFAIL - 3
Extremely bad local integrand behaviour
causes a very strong subdivision around one (or
more) points of the interval. The same advice
applies as in the case of IFAIL = 1.
IFAIL - 4
The requested tolerance cannot be achieved,
because the extrapolation docs not increase the
accuracy satisfactorily; the returned result is
the best which can be obtained. The same
advice applies as in the case of IFAIL = 1.
IFAIL - 5
The integral is probably divergent, or slowly
convergent. It must be noted that divergence
can also occur with any non-zero value of
IFAIL.
IFAIL - 6
On entry, LW < 4, or LIW < LW/8 -r- 2.
7. Auxiliary Routines
This routine calls NAG Library routines
D01AJV, D01AJX, D01AJY. D01AJZ,
P01AAF. X02AAF, X02ABF and X02ACF.
8. Timing
This depends on the integrand and the accuracy
required.
89
-------
9. Storage returns the quantity ABSERR which, in normal
The storage required by internally declared CAirDC"£^nc"' , Satisfics I'-RESULT| ^
arrays b 107 real elements. ABSERR < lol.
10. Accuracy 11. Further Comments
The routine cannot guarantee, but in practice Labelled COMMON block AD01AJ is used by
usually achieves, the following accuracy: this routine and must therefore be avoided by the
|/-RESULT|
-------
• F10.4/IH , 2X. 1MB, 6X. 3IH- UPPER LIMIT OF INTEGRATION - .
• F10.4/1H , 2X. 39HEPSABS - ABSOLUTE ACCURACY REQUESTED - .
• E9.2/IH . 2X. 39HEPSREL - RELATIVE ACCURACY REQUESTED - .
• E9.2/)
99997 FORMAT (JH . 2X. 41HRESULT - APPROXIMATION TO THE INTEGRAL - .
• EU.J/IH , 2X 42HABSERR - ESTIMATE OF THE ABSOLUTE ERROR - .
• E10.3/IH , 2X. 42HKOUNT - NUMBER OF FUNCTION EVALUATIONS - ,
• 14/1H . 2X. 43HIW(1) - ELEMENTS OF REAL WORKSPACE USED - .
• I4/1H . 2X. 22HIFAIL - ERROR FLAG - . I4/)
99996 FORMAT (1H . 7X, 27H - EXACT ABSOLUTE ERROR - , E10.3)
END
REAL FUNCTION FST(X)
C • _ SCALAR ARGUMENTS _
REAL X
C
C - SCALARS IN COMMON _
REAL PI
INTEGER KOUNT
C
C _ FUNCTION REFERENCES _
REAL SIN, SQRT
C
COMMON /TELNUM/ PI, KOUNT
KOUNT - KOUNT + I
FST - X*S1N(30.EO'X)/SQRT(1.EO-X"2/(4.EO'P1"2))
RETURN
END
C DOIAJF EXAMPLE PROGRAM TEXT
C MARK > RELEASE. NAG COPYRIGHT 1979.
13.2. Program Data
None.
133. Program Results
DOIAJF EXAMPLE PROGRAM RESULTS
A - LOWER LIMIT OF INTEGRATION - 0.0000
B - UPPER LIMIT OF INTEGRATION - 6.2S?:
EPSABS - ABSOLUTE ACCURACY REQUESTED - O.OOE 00
EPSREL - RELATIVE ACCURACY REQUESTED - O.lOE-03
RESULT - APPROXIMATION TO THE INTEGRAL - -0.25-J33E 0!
ABSERR - ESTIMATE OF THE ABSOLUTE ERROR - 0.12SE-04
KOUNT - NUMBER OF FUNCTION EVALUATIONS - 777
IW{1) - ELEMENTS OF REAL WORKSPACE USED - 76
IFAIL - ERROR FLAG - 0
- EXACT ABSOLUTE ERROR - 0.893E-OS
(This document is reproduced from NAG FORTRAN Library Mini-Manual,
Mark 8, 1980; Copyright of Numerical Algorithms Group, 1131 Warren
Ave., Downer's Grove, IL 60515).
91
-------
APPENDIX E
INPUT AND OUTPUT LISTINGS OF EXAMPLE PROBLEMS
The input data and output listings for the PEM-2 example problems
described in Section 4.5 are shown in the tables of this Appendix as
follows:
Table
Number Page
E-l Input data for Example Problem 1 93
E-2 Output listing for Example Problem 1 . 94
E-3 Input data for Example Problem 2(a) 106
E-4 Output listing for Example Problem 2(a) 107
E-5 Input data for Example Problem 2(b) 120
E-6 Output listing for Example Problem 2(b) 121
E-7 Input data for Example Problem 3 134
E-8 Output listing for Example Problem 3 135
92
-------
TABLE E-l
INPUT DATA FOR EXAMPLE PROBLEM 1
CARD IMAGES
CONTROL CARDS
1 TITLE PEM-2 EXAMPLE 1: MULTIPLE AREA SOURCES, 2 SPECIES, 3-HR AVG CONG & DEP FLUX
2 OPTIONS 300030200111110110
3 GRID 0. 0. 25 25 1. 0. 0.
4 POLLUTANTS 21 1.0. 0.1 0. 1.0 1.5
5 SCALING 10. 1. 1. 0. 0. 0. 0.
6 LABELS S02 SULFATE
SCENARIO CARDS
4 4 11 4. 225. 5. 550. 0.
5 4 11 3. 225. 5. 500. 0.
6 4 11 2. 225. 5. 500. 0.
AREA SOURCE CARDS
1.5 10.5 1000. 10. 1.
3.5 3.5 4000. 90. 9.
9.5 .5 2000. 20. 2.
9.5 .5 1000. 5. .5
(A BLANK CARD- TO SIGNAL END OF AREA SOURCE INVENTORY)
93
-------
TABLE E-2
OUTPUT LISTING FOR EXAMPLE PROBLEM 1
PEM-2 (VERSION 84130)
POLLUTION EPISODIC MODEL
INCLUDING
DEPOSITION, SEDIMENTATION, AND CHEMICAL TRANSFORMATION
OF POLLUTANTS
94
-------
X!
§
Pi
Ed
O
§
POLLUTION EPISODIC MODEL (PEM-2)
PEM-2 EXAMPLE 1: MULTIPLE AREA SOURCES, 2 SPECIES, 3-HR
• •
cn
pi
Cd
EH
Ed
2
W
5
£X
r 1
o
Pi
H
Z
O
CJ
EH
O
Z
M
O
EH
Z
z
o
M
EH
Pi
O
Ed
jg*
M
EH
O
Z
HH
O
^
ps
Cd
^
^
OF METEOROLOGICAL DATA FOR ONE HOUR
EH
Ed
cn
^
cn
M
0
HH
Pi
Z
Cd
CJ
cn
^
ARE CALCULATED FOR EACH SCENARIO
NS CALCULATED FOR 24 SCENARIOS ARE AVERAGED
NS CALCULATED FOR A GIVEN NUMBER (2 TO 23) OF SCENARIOS AI
cn c o
Z M M
O H H
M <
-------
X
DEP
0
•
o
AVG CONG
SPECIES
w o
HO O
< o o
to -II -HO
,J -H M . .
S3 O O
CO
II II
S CONSIDERED
T-2
500
ACT
cs
1
cd
o
o
ae
0
i— i
Q
O
CO
M
(X
W
Z
o
M
H
0
,J
5
EA SOURCES, :
»y]
^
W
^
Q-
M
H
s
s
».
f— ^
rv|
^
PM
S
^
^
w
CN
1
s
to*
Pu
.«
CO
w
H
to1
3
jiyj
fX
O
oi
EH
Z
o
CJ
H
PH
Z
M
C*J
II
iJ
0
Pu
z
• •
CO
EH
H
D
nJ
Pu
to
O
Oi
W
£
S
z
CN
O
CO
• •
f-H
1
H
^d
H
>-3
H-I
o
CX
o
o
o
o
o
• II
— i tO
II O
•J O
CJ
CO
II
• •
oi
H co
CJ EH
< ^
to M
M
o cj
to
^3 W
CJ 0
CO CJ
W Z
CJ O
Oi M
S3 H
^D ^ti
oo 02
CQ
• • ••
^^ ^"v
O CO
M ~-~
H X
•< CJ
M
to ^u
M H
EH M
z cj
Ed O
O iJ
M fd
Z
0 Z
M O
EH M
-------
CM
I
Ed
O
Q
O
CO
Ed
Z
o
o
p-l
X!
o
. 1
E
Cu
Ed
O
<£
CJ
Z
o
CJ
CJ
1
cn
Ed
H
CJ
Ed
Qu
en
CM
CO
Ed
Oi
a
o
CO
1
^4
Ed
(X
M
i— i
Ed
,J
Sj
si
Ed
CM
1
s
Ed
P-
• •
CD
cd
Ed
EH
Ed
S
«^
Pu
0
H
Oj
Z
Ed
CJ
cn
H
Qi
Z
M
CO
Ed
CO
CO
•^
t-J
CJ
EH
M
jj
M
pa
"^
EH
en
en
Ed
cn
en
Jj
o
o
Ed
Ed
O-i
en
O
*
CO
Z
O
M
EH
CJ
a
M
Q
O
Z
M
5
CO
CO
^
d
en
en X
<; Ed
0 Z
M
P
fc*^
v^x
jj
cn •<
cn >
-« '
M
Q
O Oi
EH Ed
CJ PQ
Ed S
co t5
Z
•< PO CJ O td
1-1 CM CO -H i—I CM cs|
I I I I I
o •* t^. i-t r» as
O vo r- co
m <• -* ov
-H CM -a- \o
^H CM CO
U~l VO
cn js cn
co co co is
Pd Ed Ed Ed
Z Ed Z CO Cd CO
ZZZFdEdEdcncn
CJ EH
Z SC
X M 3?
H Ed C
aa ac
Ed
>
O
pa H
< ac
CJ
EH M /-N
Z Ed S
Ed SC *-.
M CJ
Q CJ Ed
•3 Z O
o o o
00*0
moo
in in in
o o o
i-4 •— 1 -H
o o o
• • •
o o o
o x
w
H
Ed
Oi
H D /-*
Z EH CJ
Ed
-------
CM
I
O
o
u
M
o
o
CO
M
IX
Cd
Z
O
X
0-
Ed
o
o
2
o
&
f
CO
•k
CO
W
Cb
CO
CM
CO
Cd
O
CO
W
(J
CM
Cd
tx
co
pi
w
Ed
CJ
O
CO
<
Cd
H
Pu
Q
Ed
W i 1
CM EH •<
1 •^^
Z t-1
M
D
Pd
O
o
y /-v
s
>^x
IX
Ed
O
g
0
CO 0£
Cd
•<: m
o o o o
O O O O
o o o m
-H ON CM O
o o o o
o o o o
o o o m
>— 1 CT^ CM O
O O O O
O O O O
0 O 0 O
o o o m
r-H G^ CM
O 0 O O
o o o o
o o o o
• • • •
o o o m
•— I C^ CM
O O O O
o o o o
o o o o
O O O O
o o o o
-H
-------
X
CD
0-
Ed
Q
I
EH CJ
M ta
X Q
Ed N-'
Ed
CO
EH "^
*-* SE
X C-
Ed
tt!
Ed
EH
/-v.
CM
1
x
Ed
0-
x^/
^J
Ed
O
o
X
0
M
a
o
CO
CO
fd
M
0
Ed
CO
CM
.
CO
Ed
CJ
J— 1
0
CO
^
Ed
•<
Ed
0-
M
£_l
1-J
gn
as
o ^
Cd S
PS
CO
Ed CJ
EH **-*
2 CM
I
Z EH
C 2
M •<
CO H
CO &
M hJ
X hJ
Cd O
(X
/— s
CO
Ed CJJ
CO
^^
o
o
»
o
CO
Cd
5j
0
M
EH
S3
£q
o
IX
i-H
Ed
1
0.
5
^
Ed
CM
I
£
Ed
,,
CO
fti
Cd
Ed
X
^
(X
w
u
63
0
CO
EH
2
M
O
CX
H
1=
2
M
2
0
M
CO
CO
(—1
Ed
CO
Ed
J
aJ
Cd
PQ
£
p^
2
O
O
CO
Ed
EH
«
OS
2
O
i [
CO
CO
M
£
W
Cd
O
Cd
O
CO
EH
2
0
cx
Ed
as
H
fT|
O
CO
y
JIJ3
CO
99
-------
CONG & DEP FLUX
POLLUTANT- 1: S02
o
<£
prf
EG
T
CO
fll
CO
W
M
CJ
w
0-
co
CM
_
CO
w
0
&
C3
o
CO
^jj
W
fid
W
QJ
M
EH
.J
o
£
>B
»-H
W
jj
0_,
Jg
3
»>s
Ed
CM
1
S to
Cd Cd
O, S3
CO
f-H
||
Cx* r*1
O S
I— I
— ' EH
Z O
0 Z
M M
S3
w c2
co id
^
• •
f-i
£3 "
Pu CO
EH O
D M
0 tt!
es 2
1 W
Cd CO
CO
O
o
sr
CM
O
O
CM
CM
O
o
o
CM
o
o
00
i-H
o
o
r*
o
o
sr
•— t
o
o
*
CM
i— t
»!
w o
EH 0
Cd .
3E O
CJ
M
CO
S O
CJ O
•
orf oo
Cd
P.
CO
X o
S °
O vO
O
cj
M
S O
0
1 •
•Z, ~*
o
M
EH
<. o
OS O
EH .
2 CM
Cd
CJ
2
O
0
O
o •
Cd O
EH
^
od
M
J
CJ
OOOOOOOOOOOO
oooooooooooo
OOOOOOOOOOOO
OOOOOOOOOOOO
oooooooooooo
OOOOOOOOOOOO
OOOOOOOOOOOO
oooooooooooo
OOOOOOOOOOOO
CD tOl CD CD CD CD CD CD CD ^D vO ^O
CD ^^ CD CD CD CD CD CD CD ^D cvj C^l
1— 1 1—4
CDOoOoOOOO^OCJO*1
i-H )~H
OCDoOoOoCDO^CMO'N
^-4 ^H
CD ^^ CD CD CD CD CD CD CD CD v^ ro
i-H
OOOOOOOOOOOO
f— 4
OCDoCDoOi-nO CDCDOCD
^H
CD CD CD CD CD CD CD CM CD CD CD CD
f— i
CD CD CD CD O CD CD CD *^ CD CD CD
i-H
O CD CD CD CD O O CD CD ^O O CD
i— t
oooooooooooo
CM
CD CD CD CD CD CD CD CD CD CD O f"**
CM
oooooooooooo
oooooooooooo
oooooooooooo
oooooooooooo
oooooooooooo
oooooooooooo
•*^ co ^i ^H ^^ c^ oo P** ^o \f\ ""^ co
o o
0 0
o o
0 0
o.o
0 0
o o
o o
o o
\o o
CM ^C
»-H
CT* CO
*-H «-H
vO *~l
CM CM
^ o
CM CO
m ^a-
^H CM
OC f"**
^H
o o^
CD CD
o o
0 0
o o
oo o
- O
to u~i
ih-4
uo r^-
f-H
O \O
O O
O O
o o
OO O
r-* CT\
<-H
G*. -H
CM CM
sr vo
•^ CO
^O CO
CO vO
f*^ sr
CM m
UO CM
*"H ^r
o r-
CM
o o
0 0
0 0
0 0
0 0
0 0
0 O
c^ oc
O 0
0 0
0 0
0 0
0 0
0 0
o o
MS O
,_4
r-» CM
CM
O 00
o o
o o
O O
-H O
i-H
P-V. i/^
CM I-H
"•3" CM
m *^-
O ON
ON f^
ON ON
I**" f"**
CO CO
vO vO
vO \O
CO CO
0 0
0 0
0 0
0 0
0 0
0 0
!-~ VO
0 0
0 0
0 0
0 0
0 0
0 0
O O
O O
O O
oo o
I-- o
CM ^H
o sr
i-l CO
o sr
i— i
o o
0 0
o o
r-. o
evi
CO vO
VO CO
CO vD
VO CO
CO vO
VO CO
vO vO
CO CO
O 0
0 0
0 0
0 0
0 0
o o
m sr
0
o
o
0
o
o
o
o
o
o
o
sr
f«-4
rH
in
sr
CM
o
o
o
o
o
o
o
o
o
o
o
o
o
CO
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
sr o
CM
O CM
00 CO
CN m
CO vO
0 0
0 0
o o
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
CM i-H
o
o
o
o
o
o
o
0
0
o
o
0
o
o
o
0
o
o
o
o
o
0
o
o
o
o
o
o
o
sr
CM
o
o
CM
CM
o
o
•
o
CM
o
o
*
00
^H
o
o
vO
o
o
sr
1— 1
o
o
•
CM
o
0*
o
o
oo
o
o
vO
o
o
sr
0
o
CM
o
o"
100
-------
CM
O
X
hJ -^
^ EH
W 5
C^ E— I
£3
fc£j ^J
ij
Z CL.
o
0
o
<
EH .
& a!
(X O
& S
o <:
Z
CM Cd
S W5
O
o
•
CM
O
o
•
CM
CM
O
o
•
o
CM
o
o
•
oo
("^
04
D O
o o
sc •
Oi -H
(X
«! 0
Ed o
EH •
Cd -*
O ""*
M
&4 O
Pi CM
0
CO
tt! o
Ed •
(X 0
t— 4
S o
o o
o •
M
^
!
O
x o
fa
Z
o
M O
EH O
M •
CO
o
o
o
o
o
o
o
o
o
o
o
0
o
o
0
o
0
o
o
0
^^
o
C5
^^
^^
CD
o
^2
o
o
o
o
o
o
o
o
o
o
o
o
0
o
o
0
o
^^
^^
o
^*)
^)
^^
o
o
o
o
o
o
o
0
ooooooooooooooooo
OOOOOOOOOOOOOOOOO
ooooooooooooooooo
OOOOOOOOOOOOOOOOO
ooooooooooooooooo
ooooooooooooooooo
OOOOOOOO.— lOOOOOoOO
OOOOoOOOO'—'OOOOoOO
OOoOOOOOoO^-iOOOoOO
OOoOoOoOoOO'—'OOoOo
OOOOoOoOoOoOi— (OoOo
0000-t-HOOoOOOO-HOOo
C^ ^^ ^^ t^> v—4 ^^ ^H ^^ ^^ C5 ^^ ^^ ^^ ^^ c^J *™^ ^^
^^ ^^ ^^ C^ ^^ ^^ ^H ^^ ^H C^ ^^ ^^ ^^ C^ ^~4 ^O ^H
^^ ^D C^ ^^ ^^ ^^ <^ ^H ^_i ^J ^| Ovl ^H ^J ^^ CD <^>
CD ^~* CD ^J CD ^^ CD ^— ^ *™H ^J PO ^^ ^*J ^"^ CD ^^ CD
CD C^ *~^ CD CD ^^ CD ^^ *~^ ^"^ CO ^O ^j ^H ^^ CD CD
OOO'-HOOOOO'-'CMCMcM-HOOo
^^ CO CD ^O *~^ f^> ^3 CD CD ^D *— < '~^ i— t *~^ CD ^^ CD
OOOOOOOOOOOOOOOOO
OOoOoOcMOoOOOOOoOo
ooooooooooooooooo
ooooooooooooooooo
ooooooooooooooooo
ooooooooooooooooo
o
o
o
o
o
o
o
o
o
o
o
£^
0
o
o
0
0
o
£3
o
o
o
o
o
o
o
•
CM
o
o
•
CM
CM
o
o
•
o
CM
0
o
•
00
""*
o
o
•
1— 1
o
o
•
>3-
f-H
o
o
•
CM
<— 1
o
o
0*
1— 1
o
o
•
00
o
o
•
o
0
•
-*
o
o
•
CM
o
•
o
Ed
CMCSJCMCMCM
—
-------
w
£_|
X 04
rt
w
T
A
c/a
w
M
O
W
IX
CM
«
W
Pd
o
w
^
W
c£
HH
t *]
^
5
• «
*-H
W
H-3
^
Z.
ooooooooooooooooo
ooooooooooooooooo
ooooooooooooooooo
ooooooooooooooooo
ooooooooooooooooo
OOOOOOOOOOOOOOrt^HO
OOOOOOOOOOOOOO— if)i-H
ooooooooooooooo"Hcn
oooooooooooooooo— t
OOOOOOOOO'-'—i'— i I-H O O O O
OOOOoOOOO-HCMCMcM-- 'OOO
ooooooooo-HcMcocnfM^iOo
^3 ^^ ^3 CD C5 ^^ ^^ O ^5 ^^ C^J f^ "*
«^-
0
o
o
o
o
o
•*
o
o
o
o
o
o
o
o
o
o
o
CM
vO
en
o
o
0
0
o
o
o
o
0
o
o
o
o
m
o
o
o
o
o
o
o
o
o
o
o
o
en
ON
^>
o
o
o
0
0
o
o
o
o
o
o
o
CM
o
o
o
o
o
o
o
o
o
o
o
o
o
sj-
r-.
o
o
o
o
o
o
o
o
o
o
o
o
•— 1
o
o
o
0
o
o
c
o
0
o
0
o
o
o
o
o
o
o
0
o
0
o
o
o
o
o
o
o
o
•
*3"
CM
o
0
*
CM
CM
o
o
•
o
CM
o
o
oo
rH
o
o
i-H
o
o
-H
o
o
CM
rH
0
o
o
o
o
oo
o
o
vjO
o
o
-
-------
1 PEM-2 EXAMPLE 1: MULTIPLE AREA SOURCES, 2 SPECIES, 3-HR AVG CONC & DEP FLUX
fa
o
i-H
z
o
M
£H
CJ
Ed
en
g
DM
H
^
O
CM
1
Ed
Ed
|
CM
EH
H
O
0-
•
en
EC
CO
II
Cd
H
H
O
Z
M
O
2
E>
»
en
O
M
Pi
Z
CJ>
co
O
O
-3-
CM
O
0
CM
CM
O
o
o
CM
o
o
oo
o
o
1"
SC
*§
Cd •
PH -3-
ai ~*
Cd
Ed O
S o
Cd CM
r
o-
en o
o
Cd O
P- -H
en
<2 o
W O
o •
O 00
Pi
CJ
M
O
1 0
X vO
§
z o
0 0
M •
H -*
t, 1
en
o
(X
W 0
o o
td CM
o
fa
Pi
en o
o o"
Cd
fH
^
0£
CD
M
oor^voin-a-pocM-JOOooi^^io-
-------
/•"v
es
±
Ed
PM
N^
.J
Ed
O
O
x
CJ
M
O
o
CO
H
PU
Ed
Z
0
M
EH
O
hJ
I_J
0
pu
X
fr>
fj
to
Pu
Ed
O
<£
CJ
z
o
CJ
o
>
5
£
1
m
CO
Ed
M
O
Ed
CL
CO
CN
*
CO
Ed
CJ
&
O
CO
<;
1
Ed
J
ex
M
H
|}
• •
t— (
W
J
0-
3
£s
Ed
CM
1
s
W
P-i
• •
H
CU
EH
S
O
O
O
M
OS
Ed
tx
o
z
l-l
o
<
oi
O
O
M
&.
•3
z
Ed
£ >
^^
CO
5
-i
J Z
.J M
CL 2
O
O ^
CJ S
S2
N.^
X
z
0 0
H H
EH f*
cj <:
Ed Z
P4 Ed
M CJ
a co
1
o to
Z 13
l-l CO
S
0
•
o
-a-
vt
i—(
oc
•
o
1-H
o
o
•
r-
0
0
•
r^
o
•
o
*-H
Ov
vO
O
•
o
o
0
o
•
r~.
o
o
•
!-».
z
w
CO
Ed
OC
104
-------
x-v
CM
1
S
Ed
P-i
**^
,J
Ed
o
O
£
O
M
0
O
CO
H
PH
Ed
Z
o
H
H
S3
iJ
|J
O
P-i
X
§
IX
Ed
a
c^J
o
z
o
o
2
z z
0 O
H M
<%
**
CO (C
M M
33
0
1
c^
^p
0
V
Pi
Ed
P-i
Pi
Ed
H
EH
Cd
X
Cd
3
&
o
CO
C4
Ed
0.
co
^?
yy*
O
O
Pi
o
M
X
1-1
CO
Ed
&
J
^f(
£
O
Cd
H
— <4
01
«
M
J
•<
U
z
&
-2: SULFATE
FACE DEPOSITION FLUX
LIBRATED CALIBRATED
EH a: <
z & u
< co z
EH S
,-J
13 x-v
o y
a- w S
W N— X
tj Sj
1
M
§
O ^
o y
o 2
N*X
X
Q
Cd
X EH
& *K^
W OS
W -<
cci &
se
CO
p 1
Z PQ
M JZ)
S co
o
•
o
t~«
r-H
ro
«T\
•
oo
CO
o
o
•
r-.
o
o
•
r-.
o
•
o
m
r->
oo
-a-
•
CM
-*
CM
CO
o
o
•
r~
O
o
•
p-
Pi Pi
< Cd
Z PQ
Cd S
u 5
co Z
105
-------
TABLE E-3
INPUT DATA FOR EXAMPLE PROBLEM 2A
CONTROL CARDS
1
2
3
4
5
6
TITLE
OPTIONS
GRID
PEM-2
POLLUTANTS
SCALING
LABLES
S02
1
2
EXAMPLE
1
0.
1.
0.
1
2A:
0
2
0.
2.
1.
1
SCENARIO CARDS
2.
CARD IMAGES
POINT SOURCES, NEW PLUME RISE & PENETRATION SCHEMES
0
2
25
0.
1.
0
0 1
25
0.5
0.
0
1
2.
0.2
0.
1
1 1
0.
10.
0.
1
0
0.
1.5
0.
0.
0.
SULFATE
25.
550.
(A BLANK CARD TO SIGNAL END OF AREA SOURCE INVENTORY)
POINT SOURCE CARDS
30. 2. 1000. 50. 200. 5.
10. 2. 500. 25. 200. 4.
(A BLANK CARD TO SIGNAL END OP POINT SOURCE INVENTORY)
10.
8.
0.001
450.
400.
STACK 1
STACK 2
106
-------
TABLE E-4
OUTPUT LISTING FOR EXAMPLE PROBLEM 2A
PEM-2 (VERSION 84130)
POLLUTION EPISODIC MODEL
INCLUDING
DEPOSITION, SEDIMENTATION, AND CHEMICAL TRANSFORMATION
OF POLLUTANTS
107
-------
POLLUTION EPISODIC MODEL (PEM-2)
TROL PARAMETERS: PEM-2 EXAMPLE 2A: 2 POINT SOURCES, NEW PLUME RISE &
TIME OPTION: NTOPT=1
Z 0
0 Z
CJ M
o
EH ^C
^ 05
Cu Cd
Z >
M
en
OPTION: NWDOPT=1
z
o
M
H
CJ
&3
05
M
a
Q
z
M
3
N IN DEGREES TO BE SPECIFIED FOR EACH SCENARIO
UMBER TO BE SPECIFIED FOR EACH SCENARIO
o z
M
EH Qi
CJ 0
Cd EH
oi cj
M Cd
O CO
O ~4
N IN DEGREES TO BE SPECIFIED FOR THE FIRST OF FOUR SUB-SCENARIOS.
o
M
H
O
CM-
OS
M
Q
r*-»
i
C^l
H SUCCEEDING SUB-SCENARIO, WIND DIRECTION IS AUTOMATICALLY INCREASED
5, 30, 15, 10, OR 5 DEGREES, DEPENDING ON THE OPTION NUMBER SELECTED.
CJ •*
*
ION: NWSOPT=1
H
a.
o
o
Cd
Cd
CO
o
z
M
3
M/S TO BE SPECIFIED FOR EACH SCENARIO
ED CLASS NUMBER TO BE SPECIFIED FOR EACH SCENARIO
5£ frl
M a,
CO
a
Cd Q
Cd Z
0- M
co 3
O -H
i-H
z
w
CJ
CO
z
co
o
M
z
Cd
CJ
CO
CM
O
Qd
Cd
CO
y
5
z
COLUMNS: LX= 25 ROWS: LY= 25
SPACING: GRID= 2.000 KM
SOUTHWEST CORNER XRSWC= 0.0 KM W
YRSWC= 0.0 KM S
,.
o
M
OS
Oi
o
H
CU
Cd
CJ
W
&.
108
-------
POLLUTION EPISODIC MODEL (PEM-2)
.S: PEM-2 EXAMPLE 2A: 2 POINT SOURCES, NEW PLUME RISE & PENETRATION SCHEMES
as
Ed
H
Ed
Oj
PL.
iJ
§
EH
Z
o
CJ
H
O
PM
!Z
i— i
POLLUTANT-1: S02 POLLUTANT-2: SULFATE
CM
II
hJ
0
P-I
z
CO
EH
5
EH
&
i_]
h4
O
O-i
fa
o
04
Ed
pa
^E
•D
z
o
o
o
*
cH
1!
w
3
CJ
2
o
o
o
•
»— 1
H
Ed
3
CJ
CO
<
pi
8
CJ
<5
fa
£
I— 1
3
CJ
CO
Ed
CJ
Oi
O
O
CO
Z
O
1— 1
EH
M
CO
O
CU
Ed
C
O
O
CM
•
O
II
§
o
o
II
S
• •
s-\
CO
•-•^
CJ
*~s
>•
H
M
CJ
0
J
Ed
>
O
z
M
J
H
H
Ed
CO
»— l
EH
CJ
M
Z
o
M
EH
PL
0
Z
o
M
H
O
fa
CO
z
-------
X— >
CM
1
Cd
d<
Cd
£5
^^
5*
0
M
P
O
CO
u_j
o.
Ed
2
O
H
EH
.J
)J
O
CX
:ES, NEW PLUME RISE & PENETRATION SCHEMES
\~t
O
0
en
EH
M
O
CM
..
^
CM
Cd
^j
i?
Z?
^s
Cd
CM
I
X
Cd
CX
,,
en
oi
Cd
EH
Ed
o2
^
CX
o
oi
2
Cd
O
£-4
£2
CO
Cd
CO
CO
CJ
EH
M
M
oa
EH
CO
CO
CO
o
c
Ed
C/5
M
CO
sz
0
H^
H
CJ
|
P
P
2
h-1
3
en
CO
•<
en
en
^ ^^ ^"^ PS
Cd ^ -H Cd
5 °
^*\ C^ vO ^"* CO *™1^ ^si
CO iO "^ *^ O^ vO i^
X^ -H CM ^T VO CJV CM
X!
Cd
p I-H CM co i-^ CO
v_/ ^CMCMCMcMCMcnCO
3333
en 3 eo 2 3 2
cneocn33322
oi
Ed
pa o •— i CM co vj- m \o
g ON f-H _
J2
/•N m o in o ^n o in
Q C^ CM ^f vO C^ *~^ CO U^
\~s i— 1 — 1 ^- 1
Cd Cd Ed Cd
2 Cd 2 en cd en
2Z2CdCdcdencn
AMBIENT TEMP GRADIENT ABOVE MIXING
5£
M
3
Q
5
H
&
Q
§
M
3
P
Cd
Cd
CX
ro
WJ
Q
2
M
3
£
^^
M
j ^
M
PQ
^J
H
CO
TEMPERATURE MIXING HEIGHT HEIGHT
(DEC C) (DEG/M) (M)
25.00 0.001 550.0
2
O
M •— *
EH O
CJ Cd
§e
M
Q
Oi
O
EH ^
Cj
Cd
en
P ^
Cd CO
Cd -^
eo£
en
CO
•<3 CM
jj
0
CO
CO
•O P
u
Oi Oi
O Cd
EH P3
cj X
Cd 5
CO 2
1
Cd
CO
to
04
Cd
pa
110
-------
co
Ed
I
u
CO
2
O
H
Ed
2
Ed
a,
c
W
Ed U
CM EH co
I ^H
H c2
EH O -^^
& M CO
J CO ~~-
1-3 CO O
O M v^
*gn
D-,
2
O
O
O
o
X^v
CM
1
£
Ed
P-
»J
W
O
O
yL
u
M
O
0
CO
M
P-
Ed
O
H
H
ED
^J
iJ
0
Oi
ai
PM
S
5j
A
CO
Ed
U
£3
O
CO
£_ (
52
M
O
Pu
CM
• •
CM
Ed
Qj
S
<1
^S
Ed
CM
1
Ed
0-
co
pi
Ed
EH
y
2
CM
^J
PM
O
«;
0
CO
Ed
CM
^
E— )
t^
CL
*z>
1 I
Ed
i— I EH
2
§
s^ •
^
/^s
y
2
"*<
at
Ed
PQ
y
s
^
o
o
o
o
CO
P_I
2
2
O
M
CO
CO
M
y
Ed
Ed
O
CC
0
O
CO
<(.
Ed
Cti
Ed
B3
H
PM
O
CO
y
p^
CO
S
o
CD
II
CO
2
o
M
CO
CO
M
£
Ed
e
pi
p~i
0
w
•^3
W
CM
^
Ed
03
EH
O
EH
a
o
M
Ed
K
ry*|
HH
H
Ed
&M
Ed
111
-------
PISODIC MODEL (PEM-2)
2A: 2 POINT SOURCES, NEW PLUME RISE & PENETRATION SCHEMES
Cd
Cd
UTION
XAMPL
>J Ed
jj
O CM
CM 1
2
CM
„
cn
pd
e
Ed
3
p2
.2
CM
Ed
O
Pd
O
cn
EH
Z
M
O
CM
H
CD
CM
z
M
TE EMISSION RATE HEIGHT DIAMETER EXIT VEL EXIT TE1
(G/S) POLLUTANT-2 (G/S) (M) (M) (M/S) (DEC C
c2 -<
0 Z
00 EH
cn s
M >J
y ^j
Ed O
CM
x"*\
•g
cn S
Cd «— •
EH >.
Z
M
P
Od
O ^
cj 52
v-x
X
,j
Ed Cd
C_> 02
oi -•
Pu CD O
Z Cd CQ
** ^ S^
Z <
O • Cd
M cn cu
H 0-
CM Cd Pd
O O
Cd Cn
cn cn
Z M P
O OS1 W
M 1 cn
EH Cd CD
«! 2
CD 5 Cd
0 J pe!
Cd Cu P
Cd 1
.. SB J JH
Z O Cd U
O M S3
M EH En *
Cu OS O
O EH Z CD
Cd O «
H Z M
ffi Ed EH P
O Cu U
M CD
H Q
cj z
Cd M
Cn
Cn >H
Cd CJ
H-3 "H
z £
M O
ct, oa
112
-------
/— ^
CM
£
Qi
. i
Cd
O
O
ss
0
M
Q
O
CO
M
OK
Cd
2
O
M
g
. ^
O
CO
Cd
Cd
3-
2 0
o pa
M •<
£H
^ EH
D S Cd
O O M
1—3 CO Q
^ * ^
O O 05
in C5
cd m
CO Cd
M II Qi
Pi X CD
M EH
£ S os
5 Cd
0- H S
H! Cd
Cd O H
0 M
CK^ Cd vJ
& K ffi
u o /•**
^5 rH ^
EH Cd O
CO BC
CO
td CM x-.
EH 1 CO
2 O O
O-i ^-^
2
O
M
CO •— 1 X-N
CO 1 CO
M hJ --~
S 0 O
Cd Oj v^»
X~s
CO S
Cd 2
EH **^
W < >*
U 2
D O
O Od x-v
CO O S
o 2
O <•_'
X
Cd
EH 0
2 05
M &
O O
04 CO
O fO
o o
o r>
CO -tf
00 C3
in -*
-d- •-( b^
0 §
PO pa
m m
•-H t—4
• .
CO CO
CM r-
^- vO
0 0
C5 0
o oo
I—*
0 0
0 0
m >*
o o
O CD
0 0
CM CM
in o>
• .
1^- O
CM CM
-JT CO
. .
O 00
in «— i
in -vt
0 0
CM
-------
CM
O
co to
W
W i"H
3= 1
0 EH
to z
Z EH
O £3
M iJ
EH J
< O
W O.
EH
W
Z •
W Oi
P , £j*
l£J fH
W H
to w
• i ^4
ai M
EH
£ C5
S z
|J M
» i
w r*i
z >
„ ^
to •
Cd !£
CJ
c4 o
f-~i »
O 0
in
H
ZS
&. 3-
CM C5
Z
•< X
CM M
•g
Cd
hJ -
PL, O
S Cd
X °
W O
O
CM .
1 O
S oo
Cd -H
Cu 11
M
-H Q
O P
1— 1 §5
Z
W •>
O CO
CO -^
-3-
O CM
^ H
O to
)_4
EH O
CJ £s
Cd M
CO |3
• • #s
EH
(X ?
S EH
0 M
CM M
S •<
Cd EH
PJ CO
0
O
oo
•*
o
o
5
0
o
o
o
o
vO
en
o
o
en
o
o
CM
O
o
*3"
CM
O
ai o
Is
*
o
M 0
Pfl ^^
D «
CJ vO
t— (
g
ttj
(X
o
to o
p2 •— t
§
ai
CJ 0
1 °°
o
W 0
EH O
su-
H
Cd
O
Z
O O
o .
o
Q
EH
2
CQ
H
J
CJ
Z
^D
O 0
0 0
00
0 0
o o
00
oo
CM
m 10
.-H CM
en en
in m
0 0
00
0 0
0 0
oo
en -a-
CM CM
00
0 0
0 0
0 0
O 0
00 VO
"d- -3"
o
o
o
o
o
o
o
m
en
en
m
O
O
o
o
o
in
CM
0
0
o
o
o
^J.
*^
0 0
0 0
0 0
0 0
0 0
0 0
0 0
m m
*^ *>o
en en
in m
0 0
0 0
0 0
0 0
0 0
psj ^g
0 0
0 0
0 0
0 0
0 O
CM O
*3" **
ooooooooooooooo
ooooooooooooooo
ooooooooooooooo
ooooooooooooooo
ooooooooooooooo
ooooooooooooooo
ooooooooooooooo
mm^f oo
ooooooooooooooo
OOOOOOOOOOOOOOO
ooooooooooooooo
OOOOOOOOOOOOOOO
ooooooooooooooo
oo^o-a-cMOoo^o-tfcMooovo-a-eMO
enenenenencMCMcMCMCM'— H^H*-H,-H« — i
o
o
o
o
o
o
o
o
en
en
o
o
o
o
o
o
0
o
o
o
r—t
o
o
o
o
o
0
oo
o
o
o
o
o
o
o
o
en
en
*H
o
o
o
0
o
o
o
in
o
1—4
o
o
o
o
o
o
\o
0
0
o
0
o
o
0
0
CM
0
o
o
o
o
o
o
o
vO
0
0
o
o
o
o
^.j.
o
o
o
o
o
o
o
o
o
0
o
o
o
o
o
o
o
o
o
o
0
o
o
CM
0
o
o
o
o
o
0
o
o
o
o
o
o
0
o
o
o
o
o
o
°
0
o
0
o
0
o
o
co
-3-
o
o
5
o
o
o
o
o
vO
en
o
o
•
en
o
o
ff\
sJU
CM
0
o
-3"
CM
o
o
o
CM
o
o
•-O
i-H
o
o
CM
r— I
o
o
co
o
o
-3-
o
o
114
-------
CM
CO CO
Cd
s; ••
Id -H
0 EH
CO SZ
^C
^D £3
M >-J
EH nJ
<£ O
K PH
E-i
W
2 •
PH SB
uO >~<
W II
to w
M £
P- M
EH
W
y C5
5 55
iJ H
PH C5
is 2
£ i?
CO •*
w £
o
BJ O
0 O
co m
m
|?
M J|
0 EH
P- 33
CM O
2
• * ^H
<; x
CM M
£
hJ *
PM O
s w
3 o
^s
Cd O
O
CM •
1 O
£ oo
Cd -H
PH II
-H Q
M 2
PS1 M
-vfCMOOO\O«a-CMOOO'sD~*CMOOOvO
CO CO CO CO CM CM CM CM CM '— t •— * *~^ •— • •—*
o
0
o
o
o
o
o
o
o
m
o
o
o
0
o
o
o
o
in
o
o
o
o
o
o
o
^J.
o
o
o
o
o
o
0
o
0
o
o
o
o
o
o
o
o
0
o
o
o
o
o
CM
o
0
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
0
0
o
o
o
oo
o
o
*«^
*3"
o
o
o
o
o
\o
CO
o
o
CM
CO
o
o
oo
CM
o
o
^f
CM
o
o
o
CM
o
o
vO
o
o
CM
(— I
0
o
oo
o
o
^H.
o
o*
115
-------
w
53
CO Cn
X i""1
W co
B..
CO CM
1
Z H
0 Z
M <
H H
OC 3
H nJ
W O
Z PH
(X •
«3 S3
M i-H
CO
M 1)
Ptf W
W M
X EH
CX Z
M
^s C5
W < O
W
O
CM O
1 •
X 0
w oo
(X ^H
II
tti
-H M
a
o
M a
04 Z
Is
s .
C/3 CO
M J£
i— H
^O
&H -HOOOOOOOOOOOO
oooooooooooooo
oooooooooooooo
oooooooooooooo
oooooooooooooo
oooooooooooooo
OOvO-tfCMOOOvOvtCMOOOvO-3-CM
*3~ *3* "^ *3* *3* en m en en en CM CM CM CM
O 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
CM «-•
CM <-<
0 0
0 0
0 0
0 0
0 0
0 0
0 0
i — 1 ^H
0 0
1— 1 «— I
0 0
0 0
0 0
o o
O 0
o o
o oo
CM -H
o
0
o
o
o
o
o
o
1— t
en
1— H
o
o
o
o
o
o
o
1 — 1
o
«— t
0
o
o
o
o
o
v£>
^H
o
o
o
o
o
o
o
o
1— I
en
T— t
o
o
o
o
o
o
0
o
o
o
o
o
o
0
o
o
^)-
1-H
o
o
o
o
o
o
o
o
o
en
o
0
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
CM
1— 1
o
o
o
o
o
0
o
o
o
en
o
o
o
o
o
o
o
o
o
o
o
o
o
o
0
o
o
o
^H
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
«3- CM
0 0
0 0
0 0
0 0
o o
0 0
0 0
0 0
0 0
{"} O^
0 0
0 0
0 0
0 0
0 0
o o
o o
OO vO
o
o
o
o
o
o
o
o
o
in
o
o
0
o
o
o
o
o
o
^
o
o
o
o
o
o
o
^
o o
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
o
o o
CM O
o
o
00
o
o
•«3-
0
o
o
o
o
\o
en
o
o
CM
CO
o
o
oo*
CM
o
o
•l^
CM
o
o
o
CM
o
o
vO
I— 1
o
o
CM
t— I
o
o
00
o
o
^f
o
o
116
-------
w
CO Pn
Pd ,J
S £3
Ed CO
g -
CO CM
1
O Z
1— 1 •<
EH H
23
H |J
W O
p^ P-|
W
p-« •
Pd
tfl 33
Ed -H
CO
Wll
If
PC &3
£
W M
S t**
|S
>J O
OH Z
^ o
w **c
z ol
CO •<
w
o •
as as
D
O 0
CO •
EH in
Z "i
M
0 II
OH H
33
CM
O
<3 M
CM X
M
W 2£
J
OH •
2 Ed
X O
Ed
O
CM O
1 •
as o
Ed 00
OH _l
II
OS
-H M
0
O
M p
fvj 2£
5 t— *t
z s
w
U*
"*
W W
*-^
•as
i— i
to
13
5
0 0
0 0
0 0
0 0
0 0
0 0
0 0
vO sj-
*""*
m o
CO CO
f-. si-
1^ f*"*
CM CM
m o
CO CO
SO st
f~H f^H
0 0
0 0
0 0
0 0
0 0
CM O
1— 1 —1
CO OO
CO C^
f-H
O CT»
-H O
CM
CO 00
CO CTN
•-<
CM 0
v— H T*H
0 0
0 0
0 0
O 0
o o
00 so
-a- sr
o
o
o
o
o
o
o
CM
*™H
«Hf
CM
CM
r-
CM
^f
CM
CM
f«4
O
0
o
o
o
o>
^>
c^
p^
o
CM
^j-
CT*
ON
O
0
O
0
o
^.
-a-
o
0
o
0
o
o
o
o
00
^
o
^.
CM
00
*-<
O
i—4
o
o
o
o
o
f^
CT>
OO
in
o
ON
00
r-^
o
o
o
o
o
CM
•^-
O
o
o
o
o
o
o
oo
f_<
-H
^.
sO
CM
f_i
t-H
oo
o
o
o
o
o
sD
in
00
CO
o
CM
in
oo
sO
O
0
o
0
o
o
v^-
0
o
o
o
o
o
o
vO
in
0
m
sO
CM
m
O
sO
O
O
O
O
O
m
o
00
f— i
o
o
00
in
0
O
o
o
o
00
CO
0 0
0 0
0 0
0 0
0 0
0 0
0 0
m si-
00 -H
o> c?\
CM O
SO SO
CM CM
00 i-H
O\ CTN
in si-
0 0
0 0
0 0
0 0
00
««^ fO
-^ cyv
1^ so
O"N P*"
ON O>
•a- cr\
r*^ so
o
o\ONOOooooooooi^r~r-oooosoi^
^* ^H in oo CM m ON co oo •^r *~H co co co c— ]
m m -a- co co CM '•H *-H
--H-Hi-HoOOOoOoOOOOO
OOOOOOOOOOOOOOO
ooooooooooooooo
OOOOOOOOOOOOOOO
ooooooooooooooo
ooooooooooooooo
oooso-a-cMOooso-3-cMOooso-a'CM
COCMCMCMCMCMi-Hf— li— If— I— <
o
o
o
0
o
o
o
0
0
o
o
0
o
o
o
o
o
o
o
o
o
0
o
o
o
o
o
o
o
co
-------
TION
C ALIBI
o
•
o
RA
CM
Ed
PJ
n
o
en
Ed
O
en
O
2
Ed
PH
Ed
en
Ed
hJ
P-
O
w
Ed
CM
El
2
O
PH
CJ CJ
H
2 O
Ed Ed
CJ H
2 *-
O at
CJ CO
l-l
iJ
en
Ed '
EH
O ^
8§
SH*'
X
o
i?
vO
en
O
o
CO
O
o
o
en
o
•
o
2 _J
O
-------
f~\
CM
1
Cd
(X
N-^
hJ
Cd
Q
O
CJ
t-4
Q
O
CO
M
IX
Cd
2
0
M
EH
Q
J
O
CH
CO
Cd
s
H-<
EC
CJ
CO
2
O
M
EH
<
Cd
H
Cd
2
Cd
Cu
^B
Cd
CO
M
oi
Cd
y*
5
j
(X
5
Cd
2
*
CO
Cd
CJ
Oi
o
o
CO
EH
2
M
O
0-
CM
• •
CM
Cd
n4
IX
2E?
^
X
Cd
CM
1
S
Ed
IX
EH
E3
(X
H
C3
O
ERIOD
IX
O
2
M
0
2
Cd
>
<
&
O
0
M
&1
<
2
Cd
CJ
CO
5C
u
J
0
DM
g
o
Cd
EH
<
Cd
ca
M
J
<:
CJ
5
LFATE
&
CO
CM
1
H
?5
H
3
hJ
^J
O
Cu
CM
O
CO
• •
1
EH
2
-•
<:
2
M
Q
0!
O <-x
o y
cj S
*^s
X
o
Cd
X H
& <•
KJ 2
tu CC
i^
2 n4
0 3
M CJ
EH
1— 1
CO
O
IX C
Cd pd
O EH
5
Cd Cd
CJ S
<: M
ptl iJ
cd <:
& CJ
co 2
x-s
co 3
w ^-^
EH >•
<
Z
M
Q
Cd
O ^
o s
cj S
N«/
X
2
0 0
M M
EH Cd
CJ <
Cd 2
Cd Cd
M CJ
C CO
I
O po
2 &
M CO
3
O
•
o
I-H
CM
1—4
vC
•
vO
^**
CM
O
O
•
CO
•o-
o
o
•
o
CO
o
o
o>
1— (
r^
1— 4
•
CO
o
v£>
cr
o
o
•
v£>
o
o
•
o
ro
2
Cd
U
CO
co —i
119
-------
TABLE E-5
INPUT DATA FOR EXAMPLE PROBLEM 2B
CONTROL CARDS
1
2
3
4
5
6
TITLE
OPTIONS
GRID
POLLUTANTS
SCALING
LABLES S02
PEM-2 EXAMPLE
1 1
1
2B;
0
SCENARIO CARDS
0.
1.
0.
2.
CARD IMAGES
2 POINT SOURCES, STANDARD PLUME RISE & PENETRATION SCHEMES
1
0.
2.
1.
0
0
25
0.
1.
1
25
0.5
0.
0
0
2.
0.2
0.
0
1 1
0.
10.
0.
1
0.
1.5
0.
0
0.
0.
SULPATE
25.
550.
(A BLANK CARD TO SIGNAL END OF AREA SOURCE INVENTORY)
POINT SOURCE CARDS
30. 2. 1000. 50. 200. 5.
10. 2. 500. 25. 200. 4.
(A BLANK CARD TO SIGNAL END OF POINT SOURCE INVENTORY)
10.
8.
0.001
450.
400.
STACK 1
STACK 2
120
-------
TABLE E-6
OUTPUT LISTING FOR EXAMPLE PROBLEM 2B
PEM-2 (VERSION 84130)
POLLUTION EPISODIC MODEL
INCLUDING
DEPOSITION, SEDIMENTATION, AND CHEMICAL TRANSFORMATION
OF POLLUTANTS
121
-------
CM
p
o
CJ
M
o
o
en
Cd
Z
o
M
PEM-2 EXAMPLE 2B: 2 POINT SOURCES, STANDARD PLUME RISE & PENETRATION SCHEMES
••
en
Cd
EH
S
3
02
5
&
.j
0
g
o
CJ
EH
*""1
fa
H
i— i
fa
8
IS
••
z
o
M
EH
fa
O
Cd
X
M
H
O
Z
M
0
C&
til
OF METEOROLOGICAL DATA FOR ONE HOUR
H
Cd
en
^
en
)_4
O
M
Si
z
Cd
en
^
S ARE CALCULATED FOR EACH SCENARIO
ONS CALCULATED FOR 24 SCENARIOS ARE AVERAGED
ONS CALCULATED FOR A GIVEN NUMBER (2 TO 23) OF SCENARIOS ARE AVERAGED
Z M M
O EH H
M
-H CM CO
r-H
EH
IX
o
£
^
• •
z
o
M
EH
fa
O
Z
0
l-l
H
CJ
Cd
erf
M
o
Q
Z
TO BE SPECIFIED FOR EACH SCENARIO
PECIFIED FOR EACH SCENARIO
en
en
Cd cd
Ed CC
P£
CJ O
Cd H
Q
ec
Z Cd
M «
Z §
o z
EH O£i
CJ O
Cd H
|V ej
M Cd
Q en
(••> ^ r |
TO BE SPECIFIED FOR THE FIRST OF FOUR SUB-SCENARIOS.
SUB-SCENARIO, WIND DIRECTION IS AUTOMATICALLY INCREASED
5 DEGREES, DEPENDING ON THE OPTION NUMBER SELECTED.
pc
en e> C
Cd 55 •
Cd M O
fti O -^
O Cd *
Cd Cd W*!
Q CJ -H
CJ «
Z S O
M en en
Z 32 m"
O CJ s»-
H-4 -
M fa oa
Q
f*^
1
OvJ
f-H
EH
fa
O
en
55
,«
Z
o
M
EH
(X
O
O
Cd
fa
en
Q
Z
ECIFIED FOR EACH SCENARIO
ER TO BE SPECIFIED FOR EACH SCENARIO
fa oa
en s
Cd Z
03
en
O en
EH <•
en cj
^^
S C
Z Cd
M CX
en
o
Cd O
Cd Z
fa M
en s
O -H
ii
z
CJ
en
Z
• •
en
O
M
23
z
Cd
CJ
en
fa
O
P^
W
CQ
s
in
CM
S
en S
§0
*! 0
O
CM
CM II
II M
X Pd
iJ O
• • *•
CT* O
z z
as M
t= CJ
j <:
0 fa
cj en
••
O
H
KS
O
04
O
H
fa
Cd
CJ
S en
o o
O O
II II
U CJ
S 3
en en
Cd
O
H
en
Cd
33
EH
O
en
122
-------
CM
Ed
CM
Ed
Q
i
Q
O
co
M
CM
Ed
2
O
H
EH
D
O
CM
O
O
O
II
^H pa
II O
Fd
3 °
CJ
co
O
o
ul
O
O
CM
II II
CM CM
*
CM
O
EH
O
CM
O
O
O
II
—i PC
c
*
o
o
CO
o
o
o
II
r-H
>
o
•
o
II
f-H
&
CD
Cd
Ed
3
I
8
CM
2
M
CM
II
CM
2
CO
o
CM
Ed
PQ
o
EH
a
CJ
CO
Ed
CJ
O
co
Ed
Crf
CO
g
Ed
M
CJ
fo
Ed
O
CJ
2
O
H
CJ
§
O
EH
2
Ed
O
2
0
(0
CJ
CO
"s
CJ
CJ
O
2
C
co
O
CM
Ed
O
CO
CJ
CJ
o
o
2
EH
EH
Ed
CO
t-H
EH
CJ
M
2
O
M
EH
CM
O
2
O
M
H
J£
PC
O
CO
2
c2
EH
CJ
M
as
Ed
as
CJ
MATION LOSS OF POLLUTANTS IS IGNORED
erf
O
Pn
CO
2
•^
Q5
£— <
j
•^
U
M
S
W
pr]
CJ
o
CM II
II EH
iJ CJ
0 M
CM
2
CAL TRANSFORMATION OF POLLUTANT-1 TO POLLUTANT-2 IS CONSIDERED
M
£
Ed
3S
CJ
erf
&3
O
Q^
H
CO
erf
M
,_!
II
H
CJ
M
CAY RATE: XKT= 10.000 PERCENT/HR
W
o
erf
c
2
O
H
EH
2^
CM
o
CM
CO
SS
«
Ds
H
iJ
£_J
M
S
Ed
as
CJ
POLLUTANT-2 (PRODUCT) TO POLLUTANT-1 (REACTANT): GAMMA= 1.500
pf .
0
CO
H
33
C5
M
Ed
S
Crf
i—3
5
CJ
Ed
,J
O
h
0
O
M
H
c2
••
Q
Ed
H
CJ
Ed
T ~]
Ed
CO
CO
2
O
M
EH
CM
O
EH
CO
CM
H
0
ATION AND SURFACE DEPOSITION FLUX AT EACH RECEPTOR IN THE GRID
Crf
H
2S
w
SS
o
CJ
Eb
O
CO
CM
^
S
CM
II
i
CM*
•^j
!2T
S
0
Q
Ed
EH
Pd
CO
H
^
CJ
S
S WITH HIGHEST CONCENTRATION AND SURFACE DEPOSITION FLUX
erf
0
H
CM
Ed
CJ
Ed
Crf
fej
O
EH
CO
M
,J
I—I
II
•rf
^
^
10 - PRINTED AT END OF RUN
erf
^*
2
Ed
CJ
CO
T1
CJ
Ed
Drf
O
Eb
123
-------
CM
1
£
PJ
jj
Ed
O
i
o
a
o
CO
M
PM
Cd
2
O
M
EH
>— j
J
H-3
O
{X
CO
Ed
£
Ed
g
CO
2
O
M
H
c&
EH
Ed
2
Ed
a*
<«
Ed
CO
)_4
&
1?
p^
(X
O
fy!
Q
g
^
EH
CO
CO
CJ
oi
o
CO
2
M
O
QJ
CM
• •
PC
CM
A,
s
^i
^S
Ed
CM
1
£
Cd
PU
CO
Oi
Ed
EH
Ed
j5
Pu
O
M
Oi
— t
^ CO SO *~* I-H CM CM
> 1 1 1 1 1
OS O j m vc
M
x^. omomomom
W OCMini^ocMinr^
Q 00 O CM *^ f^^ ON *-H CO
Sfc^ ^^ CM CM CM CM CM CO CO
S 3 S S
co 3 co 2 5 2
COCOC033322
oi
Ed
g
2
Ed c^ CM m ^"» c~j CM in ^**
^"^ CM ^J **O CT^ *"- CO in
»«^ -H _| ^H
Ed Ed Ed Ed
2 Ed 2 CO Cd CO
222EdEdEdcoco
g
M
XI
M
S
Ed
>
a
ta
<
H
2
Ed
M
Q
2
e
^
Ed
H
EH
Ed
l-l
CC
5
O
2
S
o
2^
M
S
Q
2
M
3
Q
Ed
Ed
CO
Q
2
M
S
g_l
H
j *]
^
CO
^
EH
CO
EH
S3
O
M
Ed
S3
EH
33
0
M
Ed
33
O
2
h»4
X!
^^
£
Ed
Oi
e
^
Ed
Ed
EH
o
M
H
CJ
S
M
Q
Oi
O
H
w
CO
Q
Ed
Ed
CO
ff\
*Jj
CO
! *]
£_}
CO
CO
J
^J
X-N
£
N-'
/— N
£
<1
CJ
Ed
Q
O
Ed
Q
/""\
O
b:
Q
N*^
X^S
W
"s^
*g
\^x
o
•
o
m
m
o
o
m
CM
CTS
CM
Q
CJ
Ed
CO
Ed
CQ
M Oi
rt Ed
-------
CO
ae
o
CO
2
O
w
2
W
O
w
W O
CM E-i CO
H S
•^j 55
H C ^
B M CO
»J CO O
O M v^
^ W H
B
Cu
2
O
o
o
o
CS|
1
w
a,
w
o
o
s
c_}
M
O
0
CO
M
PM
U
2
O
M
B
J
H-3
o
IX
ANDARD PLUME RIS
H
co
.
co
y
B
O
CO
H
2
H
0
C\j
• •
PC
CM
w
.J
§
-------
ION EPISODIC MODEL (PEM-2)
H
_3
3
Cw
E 2B: 2 POINT SOURCES, STANDARD PLUME RISE & PENETRATION SCHEMES
>J
£
3
W
CM
|
Cd
ft.
• •
CO
Oi
Cd
EH
y
2
^4
eu
Cd
o
*— >
o
CO
z
1— 1
o
PJ
EH
13
Oi
52
M
RATE EMISSION RATE HEIGHT DIAMETER EXIT VEL EXIT TEMP
1 (G/S) POLLUTANT-2 (G/S) (M) (M) (M/S) (DEC C)
ZEH
CO EH
CO B
M .J
Cd O
P-i
s^*
y
CO 2
EH ^
<^
Z
M
§
O ^**
o s
o B_
X
HJ
Cd Cd
o m
oi <
ED ,J
O
CO
EH Oi
Z Cd
M M
0 32
Q-i CD
O O
o o
o o
• .
o o
in o
o o
o o
o o
o oo
1— 1
0 0
0 0
o o
in «^
0 0
o o
o o*
0 0
CM CM
0 0
0 0
o o
o m
m CM
0 0
0 0
o o
0* 0
0 0
o J
EH <3 •<
1
|y^
O O -H
^
^i
CO
ALL STABILITY CLASSES
SE FOR STABILITY CLASSES A-D
M
OS Oi
o
0 fe SH
II O
Cd p Z
co cd H
ei t> o
Pu SD
Z Cd «
.. ^
Z ""5
O • Cd
l-l CO O-i
H 0
PJ Cd Oi
0 0
Cd fTi
CO CO
Z M P
O Qi Ed
M 1 CO
H Cd S
< S
» 5 Cd
O" hJ Oi
Cd C« •<
Cd 0 «
co oi co
M Cd
0 S
M EH
Cd
Z Oi
O EH
M
EH p
^ P*
K ^
H P
Cd Z
Z <
Cd H
PJ CO
Cd
2
j
0-
LEVATED STABLE LAYER USED
Y-DOMINATED PLUME
W|
£g
Z S
O co
M
EH P
Cd P
Z 1
Cd -i
0.
CO
Cd Cd
32 co
5 co
p- ^
oi
O >"
b EH
M
CO iJ
Cd M
Cd <
33 H
O CO
CO
oi
"S 0
fVl ptj
2:
i—4
..
p
Ed
EH
Ed
Ed
CO
CO
z
o
M
EH
0.
O
EH
0 4
g_l
a
o
AND EFFECTIVE STACK HEIGHTS
CENARIO
Cd 33
EH 0
Cd H
Cd U
^ b-(
Z D
M O
&4 oa
CO
126
-------
/-N
CN
1
s
Ed
^
^J
Ed
Q
O
3S
O
O
o
CO
M
PD
W
2:
o
H
f— i
£3
H?
taj
0
Pxl
CO
Ed
a
Si
CJ
CO
z
o
H
W
Z
W
Cu
Ed
CO
M
Pi
W
2rJ
^
j
Pi
^
Q
p?
CO
H 2?
LJ \^_/
X
0^1
Ed
EH
S S
< ^
l— I
O
EH
ad
o ^>
Cd *~s
33
CO
Ed
E^ CN /*"*N'
•< 1 CO
Pi ij -^
O O
Z P4 ^
0
M
CO
CO
HH *~H s~\
S 1 co
O O
fL, v-'
CO /-s
cd a
EH S
cd <• ^
CJ Z >"
Pi l-l
CO O
o ^
u as
•C-
X
H w
M Pi
0 1=)
PM O
CN CN
CO CO
• 9
•^ «^
IA vO
CN CN
O O
Cv) CN
• c
m m
CJ U
J2 Z
^ ^
^ ^
0 0
m oa
m m
r—l i-H
• •
PO CO
CN l*>
^ \&
O O
O 0
0 0
O 00
f— 1
0 0
0 0
o o
m <•
o o
o o
• *
o o
O 0
CN CN
O O
o o
o m
m CM
0 0
o o
o o
0 0
o m
f-H
0 0
o o
CN CN
0 O
o o
0 0
^H CN
CO
127
-------
CO
W CM
s o
W CO
CJ ••
CO F-l
1
J2 E™1
o z
H EH
Si 3
EH |J
Cd O
Z ft.
K
ft,
"* •
K Oi
CO EC
M
& ""H
CU II
B x
•J M
ft, H
Q O
fy gj
•< H
Q O
•< W
EH W
CO >
CO •>
W JC
oj o
S3 •
o o
CO U1
m
g-i
Z II
M H
O 35
ft.
O
CM Z
.. jxi
CO M
W -
|J O
&S
S>0
W O
CM O
4; 2
Cd |t
M
— i O
0 P
Wty
X-*
z
pd *
CJ CO
CO -~-
X
i-H vO
r^.
HM •
O CM
—1 II
O CO
EH P
CJ Z
ta M
CO JS
•• *
EH
» P
(X II
EH £
O M
CM H-l
•£ ^
CM
vO
IO
l-s.
CM
en
0
o
o
o
0
CM
sj-
oo
CM
-a-
CM
O
O
0
0
o
oo
"•3.
oooooooooooooooooo
oooooooooooooooooo
oooooooooooooooooo
oooooooooooooooooo
oooooooooooooooooo
oooooooooooooooooo
oooooooooooooooooo
(nencMcM^-H^^i— i— ^OOoOoOOOO
^* p^ r^ p^ r^ \c v*o in sf en CM co oo \o en CD ^o en
eMeMCMCMCMcMCMeMCMCMCMcM'-l-H'— II-H
ecoeMinoo^ r*^ ^- ^** ^* \o ^c m r*^c^^Hcn^ooN(*'^r^'™*ri^-^to
CNJ co co ro co co oo ro *^~ ^^ *^ «^" *o to ^^ vo ^- oo
— *
o
o
o
o
o
o
o
o
,— *
oo
a^
i— i
o
o
o
o
o
o
T— 4
C^
ON
,-H
o
o
o
o
o
o
^H
o
o
o
o
o
o
o
0
o
»— 4
•*
C>J.
o
o
o
o
o
o
0
o
o
f— (
CM
1— <
o
o
o
o
o
o
o
oo
o
o
o
o
o
o
o
0
o
^.
-a-
CM
o
o
o
o
o
o
o
o
CM
»^
t— (
o
o
o
o
o
o
^o
o
o
o
0
o
o
o
0
o
vO
en
1-1
o
o
0
o
o
o
o
o
o
en
*^
t_4
o
o
o
o
o
o
o
.3.
0
o
o
o
o
o
o
o
o
o
o
o
o
0
o
o
o
o
o
o
o
o
o
o
o
CM
o
o
0
o
o
o
o
o
o
o
o
o
o
c
o
o •
o
o
o
o
o
o
0
o
o
o
o
o
o
oo
-------
CO
Ed
£ CM
Cd O
gco
CO •«
sZ
M 'Z
H <
o§ o
H iJ
Ed J
Z O
Ed PL.
OH
ei
CO
M I-H
PS!
Ed Cd
5 M
iJ E->
O,
O
o a
< o
^^ ^C
[Z re
CO U-l
H
S3 )|
HH B~t
O SB
P-
O
CM Z
^^
•• ^*i
« M
CM 2
Cx2 M
pJ O
Pu Ed
y^ c^
< O
Ed O
t
CM O
1 CO
X -H
Ed ||
CL Cd
Lr 1
-H Q
O*-N
t—J
t— i S
|S
Ed •
CJ CO
CO -^
A
-H VO
h *^
O CM
^ II
Q
Z P-
O CO
h-4
H O
CJ .
O M
CM M
s •<
Ed H
«
O
EC
W
P-
,.£
Ed
W
£
0
M
1^
S
^*
p
^f
CO
Pd
Cd
P-
co
2
iyi
O
^
tJ
S
g
^J
ptl
Z
H
H
^™ 4
CO
O
Cu
Ed
Q
Ed
O
Ptn
ai
O
CO
O
H
M
M
>-3
0
Z
o
0
co
o
o
-^
uiu~>""!vov'Ovor^r-~oocccTNo^cM
•-H i-H
oooooooooooooooooo
^^ ^^ C"^ C^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ f^*i
^^ c^ ^^ ^^ ^^ ^^> (^ ^5 CD ^^ CD ^D ^D ^^ ^D ^^ ^^ ^D
oooooooooooooooooo
Oooooooooooooooooo
OoO oOoCDoCDoOoOOOo^O
Oooooooooooooooooo
CM C^ CM C-J *^ CO ^^ CO *"^ f*^ f^ *^" "^ *^" *^" lO *^> VO
OOOOOOOOOOOOOOOOOO
Oooooooooooooooooo
oooooooooooooooooo
OOOOOOOOOOOOOOOOOO
OOOOOOOOOOOOOOOOOO
oooooooooooooooooo
vOd-CMOOOsO-3-CMOOOv£J
-------
CHEMES
LFATE
cn c>
2
0 ••
M CM
EH 1
< EH
<2 2
EH •<
Ed EH
2 D
Ed »J
P- i-J
fcB PH
Ed •
en c£
M CE
i-H
£ u
£ Ed
J S
PU M
H
pa O
O M
^5 ^
r^ fvtt
VJ 1*4
cn"
Ed •
oi s
D O
O •
en o
2
M II
0 EH
CM O
2
• « M
P3 X
CM M
y
Cd
t—3 •*
04 O
S W
2 o
5*5
Ed O
O
CM .
1 o
S oo
Ed ^
P- II
OS
•-< M
O
o
1— 1 Q
!<
O EH
O M
CM M
O
O
00
O
O
-a-
•^
o
o
o
o
o
vO
CO
o
o
CN]
CO
o
o
CM
o
o
CM
0
Ki O
Ed •
EH O
Cd CM
s
O
M 0
oa o
CO vO
*-H
o;
Pd
Q-
o
cn o
oooor-~.vom«*corocM
ooi^r>-i^r^vovOvovommm-*<3-
-------
CO
Ed Ed
Ed —' i—4 •—I
^oinm^cMOoomf-H^cM^
*3" CO CM '"H f*) ON fs^ vO in CO CM c_'
€MCN4CgCSCN^H^Hi-H.-H^H^H^H
CO O^ -^ CD v.O *-^ vC CN r*^ ^H \o ^•**
C!,,? O^ <^ ^^ 00 00 l^"1* f*** ^D ^O ...O L^
v.o *"^ ^^ *+ir ""^ ^3" *^ "^ "^f **^* **3* ""^
^^ 10 ^H oo 10 c**j o^ i*^1* ^^ ^^ ^j ^™^
CM CM CN1 r-* -H f-l
2
w
CO CO
S: Q
o cx
M CO
So
Ed 2
CO M
& O
CX II
H >H
D H
O M
J
CM M
W
ex
M
S o
1 S
X -H
O
§°.
M 00
H
H
CO
o
cx o
Ed O
Q •
Ed
O
CM
oi
-0 O
CO •
o
o
Cd
EH
CD
OOOOOOOOOOOOOOOOOOOOOOOOO
oooooooooooooooooo ooooooo
OOOOOOOOOOOOOOOOOOOOOOOOO
OOOOOOOOOOOOOOOOOOOOOOOOO
OOOOOOOOOOOOOOOOOOOOOOOOO
OOoOOOoOOOoOOOoOoO OOOOOOO
^-I-HOOOOOOOOOOOOOOOO OOOOOOO
CO CO O CO ^^ CO CO CO ^> CO
in f-H 00 ON CO CO CO CO CO CO
-HOO'-O!-~CO
-------
CM
I
ta
&
O
O
CJ
H
Q
O
cn
M
P-
W
Z
o
o
J
S3
cn
t«
CM
1
H
Z
O
M
H
2
H
Z
W
0
z
o
CJ
0
w
H
Pi
co
M
_}
•OJ
CJ
o
E
EH
2
M
M
hJ
<;
CJ
p^
o
.
o
\o
CM
CM
C^
.
r-.
CM
••H CM
El El
0 0
Z Z
O O
H M
H EH
pi S
CO 02
M M
0
W
EH
W
S
CO
CJ
P4
W
CO
S
O
o
M
Z
o
EH
Z
U
z
o
Q
W
H
O
a.
CM
O
CO
I
o
p.
cn
o
Qi
O
o
CJ
a
w
I
CO
M
§3
H CJ
1
g0
gg
z 3
o e2
CJ «
CJ
cn
w
EH
^
O
o
X
z
o o
M M
EH a!
CJ <
W Z
OS W
M CJ
a co
o m
z &
M CO
O
M pi
« w
< CO
W 5
CJ Z
co
o
o
co
o
o
o
CO
o
•
o
CM
co
o
o
vD
o
o
o
cn
132
-------
Ed
Z
O
i
EH
Ed
Z
W
OH
u3
Pd
H
04
a
o
z5
M
CS
CM
I
Ed
1
a
o
to
M
OH
Ed
Z
O
H
EH
.J
O
OH
EH
£>
I
O
O
M
sg
z
Ed
CJ
CO
w
•-H CM
ii
^
OH OH
O O
H M
EH EH
PQ P3
M M
J )J
CJ CJ
I
Ed
EH
<
ElH
CO
CM
EH
Z
O
OH
5J
p^
(J3
OH
Q
04
P
^
EH
co
«
CO
04
O
En
EH
-------
TABLE E-7
INPUT DATA FOR EXAMPLE PROBLEM 3
CARD IMAGES
CONTROL CARDS
1
2
3
•4
5
6
7
0
0 0
1
0 0
0
1 1
0
TITLE PEM-2 EXAMPLE 3: 1 AREA SOURCE & 3 POINT SOURCES, 6-HR AVG CONCENTRATIONS
OPTIONS :
GRID
POLLUTANTS
SCALING
LABELS S02
WIND PROFILE 15.
0 0
0.
1
0.
6
0.
2.
1.
25
0.
1.
10. 200.
25 1.5 0.015
0.2 0. 5.0
0. 0. 0.
SULFATE
1. 0.20 0.20 0.25 0.30 0.35 0.35
0.030
1.5
0.
SCENARIO CARDS
5
5
5
6
6
6
AREA SOURCE CARDS
0.75
(A BLANK CARD
POINT SOURCE CARDS
3.0 18.0
1.5 7.5
1.5 28.5
3.5
3.5
3.0
3.0
2.5
2.5
260.
260.
270.
270.
280.
280.
5.
5.
1.
1.
-3*.
200.
200.
200.
150.
150.
150.
15.75 4500. 75. 7.5
TO SIGNAL END OF AREA SOURCE INVENTORY)
100.
200.
60.
15.
10.
6.
30.
50.
10.
2.
3,
1.
0.
0,
0.
0.
0.
0.
4. 250. STACK 1
5. 200. STACK 2
2. 150. STACK 3
(A BLANK CARD TO SIGNAL END OF POINT SOURCE INVENTORY)
134
-------
TABLE E-8
OUTPUT LISTING FOR EXAMPLE PROBLEM 3
PEM-2 (VERSION 84130)
POLLUTION EPISODIC MODEL
INCLUDING
DEPOSITION, SEDIMENTATION, AND CHEMICAL TRANSFORMATION
OF POLLUTANTS
135
-------
CM
W
p-
w
o
o
o
o
cn
M
P*
Ed
2
O
M
H
I
Oi
: PEM-2 EXAMPLE 3: 1 AREA SOURCE & 3 POINT SOURCES, 6-HR AVG CONCENTRATIONS
CO
04
£
W
2
<
FX,
.J
Q
Pd
g_l
o
g
04
2
M
CO
g_l
04
8
2
• •
§
M
H
Pu
O
W
S
M
EH
Si
M
C
2
Ed
>
OF METEOROLOGICAL DATA FOR ONE HOUR
H
Cd
CO
^
CO
M
0
M
04
^
2
e
CO
ARE CALCULATED FOR EACH SCENARIO
NS CALCULATED FOR 24 SCENARIOS ARE AVERAGED
NS CALCULATED FOR A GIVEN NUMBER (2 TO 23) OF SCENARIOS ARE AVERAGED
CO O O
2 M M
O EH H
M •<*
-H CM CO
O
II
04
0
*
• •
g
M
EH
fc
O
2
O
M
H
04
M
O
Q
52
M
0 BE SPECIFIED FOR EACH SCENARIO
ECIFIED FOR EACH SCENARIO
0 BE SPECIFIED FOR THE FIRST OF FOUR SUB-SCENARIOS.
EH Q- H
en
en cn
Ed Ed Ed
Ed OP Ed
0 0 C5
orf
!S &3 ^
M CQ M
35
252
O 2 O
M M
EH 04 H
0 0 CJ
Ed EH Ed
2 O O4
M Ed M
Q cn Q
l-x
O -H 1
CM
UB-SCENARIO, WIND DIRECTION IS AUTOMATICALLY INCREASED
5 DEGREES, DEPENDING ON THE OPTION NUMBER SELECTED.
CO
04
2 °«
M O
C -H
Ed «
Cd in
0 -H
CJ «
ID O
cn co
«
S3 m
o -*
Ed O
O\
04
^D
^
O
cn
••
2
O
M
H
Pu
O
Q
Ed
Pu
en
a
2
M
CIFIED FOR EACH SCENARIO
R TO BE SPECIFIED FOR EACH SCENARIO
Ed Ed
04 CQ
cn s
Ed 2
CQ
en
O en
EH -
o
m
1—4
Ed
M O
04 CJ
O
H
.. cn
O Cd
M S3
CJ EH
< S
Pu 0
cn en
136
-------
CO
2
O
POLLUTION EPISODIC MODEL (PEM-2)
PARAMETERS: PEM-2 EXAMPLE 3: 1 AREA SOURCE & 3 POINT SOURCES, 6-HR AVG CONCENTl
ij
§
H
2
O
CJ
EH
»
(X
2
M
FTANTS: NPOL=2
POLLUTANT-1: S02 POLLUTANT-2: SULFATE
i— J
iJ
g
(X
to
O
Crf
W
O5
y
^
2
(G FACTOR: ASCALE= 1.000 ASCALE= 1.000
;s
M
^
CJ
en
to"
CJ
Pd
&
0
CO
•<
Ed
Pd
<
II
m
o
•
o
4
o
•
o
03
O
•
O
II
•<
en
H
U
M
CJ
1— 1
COEFF
2
0
M
H
<
t£
ee
M
>-j
o
o
o
.
CM
II
»-H
O
>
X-N
en
CJ
**vS
£
EH
VELOCI
2
O
M
H
M
en
O
i
M
J
H
H
W
CO
ATION OPTION: ICT=1
o
to
co
p3
H
3
CJ
M
X
W
as
CJ
CM
II
hJ
O
(X
2
AL TRANSFORMATION LOSS OF POLLUTANTS IS IGNORED
ORDER CHEMICAL TRANSFORMATION OF POLLUTANT-1 TO POLLUTANT-2 IS CONSIDERED
CJ 1
CHEMIi
FIRST
O — 1
II II
H H
CJ O
M M
ATION OR DECAY RATE: XKT= 5.000 PERCENT/HR
s
2
g
co
oi
EH
V-J
<
CJ
1— 1
£
Ed
ac
CJ
WEIGHTS OF POLLUTANT-2 (PRODUCT) TO POLLUTANT-1 (REACTANT): GAMMA= 1.500
CJ
w
pj
o
to
O
o
M
EH
•rf
2
ECTED:
fj
w
CO
en
2
o
I— i
EH
Pu
0
EH
B
CX
H
O
O
OF CONCENTRATION AND SURFACE DEPOSITION FLUX AT EACH RECEPTOR IN THE GRID
LIBRATED ONLY '
OF RECEPTORS WITH HIGHEST CONCENTRATION AND SURFACE DEPOSITION FLUX
EACH SCENARIO - PRINTED AT END OF RUN
en
CX
$
CM
||
£>-<
s
Pd
<
2
<;
CJ EH Crf
2 en o
5 M to
iJ
^H
II
-<3
s
^
137
-------
CO
as
o
M
EH
EH
23
W
I
O
CO
w
CO
CO
o
H
co
co
co
O
CO X
CO W
-.
M o
p o w
< 23 P
o o o o o o
o o o o o o
o O o m m m
CM CM CM -H -H -H
^— -
\
32
W
PJ
^J
o
aa
cj
M
P
O
H
(X
W
2
0
^^
g
O
ftj
T
vO
CO
w
pi
CO
H
2
o
P-l
CO
t 1 1 1 1 1
^0 O5 C^ ^f ^^ ^^ ^^ 0-^
<) w ^H i— i pa
t-3 EH >
u as o
M
P x-\ o vo r~» co <— i CM
W co m *^ st ON ^o in
Pj23 i-HCM-fJ-NOONCM
CO *— ' ^H
CO X
CO W
CM in r^*
EH f"^ OO ^^ c^l *^t r^* ON ^H CO
CJ^ — HCMCslCMCMCMcOCO
g
M
P S S g g
co S en 23 S 2
Pi Pi
O W
w 5
CO 23
ae s
w
H
Qi
H 0 ^
as H u
PO W W
aa P i p
< § "^^
H
^
o
M <^
P EH O
M W P
S Pi ^^
M
P
Pi
gg
CO
p ^
P ta co
M P-I as
S co C-
P
P-i CO
CO CO
p 1 1
2; u
M
O O O O O O
o o o o o o
in in •— i i— i co co
1 1
o o o o o o
o o o o o o
o o o o o o
\o NO t^ f*^ oo oo
CM CM CM CM CM CM
o o o o o o
o o o o o o
in in o o m in
CO CO CO CO CM CM
O
3
w
o
CO
2 /"-^
O O
^H FT]
EH P
omomomom
CsJ
-------
I
Cu
Ed
O
O
u
M
O
O
CO
M
PH
Ed
!Z
O
M
EH
O
iJ
O
o.
CO
2
O
t •
^
EH
Z
Ed
U
2
O
CJ
o
^
vO
CO
t:
ca
Ed
O-i
Ed
D
O
H
&
P-
a
Ed
>J
^^
Ed O
£>•! EH CO
EL2
< 2
EH 0 ^
£3 M CO
1-3 CO O
O M v_<
0- X
M
O
Ed
hJ
Ed 0
— * H CO
1
-------
ON EPISODIC MODEL (PEM-2)
M
EH
&
J
1-3
O
(X
E 3: 1 AREA SOURCE & 3 POINT SOURCES, 6-HR AVG CONCERTRATIONS
( ^
1
Ed
CM
y
Ed
Pu
• •
C/3
p^
Ed
S
<2
<
Pu
Ed
pi
S3
O
en
H
Z
M
O
(X
£_«
J— 1
o.
z
M
PJ ^V O O O
EH ...
O o o o
EH cd m o in
M P CM CM -H
Ed
KJ O O O
Ed O O O
S> *~^ O O O
cn « . •
H ~-^>* in CM
Ed
Pi
Ed O O O
H O O O
Ed *->O O O
2 2 • • •
H ^H CM
Z
M
§
C /-vO O O
O 2 O in in
co p2 ...
v^ CO >— 1 >— I
X!
•-H CM CO
jj
W W t^ W tvd
CJ PQ U O C_>
oi <; ^j S
H m
Z co en
Ed . pi
Z 0 Ed
0 H
PL, Cd
XJ 2
Ed O
CO O
Ed • «
,J o m
M <->
EL,
o n
pi in
P- CM EH
• SC
o o o
^» tl
M Ed
S S3
O
Q CM Pi
Ed « Ed
M O H
EL, Ed
M 2
u o
Ed 0 2
Pu CM Ed
en . z
o <
Ed
en
p*i
f— t
It
EH
en
Z
• •
Z
o
M
EH
PL,
0
2 EH
EC 0 0
EH Ed Ed
M EL, en
pi Eti S3
O Ed
0 EH
hJ Z O
< M Z
EC e/> en
en M M
^
s 2C 2
z sc ffi
O M M
Q as pi
P- O C2
M M »J
EH -i
Pi & O
ZEdg
'* ^ ^
£?-! *5
O • Ed
M cn p*
H 0
0, Ed Pi
o o
Ed EL,
en en
Z M P
O Pi Ed
M I en
S3 S3 Ed
O1 iJ pi
Ed PJ Ed U
O 2 ai
pa EH o >•
*H < EL, H
Ed H
Z Oi cn iJ
O EH Ed H
H 2 P^
EH P td <
< t* EC H
pi < u cn
EH O en
Ed Z Pi
Z •< 3 O
Ed H Cd EL,
en cn z
Ed
£5
j
P-
O
II
p
M
Z
r-H »•
II — i
fVt ||
Q- Q
0 M
Z M
••
P oi
Ed O
en EL,
^ Z
Cd O
cn M
M cn
», oi
Ed EX
E3 M
iJ Q
x
P
Ed Ed
> 0
M ED
H Q
O Z
Cd M
EL,
EL, ^-i
Cd O
Z
h-3 "*tj
•^ >-t
Z t3
H O
PL, CO
140
-------
CM
O
en
en —i
i El
£3
H
2
2
O
O
C5
¥
o
o
\o
CO
o
o
CO
o
o
o
CO
o
o
CM in CM O CM
~H in CM O CM
1-1 m eo O CN
o m .
O O \O st CM O
o o m m CM •—>
i-H
O O en r~~ CM —i
i—i
O O CM CTi CM CM
i-H
O O I-H O CM en
i-H i-H
O Q O CJ> CO
-------
CM O
O O
en •
tn •-<
2 f
O EH
M 2
H ,J
2 J
td O
O
u
o
en
o
o
o
O
O
en
OOOOOoOO— '
OoOOO-nOO'-l
OOOOO-- lOO— '
'HOO'— '
i— IOO--H-HO
o
o
o
o
OO
en
o
o
o
m
vC
en
w
o
en
O
en
W
0
a!
j*— i
O
en
pi
•<
o
O
cs
00
OO— 'OO^HOO—^-nOO'H
OO'~tOO1— lOO*—1*- iOO'-*
OOOoOi-iOO'-|'-H'-
2 O
O 2
M M
H O
CJ •fl-
Cd Crf
en
0
O
EH •
M v£)
cn
O
a-
EH en
P O
O H
erf
CM
-------
VVG CONCENTRATIONS
« 3 POINT SOURCES, 6-HR i
**j
w
u
»
0
CO
w
pi
OO
>J
a*
w
CM
W
Pu
»— t
0
z
0
l-l
£-4
CJ
w
CO
• •
EH
J^D
Pu
EH
O
CM
1
£
W
P-.
POLLUTANT-2: SULFATE
CO
&
a
M
H
CS
2
M
O
^
DM
W
<;
M
CO
O
HH
a!
^
w
CO
o
o
CO
o
o
CO
o
o
o
CO
o
o
f-
o
o
CM
o
o
CM
N - MICROGRAMS PER CUBIC METER
6.00 9.00 12.00 15.00 18.00
0
EH
^
pc o
EH 0
•z. •
W CO
u
52
0
o
0 0
EH 0
Oi
OS
t— 1
1
^
U
s:
^H co »"H co *~~i co ^-H ^H in P"*"* CM CM in CM P-H r*"* oo
^•4 CO ^H CD *"M CO ^-4 *^ vD 00 Cvl f^J in Cv| P~H 00 00
C CO CN O *-H CO p-^ O \O 00 *-H ^H i/^ *"™i i— t OO 00
OcsJcsJOi-Hvo
CD T^ co ^~* ^^ **^" ^^ '^ r**» m ^^ ^H \o ^^ co oo ^~
CD ^^ CO ^ ^-H ""d" ^H C*^ vO *^" CM ^^ vO ^"^ «^ f*^- ^~
O O o ^r^ *~^ ^ ^~* f**1 O O «n^* r*-* r*»- CM oo ^^ co
O O O ^^ ^^ ^ CM **JC CD O CO CO |^«* *^" vO ^^ O
O C^ O ^ ^^ "^ CO ^" CO O CM "^ O"^ ^* ^" ^^ CO
O O O ^^ CO *^ vO *™^ CO O «~< CO cM "^ CM ^^ CO
,— H i-H
CM
OOoOocooOoOotnvO^noOo
*— i i— ( ^- i— (
CO ^^ O O CO ""3" O O O ^^ CO CO CO CO CO O O
CO *— ^ (— t ^H
o o co ^^ co ^ o CD co ^^ co ^^ co o o ^^ o
i— 1 i—4 F— <
ooooooooooooooooo
ooooooooooooooooo
Omomomoinoinomoinoino
CM CM m CM O CM
^^ CM m CM O co
^H I-H m .— * o o o o
o o CJN o o o
o o o o o o
o o o o o o
o o o o o o
m co in co in co
o o> r^ vo
-------
CO Ct,
Z J
O &
M CO
EH
O
O
vO
Pi CM O
H I
Z H en
W Z en
CJ PL. O
T
vD
CO
Ed
O
CO
EH
Z
M
O
O.
en
CO
Oi
O
CO
o
o
o
o
pi -*r
S3 CM
O
sc
pi o
W O
Pu •
Pi CM
S O
o
Ed •
pi oo
D ^
CO
o
Pi O
w •
PJ m
—H
CO
pJ Pi O
g 8^
«jj pi CM
Ed M ^
CM
I I O
S • O
W to X •
00 ^
CM
in ,-H
CM
CO
^^ oo ^^ co
CM
f^l ^^ C^J l^^
CM
O eM i—' !••»
CM
C I—I 00 r-4
i-H *-*
co co en in
i—I >-H
i—I
CO f"^ ^^ f")
O C CM -tf
O O O -H
en enm»H*-ien—(i—i^a-vOi—ii—ieni—i —i in CM
•—ivOi—* i—iQOi—i oo in c^ oo •—IP-.*-i —H CM en en
.*; u-i -H i—i en -H mm 1-1 en •—i CM m -*
co CJN co vo i—H in ^f co i^ CO CM co c^ ^*
i—i en i—i \om i—i m •—• en -3-
O P^ O en oo -H en
•-t rn I-H en — i
en •— 1 -* CM — 1
en
i—i \o en
CM in CM
en en CM
r-. oo CM m CM o
c<-) _< in i—i
r-. r~- oo CM vo O
en i-i in
r^ vo vo •* CM o
en CM -^
en en CM i—i CM »d
en en •—i en «a
en ^^ en i—i en en en
i—i i—i cj^ CM m oo vo vo to co o
vo —H CM en vr CM
vo m co ^ ^" co co co
CM en in 1-1
vO vO CO CJ^ vo *^" CO CO
CM en m
CM en
CM — i vn en — i
en —i oo in O o o
es) vr vo cy^ co co co co
CM Oi
•• < o
EH CO
& O
PM • O •
EH co M O
S3 O EH
O M -^
Oi P?
CM * O O O O
i—i in en
in
o co o o
OOOOOCMOOOOOcomooOOOOOr-»OoOOO
ON O en O vO
r—i en i—*
ON CT*
o o o o o
oooooooooooenenenooooooooooc
p- f-~ r-»
ooooooooooooooooooooooooo
OOOOOOOOOOOOOOOOOOOOOOOO
omoinoinoinoinoinoinomoinoinoinomo
enenenenencMCMCMCMcMcMi—II-II-H-HI—i—IT-H
O
o
vO
O
o
o
o
144
-------
x~s
CM
1
OH
**s
|J
W
o
g
&
CJ
\-4
O
o
co
M
OH
u
z
o
H
EH
D
hJ
|J
O
PL.
CENTRATIONS
Z
O
o
o
>
<
&
0
c
M
2
z
w
o
CO
g
H:
5 ^
z
M
O
Oi
O -^
8g
^^x
X
a
Ed
EH
2
PQ
M
Z _J
o <2
M CJ
1
So
H W
IS
0 pq
i— i
CM hJ
O H
0
sr
o
o
•
00
t— t
o
m
•
•^•
o
«
o
er
CM
si-
<^
•
CM
00
CM
O
o
•
00
t-H
0
U~l
•
-
-------
CO
Z
o
M
EH
3
OS
EH
Pi
Cd
5
o
0
o
o
H
Oi
Cd
CX
0
z •• ••
H •— i CM
U 1 1
S H fc
pi z z
£ 33
SULFATE
**
CM
El
Z
<
O
•
O
«a-
o
oo
i^
•
-a-
CO
CO
o
o
•
oo
ft
cx
Ed1
o
i
a
o
CO
M
P-i
Cd
Z
O
H
O
CM
¥
\O
CO
O
CO
o
(X
CO
Cd
O
(*
O
CO
Oi
o
o
H
%
Z
Cd
U
CO
Cd
oi
C
hJ
o
0.
ss
u
•0
Cd
X
CO
o
cx
ta
o
CO
O
Cd
H
U
M
Q
Cd
iJ iJ
o o
OH (X
O O
M M
H £
22
CO PC
M M
.J H-
J
0 <
M 0
EH
HH
CO
o
cx o
f_-t f^-t
t*- ti-I
O EH
Cd S
0 PC
<: M
fe iJ
Pi 3
D U
CO Z
o
CM
ON
00
OO
•
.— t
f^
cn
CO W
Cd "-^
H>,
Z
o
O
X
z
o o
M M
EH Oi
O •<
Cd Z
o: cd
M o
p co
Q CO
z &
M CO
O
CM
O
o
oo
H
CO
Cd
BC
O
PC
M
•J
146
-------
APPENDIX F
PEM-2 FORTRAN LISTING
The PEM-2 (Version 84130) computer program was developed and tested on an
IBM computer at the Oak Ridge National Laboratory. The program was later
modified slightly to run on a UNIVAC 1100 computer at Research Triangle Park.
A listing of the UNIVAC-compatible FORTRAN program follows. The PEM-2 code is
also contained on UNAMAP Version 6 magnetic tape available through the National
Technical Information Service. The code listing printed herein should be used
as the reference.
147
-------
PEM-2.0 (DATED 86016)
AN AIR QUALITY DISPERSION MODEL
SECTION 2. NON-GUIDELINE MODELS
IN UNAMAP (VERSION 6) JULY 86.
SOURCE:
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C *** PEM-2 PROGRAM DEVELOPMENT
C
K. SHANKAR RAO
ATMOSPHERIC TURBULENCE AND DIFFUSION DIVISION
NATIONAL OCEANIC AND ATMOSPHERIC ADMINISTRATION
U.S. DEPARTMENT OF COMMERCE
P.O. BOX - E
OAK RIDGE, TENN 37831
IN
*** PEM-2 (VERSION 84130) ***
POLLUTION EPISODIC MODEL
INCLUDING
DEPOSITION, SEDIMENTATION, AND CHEMICAL TRANSFORMATION
OF POLLUTANTS
MAY 1984
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
(ATDD)
(NOAA)
PHONE:
576-1238
626-1238
UNAMAP FILE ON EPA'S UNIVAC AT RTP, NC.
PMT00010
PMT00020
PMT00030
PMT00040
PMT00050
PMT00060
PMT00070
PMT00080
PMT00090
PMT00100
PMT00110
PMT00120
PMT00130
PMT00140
PMT00150
PMT00160
PMT00170
PMT00180
PMT00190
PMT00200
PMT00210
PMT00220
PMT00230
PMT00240
PMT00250
PMT00260
PMT00270
PMT00280
PMT00290
PMT00300
PMT00310
THE POLLUTION EPISODIC MODEL (PEM) DESCRIBED BY RAO AND STEVENSPMT00320
(1982) IS AN URBAN SCALE (UP TO 50 KM DISTANCES) AIR POLLUTION PMT00330
MODEL CAPABLE OF PREDICTING SHORT-TERM (1 TO 24-HOUR) AVERAGE PMT00340
SURFACE CONCENTRATIONS AND DEPOSITION FLUXES OF TWO CHEMICALLY .PMT00350
COUPLED GASEOUS OR PARTICULATE POLLUTANTS AT UP TO A MAXIMUM OF PMT00360
2500 GROUND-LEVEL RECEPTORS LOCATED ON A 50X50 SQUARE RECEPTOR PMT00370
GRID. PREDICTIONS ARE BASED ON STEADY-STATE GAUSSIAN PLUME ASSUMP-PMT00380
TIONS, BRIGGS' PLUME RISE FORMULATIONS, AND PASQUILL-GIFFORD (PG) PMT00390
DISPERSION PARAMETERS. THE SURFACE CONCENTRATION AND DEPOSITION PMT00400
FLUX ESTIMATES OF TWO INDEPENDENT NONREACTIVE (GASEOUS OR PARTICU-PMT00410
LATE) POLLUTANTS OR ONE POLLUTANT WITH FIRST-ORDER CHEMICAL DECAY PMT00420
CAN BE OBTAINED AS SPECIAL CASES OF THE MODEL. UP TO 300 POINT PMT00430
SOURCES AND UP TO 50 AREA SOURCES MAY BE INCLUDED IN THE MODEL PMT00440
INPUTS. CALCULATIONS ARE PERFORMED FOR EACH HOUR USING THE SPECI-PMT00450
FIED METEOROLOGICAL DATA. UP TO 24 DIFFERENT SETS OF HOURLY METEO-PMT00460
ROLOGICAL DATA MAY BE SPECIFIED AS INPUTS FOR THE DETERMINATION OFPMT00470
AIR QUALITY FOR 24 DISTINCT WEATHER SCENARIOS. POLLUTANT CONCENT-PMT00480
RATIONS AND DEPOSITION FLUXES FOR A 2 TO 24 HOUR AVERAGING PERIOD PMT00490
( THIS WORK WAS DONE UNDER AN INTERAGENCY AGREEMENT
BETWEEN THE ENVIRONMENTAL PROTECTION AGENCY AND THE
NATIONAL OCEANIC AND ATMOSPHERIC ADMINISTRATION )
*** EXTENDED ABSTRACT : PEM-2 (VERSION 84130).
ARE CALCULATED BY AVERAGING THE CORRESPONDING VALUES CALCULATED
FOR EACH HOUR IN THE PERIOD.
PMT00500
PMT00510
PMT00520
PMT00530
PMT00540
PEM IS BASED ON THE TEXAS EPISODIC MODEL (TEM, VERSION 8)
DEVELOPED BY THE TEXAS AIR CONTROL BOARD (1979). TEM-8 USES THE
GAUSSIAN PLUME CONCENTRATION ALGORITHMS DEVELOPED FOR NONREACTIVE PMT00550
POLLUTANTS AND A PERFECTLY REFLECTING SURFACE. CHEMICAL AND PHYSI-PMT00560
CAL DEPLETION PROCESSES ARE THEREFORE IGNORED EXCEPT FOR AN OPTIONPMT00570
WHICH ALLOWS A SIMPLE EXPONENTIAL DECAY OF POLLUTANT WITH TRAVEL PMT00580
TIME. THIS METHOD REQUIRES AN ACCURATE ESTIMATE OF THE POLLUTANT'SPMT00590
HALF-LIFE. PMT00600
PMT00610
IN CONTRAST, PEM EXPLICITLY ACCOUNTS FOR THE DRY DEPOSITION, PMT00620
GRAVITATIONAL SETTLING, AND A FIRST-ORDER CHEMICAL TRANSFORMATION PMT00630
148
-------
C OR DECAY OF GASEOUS OR PARTICULATE POLLUTANTS (OF ANY SIZE) IN PMT00640
C THE CONCENTRATION ALGORITHMS. THESE ALGORITHMS, BASED ON EXACT PMT00650
C SOLUTIONS OF A GRADIENT-TRANSFER (K-THEORY) MODEL, WERE GIVEN BY PMT00660
C RAO (1981, 1982) AS ANALYTICAL EXTENSIONS OF THE WIDELY USED PMT00670
C GAUSSIAN PLUME DISPERSION ALGORITHMS UNDER VARIOUS ATMOSPHERIC PMT00680
C STABILITY AND MIXING CONDITIONS. THUS, PEM TREATS DEPOSITION, PMT00690
C SEDIMENTATION. AND CHEMICAL TRANSFORMATION IN A PHYSICALLY REAL- PMT00700
C ISTIC AND STRAIGHTFORWARD MANNER, AND IT IS SUBJECT TO THE SAME PMT00710
C BASIC ASSUMPTIONS AND LIMITATIONS ASSOCIATED WITH ALL GAUSSIAN PMT00720
C PLUME-TYPE MODELS. FOR FURTHER DETAILS REGARDING THE GRADIENT- PMT00730
C TRANSFER MODEL FORMULATIONS, ANALYTICAL SOLUTIONS, PARAMETERI- PMT00740
C ZATIONS, AND THE DEVELOPMENT OF THE ALGORITHMS FOR PEM, THE USER PMT00750
C SHOULD CONSULT THE REPORTS BY RAO (1981, 1982). AN EVALUATION OF PMT00760
C OF THE PEM USING THE ST.LOUIS/RAPS DATA FOR FIVE POLLUTANT SPECIESPMT00770
C CAN BE FOUND IN THE REPORT BY PENDERGRASS AND RAO (1983). PMT00780
C PMT00790
C THE PEM-2 MODEL (RAO, 1984) IS DEVELOPED FROM THE PEM (RAO AND PMT00800
C STEVENS, 1982) WITH THE FOLLOWING KEY MODIFICATIONS: PMT00810
C PMT00820
C (1) PEM-2 USES BRIGGS' URBAN DISPERSION PARAMETERS (BASED ON THE PMT00830
C ST. LOUIS DIFFUSION DATA OF MCELROY AND POOLER) FOR BOTH POINTPMT00840
C AND AREA SOURCES, WHEREAS PEM USES THE SAME DISPERSION PARAME-PMT00850
C AS THE TEM-8. PMT00860
C (2) THE NUMBER OF STABILITY CLASSES IN PEM-2 ARE REDUCED TO SIX PMT00870
C (FROM SEVEN IN THE PEM). PMT00880
C (3) FOR BUOYANCY-DOMINATED PLUMES IN UNSTABLE/NEUTRAL ATMOSPHERE, PMT00890
C BRIGGS' NEW PLUME RISE EQUATIONS AND PLUME PENETRATION (OF AN PMT00900
C ELEVATED STABLE LAYER) SCHEMES ARE INCLUDED AS OPTIONAL FEATU-PMT00910
C RES IN PEM-2. PMT00920
C (4) AN OPTION IS PROVIDED TO USE SITE-SPECIFIC VALUES FOR THE PMT00930
C EXPONENTS OF THE WIND-PROFILE POWER LAW AND ANEMOMETER HEIGHT PMT00940
C AS INPUTS TO PEM-2. PMT00950
C (5) CONCENTRATIONS FROM AREA SOURCES ARE COMPUTED BY NUMERICAL IN-PMT00960
C TEGRATION IN PEM-2, WHILE THEY ARE CALCULATED FROM CONCENTRA- PMT00970
C TION ALGORITHMS BASED ON MASS BUDGETS OF THE SPECIES IN PEM. PMT00980
C THE USER MAY SPECIFY AN EFFECTIVE HEIGHT OF EMISSIONS FOR PMT00990
C URBAN AREA SOURCES IN PEM-2, WHEREAS THESE EMISSIONS ARE PMT01000
C ASSUMED TO OCCUR ONLY AT GROUND-LEVEL IN PEM. PMT01010
C THE NUMBER OF CALCULATION GRID SQUARES USED FOR EACH AREA PMT01020
C SOURCE HAVE BEEN INCREASED TO 9 (IN PEM-2) FROM 5 IN PEM TO PMT01030
C INCREASE THE PLUME LENGTH AND IMPROVE THE MODEL PERFORMANCE. PMT01040
C .PMT01050
C BASED ON THE NUMBER OF POLLUTANTS (NPOL=1 OR 2) AND THE CHEMI- PMT01060
C CAL TRANSFORMATION/DECAY OPTION PARAMETER (ICT=0 OR 1) SPECIFIED PMT01070
C IN THE MODEL INPUT, PEM-2 PROGRAM DOES ONE OF THE FOLLOWING: PMT01080
C PMT01090
C (1) IF NPOL=1 AND ICT=0 OR 1, SURFACE CONCENTRATIONS AND DEPOSI- PMT01100
C TION FLUXES OF ONE GASEOUS OR PARTICULATE POLLUTANT. WITH THE PMT01110
C GIVEN DEPOSITION AND SETTLING VELOCITIES, VD1 AND Wl RESPECTI- PMT01120
C VELY, ARE CALCULATED. IF ICT=1, THEN CHEMICAL DECAY OF POLLU- PMT01130
C TANT IS ALSO CONSIDERED IF THE DECAY RATE XKT > 0. IS GIVEN PMT01140
C IN PERCENT PER HOUR. PMT01150
C PMT01160
C (2) IF NPOL=2 AND ICT=0, SURFACE CONCENTRATIONS AND DEPOSITION PMT01170
C FLUXES OF TWO DIFFERENT AND UNCOUPLED GASEOUS OR PARTICULATE PMT01180
C POLLUTANT SPECIES WITH THE GIVEN DEPOSITION AND SETTLING VELOC-PMT01190
C ITIES VD1 AND Wl (FOR SPECIES-1) AND VD2 AND W2 (FOR SPECIES~2)PMT01200
C RESPECTIVELY, ARE CALCULATED. EMISSION RATES FOR BOTH SPECIES PMT01210
C MAY BE DIFFERENT. CHEMICAL DECAY IS NOT CONSIDERED FOR EITHER PMT01220
C SPECIES EVEN IF A VALUE OF XKT > 0. IS SPECIFIED. PMT01230
C PMT01240
C (3) IF NPOL=2 AND ICT=1, THE TWO GASEOUS OR PARTICULATE POLLUTANT PMT01250
C SPECIES ARE COUPLED THROUGH A FIRST-ORDER CHEMICAL TRANSFORMA- PMT01260
C TION. THE SURFACE CONCENTRATIONS AND DEPOSITION FLUXES OF BOTHPMT01270
C THE PRIMARY POLLUTANT ?SPECIES-1 OR REACTANT) AS WELL AS THE PMT01280
C SECONDARY POLLUTANT (SPECIES-2 OR REACTION PRODUCT) ARE CALCU- PMT01290
C . LATED. THE CHEMICAL TRANSFORMATION RATE (XKT > 0._) SHOULD BE PMT01300
C GIVEN. BOTH SPECIES MAY BE GIVEN NON-EQUAL DEPOSITION AND SET-PMT01310
C TLING VELOCITIES. A NON-ZERO DIRECT EMISSION RATE FOR THE PMT01320
C SECONDARY POLLUTANT FROM THE POINT AND/OR AREA SOURCES MAY PMT01330
149
-------
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
c
c
c
c
c
c
c
c
c
c
c
c
c
c
ALSO BE SPECIFIED AS INPUT FOR THIS CASE.
FOR FURTHER DETAILS REGARDING THE MODIFICATION OF THE PEM TO
DEVELOP PEM-2, THE USE OF THE PEM-2 AND ITS I/O OPTIONS. INPUT
PARAMETERS AND UNITS, AND EXAMPLE PROBLEMS, THE USER SHOULD
CONSULT THE PEM-2 USER'S GUIDE BY RAO (1984).
(1)
(2)
(3)
(4)
PMT01340
PMT01350
PMT01360
PMT01370
PMT01380
PMT01390
PMT01400
PMT01410
PMT01420
PMT01430
PMT01440
PMT01450
PMT01460
PMT01470
PMT01480
PMT01490
PMT01500
PMT01510
PMT01520
RAO, K. S., 1981: ANALYTICAL SOLUTIONS OF A GRADIENT-TRANSFERPMT01530
MODEL FOR PLUME DEPOSITION AND SEDIMENTATION. PMT01540
EPA-600/3-82-079, U.S.E.P.A., RESEARCH TRIANGLE PARK, NC;
NOAA TECH. MEMO. ERL ARL-109, NOAA-ATDL, OAK RIDGE, TN 37831
75 PP. ATDL CONTRIBUTION FILE NO. 81/14.
*** REFERENCES ***
STAFF OF THE TEXAS AIR CONTROL BOARD, 1979: USER'S GUIDE :
TEXAS EPISODIC MODEL. TEXAS AIR CONTROL BOARD, PERMITS
SECTION, AUSTIN, TEXAS 78723, 215 PP.
PENDERGRASS, W. R., AND K. S. RAO, 1983: EVALUATION OF THE
POLLUTION EPISODIC MODEL USING THE RAPS DATA.
EPA-600/3-84-087, U.S.E.P.A., RESEARCH TRIANGLE PARK, NC:
NOAA TECH. MEMO. ERL ARL-128, NOAA-ATDL, OAK RIDGE, TN 37831,
47 PP. ATDL CONTRIBUTION FILE 83/18.
RAO, K. S., 1982: PLUME CONCENTRATION ALGORITHMS WITH
DEPOSITION, SEDIMENTATION, AND CHEMICAL TRANSFORMATION.
EPA-600/3-84-042, U.S.E.P.A., RESEARCH TRIANGLE PARK, NC;
NOAA TECH. MEMO. ERL ARL-124, NOAA-ATDL, OAK RIDGE, TN 37831,
87 PP. ATDL CONTRIBUTION FILE NO. 82/27.
(5) RAO, K. S.. AND M. M. STEVENS, 1982: POLLUTION EPISODIC
MODEL USER'S GUIDE.
EPA-600/8-84-008, U.S.E.P.A., RESEARCH TRIANGLE PARK, NC;
NOAA TECH. MEMO. ERL ARL-125, NOAA-ATDL, OAK RIDGE, TN 37831,
186 PP. ATDL CONTRIBUTION FILE NO. 82/28.
(6) RAO, K. S.. 1984: PEM-2 :
(VERSION 2) USER'S GUIDE.
EPA- , U.S.E.P.
NOAA TECH. MEMO. ERL ARL-
ATDL CONTRIBUTION FILE NO.
POLLUTION EPISODIC MODEL
A., RESEARCH TRIANGLE PARK, NC:
, NOAA-ATDL, OAK RIDGE, TN 37831,
QUESTIONS OR COMMENTS MAY BE REFERRED TO:
JAMES M. GODOWITCH
ATMOSOSPHERIC MODELING BRANCH - M.D.
U.S. ENVIRONMENTAL PROTECTION AGENCY
RESEARCH TRIANGLE PARK, NC 27711
80
PHONE:
541-4802
629-4802
*** PEM-2 (VERSION 84130) : FORTRAN LISTING.
*** COMMON BLOCKS, DIMENSIONS, AND DATA STATEMENTS.
CONWON/PEMCOM/CONC(50.50,2),SDF(50,50,2),TT(20),
1 XP(300).YP(300T,EP(300,2),HP(300),DP(300),VP(360),TP(300).
2 XA(50),YA(50),EA(50.2),SIZE(50),
3 WD(24),WS(24),TA(24),HMIX(24),DTDZI(24),
4 AZ(6),BZ(6),CZ(6),P(6),SCLAB(6),DTDZ(2),SECTAN(16),
5 XSWC,YSWC,GRID,LX,LY,A(2),B(2),POLNAM(3,2),CALNAM(7,2),
PMT01550
PMT01560
PMT01570
PMT01580
PMT01590
PMT01600
PMT01610
PMT01620
PMT01630
PMT01640
PMT01650
PMT01660
PMT01670
PMT01680
PMT01690
PMT01700
PMT01710
PMT01720
PMT01730
PMT01740
PMT01750
PMT01760
PMT01770
PMT01780
PMT01790
PMT01800
PMT01810
PMT01820
PMT01830
PMT01840
PMT01850
PMT01860
PMT01870
PMT01880
PMT01890
PMT01900
PMT01910
PMT01920
150
-------
C
C
C
C
C
6 ITA,IRD,IWR,IDSK,D80,D47,D8047,D1ST,DELTA,HPRIME,
7 ESH(2),PEAK,IBUOY,IRISE,IDWN,EFF,XS,UINV,WVEC,
8 NAS.NPS,INDEX,IGRID,lAV.ISCEN.IWDOPT,IWD,ISC,IPS,
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NLIST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
COMMON/PARM1/NPOL,VD1,Wl,VD2,W2
COMMON/PARM1A/ICT,TAUC,GAMMA
COMMON/PARM2/ISPEC,UTAUC,Q2Q1,XCT,EXCT
COMMON/PARM2A/HAS,KSC,AA,BA,CA
COMMON/PARM3/HC.VDC1,WC1,VDC2,WC2
COMMON/PARM4/V11,V21,V12,V22,V13
COMMON/PARM5/D11,D21,D12,D22,D31,D32,D33,D6
COMMON/PARM6/R11,R21,R12,R22,R13,R23,R31,R41,R32,R42
COMMON/PARM7/QZC1,QZC2,HGT
COMMON/PARM7A/HA,PI(6)
COMMON/BLOCK1/PI,SQPI,SQRT2,A1B,A1C
COMMON/BLOCK2/AI,BI,EPSABS,EPSREL,LW,NIW
COMMON/EXPCHK/EXPMAX,EXPMIN.ETAMAX
COMMON/WND/HMIN,HMAX,UMIN,IUFLG
EXTERNAL FUNS,FUN4,FUN5
HEAL*8 FUNS,FUN4,FUN5,X1A,X2A
REAL*8 AI.BI,EPSABS,EPSREL,RESULT
DIMENSION IW(102)
DIMENSION PRL(2,2),DWL(4),ANGLIM(6)
DIMENSION ITABLE(9,10).EPSLIM(10l,AY(6)
DIMENSION XA1(9),XA2(9),RCA1(9).RCA2(9),AUX(25)
DIMENSION RCA2CH(9),RCA2CT(9,50),QA2QA1(50)
DATA PRL/4HMOME,4HNTUM,4HBUOY,4HANCY/
DATA DWL/4H ,4H .4HDOWN.4HWASH/
DATA EPSLIM/.12427,.16511,.24504,.35884,.46373,
1 .55868' 64350,.69482,.71890,.78540/
DATA ITABLE/0,0,0,0,0,0,0,0,0, 0,0,0,0,1,1,1,1,1,
1 0,0,0,1,1,1,1,1,2, 0,0,1,1,1,2,2,2,2,
9 0 nil 9 9 *3 *? 1 0 I 1 9 9 ? ? 4 4.
£• U,U,X,J.,^,^,O,O,*3, UjX.jLj^j^jOjOjH,^,
3 0,1 1 2 3,3 4 5 5, 0,12,2,3 4 5,6,6
4 0,1,2,3,3.4,5.6.7, 0,1.2.3,4,5.6.7.8/
DATA ANGLIM/0.750492,0.750492,0.575959,0.436332,
1 0.314159.0.314159/
DATA AY/.32,.32,.22,.16,.11,.ll/
CALL WSTCLK
*** DEFINE PROGRAM CONSTANTS.
PI=3.1415927
PI2=PI/2.
SQPI=SQRT(PI)
SQRT2=SQRT(2.)
A1B=1000./(SQRT2*SQPI)
A1C=2.*SQPI
A1D=SQRT2/SQPI
AI=0.
BI=1.
EPSABS=1.0E-3
EPSREL=1.0E-3
LW=800
NIW=102
C FOR IBM-3033
C EXPMAX=174.
C FOR UNIVAC-1100
EXPMAX=87.
EXPMIN=50.
ETAMAX=SQRT(EXPMAX)
C
WRITE(IWR,5430)
5430 FORMAT ('1',21X,'PEM-2.0
PMT01930
PMT01940
PMT01950
PMT01960
PMT01970
PMT01980
PMT01990
PMT02000
PMT02010
PMT02020
PMT02030
PMT02040
PMT02050
PMT02060
PMT02070
PMT02080
PMT02090
PMT02100
PMT02110
PMT02111
PMT02120
PMT02130
PMT02140
PMT02150
PMT02160
PMT02170
PMT02180
PMT02190
PMT02200
PMT02210
PMT02220
PMT02230
PMT02240
PMT02250
PMT02260
PMT02270
PMT02280
PMT02290
PMT02300
PMT02310
PMT02320
PMT02330
PMT02340
PMT02350
PMT02360
PMT02370
PMT02380
PMT02390
PMT02400
PMT02410
PMT02420
PMT02430
PMT02440
PMT02450
PMT02460
PMT02470
PMT02480
PMT02490
PMT02500
PMT02510
PMT02520
PMT02530
PMT02540
PMT02550
PMT02560
PMT02570
PMT02580
(DATED 86016)',/,22X,
151
-------
1 'AN AIR QUALITY DISPERSION MODEL IN',/,22X,'SECTION 2.
2 'NON-GUIDELINE MODELS',/J22X, ~ '
3 'JULY 86.',/,22X,'SOURCE:
4 'UNIVAC AT RTF, NC.')
MODEL IN',/,22X,'SECTION 2
2X,'IN UNAMAP (VERSION 6) '
UNAMAP FILE ON EPA"S ',
WRITE (IWR,5432)
5432 FORMAT (///////45X,'PEM-2 (VERSION
1 45X,'POLLUTION EPISODIC MODEL'/////
2 52X,'INCLUDING'//
84130)'/////
C
C
C
C
C
C
C
C
3 SOX,'DEPOSITION, SEDIMENTATION, AND CHEMICAL TRANSFORMATION'//
4 SOX,'OF POLLUTANTS'/)
INDEX=0
CALL MODEL INPUT ROUTINE TO READ ALL CONTROL PARAMETERS, GRID
INFORMATION, METEOROLOGICAL AND EMISSION DATA, AND POLLUTANT
DEPOSITION AND TRANSFORMATION PARAMETERS.
************
CALL INMOD
************
VD136=VD1*36.
VD236=VD2*36.
C
C
C *** DETERMINE VALUE OF PARAMETER ISPEC.
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
ISPEC IS AN INTERNAL ROUTING PARAMETER USED IN PEM-2
TO DETERMINE THE APPROPRIATE CONCENTRATION ALGORITHMS
TO BE USED FOR A GIVEN PROBLEM.
VALUE OF ISPEC IS BASED ON NUMBER OF POLLUTANTS,
AND CHEMICAL TRANSFORMATION OPTION PARAMETER.
IF(NPOL.EQ.2) GO TO 41
ONLY ONE POLLUTANT SPECIES. FIRST-ORDER CHEMICAL DECAY CAN BE
CONSIDERED BY SPECIFYING ICT = 1 AND XKT > 0.
ISPEC=1
GO TO 43
TWO POLLUTANT SPECIES.
41 IF(ICT.EQ.l) GO TO 42
NO CHEMICAL COUPLING. THE TWO SPECIES ARE INDEPENDENT
OF EACH OTHER. CHEMICAL DECAY IS NOT CONSIDERED FOR
EITHER SPECIES.
ISPEC=2
GO TO 43
CHEMICAL COUPLING EXISTS BETWEEN SPECIES-1 (REACTANT)
AND SPECIES-2 (PRODUCT). FIRST-ORDER TRANSFORMATION.
42 ISPEC=3
43 CONTINUE
*** DEFINE TIME-AVERAGING MULTIPLIER CONSTANTS.
IF(NTOPT.EQ.l)
IFfNTOPT.EQ.2
IF(NTOPT.EQ.3J
INDEX=1
STCONV = 1.
STCONV= 0.04166667
STCONV= 1.0/FLOAT(NSCEN)
C
C CALL INPUT ROUTINE TO BRING IN METEOROLOGICAL DATA FOR ONE SCENARIO
C (NUMBER OF SCENARIO = ISCEN).
C
C ************
100 CALL INMOD
C ************
C
C CALCULATE WIND VECTOR (WVEC) FOR SCENARIO. IFLAG IS USED BELOW
PMT02590
PMT02600
PMT02610
PMT02620
PMT02630
PMT02640
PMT02650
PMT02660
PMT02670
PMT02680
PMT02690
PMT02700
PMT02710
PMT02720
PMT02730
PMT02740
PMT02750
PMT02760
PMT02770
PMT02780
PMT02790
PMT02800
PMT02810
PMT02820
PMT02830
PMT02840
PMT02850
PMT02860
PMT02870
PMT02880
PMT02890
PMT02900
PMT02910
PMT02920
PMT02930
PMT02940
.PMT02950
PMT02960
PMT02970
PMT02980
PMT02990
PMT03000
PMT03010
PMT03020
PMT03030
PMT03040
PMT03050
PMT03060
PMT03070
PMT03080
PMT03090
PMT03100
PMT03110
PMT03120
PMT03130
PMT03140
PMT03150
PMT03160
PMT03170
PMT03180
PMT03190
PMT03200
PMT03210
PMT03220
PMT03230
152
-------
C (STMT. 275) TO DETERMINE METHOD OF RESTRICTING THE AREA OF THE
C RECEPTOR GRID AFFECTED BY EACH SOURCE.
C
175 IF(NWDOPT.EQ.l) GO TO 200
DO 180 IWD=1,16
DETA=ABS(WD(ISCEN)-SECTAN(IWD))
IF(DETA.LE.0.19634954) GO TO 205
180 CONTINUE
GO TO 205
200 WD(ISCEN)=SECTAN(IWD)
205 IF(IWD.LT.8.0R.IWD.GT.10) GO TO 210
IFLAG=1
GO TO 241
210 IF(IWD.NE.ll) GO TO 215
IFLAG=2
GO TO 241
215 IF(IWD.LT.12.0R.IWD.GT.14) GO TO 220
IFLAG=3
GO TO 241
220 IF(IWD.NE.IS) GO TO 225
IFLAG=4
GO TO 241
225 IF(IWD.LT.16.AND.IWD.GT.2) GO TO 230
IFLAG=5
GO TO 241
230 IF(IWD.NE.3) GO TO 235
IFLAG=6
GO TO 241
235 IF(IWD.LT.4.0R.IWD.GT.6) GO TO 240
IFLAG=7
GO TO 241
240 IFLAG=8
241 WVEC= WD(ISCEN) + 3.14159265
IF(WVEC.GT.6.2831853) WVEC=WVEC - 6.2831853
WDV=4.712388981-WD(ISCEN)
IF(WDV.LT.O.)WDV=WDV+6.283185307
WDPANG=WDV+ANGLIM(ISC)
WDMANG=WDV-ANGLIM(ISC)
C
AA=AZ(ISC)
BA=BZ(ISC)
CA=CZ(ISC)
KSC=ISC
C
C
C
C
C
C
C
C
C
PARAMETERS AUTOMATICALLY.
C
C
C
CALL AUTGRD TO CALCULATE RECEPTOR GRID
************
IF(IGRID.EQ.l) CALL AUTGRD
************
*** INITIALIZATION.
INITIALIZE CONCENTRATION AND SURFACE DEPOSITION FLUX ARRAYS
IF(NTOPT.GT.LAND.ISCEN.GT.l) GO TO 4
DO 2 1=1,LX
DO 2 J=1,LY
CONC(I,J,1)=0.
SDF(I,J,1)=0.
IF(ISPEC.EQ.l.AND.NCSOPT.EQ.O) GO TO 2
CONC(I,J,2)=0.
SDF(I.J,2)=0.
2 CONTINUE
4 VGRID= l./GRID
GRIDSQ= GRID*GRID
ELX= LX
ELY= LY
XB1= XSWC + 0.5*GRID
PMT03240
PMT03250
PMT03260
PMT03270
PMT03280
PMT03290
PMT03300
PMT03310
PMT03320
PMT03330
PMT03340
PMT03350
PMT03360
PMT03370
PMT03380
PMT03390
PMT03400
PMT03410
PMT03420
PMT03430
PMT03440
PMT03450
PMT03460
PMT03470
PMT03480
PMT03490
PMT03500
PMT03510
PMT03520
PMT03530
PMT03540
PMT03550
PMT03560
PMT03570
PMT03580
PMT03590
PMT03600
PMT03610
PMT03620
PMT03630
PMT03640
PMT03650
PMT03660
PMT03670
PMT03680
PMT03690
PMT03700
PMT03710
PMT03720
PMT03730
PMT03740
PMT03750
PMT03760
PMT03770
PMT03780
PMT03790
PMT03800
PMT03810
PMT03820
PMT03830
PMT03840
PMT03850
PMT03860
PMT03870
PMT03880
PMT03890
PMT03900
PMT03910
PMT03920
PMT03930
153
-------
c
c
c***
c
c
c
c
c
c
c
c
XB2= XSWC
YB1= YSWC
YB2= YSWC
(ELX-0.5)*GRID
0.5*GRID
(ELY-0.5)*GRID
AREA SOURCE CALCULATIONS ***
IF NO AREA SOURCES, SKIP AREA SOURCE CALCULATIONS.
IF(NAS.LT.l) GO TO 245
IWV HELPS DETERMINE THE PATTERN OF GRID SQUARES AFFECTED BY EACH
AREA SOURCE. PATTERN DEPENDS ONLY ON WIND DIRECTION.
EPS IS THE ANGLE BETWEEN THE WIND VECTOR AND THE NEAREST
COORDINATE AXIS.
IWV= 1 + WVEC/0.78540
GO TO (2411,2412,2413,2414,2415,2416,2417,2418),IWV
2411 ITABX=1
ISIGNX=1
ISIGNY=1
EPS= WVEC
GO TO 2419
2412 ITABX=0
ISIGNX=1
ISIGNY=1
EPS= 1.5708 - WVEC
GO TO 2419
2413 ITABX=0
ISIGNX=1
ISIGNY=-1
EPS= WVEC - 1.57080
GO TO 2419
2414 ITABX=1
ISIGNX=1
ISIGNY=-1
EPS= 3.1416 - WVEC
GO TO 2419
2415 ITABX=1
ISIGNX=-1
ISIGNY=-1
EPS= WVEC - 3.1416
GO TO 2419
2416 ITABX=0
ISIGNX=-1
ISIGNY=-1
EPS= 4.7124 - WVEC
GO TO 2419
2417 ITABX=0
ISIGNX=-1
ISIGNY=1
EPS= WVEC - 4.7124
GO TO 2419
2418 ITABX=1
ISIGNX=-1
ISIGNY=1
EPS= 6.2832 - WVEC
2419 IF(ITABX.EQ.O) GO TO 2420
ITABY=0
INCRX=0
INCRY=1
GO TO 2421
2420 ITABY=1
INCRX=1
INCRY=0
2421 DO 2422 L=l,10
IF(EPS.GT.EPSLIM(L)) GO TO 2422
IEPS=L
GO TO 2423
2422 CONTINUE
IEPS=10
PMT03940
PMT03950
PMT03960
PMT03970
PMT03980
PMT03990
PMT04000
PMT04010
PMT04020
PMT04030
PMT04040
PMT04050
PMT04060
PMT04070
PMT04080
PMT04090
PMT04100
PMT04110
PMT04120
PMT04130
PMT04140
PMT04150
PMT04160
PMT04170
PMT04180
PMT04190
PMT04200
PMT04210
PMT04220
PMT04230
PMT04240
PMT04250
PMT04260
PMT04270
PMT04280
PMT04290
PMT04300
PMT04310
PMT04320
PMT04330
PMT04340
PMT04350
PMT04360
PMT04370
PMT04380
PMT04390
PMT04400
PMT04410
PMT04420
PMT04430
PMT04440
PMT04450
PMT04460
PMT04470
PMT04480
PMT04490
PMT04500
PMT04510
PMT04520
PMT04530
PMT04540
PMT04550
PMT04560
PMT04570
PMT04580
PMT04590
PMT04600
PMT04610
PMT04620
PMT04630
154
-------
2423 DXA=1000.*GRID/COS(EPS)
IF(NWPOPT.EQ.l) THEN
: OPTIONAL WIND PROFILE EXPONENTS USED
CALL WIND(WS(ISCEN),P1(ISC),HAS,UPL)
ELSE
: DEFAULT URBAN WIND PROFILE EXPONENTS USED
CALL WIND(WS(ISCEN),P(ISC),HAS,UPL)
END IF
UINV=1./UPL
UPL=1./UINV
UINV1=UINV/100.
DEFINE NONDIMENSIONAL DEPOSITION AND SEDIMENTATION PARAMETERS.
ISPEC = 1 OR 2 OR 3
VDC1=VD1*UINV1
WC1=W1*UINV1
V11=VDC1-0.5*WC1
V21=VDC1-WC1
IF(ISPEC.EQ.l) GO TO 46
ISPEC = 2 OR 3
VDC2=VD2*UINV1
WC2=W2*UINV1
V12=VDC2-0.5*WC2
V22=VDC2-WC2
IF(ISPEC.EQ.2) GO TO 47
ISPEC = 3
V13=Vll-0.5*(WC1-WC2)
ISPEC = 1 OR 3
46 UTAUC=TAUC*UPL
47 CONTINUE
CALCULATE RELATIVE CONCENTRATIONS AT A RECEPTOR LOCATED AT THE
CENTER OF THE CALCULATION GRID SQUARE CONTAINING THE AREA SOURCE
EMISSIONS, AND AT THE CENTER OF EACH OF THE EIGHT GRID SQUARES
IMMEDIATELY DOWNWIND OF THE SOURCE.
NDIM=15
EPSAXI=.01
XA1(1)=1.0
XA2(1;=0.5*DXA
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
START LOOP ON NINE CALCULATION GRID SQUARES WITH RECEPTORS
DO 111 1=1,9
X1A=XA1(I)
X2A=XA2(I)
SPECIES-1 CONCENTRATION (ISPEC = 1 OR 2 OR 3)
COMPUTE INTEGRAL F3(X1A,X2A); FUNS IS THE EXTERNALLY
DEFINED INTEGRAND FUNCTION.
************
CALL XINTEG(X1A,X2A,EPSAXI,NDIM,FUNS,RESULT,IER1.AUX)
************
RCA1(I)=A1D*RESULT
IF(ISPEC.EQ.l) GO TO 108
SPECIES-2 CONCENTRATION
ISPEC=2 OR ISPEC=3 (DIRECT EMISSION CONTRIBUTION)
COMPUTE INTEGRAL F5(X1A,X2A); FUN5 IS THE EXTERNALLY
DEFINED INTEGRAND FUNCTION.
************
CALL XINTEG(X1A,X2A,EPSAXI,NDIM,FUN5,RESULT,IER2.AUX)
************
RCA2(I)=A1D*RESULT
IF(ISPEC.EQ.2) GO TO 108
PMT04640
PMT04650
PMT04660
PMT04670
PMT04680
PMT04690
PMT04700
PMT04710
PMT04720
PMT04730
PMT04740
PMT04750
PMT04760
PMT04770
PMT04780
PMT04790
PMT04800
PMT04810
PMT04820
PMT04830
PMT04840
PMT04850
PMT04860
PMT04870
PMT04880
PMT04890
PMT04900
PMT04910
PMT04920
PMT04930
PMT04940
PMT04950
PMT04960
PMT04970
PMT04980
PMT04990
PMT05000
PMT05010
PMT05020
PMT05030
PMT05040
.PMT05050
PMT05060
PMT05070
PMT05080
PMT05090
PMT05100
PMT05110
PMT05120
PMT05130
PMT05140
PMT05150
PMT05160
PMT05170
PMT05180
PMT05190
PMT05200
PMT05210
PMT05220
PMT05230
PMT05240
PMT05250
PMT05260
PMT05270
PMT05280
PMT05290
PMT05300
PMT05310
PMT05320
PMT05330
155
-------
c
C SPECIES-2 CONCENTRATION
C ISPEC=3 (CHEMICAL TRANSFORMATION CONTRIBUTION)
C COMPUTE INTEGRAL F4(X1A,X2A); FUN4 IS THE EXTERNALLY
C DEFINED INTEGRAND FUNCTION.
C ************
CALL XINTEG(X1A,X2A,EPSAXI,NDIM,FUN4,RESULT,IER3,AUX)
C ************
RCA2CH(I)=A1D*GAMMA*RESULT
C
108 IF(I.EQ.9) GO TO 111
XA1(I+1)=XA2(I)
XA2(I+1)=XA1(I+1)+DXA
111 CONTINUE
C END LOOP ON 1=1,9 CALCULATION GRID SQUARES.
C
IF(ISPEC.NE.3) GO TO 114
C START LOOP ON ALL AREA SOURCES IF ISPEC=3
DO 114 K=1,NAS
IF(EA(K,l).LT.l.E-6) EA(K,l)=l.E-6
QA2QAl(k)=EA(K,2)/EA(K,l)
DO 113 1=1.9
RCA2CT(I,K)=QA2QA1(K)*RCA2(I) + RCA2CH(I)
113 CONTINUE
114 CONTINUE
END LOOP ON K=1,NAS AREA SOURCES IF ISPEC = 3
LOOP THROUGH ALL AREA SOURCES. EMISSIONS FROM EACH AREA SOURCE
ARE APPORTIONED AMONG THE RECEPTOR GRID SQUARES WHOLLY OR
PARTIALLY COVERED BY THE SOURCE. EACH AFFECTED RECEPTOR GRID
SQUARE IS TREATED AS A SOURCE.
START LOOP ON K=1,NAS AREA SOURCES.
DO 2429 K=1,NAS
AREA= SIZE(K)*SIZE(K)
AX1= XA(K)
AX2= AX1 + SIZE(K)
NX1= (AX1-XSWC)*VGRID + 9.
NX2= (AX2-XSWC)*VGRID + 9.
IF(NXl.GT.LX+16.0R.NX2.LT.l) GO TO 2429
IF(NXl.GE.l) GO TO 32
NX1= 1
AX1= XSWC - 8.*GRID
32 IF?NX2.LE.LX+16) GO TO 34
NX2= LX+16
AX2= XSWC + (ELX + 8.)*GRID
34 Xl= XSWC + (FLOAT(NX1)-9.)*GRID
X2= XSWC + (FLOAT(NX2)-8.)*GRID
AY1= YA(K)
AY2= AY1 + SIZE(K)
NY1= (AY1-YSWC)*VGRID + 9.
NY2= (AY2-YSWC)*VGRID + 9.
IF(NYl.GT.LY+16.0R.NY2.LT.l) GO TO 2429
IF(NYl.GE.l) GO TO 36
NY1= 1
AY1= YSWC - 8.*GRID
IF(NY2.LE.LY+16) GO TO 38
NY2= LY+16
AY2= YSWC + (ELY + 8.)*GRID
Yl= YSWC + (FLOAT(NY1)-9.)*GRID
Y2= YSWC + (FLOAT(NY2)-8.)*GRID
START LOOP ON IX=NX1,NX2 COLUMNS OF THE RECEPTOR GRID.
DO 2428 IX=NX1,NX2
IF(NX1.NE.NX2) GO TO 10
DXQ= AX2-AX1
GO TO 13
IF(IX.NE.NXl) GO TO 11
DXQ= GRID+X1-AX1
36
38
C
C
10
PMT05340
PMT05350
PMT05360
PMT05370
PMT05380
PMT05390
PMT05400
PMT05410
PMT05420
PMT05430
PMT05440
PMT05450
PMT05460
PMT05470
PMT05480
PMT05490
PMT05500
PMT05510
PMT05520
PMT05530
PMT05540
PMT05550
PMT05560
PMT05570
PMT05580
PMT05590
PMT05600
PMT05610
PMT05620
PMT05630
PMT05640
PMT05650
PMT05660
PMT05670
PMT05680
PMT05690
PMT05700
PMT05710
PMT05720
PMT05730
PMT05740
PMT05750
PMT05760
PMT05770
PMT05780
PMT05790
PMT05800
PMT05810
PMT05820
PMT05830
PMT05840
PMT05850
PMT05860
PMT05870
PMT05880
PMT05890
PMT05900
PMT05910
PMT05920
PMT05930
PMT05940
PMT05950
PMT05960
PMT05970
PMT05980
PMT05990
PMT06000
PMT06010
PMT06020
PMT06030
156
-------
11
12
C
C
13
20
21
22
23
C
C
C
C
C
C
C
C
C
C
C
C
C
C
GO TO 13
IF(IX.NE.NX2) GO TO 12
DXQ= GRID+AX2-X2
GO TO 13
DXQ=GRID
START LOOP ON JY=NY1,NY2 ROWS OF THE RECEPTOR GRID.
DO 2427 JY=NY1,NY2
IF(NY1.NE.NY2) GO TO 20
DY= AY2-AY1
GO TO 23
IF(JY.NE.NYl) GO TO 21
DY= GRID+Y1-AY1
GO TO 23
IF(JY.NE.NY2) GO TO 22
DY= GRID+AY2-Y2
GO TO 23
DY=GRID
SPLIT= DXQ*DY/(AREA*GRIDSQ)
LOOP FOR THE NINE RECEPTORS AFFECTED BY EACH RECEPTOR GRID SQUARE
CONTAINING EMISSIONS. THE RECEPTORS IN THE EIGHT DOWNWIND SQUARES
AND IN THE SOURCE SQUARE ITSELF ARE AFFECTED.
DO 2426 L=l,9
NX= IX + ISIGNX*(ITABLE(L,IEPS)*ITABX
IF(NX.LT.l.OR.NX.GT.LX) GO TO 2426
NY= JY + ISIGNY*(ITABLE(L,IEPS)*ITABY
IF(NY.LT.l.OR.NY.GT.LY) GO TO 2426
(L-1)*INCRX) - 8
(L-1)*INCRY) - 8
CALCULATE GROUND-LEVEL CONCENTRATIONS CONG (MICROGRAMS PER CUBIC
METER) AND SURFACE DEPOSITION FLUXES SDF (MICROGRAMS PER SQUARE
METER PER HOUR) OF POLLUTANTS AT RECEPTOR IN COLUMN NX, ROW NY
OF THE RECEPTOR GRID DUE TO AREA SOURCE K.
ISPEC = 1 OR 2 OR 3
CINC1=RCA1(L)*EA(K,1)*SPLIT*STCONV*UINV
CONG(NX,NY,1)=CONC(NX,NY.1)+CINC1
SDF(NX,NY,l)=SDF(NX.NY,li+VD136*CINCl
IF(ISPEC.EQ.l) GO T6 2426
IF(ISPEC.EQ.3) GO TO 2425
ISPEC = 2
CINC2=RCA2(L)*EA(K,2)*SPLIT*STCONV*UINV
CONG(NX,NY.2)=CONC(NX,NY.2)+CINC2
SDF(NX,NY,2)=SDF(NX,NY,2)+VD236*CINC2
GO TO 2426
ISPEC = 3
2425 CINC2=RCA2CT(L,K)*EA(K,1)*SPLIT*STCONV*UINV
CONC(NX.NY,2)=CONC(NX,NY.2)+CINC2
SDF(NX,NY,2)=SDF(NX,NY,2)+VD236*CINC2
C
2426
C
C
2427
C
C
2428
C
C
2429
C
C
C
C
C ***
C
C
CONTINUE
END LOOP
CONTINUE
END LOOP
CONTINUE
END LOOP
CONTINUE
END LOOP
ON
ON
ON
ON
L=l,9 CALCULATION GRID SQUARES WITH RECEPTORS.
JY=NY1,NY2 ROWS OF THE RECEPTOR GRID.
IX=NX1,NX2 COLUMNS OF THE RECEPTOR GRID.
K=1,NAS AREA SOURCES.
POINT SOURCES.
PMT06040
PMT06050
PMT06060
PMT06070
PMT06080
PMT06090
PMT06100
PMT06110
PMT06120
PMT06130
PMT06140
PMT06150
PMT06160
PMT06170
PMT06180
PMT06190
PMT06200
PMT06210
PMT06220
PMT06230
PMT06240
PMT06250
PMT06260
PMT06270
PMT06280
PMT06290
PMT06300
PMT06310
PMT06320
PMT06330
PMT06340
PMT06350
PMT06360
PMT06370
PMT06380
PMT06390
PMT06400
PMT06410
PMT06420
PMT06430
PMT06440
PMT06450
PMT06460
PMT06470
PMT06480
PMT06490
PMT06500
PMT06510
PMT06520
PMT06530
PMT06540
PMT06550
PMT06560
PMT06570
PMT06580
PMT06590
PMT06600
PMT06610
PMT06620
PMT06630
PMT06640
PMT06650
PMT06660
PMT06670
PMT06680
PMT06690
PMT06700
PMT06710
PMT06720
PMT06730
157
-------
C IF NO POINT SOURCES, SKIP POINT SOURCE CALCULATIONS.
245 IF(NPS.LT.l) GO TO 603
C
C
C
C*** POINT SOURCE CALCULATIONS ***
C
C LOOP THROUGH ALL POINT SOURCES.
DO 600 1=1,NPS
IF
IF
IF
IF
IF
WR
(NWDOPT.GT.1.AND.IWDOPT.GT.1).OR.NTOPT.EQ.2) GO TO 247
NPRINT.EQ.O) GO TO 247
I-1)/50*50.NE.I-1) GO TO 247
INPEN.EQ.0) GO TO 246
ISC.GE.5) GO TO 246
TE?IWR,1001) TT,ISCEN,HMIX(ISCEN),DTDZI(ISCEN)
C
C
C
C
C
C
C
C
C
C
C
C
WRITE(IWR,1003)
GO TO 247
246 WRITE(IWR,1005} TT,ISCEN,HMIX(ISCEN)
WRITE(IWR,1007)
247 IPS=I
IF PHYSICAL STACK HEIGHT EXCEEDS MIXING HEIGHT, THE SOURCE
IS IGNORED.
IF(HP(I).GE.HMIX(ISCEN)) GO TO 600
EFF= 2.45*VP(I)*DP(I)*DP(I)*(TP(I)-TA(ISCEN))/TP(I)
IFCEFF.LT.O.) EFF=1.0E-7
CALCULATE INVERSE WIND SPEED (UINV) AT THE PHYSICAL HEIGHT (HP(I))
OF POINT SOURCE I. DO NOT CHANGE IF STACK HEIGHT IS LESS
THAN 10 METERS.
IF(NWPOPT.EQ.l) THEN
USE OPTIONAL POWER LAW EXPONENTS
CALL WIND(WS(ISCEN),P1(ISC),HP(I),UPL)
ELSE
USE DEFAULT URBAN WIND PROFILE EXPONENTS
CALL WIND(WS(ISCEN),P(ISC),HP(I),DPL)
END IF
UINV=1./UPL
DEFINE EMISSION RATES (SOURCE STRENGTHS) OF POLLUTANT SPECIES,
AND NONDIMENSIONAL DEPOSITION AND SEDIMENTATION PARAMETERS.
UINV1=UINV/100.
ISPEC = 1 OR 2 OR 3
Q1=EP(I,1)
VDC1=VD1*UINV1
WC1=W1*UINV1
V11=VDC1-0.5*WC1
V21=VDC1-WC1
IF(V21.EQ.O.) GO TO 251
R11=V11/V21
R21=0.5*WC1/V21
251 IF(ISPEC.EQ.l) GO TO 255
ISPEC = 2 OR 3
Q2=EP(I.2)
VDC2=VD2*UINV1
WC2=W2*UINV1
V12=VDC2-0.5*WC2
V22=VDC2-WC2
IF(V22.EQ.O.) GO TO 253
R12=V12/V22
R22=0.5*WC2/V22
253 IFUSPEC.EQ.2) GO TO 257
ISPEC = 3
IF(Q1.EQ.O.) Ql=l.E-6
Q2Q1=Q2/Q1
V13=V11-0.5*(WC1-WC2)
IF(V21.EQ.O.) GO TO 255
PMT06740
PMT06750
PMT06760
PMT06770
PMT06780
PMT06790
PMT06800
PMT06810
PMT06820
PMT06830
PMT06840
PMT06850
PMT06860
PMT06870
PMT06880
PMT06890
PMT06900
PMT06910
PMT06920
PMT06930
PMT06940
PMT06950
PMT06960
PMT06970
PMT06980
PMT06990
PMT07000
PMT07010
PMT07020
PMT07030
PMT07040
PMT07050
PMT07060
PMT07070
PMT07080
PMT07090
PMT07091
PMT07095
PMT07100
PMT07110
PMT07120
PMT07130
PMT07140
PMT07150
PMT07160
PMT07170
PMT07180
PMT07190
PMT07200
PMT07210
PMT07220
PMT07230
PMT07240
PMT07250
PMT07260
PMT07270
PMT07280
PMT07290
PMT07300
PMT07310
PMT07320
PMT07330
PMT07340
PMT07350
PMT07360
PMT07370
PMT07380
PMT07390
PMT07400
PMT07410
158
-------
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
R13=V13/V21
R23=0.5*WC2/V21
ISPEC = 1 OR 3
255 UTAUC=TAUC*UPL
257 KLID=0
*** PEAK EFFECTIVE SOURCE HEIGHT CALCULATIONS.
CALL SUBROUTINE RISE WITH IRISE=2 TO GET PEAK EFFECTIVE SOURCE
HEIGHT, ESH(2).
IRISE=2
************
CALL RISE
************
IRISE=1
CALCULATE DISTANCE AT WHICH PLUME REACHES MAXIMUM HEIGHT (PEAK).
IF(IBUOY.EQ.O) GO TO 263
IF(ISC.LT.51 GO TO 261
PEAK=0.00207148/(UINV*SQRT(DTDZ(ISC-4)*9.8/TA(ISCEN)))
GO TO 265
261 PEAK=0.001*XS
GO TO 265
263 PEAK= 0.
IF(ISC.GE.5) GO TO 265
IF(ABS(VP(I)).LT.. 000001) GO TO 265
PEAK=(0.004*UINV*DP(I)*(VP(I) + 3./UINV)**2)/VP(I)
265 IF(NINPEN.EQ.O) GO TO 264
IF(ISC.GE.5.0R.IBUOY.EQ.O) GO TO 264
GO TO 267
STANDARD TREATMENT OF PLUME PENETRATION ABOVE MIXING HEIGHT:
IF MAXIMUM EFFECTIVE SOURCE HEIGHT EXCEEDS THE MIXING HEIGHT,
PLUME ESCAPES THE MIXED LAYER, AND SOURCE IS IGNORED.
264 IF(NPRINT.EQ.O) GO TO 266
IF(NWDOPT.LE.l.OR.IWDOPT.LE.l) WRITE(IWR.1010)
1 I,XP7l),YP(I).Ql,Q2,HP(I),DP(I),Vp7l),TP(I),PRL(l,IBUOY+l),
2 PRL(2,IBUOY+ij,DWL(IDWN)JDWL(lDWN+l),UPL,ESH(2)
266 IF(ESH(2).GT.HMIX(ISCEN)) GO TO 600
GO TO 275
NEW SCHEMES TO ACCOUNT FOR PLUME PENETRATION OF ELEVATED STABLE
LAYER FOR UNSTABLE/NEUTRAL ATMOSPHERE & BUOYANCY-DOMINATED PLUME.
267 PPF=0.
IPPF=0
ZIP=HMIX(ISCEN)-HP(I)
HPEN IS THE MINIMUM EFFECTIVE PLUME CENTERLINE HEIGHT NECESSAY TO
CONSIDER PENETRATION.
HPEN=HP(I)+2.*ZIP/3.
IF(ESH(2).LT.HPEN) GO TO 270
ESTIMATE MAXIMUM PLUME RISE ASSUMING THAT THE MIXED LAYER IS
STABLY-STRATIFIED WITH THE SAME POT.TEMP.GRADIENT AS THAT IN THE
ELEVATED STABLE LAYER. THIS IS A SIMPLE, CONSERVATIVE APPROACH
SINCE THE ACTUAL PLUME RISE WILL BE GREATER.
S1=9.8*DTDZI(ISCEN)/TA(ISCEN)
DELHP=2.6*(EFF*UINV/SI)**0.333333
CALCULATE PLUME PENETRATION FRACTION (PPF) DEFINED AS THE RATIO
OF DEPTH OF PLUME ABOVE THE MIXING HEIGHT, (1.5*DELHP - ZIP),
TO THE TOTAL PLUME DEPTH, (DELHP).
PPF=1.5-ZIP/DELHP
COMPLETE PENETRATION (PPF=1.): THE ENTIRE PLUME ESCAPES THE MIXED
LAYER. IGNORE THIS SOURCE SINCE IT DOES NOT CONTRIBUTE TO THE GLC
PMT07420
PMT07430
PMT07440
PMT07450
PMT07460
PMT07470
PMT07480
PMT07490
PMT07500
PMT07510
PMT07520
PMT07530
PMT07540
PMT07550
PMT07560
PMT07570
PMT07580
PMT07590
PMT07600
PMT07610
PMT07620
PMT07630
PMT07640
PMT07650
PMT07660
PMT07670
PMT07680
PMT07690
PMT07700
PMT07710
PMT07720
PMT07730
PMT07740
PMT07750
PMT07760
PMT07770
PMT07780
PMT07790
PMT07800
PMT07810
PMT07820
PMT07830
PMT07840
PMT07850
PMT07860
PMT07870
PMT07880
PMT07890
PMT07900
PMT07910
PMT07920
PMT07930
PMT07940
PMT07950
PMT07960
PMT07970
PMT07980
PMT07990
PMT08000
PMT08010
PMT08020
PMT08030
PMT08040
PMT08050
PMT08060
PMT08070
PMT08080
PMT08090
PMT08100
.PMT08110
159
-------
c
c
c
c
c
c
c
IF (PPF.GT.0.999) GO TO 268
GO TO 269
268 IPPF=1
PPF=1.
Ql=0.
IF(ISPEC.GT.l) 02=0.
GO TO 270
NO PENETRATION (PPF=0.): THE
PMT08120
PMT08130
PMT08140
PMT08150
PMT08160
PMT08170
PMT08180
PMT08190
ENTIRE PLUME REMAINS WITHIN THE MIXEDPMT08200
C
C
C
C
C
C
C
LAYER. SET MAXIMUM EFFECTIVE STACK HEIGHT AS EQUAL TO HPEN.
269 IF(PPF.LT.0.001) PPF=0.
PARTIAL PENETRATION (0. < PPF < 1.): CALCULATE THE NEW MAXIMUM
EFFECTIVE STACK HEIGHT. THIS IS THE HEIGHT OF CENTERLINE OF THE
PLUME FRACTION REMAINING WITHIN THE MIXED LAYER.
RATP=(1.-0.5*PPF)/(1.5-PPF)
ESH(2)=HP(I)+ZIP*RATP
DETERMINE DOWNWIND DISTANCE (PEAK) IN KILOMETERS WHERE THIS
MAXIMUM HEIGHT OCCURS.
PEAK=.001*((RATP*ZIP/(1.6*UINV))**1.5)/SQRT(EFF)
REDEFINE THE SOURCE STRENGTH SO THAT ONLY (l.-PPF) FRACTION OF THEPMT08330
PLUME MATERIAL REMAINING WITHIN MIXED LAYER CONTRIBUTES TO THE GLCPMT08340
PMT08210
PMT08220
PMT08230
PMT08240
PMT08250
PMT08260
PMT08270
PMT08280
PMT08290
PMT08300
PMT08310
PMT08320
C
C
C
C
C
C
275
Q1=(1.-PPF)*Q1
IF(ISPEC.EQ.l) GO TO 270
Q2=(1.-PPF)*Q2
PRINT CALCULATED PLUME RISE PARAMETERS.
270 IF(NPRINT.EQ.O) GO TO 271
IF(NWDOPT.LE.1.OR.IWDOPT.LE.1) WRITE(IWR,1012)
1 I,XPa),YP(I).Ql,Q2,HP(I),DPm,Vp7l),TP(I),PRL(l,IBUOY+l)
2 PRL(2,IBUOY+i),DWL(IDWN),DWL(IDWN+I),UPL,ESH(2),PPF
271 IF(IPPKEQ.I) 66 TO 600
SET LIMITS (XMIN,XMAX,YMIN,YMAX) ON PORTION OF RECEPTOR GRID
EXAMINED FOR EACH SOURCE. THE EXTENT OF THIS PORTION DEPENDS
ON SOURCE LOCATION, GRID DIMENSIONS, AND WIND DIRECTION.
XMAX= XB2
XMIN= XB1
YMAX= YB2
YMIN= YB1
IFfXPfl +50.0.LT.XB2 XMAX= XP I + 50.
IFfXPfl -50.0.GT.XB1 XMIN= XP I - 50.
IF(YP(I +50.0.LT.YB2 YMAX= YP I +50.
IF(YP(I -50.0.GT.YB1 YMIN= YP I - 50.
242
C
280
282
DO 242 11=1,2
FANGC=FLOAT(2*(I1-1)+1)*PI2
DIF1=ABS(ABS(WDPANG)-FANGC)
DIF2=ABS(ABS[WDMANG)-FANGC)
IF(DIF1.LT..001) WDPANG=WDPANG+.001
IFCDIF2.LT..001) WDMANG=WDMANG-.001
CONTINUE
GO TO (280,285,290,295,300,305,310,315),IFLAG
IF(WDPANG.GT.3.14)GOT0282
IF(WDMANG.LT.0)GOT0284
YMIN=YP(I)
XL1=XP(I)+(YB2-YP(I))/TAN(WDPANG)
IF(XL1.GT.XMIN)XMIN=XLl
IF(XL1.GT.XP(I))XMIN=XP(I)
XL2=XP(I)+(YB2-YP(I))/TAN(WDMANG)
IF(XL2.LT.XMAX)XMAX=XL2
IF(XL2.LT.XP(I))XMAX=XP(I)
GOT0320
YMIN=YP(I)+(XB1-XP(I))*TAN(WDPANG)
XMAX=XP(I)-K YB2-YP(I))/TAN(WDMANG)
GOT0320
PMT08350
PMT08360
PMT08370
PMT08380
PMT08390
PMT08400
PMT08410
PMT08420
PMT08430
PMT08440
PMT08450
PMT08460
PMT08470
PMT08480
PMT08490
PMT08500
PMT08510
PMT08520
.PMT08530
PMT08540
PMT08550
PMT08560
PMT08570
PMT08580
PMT08590
PMT08600
PMT08610
PMT08620
PMT08630
PMT08640
PMT08650
PMT08660
PMT08670
PMT08680
PMT08690
PMT08700
PMT08710
PMT08720
PMT08730
PMT08740
PMT08750
PMT08760
PMT08770
PMT08780
PMT08790
PMT08800
PMT08810
160
-------
284
285
290
292
294
295
300
302
304
305
310
YMIN=YP(I}+(XB2-XP(I))*TAN(WDMANG)
XMIN=XP(I)+(YB2-YP(I))/TAN(WDPANG)
GOT0320
XL1=XP(I)+(YB2-YP(I))/TAN(WDPANG)
IF(XL1.GT.XMIN)XMIN=XL1
IF(XL1.GT.XP(I))XMIN=XP(I)
YL1=YP(I1+(XB2-XP(I))*TAN(WDMANG)
IF?YL1.GT.YMIN)YMIN=YL1
IF(YL1.GT.YP(I))YMIN=YP(I)
GOT0320
IF(WDPANG.GT.1.57.AND.WDMANG.LT.0.)GOT0292
IF(WDPANG.GT.6.28.AND.WDMANG.LT.4.712)GOT0294
XMIN=XP(I)
YL1=YP(I)+(XB2-XP(I))*TAN(WDMANG)
IF(YL1.GT.YMIN)YMIN=YL1
IF(YL1.GT.YP(I))YMIN=YP(I)
YL2=YP(I)+(XB2-XP(I))*TAN(WDPANG)
IF(YL2.LT.YMAX)YMAX=YL2
IF(YL2.LT.YP(I))YMAX=YP(I)
GOT0320
YMIN=YP(I)+(XB2-XP(I))*TAN(WDMANG)
XMIN=XP(I)-KYB2-YP(I;;/TAN(WDPANG)
GOT0320
XMIN=XP(I)+(YB1-YP(I))/TAN(WDMANG)
YMAX=YP(I)+(XB2-XP(I})*TAN(WDPANG)
GOT0320
XL1=XP(I) + (_YB1-YP(I))/TAN(WDMANG)
IF?XL1.GT.XMIN)XMIN=XL1
IF(XL1.GT.XP?I))XMIN=XP(I)
YL2=YP(I)+(XB2-XP(I))*TAN(WDPANG)
IF(YL2.LT.YMAX)YMAX=YL2
IF(YL2.LT.YP(I))YMAX=YP(I)
GOT0320
IF(WDPANG.GT.6.28)GOT0302
IF(WDMANG.LT.3.14)GOT0304
YMAX=YP(I)
XL1=XP(I)+(YB1-YP(I))/TAN(WDMANG)
IF(XL1.GT.XMIN)XMIN-XL1
IF(XL1.GT.XP(I))XMIN=XP(I)
XL2=XP(I)-(-(YBl-YP(I) )/TAN(WDPANG)
IF(XL2.LT.XMAX)XMAX=XL2
IF(XL2.LT.XP(I))XMAX=XP(I)
GOT0320
YMAX=YP(I)+(XB2-XP(I))*TAN(WDPANG)
XMIN=XP(I) + ( -~-
GOT0320
-(YBI-YP(I))/TAN(WDMANG)
312
YMAX=YP(I)+(XB1-XP(I))*TAN(WDMANG)
XMAN=XP(I;+(YB1-YP(I;)/TAN(WDPANG)
GOT0320
YL2=YP(I)+(XB1-XP(I))*TAN(WDMANG)
IF(YL2.LT.YMAX)YMAX=YL2
IF(YL2.LT.YP(I))YMAX=YP(I)
XL2=XP(I)+(YB1-YP(I))/TAN(WDPANG)
IF(XL2.LT.XMAX)XMAX=XL2
IF(XL2.LT.XP(I))XMAX=XP(I)
GOT0320
IF(WDMANG.LT.1.57)GOT0312
IF(WDPANG.GT.4.712)GOT0314
XMAX=XP(I)
YL1=YP(I)+(XB1-XP(I))*TAN(WDPANG)
IF(YL1.GT.YMIN)YMIN=YL1
IF(YL1.GT.YP(I))YMIN=YP(I)
YL2=YP(I)+(XB1-XP(I))*TAN(WDMANG)
IF7YL2.LT.YMAX)YMAX=YL2
IFifY12.LT.YP(I))YMAX=YP(I)
GOT0320
XL2=XP(I) + CYB2-YP(I))/TAN(WDMANG)
IF?XL2.LT.XMAX)XMAX=XL2
IF(XL2.LT.XP(I))XMAX=XP(I)
YL1=YP(I)+(XB1-XP(I))*TAN(WDPANG)
PMT08820
PMT08830
PMT08840
PMT08850
PMT08860
PMT08870
PMT08880
PMT08890
PMT08900
PMT08910
PMT08920
PMT08930
PMT08940
PMT08950
PMT08960
PMT08970
PMT08980
PMT08990
PMT09000
PMT09010
PMT09020
PMT09030
PMT09040
PMT09050
PMT09060
PMT09070
PMT09080
PMT09090
PMT09100
PMT09110
PMT09120
PMT09130
PMT09140
PMT09150
PMT09160
PMT09170
PMT09180
PMT09190
PMT09200
PMT09210
PMT09220
.PMT09230
PMT09240
PMT09250
PMT09260
PMT09270
PMT09280
PMT09290
PMT09300
PMT09310
PMT09320
PMT09330
PMT09340
PMT09350
PMT09360
PMT09370
PMT09380
PMT09390
PMT09400
PMT09410
PMT09420
PMT09430
PMT09440
PMT09450
PMT09460
PMT09470
PMT09480
PMT09490
PMT09500
PMT09510
161
-------
314
315
320
IF(YL1.GT.YMIN)YMIN=YL1
IF(YL1.GT.YP(I))YMIN=YP(I)
GOT0320
XL2=XP(I)+(YB1-YP(I))/TAN(WDPANG)
IF(XL2.LT.XMAX)XMAX=XL2
IF(XL2.LT.XP(I))XMAX=XP(I)
YL2=YP(I)+(XB1-XP(I))*TAN(WDMANG)
IF(YL2.LT.YMAX)YMAX=YL2
IF(YL2.LT.YP(I))YMAX=YP(I)
GOT0320
XL2=XP(I)+(YB2-YP(I))/TAN(WDMANG)
IF(XL2.LT.XMAX)XMAX=XL2
IF(XL2.LT.XP(I))XMAX=XP(I)
YL1=YP(I1+(XB1-XP(I))*TAN(WDPANG)
IF(YL1.GT.YMIN)YMIN=YL1
IF(YL1.GT.YP(I))YMIN=YP(I)
GOT0320
IFCXMIN.GT.XB2.0R.XMAX.LT.XB1.0R.YMIN.GT.YB2.0R.YMAX.LT.YB1)
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
1 GO TO 600
IFfXMIN.LT.XBl
IF(XMAX.GT.XB2
IFCYMIN.LT.YBl
IF(YMAX.GT.YB2
XMIN=XB1
XMAX=XB2
YMIN=YB1
YMAX=YB2
DETERMINE THE RANGE OF RECEPTOR GRID ROW AND COLUMN NUMBERS (LXMAX,
LXMIN,LYMAX,LYMIN) CORRESPONDING TO XMAX, ETC. ABOVE -
LXMAX=
LXMIN=
LYMAX=
LYMIN=
'XMAX-XSWC
XMIN-XSWC
(YMAX-YSWC
;YMIN-YSWC
/GRID
/GRID
/GRID
/GRID
+ 1.
+ 1.
+ 1.
+ 1.
START LOOP ON ALL AFFECTED RECEPTORS.
DO 500 IX=LXMIN,IXMAX
XI=IX
XG= XSWC + (XI-0.5)*GRID
XD= XG - XP(I) + 0.00001
XDSQ=XD*XD
DO 500 JY=LYMIN,LYMAX
YJ=JY
YG= YSWC + (YJ-0.5)*GRID
YD= YG - YP(I) + 0.00001
DSQ= SQUARE OF SOURCE-RECEPTOR DISTANCE. IF SOURCE-RECEPTOR DISTANCE
IS GREATER THAN 50 KM., RECEPTOR IS SKIPPED.
DSQ= XDSQ + YD*YD
IF(DSQ.GT.2500.) GO TO 500
DELTA= ATAN(XD/YD)
IF(DELTA.LT.O.) DELTA = DELTA + 3.1415927
IF(XD.LT.O.) DELTA = DELTA + 3.1415927
DELTA= ABSHDELTA - WVEC)
IF(DELTA.GT.3.1415927) DELTA= ABS(6.2831853 - DELTA)
DIF1=ABS(DELTA-PI2)
IF(DIF1.LT..001) DELTA=DELTA+.001
IF THE CROSSWIND ANGLE (DELTA) EXCEEDS A LIMITING VALUE WHICH
DEPENDS ON STABILITY CLASS (ANGLIM), THE RECEPTOR IS SKIPPED.
ANGLIM = 43.,43.,33.,25.,18., AND 18. DEGREES FOR 1-HOUR AVERAGE
FOR STABILITY CLASSES A, B, C, D, E, ANDF RESPECTIVELY.
IF(DELTA.GT.ANGLIM(ISC)) GO TO 500
DELTA IS THE ANGLE BETWEEN THE WIND VECTOR AND THE SOURCE-RECEPTOR
DIRECTION. THE DOWNWIND DISTANCE USED IN THE GAUSSIAN PLUME
EQUATION IS= DIST= SQRT(DSQ)*COS(DELTA).
DIST=SQRT(DSQ)*COS(DELTA)
IF(DIST.LT.0.002) GO TO 500
C
C
C *** DETERMINE PROBABILITY DENSITIES OF VERTICAL DISTRIBUTIONS
C
C
OF SPECIES-1 AND SPECIES-2 POLLUTANT CONCENTRATIONS.
IF(DIST.GT.D47) GO TO 330
PMT09520
PMT09530
PMT09540
PMT09550
PMT09560
PMT09570
PMT09580
PMT09590
PMT09600
PMT09610
PMT09620
PMT09630
PMT09640
PMT09650
PMT09660
PMT09670
PMT09680
PMT09690
PMT09700
PMT09710
PMT09720
PMT09730
PMT09740
PMT09750
PMT09760
PMT09770
PMT09780
PMT09790
PMT09800
PMT09810
PMT09820
PMT09830
PMT09840
PMT09850
PMT09860
PMT09870
PMT09880
PMT09890
PMT09900
PMT09910
PMT09920
.PMT09930
PMT09940
PMT09950
PMT09960
PMT09970
PMT09980
PMT09990
PMT10000
PMT10010
PMT10020
PMT10030
PMT10040
PMT10050
PMT10060
PMT10070
PMT10080
PMT10090
PMT10100
PMT10110
PMT10120
PMT10130
PMT10140
PMT10150
PMT10160
PMT10170
PMT10310
PMT10320
PMT10330
PMT10340
162
-------
c
c
c
c
c
c
c
c
c
c
**** NEAR-SOURCE REGION (DIST .LE. D47).
CALCULATE QZC1 AND QZC2 FROM QZCAL (MODULE M=l).
************
CALL QZCAL
************
GO TO 350
330 IF(DIST.LT.D80) GO TO 331
**** WELL-MIXED REGION (DIST .GE. D80).
CALCULATE QZC1 AND QZC2 FROM QZCAL (MODULE M=2).
************
CALL QZCAL
************
GO TO 350
331 IF(KLID.EQ.l) GO TO 337
CALCULATE QZC1 AND QZC2 FOR POLLUTANT SPECIES
AT DIST=D47 AND DIST=D80 FOR USE IN INTERPOLATION
IN PLUME-TRAPPING REGION.
DUMX=DIST
DIST=D47
************
CALL QZCAL
************
QZC11=QZC1
IF(ISPEC.EQ.l) GO TO 332
QZC21=QZC2
332 DIST=D80
************
CALL QZCAL
************
QZC12=QZC1
IRC1=1
IF(QZC11.EQ.O.OR.QZC12.EQ.O.) IRC1=0
IF(ISPEC.EQ.l) GO TO 333
QZC22=QZC2
IRC2=1
IF(QZC21.EQ.O.OR.QZC22.EQ.O.) IRC2=0
333 KLID=1
DIST=DUMX
IF(IRCl.EQ.O) GO TO 334
DIFX1=ALOG(D80/D47)
DIFC1=ALOG(QZC12/QZC11)
GO TO 335
334 DIFC1=QZC12-QZC11
335 IF(ISPEC.EQ.l) GO TO 337
IF(IRC2.EQ.Oj GO TO 336
DIFX2=ALOG(D80/D47)
DIFC2=ALOG(QZC22/QZC21)
GO TO 337
336 DIFC2=QZC22-QZC21
**** PLUME-TRAPPING REGION (D47 < DIST < D80).
CALCULATE QZC1 AND QZC2 BY LINEAR INTERPOLATION
(BETWEEN VALUES AT DIST=D47 AND DIST=D80) ON
A LOG-LOG PLOT OF QZC VERSUS DOWNWIND DISTANCE.
IF EITHER OF THE QZC VALUES AT D47 AND D80 ARE
ZERO, USE A LINEAR PLOT FOR INTERPOLATION.
337 IF(IRCl.EQ.O) GO TO 338
RATX1=ALOG(DIST/D47)/DIFX1
QZC1L=ALOG(QZC11)+RATX1*DIFC1
QZC1=EXP(QZC1L)
GO TO 339
338 RATX1=(DIST-D47)/D8047
QZC1=QZC11+RATX1*DIFC1
339 IF(ISPEC.EQ.l) GO TO 350
IF(IRC2.EQ.O) GO TO 340
PMT10350
PMT10360
PMT10370
PMT10380
PMT10390
PMT10400
PMT10410
PMT10420
PMT10430
PMT10440
PMT10450
PMT10460
PMT10470
PMT10480
PMT10490
PMT10500
PMT10510
PMT10520
PMT10530
PMT10540
PMT10550
PMT10560
PMT10570
PMT10580
PMT10590
PMT10600
PMT10610
PMT10620
PMT10630
PMT10640
PMT10650
PMT10660
PMT10670
PMT10680
PMT10690
PMT10700
PMT10710
PMT10720
PMT10730
PMT10740
PMT10750
.PMT10760
PMT10770
PMT10780
PMT10790
PMT10800
PMT10810
PMT10820
PMT10830
PMT10840
PMT10850
PMT10860
PMT10870
PMT10880
PMT10890
PMT10900
PMT10910
PMT10920
PMT10930
PMT10940
PMT10950
PMT10960
PMT10970
PMT10980
PMT10990
PMT11000
PMT11010
PMT11020
PMT11030
PMT11040
163
-------
RATX2=ALOG(DIST/D47)/DIFX2
QZC2L=ALOG(QZC21)+RATX2*DIFC2
QZC2=EXP(QZC2L)
GO TO 350
340 RATX2=(DIST-D47)/D8047
QZC2=QZC21+RATX2*DIFC2
C
C *** DETERMINE PROBABILITY DENSITY OF CROSSWIND DISTRIBUTION
C OF CONCENTRATIONS.
C
350 XM=DIST*1000.
SIGY=AY(ISC)*XM/(SQRT(1.+.0004*XM))
C. CHECK FOR BID OPTION. OMIT BID IF NBID=0.
IF(NBID.EQ.O) GO TO 351
C. CONSIDER BOUYANCY INDUCED DISPERSION. DH IS SAME AS DELTAH.
DH=HGT-HPRIME
SIGB=DH/3.5
SIGB=SIGB*SIGB
SIGY=SQRT(SIGY*SIGY + SIGB)
351 YM=XM*TAN(DELTA)
DUMY=YM/SIGY
ARG=0.5*DUMY*DUMY
IF(ARG.GE.EXPMIN) GO TO 500
EXPA=EXP(-ARG)
PYC=(A1B/SIGY)*EXPA
C
C
C
C
C CALCULATE GROUND-LEVEL CONCENTRATIONS CONC (MICROGRAMS PER CUBIC
C METER) AND SURFACE DEPOSITION FLUX SDF (MICROGRAMS PER SQUARE
C METER PER HOUR) OF POLLUTANTS AT RECEPTOR IN COLUMN IX, ROW JY
C OF THE RECEPTOR GRID DUE TO POINT SOURCE I.
C
C ISPEC = 1 OR 2 OR 3
C1=Q1*UINV*PYC*QZC1
IF(NCSOPT.EQ.O) GO TO 355
CALL WORST(IX,JY,C1,1)
C
355 CINC1=C1*STCONV
CONC(IX,JY.1)=CONC(IX,JY.1)+CINC1
SDF(IX,JY,1)=SDF(IX,JY,1)+VD136*CINC1
IF(ISPEC.EQ.l) GO TO 370
IF(ISPEC.EQ.3) GO TO 360
C
C ISPEC = 2
C2=Q2*UINV*PYC*QZC2
GO TO 363
ISPEC = 3
360 C2=Q1*UINV*PYC*QZC2
C
363 IF(NCSOPT.EQ.O) GO TO 365
CALL WORST(IX,JY,C2,2)
C
365 CINC2=C2*STCONV
CONC(IX,JY,2)=CONC(IX,JY,2)+CINC2
SDF(IX,JY,2)=SDF(IX,JY,2)+VD236*CINC2
370 CONTINUE
C
500 CONTINUE
END LOOP ON ALL AFFECTED RECEPTORS.
C
C
C
C
600
C
C
C
C
C *** PRINT OUTPUT.
CONTINUE
END LOOP ON ALL POINT SOURCES.
PMT11050
PMT11060
PMT11070
PMT11080
PMT11090
PMT11100
PMT11110
PMT10180
PMT10190
PMT10200
PMT10210
PMT10220
PMT10221
PMT10222
PMT10223
PMT10224
PMT10225
PMT10225
PMT10226
PMT10230
PMT10240
PMT10250
PMT10260
PMT10270
PMT10280
PMT10290
PMT10300
PMT11120
PMT11130
PMT11140
PMT11150
PMT11160
PMT11170
PMT11180
PMT11190
PMT11200
PMT11210
PMT11220
PMT11230
PMT11240
PMT11250
.PMT11260
PMT11270
PMT11280
PMT11290
PMT11300
PMT11310
PMT11320
PMT11330
PMT11340
PMT11350
PMT11360
PMT11370
PMT11380
PMT11390
PMT11400
PMT11410
PMT11420
PMT11430
PMT11440
PMT11450
PMT11460
PMT11470
PMT11480
PMT11490
PMT11500
PMT11510
PMT11520
PMT11530
PMT11540
164
-------
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
OUTPUT AT END OF EACH AVERAGING-PERIOD.
TIME AVERAGING: NTOPT=2 OR 3
IF NOT LAST SCENARIO, GO TO 100 FOR THE NEXT SCENARIO.
IF LAST SCENARIO, CALL OUTMOD TO PRINT OUTPUT FOR NLIST, NTAPE,
AND NARRAY OPTIONS, AND THEN CALL MAXOUT TO PRINT OUTPUT
FOR NMAX.
OUTPUT AT END OF EACH SCENARIO (OR SUB-SCENARIO)
NO TIME AVERAGING: NTOPT=1
AT END OF EACH SCENARIO (OR SUB-SCENARIO WHEN NWDOPT.GT.1),
CALL OUTMOD TO PRINT OUTPUT FOR NCSOPT, NLIST, NTAPE,
AND NARRAY OPTIONS.
IF LAST SCENARIO (AND LAST SUB-SCENARIO WHEN NWDOPT.GT.1),
CALL MAXOUT TO PRINT OUTPUT FOR NMAX OPTION.
IF NOT LAST SCENARIO, GO TO 100 FOR THE THE NEXT SCENARIO
OR SUB-SCENARIO.
603 IF(NTOPT.EQ.l) GO TO 620
TIME AVERAGING: NTOPT=2 OR 3
IF(ISCEN.NE.NSCEN) GO TO 100
CALL OUTMOD
************
GO TO 999
NO TIME AVERAGING: NTOPT=1
************
620 CALL OUTMOD
************
IF(ISCEN.NE.NSCEN) GO TO 100
IF(NWDOPT.LE.l) GO TO 999
IF(IWDOPT.LT.4) GO TO 100
************
999 IF(NMAX.GT.O) CALL MAXOUT
************
CALL WAUDIT
STOP
'1001 FORMAT(1H1.37X,'POLLUTION EPISODIC MODEL (PEM-2)'///4X,'OUTPUT:
PMT11550
PMT11560
PMT11570
PMT11580
PMT11590
PMT11600
PMT11610
PMT11620
PMT11630
PMT11640
PMT11650
PMT11660
PMT11670
PMT11680
PMT11690
PMT11700
PMT11710
PMT11720
PMT11730
PMT11740
PMT11750
PMT11760
PMT11770
PMT11780
PMT11790
PMT11800
PMT11810
PMT11820
PMT11830
PMT11840
PMT11850
PMT11860
PMT11870
PMT11880
PMT11890
PMT11900
PMT11910
PMT11920
PMT11930
PMT11940
.PMT11950
PMT11960
'PMT11970
1.20A4//4X.'SCENARIO' 12.4X,'POINT SOURCE PLUME RISE CALCULATIONS'/PMT11980
PMT11990
PMT12000
PMT12010
PMT12020
/PMT12030
PMT12040
JL. • i*\//iT/ / -TA , t-jv/oiuxiij-v • JL£* « -in. * i \Jx.
221X,'MIXING HEIGHT: HMIX=',F7.2,' M'/
321X,'POTENTIAL TEMPERATURE GRADIENT ABOVE MIXING HEIGHT^',
4F6.4,' DEG/M'/)
1003 FORMAT(1IX,'SOURCE',6X,'EMISSION RATES',2X,'STACK' 4X,'EXIT'.
15X,'EXIT' 4X 'EXIT',17X,'WIND SPEED AT',2X,'MAX.EFF.',6X,'PLUME
2' POINT',3x,'COORDINATES',3x,'poL-i'3x'POL-2'3x.'HEIGHT',
3' DIAMETER VELOCITY TEMP.',5X,'DOMINANT',3X,'STACK HEIGHT SOURCEPMT12050
4 HT. PENETRATION'/' SOURCE X(KM) Y(KM) (G/S) (G/S)',4X, PMT12060
5'(M)',6X,'(M)',4X,'(M/S) (DEG K)',4X,'INFLUENCE',7X,'(M/S)',8X, PMT12070
6'(M)',7X,'FRACTION'/) PMT12080
1005 FORMAT(1H1.37X,'POLLUTION EPISODIC MODEL (PEM-2)'//4X,'OUTPUT: '.PMT12090
120A4//4X 'SCENARIO',12,4X'POINT SOURCE PLUME RISE CALCULATIONS'/ PMT12100
221X,'MIXING HEIGHT: HMIX=',F7.2,' M'/) PMT12110
1007 FORMAT(14X,'SOURCE',8X.'EMISSION RATES',61X 'WIND SPEED AT',4X, PMT12120
1 'MAXIMUM',/' POINT',6X,'COORDINATES',4X,'POL-1',6X,'POL-2',4X, PMT12130
2 'HEIGHT DIAMETER EXIT VEL EXIT TEMP',6X,'DOMINANT',5X, PMT12140
^ 'STACK HEIGHT',4X.'EFFECTIVE'/' SOURCE',3X,'X(KM)',4X,'Y(KM)'.3X.PMT12150
'(G/S)' 6X,'(G/S)J,5X,'(M)',6X,'(M)',7X,'(M/S)',4X,'(DEG K)*,6X, PMT12160
'INFLUENCE',8X,'(M/S)',6X,'SOURCE HEIGHT(M)'/) PMT12170
1010 FORMAT(1X,I4.2X.F8.2,IX,F8.2.2X,F8.2,2X,F8.2,2X,F7.2,3X,F6.3,3X, PMT12180
1 F8.3,3X,F7.2,2X,2A4,1X,2A4,3X,F7.3.8X,F8.2) PMT12190
1012 FORMAT(2X,I3,5(1X,F7.1),3(2X,F6.2),2(1X,2A4),2X,F6.2, PMT12200
1 5X,F8.2,8X,F5.3) PMT12210
END PMT12220
1 PMT12230
2
3
4
5
165
-------
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
SUBROUTINE QZCAL
SUBROUTINE QZCAL , PART OF PEM-2 (VERSION 84130).
SUBROUTINE QZCAL CALCULATES QZC1 AND QZC2, REPRESENTING THE
PROBABLITY DENSITIES OF VERTICAL DISTRIBUTIONS OF CONCENTRATIONS
OF POLLUTANT SPECIES 1 AND 2, RESPECTIVELY, AT A GIVEN
DISTANCE DOWNWIND OF A POINT SOURCE.
*** PEM ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1982
*** PEM-2 MODIFICATIONS: DECEMBER 1983
K. SHANKAR RAO, PHYSICAL SCIENTIST
ATMOSPHERIC TURBULENCE AND DIFFUSION LABORATORY (ATDL)
NATIONAL OCEANIC AND ATMOSPHERIC ADMINISTRATION (NOAA)
U.S. DEPARTMENT OF COMMERCE, P.O. BOX - E
OAK RIDGE, TENNESSEE 37831
( THIS WORK WAS DONE UNDER AN INTERAGENCY AGREEMENT
BETWEEN THE ENVIRONMENTAL PROTECTION AGENCY AND THE
NATIONAL OCEANIC AND ATMOSPHERIC ADMINISTRATION )
c
c
c
c.
cr.
c.
c.
c.
c.
c
c
c
c
COMMON/PEMCOM/CONC(50,50.2),SDF(50,50
XP(300) , YP(300) ,EP(36o,2) ,HP(300) ,DP
'
, ,, ,
2 XA(50) YA(50),EA(50.2) SIZEfSO) '
3 WD(24) ,WS(24) ,TA(24) ,HMIX(24) ,DTD
SCLABf
, , ,
4 AZC6) ,BZ(6) ,CZ(6) ,P(6) .
5 XSWC,YSWC,GRID,LX,LY,A(2),B(2T,
, D47
ZI(24)
TT(20).
) , VP(300) ,TP(300) ,
SECTAN(16) ,
J2),CALNAM(7,2),
,,,,,
6 ITA, IRD , IWR, IDSK, D80 , D47 ,08047 , D 1ST, DELTA, HPRIME ,
7 ESH(2),PEAK,IBUOY,IRISE,IDWN,EFF,XS,UINV,WVEC,
8 NAS , NPS , INDEX , IGRID , IAV , ISCEN, IWDOPT , IWD . ISC , IPS ,
9 NTOPT , NWDOPT , NWSOPT , NWPOPT , NSCEN , NLIST , NARRAY , NTAPE , NCSOPT ,
* NMAX,NSTDWN,NPRISE,NINPEN, INTER, NPRINT.NGPR.NB ID
CONMON/PARM1/NPOL, VD1, Wl . VD2, W2
COMMON/PARM1A/ICT , TAUC , GAMMA
COMMON/PARM2/ISPEC,UTAUC,Q2Q1,XCT,EXCT
COMMON/PARM3/HC , VDC1 , WC1 , VDC2 , WC2
CONWON/PARM4/V11 , V21 , V12 , V22 , V13
COMMON/PARM5/D11,D21,D12,D22,D31,D32,D33,D6
CCfWON/PARM6/Rll, R21 , R12 , R22 , R13 , R23 , R31 , R41 , R32, R42
COMMON/PARM7/QZC1 , QZC2 , HGT
C01WON/BLOCK1/PI , SQPI , SQRT2.A1B , A1C
COMMON/BLOCK2/ AI , B I , EPS ABS , EPSREL , LW , NIW
COMMON/EXPCHK/EXPMAX , EXPMIN, ETAMAX
EXTERNAL FUN1
REAL*8 FUN1
REAL*8 WORK(800).AI,BI,EPSABS, EPSREL, RESULT, ABSERR
DIMENSION IW(102)
IF(D1ST.GE.PEAK) GO TO 5
TEST FOR GRADUAL PLUME RISE AND BID OPTIONS.
IF DIST IS LESS THAN FINAL RISE, THEN USE GRAD. RISE IF BID SELECTED
AND USE THE GRADUAL RISE HEIGHT FOR EFFECTIVE PLUME HEIGHT,
OTHERWISE USE FINAL PLUME HEIGHT (ESH(2)).
OMIT CALL RISE. IF NGPR=1 (I.E. FINAL RISE) AND NBID=0 (I.E. NO BID)
IF(NGPR.EQ.l.AND.NBID.EQ.O) GO TO 5
CALL SUBROUTINE RISE FOR EFFECTIVE SOURCE HEIGHT AT DOWNWIND
DISTANCE = DIST, LESS THAN DISTANCE TO MAXIMUM HEIGHT (PEAK).
************
CALL RISE
PMT12240
PMT12250
PMT12260
PMT12270
PMT12280
PMT12290
PMT12300
PMT12310
PMT12320
PMT12330
PMT12340
PMT12350
PMT12360
PMT12370
PMT12380
PMT12390
PMT12400
PMT12410
PMT12420
PMT12430
PMT12440
PMT12450
PMT12460
PMT12470
PMT12480
PMT12490
PMT12500
PMT12510
PMT12520
PMT12530
PMT12540
PMT12550
PMT12560
PMT12570
PMT12580
PMT12590
PMT12600
PMT12610
PMT12620
PMT12630
.PMT12640
PMT12650
PMT12660
PMT12670
PMT12680
PMT12690
PMT12700
PMT12710
PMT12720
PMT12730
PMT12740
PMT12750
PMT12760
PMT12770
PMT12780
PMT12790
PMT12800
PMT12801
PMT12802
PMT12803
PMT12804
PMT12805
PMT12806
PMT12807
PMT12810
PMT12820
PMT12830
PMT12840
PMT12850
166
-------
c
c
c
c
c
c.
c.
c
c
c
c
c
c
c
c
c
c
HGT= ESH(l)
GO TO 6
USE MAXIMUM EFFECTIVE SOURCE HEIGHT, SINCE DOWNWIND DISTANCE
EXCEEDS THE DISTANCE TO MAXIMUM HEIGHT.
5 HGT= ESH(2)
3 HL=HMIX(ISCEN)
X=DIST
XM=X*1000.
SIGZ= AZ(ISC)*XM*(1.+CZ(ISC)*XM)/(SORT(1.+BZ(ISC)*XM))
CHECK FOR BID OPTION. NBID=1 , BID ON
IF(NBID.EQ.O) GO TO 3
CONSIDER BOUYANCY INDUCED DISPERSION (BID)
DH=HGT-HPRIME
SIGB=DH/3.5
SIGB=SIGB*SIGB
SIGZ=SQRT(SIGZ*SIGZ + SIGB)
IF(SIGZ.GT.5000.) SIGZ=5000.
SZ=SIGZ
C2=SQRT2*SZ
HC=HGT/C2
IF(NGPR.EQ.l) HC=ESH(2)/C2
XC=XM/C2
ISPEC = 1 OR 2 OR 3
D31=2.*V11*XC
D11=WC1*XC
D21=D11*D11
R31=1.+2.*D21
R41=2.*D11/SQPI
IF(ISPEC.EQ.l) GO TO 9
ISPEC = 2 OR 3
D32=2.*V12*XC
D12=WC2*XC
D22=D12*D12
R32=1.+2.*D22
R42=2.*D12/SQPI
IF(ISPEC.EQ.2) GO TO 10
ISPEC = 3
D33=2.*V13*XC
D6=4.*SQPI*(V21-V22)*XC
9 TCC=UTAUC/C2
10 IF(ICT.EQ.O) XCT=0.
IF(ICT.EQ.l) XCT=XC/TCC
EXCT=EXP(-XCT)
TERM1=0.
TERM2=0.
TERM3=0.
DUM1=D47+0.001
DUM2=D80-0.001
IF(X.LT.DUMl) GO TO 100
IF(X.GT.DUM2) GO TO 200
11 QZC1=0.0
QZC2=0.0
RETURN
**** NEAR-SOURCE REGION (X .LE. D47).
100 M=l
A1=A1B/SZ
PMT12860
PMT12870
PMT12880
PMT12890
PMT12900
PMT12910
PMT12920
PMT12930
PMT12940
PMT12950
PMT12960
PMT12970
PMT12980
PMT12981
PMT12982
PMT12983
PMT12984
PMT12985
PMT12986
PMT12987
PMT12990
PMT13000
PMT13010
PMT13020
PMT13021
PMT13030
PMT13040
PMT13050
PMT13060
PMT13070
PMT13080
PMT13090
PMT13100
PMT13110
PMT13120
PMT13130
PMT13140
PMT13150
PMT13160
PMT13170
PMT13180
PMT13190
PMT13200
PMT13210
PMT13220
PMT13230
PMT13240
PMT13250
PMT13260
PMT13270
PMT13280
PMT13290
PMT13300
PMT13310
PMT13320
PMT13330
PMT13340
PMT13350
PMT13360
PMT13370
PMT13380
PMT13390
PMT13400
PMT13410
PMT13420
PMT13430
PMT13440
PMT13450
PMT13460
PMT13470
167
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
C3=HC*HC
IF(C3.GE.EXPMIN) GO TO 11
A2=1./EXP(C3)
ISPEC = 1 OR 2 OR 3
SPECIES-1 (PRIMARY) POLLUTANT: GAS OR PARTICLES.
ETA1=HC+D3I
ETA1SQ=ETA1*ETA1
IF(ETAISQ.GT.EXPMAX) CALL ARGCHK(ETAI.ETAISQ)
B11=EXP(ETA1SQ)*ERFC(ETA1)
ALPHA1=A1C*D31*B11
SUM=2.-ALPHA1
IFfSUM) 115,115,116
115 G21P=0.0
GO TO 120
116 IFfWCl.EQ.O.) GO TO 117
BETAl=-2.*D11*HC+D21
CALL EXPO(-BETAl.EBTl)
GO TO 118
117 EBT1=1.0
118 G21P=EXCT*EBT1*A2*SUM
120 QZC1=A1*G21P
IF(ISPEC.EQ.l) RETURN
ISPEC = 2 OR 3
SPECIES-2 (SECONDARY) POLLUTANT: GAS OR PARTICLES.
ETA2=HC+D32
ETA2SQ=ETA2*ETA2
IF(ETA2SQ.GT.EXPMAX) CALL ARGCHK(ETA2,ETA2SQ)
B12=EXP(ETA2SQ)*ERFC(ETA2)
ALPHA2=A1C*D32*B12
SUM1=2.-ALPHA2
IF(ISPEC.EQ.3) GO TO 145
ISPEC = 2
IF(SUMl) 135,135,140
135 G22P=0.0
QZC2=0.0
RETURN
140 IF(WC2.EQ.O.) GO TO 141
BETA2=-2.*D12*HC+D22
CALL EXPO(-BETA2,EBT2)
GO TO 142
141 EBT2=1.0
142 G22P=EBT2*A2*SUM1
QZC2=A1*G22P
RETURN
ISPEC = 3
145 TERM1=(Q2Q1+GAMMA)*A2*SUM1
ETA3=HC+D33
ETA3SQ=ETA3*ETA3
IF(ETA3SQ.GT.EXPMAX) CALL ARGCHK(ETA3,ETA3SQ)
B13=EXP(ETA3SQ)*ERFC(ETA3)
ALPHA3=A1C*D33*B13
TERM2=-GAMMA*EXCT*A2*(2.-ALPHAS)
IF(V21.EQ.V22) GO TO 150
COMPUTE INTEGRAL FUNC=F1(XC,0.;HC); FUN1 IS THE INTEGRAND
CALL DO1AJF(FUN1,AI,BI,EPSABS,EPSREL,RESULT,
1 ABSERR.WORK.LW.IW.NIW.IFAIL)
RES=RESULT
FUNC=RES/PI
TERM3=-GANWA*D6*FUNC
150 SUMT=TERM1+TERM2+TERM3
IF(SUMT) 155,155,160
155 G22P=0.0
PMT13480
PMT13490
PMT13500
PMT13510
PMT13520
PMT13530
PMT13540
PMT13550
PMT13560
PMT13570
PMT13580
PMT13590
PMT13600
PMT13610
PMT13620
PMT13630
PMT13640
PMT13650
PMT13660
PMT13670
PMT13680
PMT13690
PMT13700
PMT13710
PMT13720
PMT13730
PMT13740
PMT13750
PMT13760
PMT13770
PMT13780
PMT13790
PMT13800
PMT13810
PMT13820
PMT13830
PMT13840
PMT13850
PMT13860
PMT13870
PMT13880
PMT13890
PMT13900
PMT13910
PMT13920
PMT13930
PMT13940
PMT13950
PMT13960
PMT13970
PMT13980
PMT13990
PMT14000
PMT14010
PMT14020
PMT14030
PMT14040
PMT14050
PMT14060
PMT14070
FUNCTIONPMT14080
PMT14090
PMT14100
PMT14110
PMT14120
PMT14130
PMT14140
PMT14150
PMT14160
PMT14170
168
-------
c
c
c
c
c
c
c
c
c
QZC2=0.0
RETURN
160 IFOVC2.EQ.0.1 GO TO 161
BETA2=-2.*D12*HC+D22
CALL EXPO(-BETA2,EBT2)
GO TO 162
161 EBT2=1.0
162 G22P=EBT2*SUMT
QZC2=A1*G22P
RETURN
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
**** WELL-MIXED REGION (X .GE. D80).
IN THIS REGION, THE CONCENTRATION BELOW THE MIXING HEIGHT IS
UNIFORM REGARDLESS OF THE SOURCE OR RECEPTOR HEIGHTS BECAUSE
OF THOROUGH MIXING OF POLLUTANT BETWEEN THE GROUND AND THE
MIXING HEIGHT.
200 M=2
A1A=1000./HL
CALL PSG4P(G41P,G42P)
QZC1=A1A*G41P
IF(ISPEC.EQ.l) RETURN
QZC2=A1A*G42P
RETURN
END
SUBROUTINE PSG4P(G41P,G42P)
SUBROUTINE PSG4P
PART OF PEM-2 (VERSION 84130),
THIS SUBROUTINE CALCULATES AND RETURNS VALUES OF G41P AND G42P.
THESE ARE NONDIMENSIONAL VERTICALLY-INTEGRATED PROBABILITY
DENSITY FUNCTIONS USED IN THE WELL-MIXED REGION CONCENTRATION
ALGORITHMS FOR SPECIES-1 AND SPECIES-2, RESPECTIVELY, DOWNWIND
OF A POINT SOURCE. THESE FUNCTIONS ARE INDEPENDENT OF BOTH
SOURCE HEIGHT AND RECEPTOR HEIGHT.
*** PEM ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1982
K. SHANKAR RAO, PHYSICAL SCIENTIST
ATMOSPHERIC TURBULENCE AND DIFFUSION LABORATORY (ATDL)
NATIONAL OCEANIC AND ATMOSPHERIC ADMINISTRATION (NOAA)
U.S. DEPARTMENT OF COMMERCE, P.O. BOX - E
OAK RIDGE, TENNESSEE 37831
( THIS WORK WAS DONE UNDER AN INTERAGENCY AGREEMENT
BETWEEN THE ENVIRONMENTAL PROTECTION AGENCY AND THE
NATIONAL OCEANIC AND ATMOSPHERIC ADMINISTRATION )
EXTERNAL FUN2
REAL*8 FUN2
REAL*8 WORK(800).AI,BI,EPSABS,EPSREL,RESULT,ABSERR
DIMENSION IW(102l
COMMON/PARM1A/ICT,TAUC,GAMMA
COMMON/PARM2/ISPEC,UTAUC,Q2Q1.XCT,EXCT
COMMON/PARM4/V11, V21, V12, V22, V13
COMMON/PARM5/D11,D21,D12,D22,D31,D32,D33,D6
COMMON/PARM6/R11,R21,R12,R22,R13,R23,R31,R41,R32,R42
COMMON/BLOCK1/PI,SQPI,SQRT2,AlB,A1C
COMMON/BLOCK2/AI,BI,EPSABS,EPSREL,LW,NIW
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
PMT14180
PMT14190
PMT14200
PMT14210
PMT14220
PMT14230
PMT14240
PMT14250
PMT14260
PMT14270
PMT14280
PMT14290
PMT14300
PMT14310
PMT14320
PMT14330
PMT14340
PMT14350
PMT14360
PMT14370
PMT14380
PMT14390
PMT14400
PMT14410
PMT14420
PMT14430
PMT14440
PMT14450
PMT14460
PMT14470
PMT14480
PMT14490
PMT14500
PMT14510
PMT14520
PMT14530
PMT14540
PMT14550
PMT14560
PMT14570
.PMT14580
PMT14590
PMT14600
PMT14610
PMT14620
PMT14630
PMT14640
PMT14650
PMT14660
PMT14670
PMT14680
PMT14690
PMT14700
PMT14710
PMT14720
PMT14730
PMT14740
PMT14750
PMT14760
PMT14770
PMT14780
PMT14790
PMT14800
PMT14810
PMT14820
PMT14830
PMT14840
PMT14850
PMT14860
169
-------
GAS OR PARTICLES.
C
C ISPEC = 1 OR 2 OR 3
C***** SPECIES-1 (PRIMARY) POLLUTANT:
C
IF(D21.GT.EXPMAX) CALL ARGCHK(D11,D21)
B11=EXP(D21)*ERFC(D11)
IF(V21.EQ.O.) GO TO 201
D31SQ=D31*D31
IF(D31SQ.GT.EXPMAX) CALL ARGCHK(D31,D31SQ)
SUM=R11*£EXP(D31SQ)*ERFC(D31))-R21*B11
GO TO 202
201 SUM=R31*B11-R41
202 IF(SUM.LT.O.) SUM=0.0
G41P=EXCT*EXP(-D21)*SUM
IF(ISPEC.EQ.l) RETURN
C
C ISPEC = 2 OR 3
C***** SPECIES-2 (SECONDARY) POLLUTANT: GAS OR PARTICLES.
C
IF(D22,GT.EXPMAX) CALL ARGCHK(D12,D22)
B12=EXP(D22)*ERFC(D12)
IF(V22.EQ.O.) GO TO 203
D32SQ=D32*D32
IF(D32SQ.GT.EXPMAX) CALL ARGCHK(D32,D32SQ)
SUM1=R12*(EXP(D32SQ)*ERFC(D32))-R22*B12
GO TO 204
203 SUM1=R32*B12-R42
204 IF(ISPEC.EQ.3) GO TO 205
C
C
ISPEC = 2
IF(SUM1.LT.O.) SUM1=0.0
G42P=EXP(-D22)*SUM1
RETURN
ISPEC = 3
205 TERM1=(Q2Q1+GAMMA)*SUM1
IF(V21.EQ.O.) GO TO 206
D33SQ=D33*D33
IF(D33SQ.GT.EXPMAX) CALL ARGCHK(D33,D33SQ)
SUM2=R13*(EXP(D33SQ)*ERFC(D33))-R23*B12
GO TO 207
206 SUM2=R32*B12-R42
207 TERM2=-GAMMA*EXCT*SUM2
IF(V21,EQ.V22) GO TO 208
COMPUTE INTEGRAL FUNC=F2(XC); FUN2 IS THE INTEGRAND FUNCTION.
CALL D01AJF(FUN2,AI,BI,EPSABS.EPSREL,RESULT,
1 ABSERR,WORK,LW,IW,NIW,IFAIL)
RES=RESULT
FUNC=RES/(2.*PI)
TERM3=-GAMMA*D6*FUNC
GO TO 209
208 TERM3=0.0
C
C
C
C
C
C
C
C
C
209 SUMT=TERM1+TERM2+TERM3
IF(SUMT.LT.O.) SUMT=0.0
G42P=EXP(-D22)*SUMT
RETURN
END
DOUBLE PRECISION FUNCTION FUN1(T)
REAL*8 FUNCTION FUN1
INTEGRAND FUNCTION USED IN THE NUMERICAL INTEGRATION
QZCAL (FOR POINT SOURCES) IS DEFINED HERE.
PMT14870
PMT14880
PMT14890
PMT14900
PMT14910
PMT14920
PMT14930
PMT14940
PMT14950
PMT14960
PMT14970
PMT14980
PMT14990
PMT15000
PMT15010
PMT15020
PMT15030
PMT15040
PMT15050
PMT15060
PMT15070
PMT15080
PMT15090
PMT15100
PMT15110
PMT15120
PMT15130
PMT15140
PMT15150
PMT15160
PMT15170
PMT15180
PMT15190
PMT15200
PMT15210
PMT15220
PMT15230
PMT15240
PMT15250
PMT15260
PMT15270
.PMT15280
PMT15290
PMT15300
PMT15310
PMT15320
PMT15330
PMT15340
PMT15350
PMT15360
PMT15370
PMT15380
PMT15390
PMT15400
PMT15410
PMT15420
PMT15430
PMT15440
PMT15450
PMT15460
PMT15470
PMT15480
PMT15490
PART OF PEM-2 (VERSION 84130). PMT15500
PMT15510
PMT15520
IN SUBROUTINEPMT15530
PMT15540
PMT15550
170
-------
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
PEM-2 ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1982
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37830
FOR UNIVAC-1100
REAL*8 T
COMMON/PARM2/ISPEC,UTAUC,Q2Q1, XCT, EXCT
COMMON/PARM3/HC,VDCl.WCl,VDC2.WC2
COMMON/PARM5/D11,D21,D12,D22,D31,D32,D33,D6
COMMON/BLOCKl/PI,SQPI,SQRT2,A1B,A1C
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
SQT=SQRT(T)
SQ1T=SQRT(1.-T)
HC1=HC/SQT
ARG1=(HC1*HC1)-KT*XCT)
CALL EXPO(-ARGl.EXPl)
IF(EXP1.EQ.O.) GO TO 10
TERM1= EXP1/(SQT*SQ1T)
ETA4=HC1+D33*SQT
ETA4SQ=ETA4*ETA4
IF(ETA4SQ.GT.EXPMAX) CALL ARGCHK(ETA4,ETA4SQ)
TERM2A= EXP(ETA4SQ)*ERFC(ETA4)
HC1SQ=HC1*HC1
IF(HCISQ.GT.EXPMAX) CALL ARGCHK(HCl.HClSQ)
TERM2=1.-SQPI*(ETA4-HC1)*TERM2A
IF(TERM2.LE.O.) GO TO 10
ETA5=D32*SQ1T
ETA5SQ=ETA5*ETA5
IF(ETA5SQ.GT.EXPMAX) CALL ARGCHK(ETA5,ETA5SQ)
TERM3=1.-SQPI*ETA5*(EXP(ETA5SQ)*ERFC(ETAS))
IF(TERM3.LE.O.) GO TO 10
FUN1=TERM1*TERM2*TERM3
GO TO 11
10 FUN1=0.0
11 RETURN
END
DOUBLE PRECISION FUNCTION FUNIA(T)
REAL*8 FUNCTION FUN1A , PART OF PEM-2 (VERSION 84130)
INTEGRAND FUNCTION USED IN THE NUMERICAL INTEGRATION FOR AREA
SOURCES (POLLUTANT SPECIES-2) IN FUNCTION FUN4 IS DEFINED HERE.
PEM-2 ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1983
K. SHANKAR RAO, NOAA-ATDL, OAK RIDGE, TENN.
FOR UNIVAC-1100
REAL*8 T
COMMON/BLOCKl/PI.SQPI,SQRT2,AlB,AlC
COMMON/CLOCK1/ET2,ET3,HCA,XCAT
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
SQT=SQRT(T)
SQ1T=SQRT(I.-T)
PMT15560
PMT15570
PMT15580
PMT15590
PMT15600
PMT15610
PMT15620
PMT15630
PMT15640
PMT15650
PMT15660
PMT15670
PMT15680
PMT15690
PMT15700
PMT15710
PMT15720
PMT15730
PMT15740
PMT15750
PMT15760
PMT15770
PMT15780
PMT15790
PMT15800
PMT15810
PMT15820
PMT15830
PMT15840
PMT15850
PMT15860
PMT15870
PMT15880
PMT15890
PMT15900
PMT15910
PMT15920
PMT15930
PMT15940
PMT15950
PMT15960
PMT15970
PMT15980
PMT15990
PMT16000
PMT16010
PMT16020
PMT16030
PMT16040
PMT16050
PMT16060
PMT16070
PMT16080
PMT16090
PMT16100
PMT16110
PMT16120
PMT16130
PMT16140
PMT16150
PMT16160
PMT16170
PMT16180
PMT16190
PMT16200
PMT16210
PMT16220
PMT16230
PMT16240
171
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
HC1=HCA/SQT
D33SQT=ET3*SQT
ARG1=HC1*HC1+XCAT*T
CALL EXPO(-ARG1,EXP1)
TERM1=EXP1/(SQT*SQ1T)
IF(TEEM1.LE.O.) GO TO 10
ETA4=HC1+D33SQT
ETA4SQ=ETA4*ETA4
IF(ETA4SQ.GT.EXPMAX) CALL ARGCHK(ETA4,ETA4SQ)
TERM2=1.-SQPI*D33SQT*EXP(ETA4SQ)*ERFC(ETA4)
IF(TEHM2.LE.O.) GO TO 10
ETA5=ET2*SQ1T
ETA5SQ=ETA5*ETA5
IF(ETA5SQ.GT.EXPMAX) CALL ARGCHK(ETA5,ETA5SQ)
TERM3=1.-SQPI*ETA5*EXP(ETA5SQ)*ERFC(ETA5)
IF(TERM3.LE.O.) GO TO 10
FUN1A=TERM1*TERM2*TERM3
GO TO 20
10 FUN1A=0.
20 RETURN
END
DOUBLE PRECISION FUNCTION FUN2(T)
REAL*8 FUNCTION FUN2
PART OF PEM-2 (VERSION 84130),
INTEGRAND FUNCTION USED IN THE NUMERICAL INTEGRATION FOR POINT
SOURCES (POLLUTANT SPECIES-2) IN SUBROUTINE PSG4P IS DEFINED HERE
PEM ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1982
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37830
FOR UNIVAC-1100
REAL*8 T
C01WON/PARM2/ISPEC,UTAUC, Q2Q1, XCT, EXCT
COMMON/PARM4/V11.V21,V12,V22.V13
COMVION/PARM5/D11, D21, D12, D22, D31, D32, D33, D6
COMMON/PARM6/R11,R21,R12,R22,R13,R23,R31,R41,R32,R42
COMMON/BLOCKl/PI.SQPI, SQRT2, A1B, AlC
COWMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
SQT=SQRT(T)
SQ1T=SQRT(1.-T)
ETA4=D33*SQT
ETA5=D32*SQ1T
ETA6=D12*SQ1T
ETA6SQ=ETA6*ETA6
IF(ETA6SQ.GT.EXPMAX) CALL ARGCHK(ETA6,ETA6SQ)
ARG1=T*XCT
EXP1=EXP(-ARG1)
TERM1=EXP1/SQT
ETA4SQ=ETA4*ETA4
IF(ETA4SQ.GT.EXPMAX) CALL ARGCHK(ETA4,ETA4SQ)
TERM2=1.-SQPI*ETA4*(EXP(ETA4SQ)*ERFC(ETA4))
IF(TERM2.LE.O.) GO TO 15
PMT16250
PMT16260
PMT16270
PMT16280
PMT16290
PMT16300
PMT16310
PMT16320
PMT16330
PMT16340
PMT16350
PMT16360
PMT16370
PMT16380
PMT16390
PMT16400
PMT16410
PMT16420
PMT16430
PMT16440
PMT16450
PMT16460
PMT16470
PMT16480
PMT16490
PMT16500
PMT16510
PMT16520
PMT16530
PMT16540
PMT16550
PMT16560
.PMT16570
PMT16580
PMT16590
PMT16600
PMT16610
PMT16620
PMT16630
PMT16640
PMT16650
PMT16660
PMT16670
PMT16680
PMT16690
PMT16700
PMT16710
PMT16720
PMT16730
PMT16740
PMT16750
PMT16760
PMT16770
PMT16780
PMT16790
PMT16800
PMT16810
PMT16820
PMT16830
PMT16840
PMT16850
PMT16860
PMT16870
PMT16880
PMT16890
PMT16900
PMT16910
PMT16920
PMT16930
172
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
11 IF(V22.EQ.O.) GO TO 12
ETA5SQ=ETA5*ETA5
IF(ETA5SQ.GT.EXPMAX) CALL ARGCHK(ETA5,ETA5SQ)
T3A=EXP(ETA5SQ)*ERFC(ETAS)
T3B=EXP(ETA6SQ) *ERFC (E-TA6)
TERM3=RI2*T3A-R22*T3B
IF(TERM3.LE.O.) GO TO 15
GO TO 13
12 T3A=(1.+2.*ETA6SQ)*(EXP(ETA6SQ)*ERFC(ETA6))
T3B=2.*ETA6/SQPI
TERM3=T3A-T3B
IF(TERM3.LE.O.) GO TO 15
13 FUN2=TERM1*TERM2*TERM3
GO TO 16
15 FUN2=0.
16 RETURN
END
DOUBLE PRECISION FUNCTION FUN3(XA)
REAL*8 FUNCTION FUNS , PART OF PEM-2 (VERSION 84130)
INTEGRAND FUNCTION USED IN THE NUMERICAL INTEGRATION FOR AREA
SOURCES (POLLUTANT SPECIES-1) IN MAIN PROGRAM IS DEFINED HERE.
PEM-2 ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1983
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX - E
OAK RIDGE, TENN 37830
FOR UNIVAC-1100
REAL*8 XA
COMMON/PARM1A/ICT,TAUC,GAMMA
COMMON/PARM2/ISPEC.UTAUC,Q2Q1,XCT,EXCT
COMMON/PARM2A/HAS,KSC,AA,BA,CA
COMMON/PARM3/HC.VDC1,WC1,VDC2.WC2
COMMON/PARM4/V11,V21,V12,V22,V13
COMMON/BLOCKl/PI.SQPI,SQRT2,AlB,AlC
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
SIGZ=AA*XA*(1.+CA*XA)/SQRT(1.+BA*XA)
C2=SQRT2*SIGZ
XCA=XA/C2
HCA=HAS/C2
D31=2.*V11*XCA
ETA1=HCA+D31
ETA1SQ=ETA1*ETA1
IF(ETA1SQ.GT.EXPMAX) CALL ARGCHK(ETA1,ETA1SQ)
TERM1=1.-SQPI*D31*EXP(ETA1SQ)*ERFC(ETA1)
IF(TERM1.LE.O.) GO TO 25
BETA1=HCA-WC1*XCA
ARG1=BETA1*BETA1
IF(ISPEC.EQ.2) GO TO 20
IF(ISPEC.EQ.l.AND.ICT.EQ.O) GO TO 20
IF(UTAUC.GT.0.) ARG1=ARGH-XA/UTAUC
20 CALL EXPO(-ARG1,EXP1)
FUN3=EXP1*TERM1/SIGZ
GO TO 30
25 FUN3=0.
PMT16940
PMT16950
PMT16960
PMT16970
PMT16980
PMT16990
PMT17000
PMT17010
PMT17020
PMT17030
PMT17040
PMT17050
PMT17060
PMT17070
PMT17080
PMT17090
PMT17100
PMT17110
PMT17120
PMT17130
PMT17140
PMT17150
PMT17160
PMT17170
PMT17180
PMT17190
PMT17200
PMT17210
PMT17220
PMT17230
PMT17240
PMT17250
PMT17260
PMT17270
PMT17280
PMT17290
PMT17300
PMT17310
PMT17320
PMT17330
PMT17340
PMT17350
PMT17360
PMT17370
PMT17380
PMT17390
PMT17400
PMT17410
PMT17420
PMT17430
PMT17440
PMT17450
PMT17460
PMT17470
PMT17480
PMT17490
PMT17500
PMT17510
PMT17520
PMT17530
PMT17540
PMT17550
PMT17560
PMT17570
PMT17580
PMT17590
PMT17600
PMT17610
PMT17620
173
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
30 RETURN
END
DOUBLE PRECISION FUNCTION FUN4(XA)
REAL*8 FUNCTION FUN4 , PART OF PEM-2 (VERSION 84130).
INTEGRAND FUNCTION USED IN THE NUMERICAL INTEGRATION FOR AREA
SOURCES (POLLUTANT SPECIES-2) IN THE MAIN PROGRAM IS DEFINED HERE
THIS FUNCTION CONSISTS ONLY OF THE CHEMICAL TRANSFORMATION
CONTRIBUTION TO THE SPECIES-2 CONCENTRATION BUDGET.
PEM-2 ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1983
K. SHANKAR RAO
NOAA-ATDL, P.O.BOX-E
OAK RIDGE, TENN 37830
REAL*8 WORK(800),AI,BI,EPSABS,EPSREL,RESULT,ABSERR
EXTERNAL FUN1A
REAL*8 FUN1A
FOR UNIVAC-1100
REAL*8 XA
DIMENSION IW(102)
COMMON/PARM2/ISPEC,UTAUC,Q2Q1,XCT,EXCT
COMMON/PARM2A/HAS,KSC,AA,BA.CA
COMMON/PARM3/HC,VDC1,WC1,VDC2,WC2
COMMON/PARM4/V11,V21,V12,V22,V13
COMMON/BLOCK1/PI,SQPI,SQRT2,A1B,A1C
COMMON/BLOCK2/AI.BI,EPSABS.EPSREL,LW,NIW
COMMON/CLOCK1/ET2,ET3,HCA,XCAT
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
SIGZ=AA*XA*(1.+CA*XA)/SORT(1.+BA*XA)
C2=SQRT2*SIGZ
XCA=XA/C2
HCA=HAS/C2
D32=2.*V12*XCA
D33=2.*V13*XCA
ETA2=HCA+D32
ETA2SQ=ETA2*ETA2
IF(ETA2SQ.GT.EXPMAX) CALL ARGCHK(ETA2,ETA2SQ)
TERM1=1.-SQPI*D32*EXP(ETA2SQ)*ERFC(ETA2)
IF(TERM1.LE.O.) GO TO 30
ETA3=HCA+D33
ETA3SQ=ETA3*ETA3
IF(ETA3SQ.GT.EXPMAX)
TERM2A=1.-SQPI*D33*EXP(]
IF(TERM2A.LE.O.) TERM2A=0.
XCAT=XA/UTAUC
TERM2=EXP(-XCAT)*TERM2A
CALL ARGCHK(ETA3,ETA3SQ)
ETA3SQ)*ERFC(ETA3)
IF(V21.EQ.V22) GO TO 20
TERM3A=SQPI*2.*(V21-V22)*XCA
ET2=D32
ET3=D33
COMPUTE INTEGRAL FIA(AI.BI); FUN1A IS THE EXTERNALLY DEFINED
INTEGRAND FUNCTION.
CALL D01AJF(FUN1A,AI,BI,EPSABS.EPSREL,RESULT,
1 ABSERR,WORK,LW,IW,NIW,IFAIL)
TERM3=TERM3A*RESULT/PI
GO TO 25
20 TERM3=0.
PMT17630
PMT17640
PMT17650
PMT17660
PMT17670
PMT17680
PMT17690
PMT17700
PMT17710
.PMT17720
PMT17730
PMT17740
PMT17750
PMT17760
PMT17770
PMT17780
PMT17790
PMT17800
PMT17810
PMT17820
PMT17830
PMT17840
PMT17850
PMT17860
PMT17870
PMT17880
PMT17890
PMT17900
PMT17910
PMT17920
PMT17930
PMT17940
PMT17950
PMT17960
PMT17970
PMT17980
PMT17990
PMT18000
PMT18010
PMT18020
.PMT18030
PMT18040
PMT18050
PMT18060
PMT18070
PMT18080
PMT18090
PMT18100
PMT18110
PMT18120
PMT18130
PMT18140
PMT18150
PMT18160
PMT18170
PMT18180
PMT18190
PMT18200
PMT18210
PMT18220
PMT18230
PMT18240
PMT18250
PMT18260
PMT18270
PMT18280
PMT18290
PMT18300
PMT18310
174
-------
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
25 BETA2=HCA-WC2*XCA
B2SQ=BETA2*BETA2
CALL EXPO(-B2SQ,EB2SQ)
B3SQ=B2SQ-HCA*HCA
CALL EXPO(-B3SQ,EB3SQ)
FUN4=(EB2SQ*(TERM1-TERM2)-EB3SQ*TERM3)/SIGZ
GO TO 35
30 FUN4=0.
35 RETURN
END
DOUBLE PRECISION FUNCTION FUN5(XA)
REAL*8 FUNCTION FUN5 , PART OF PEM-2 (VERSION 84130).
INTEGRAND FUNCTION USED IN THE NUMERICAL INTEGRATION FOR AREA
SOURCES (POLLUTANT SPECIES-2) IN THE MAIN PROGRAM IS DEFINED HERE
THIS FUNCTION CONSISTS ONLY OF THE CONTRIBUTION OF THE DIRECT
EMISSION OF SPECIES-2 TO THE CONCENTRATION BUDGET.
PEM-2 ALGORITHMS AND PROGRAM DEVELOPMENT:
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37830
FEBRUARY 1984
FOR UNIVAC-1100
REAL*8 XA
COMMON/PARM2A/HAS,KSC,AA,BA,CA
COMMON/PARM3/HC.VDC1,WC1,VDC2,WC2
COMMON/PARM4/V11,V21,V12,V22,V13
COMMON/BLOCK1/PI,SQPI,SQRT2,A1B,A1C
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
SIGZ=AA*XA*(1.+CA*XA)/SORT(1.+BA*XA)
C2=SQRT2*SIGZ
XCA=XA/C2
HCA=HAS/C2
D32=2.*V12*XCA
ETA2=HCA+D32
ETA2SQ=ETA2*ETA2
IF(ETA2SQ.GT.EXPMAX) CALL ARGCHK(ETA2,ETA2SQ)
TERM1=1.-SQPI*D32*EXP(ETA2SQ)*ERFC(ETA2)
. IF(TEHM1.LE.O.) GO TO 10
BETA2=HCA-WC2*XCA
B2SQ=BETA2*BETA2
CALL EXPO(-B2SQ,EB2SQ)
FUN5=EB2SQ*TERM1/SIGZ
GO TO 20
10 FUN5=0.
20 RETURN
END
SUBROUTINE EXPO(BX.EX)
SUBROUTINE EXPO , PART OF PEM-2 (VERSION 84130)
GIVEN THE ARGUMENT BX, SUBROUTINE EXPO CALCULATES AND
RETURNS EX=EXP(BX). EXPO LIMITS THE ARGUMENT TO AVOID
OVERFLOW/UNDERFLOW ERRORS.
PMT18320
PMT18330
PMT18340
PMT18350
PMT18360
PMT18370
PMT18380
PMT18390
PMT18400
PMT18410
PMT18420
PMT18430
PMT18440
PMT18450
PMT18460
PMT18470
PMT18480
PMT18490
.PMT18500
PMT18510
PMT18520
PMT18530
PMT18540
PMT18550
PMT18560
PMT18570
PMT18580
PMT18590
PMT18600
PMT18610
PMT18620
PMT18630
PMT18640
PMT18650
PMT18660
PMT18670
PMT18680
PMT18690
PMT18700
PMT18710
.PMT18720
PMT18730
PMT18740
PMT18750
PMT18760
PMT18770
PMT18780
PMT18790
PMT18800
PMT18810
PMT18820
PMT18830
PMT18840
PMT18850
PMT18860
PMT18870
PMT18880
PMT18890
PMT18920
PMT18900
PMT18910
PMT18930
PMT18940
PMT18950
PMT18960
PMT18970
PMT18980
PMT18990
175
-------
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
PEM ALGORITHMS AND PROGRAM DEVELOPMENT: DECEMBER 1982
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37831
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
BXABS=ABS(BX)
IF(BX) 5,10,15
5 IF(BXABS-EXPMIN) 6,7,7
6 EX=EXP(BX)
GO TO 20
7 EX=0.
GO TO 20
10 EX=1.
GO TO 20
15 IF(BXABS.GT.EXPMAX) BXABS=EXPMAX
EX=EXP(BXABS)
20 RETURN
END
SUBROUTINE ARGCHK(E,ESQ)
SUBROUTINE ARGCHK , PART OF PEM-2 (VERSION 84130),
SUBROUTINE ARGCHK LIMITS THE ARGUMENTS OF EXP(ESQ)*ERFC(E)
TO AVOID OVERFLOW/UNDERFLOW ERRORS.
PEM ALGORITHMS AND PROGRAM DEVELOPMENT:
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37831
COMMON/EXPCHK/EXPMAX,EXPMIN,ETAMAX
ESQ=EXPMAX
IFfE.LT.O.) NSIGN=-1
IFfE.GE.O.) NSIGN=1
E=NSIGN*ETAMAX
RETURN
END
DECEMBER 1982
SUBROUTINE INMOD
SUBROUTINE INMOD
PART OF PEM-2 (VERSION 84130)
SUBROUTINE INMOD READS IN ALL INPUTS TO THE MODEL, SCREENS THEM,
PRINTS WARNING MESSAGES, AND INSERTS DEFAULT VALUES AS NEEDED.
THE SUBROUTINE PRINTS OUT LISTS OF THE CONTROL PARAMETERS,
SCENARIO PARAMETERS, AND SOURCE DATA FOR REFERENCE.
INMOD ALSO PROCESSES THE INPUT FOR EACH SCENARIO BEFORE
TRANSMITTING IT TO THE MAIN PROGRAM.
*** PEM MODIFICATIONS AND FORMATS BY M.M. STEVENS,
NOAA-ATDL, P.O. BOX-E, OAK RIDGE, TENN 37831
DECEMBER 1982
*** PEM-2 MODIFICATIONS AND FORMATS BY K. SHANKAR RAO,
APRIL 1984
PMT19000
PMT19010
PMT19020
PMT19030
PMT19040
PMT19050
PMT19060
PMT19070
PMT19080
PMT19090
PMT19100
PMT19110
PMT19120
PMT19130
PMT19140
PMT19150
PMT19160
PMT19170
PMT19180
PMT19190
PMT19200
PMT19210
PMT19220
PMT19230
PMT19240
PMT19250
PMT19260
PMT19270
PMT19280
PMT19290
PMT19300
PMT19310
PMT19320
PMT19330
PMT19340
PMT19350
PMT19360
PMT19370
PMT19380
PMT19390
.PMT19400
PMT19410
PMT19420
PMT19430
PMT19440
PMT19450
PMT19460
PMT19470
PMT19480
PMT19490
PMT19500
PMT19510
PMT19520
PMT19530
PMT19540
PMT19550
PMT19560
PMT19570
PMT19580
PMT19590
PMT19600
PMT19610
PMT19620
PMT19630
PMT19640
PMT19650
PMT19660
PMT19670
176
-------
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
COWMON/PEMCOM/CONC(50,50,2) ,SDFf50,50, 2) . TT(20) .
1 XPf300),YP(300).EP?300,2),HP(300),DP(300),VPC300)>TP(300),
2 XA(50),YA(50),EA(50.2),SIZE(50),
3 WDC24) ,WS(24) ,TA(24) .HMIX(24) ,DTDZI(24) ,
4 AZ(6),BZ(6),CZ(6),P(6),SCLAB(6),DTDZ(2),SECTAN(16),
5 XSWC,YSWC.GRID,LX,LY,Af2),B(2),POLNAM(3,2).CALNAM(7,2),
6 ITA,IRD,IWR,IDSK,D80,D47,D8047,DIST, DELTA, HPRIME,
7 ESH(2J,PEAK, IBUOY, IRISE, IDWN.EFF.XS.UINV, WVEC,
8 NAS.NPS, INDEX, IGRID, IAV, ISCEN, IWDOPT, IWD, ISC, IPS,
9 NTOPT, NWDOPT, NWSOPT, NWPOPT, NSCEN, NLIST, NARRAY, NTAPE, NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN, INTER, NPRINT, NGPR, NBID
COMMON/CSWOR/NWORS T ( 25 , 25 , 5 , 2 ) , CWORST ( 25 , 25 , 5 , 2 )
COMMON/PARM1/NPOL, VD1.W1. VD2.W2
COMMON/PARM1A/ICT, TAUC, GAMMA
COMMON/PARM2A/HAS ,KSC. AA, BA, CA
COMMON/PARM7A/HA , PI ( 6 )
COMMON/WND/HMIN, HMAX, UMIN, IUFLG
DIMENSION NAME(2),WDINC(6),SUMAQ(2),SUMPQ(2),SUMAR(2),EAR(2),
1 CWS(6)
DIMENSION DCRC24. 2) , NSC(24) , NWD(24) , NWS (24) , ASCALE(2)
DIMENSION XX (100)
DATA NAME/4H ,4H /
DATA WD INC/1. 5707963, 0.7853982, 0.5235988, 0.2617994,
1 0. 1745329. 0.08726646/
DATA CWS/1.5,2.46,4.47.6.93,9.61,12.52/
DATA HMIN/10./,HMAX/200./,UMIN/1. /.HA/IO./
IF(INDEX.NE.O) GO TO 300
ISTOP=0
READ ALL INPUT DATA.
**** READ FIRST CONTROL PARAMETER CARD (TITLE).
READ(IRD,800)TT
WRITE(IWR,900) TT
**** READ SECOND CONTROL PARAMETER CARD (OPTIONS).
NTOPT = AVERAGING TIME OPTION (1 OR 2 OR 3).
NWDOPT = WIND DIRECTION INPUT OPTION (0 TO 7).
NWSOPT = WIND SPEED INPUT OPTION (0 OR 1).
NWPOPT = WIND PROFILE EXPONENTS INPUT OPTION (0 OR 1).
NSCEN = NUMBER OF SCENARIOS (1 TO 24).
NLIST = OUTPUT OPTION: LISTS OF CONG AND SURF DEP FLUX (0 OR 1)
NARRAY = OUTPUT OPTION: MAPS OF CONG AND SURF DEP FLUX (0 TO 3)
NTAPE = OUTPUT OPTION: TAPE OF CONC AND SURF DEP FLUX (0 OR 1)
NCSOPT = OUTPUT OPTION: POINT SOURCE CULPABILITY LIST (0 OR 1).
NMAX = OUTPUT OPTION: MAXIMUM CONC. FOR EACH SCENARIO (0 OR 1).
NSTDWN = STACK-TIP DOWNWASH CORRECTION OPTION (0 OR 1).
NPRISE = NEW PLUME RISE EQUATIONS OPTION (0 OR 1).
NINPEN = NEW PLUME PENETRATION METHODS OPTION (0 OR 1).
T»TTtT?n _ TIT^y-ITJT'MnXM-* T^TmnT"m A T *N»T fn A T^fi s\rimv^rim /"TO \
lIVlaK — tilH/tirluH INlCiKVAL ON lAFc OL/rrUr (1,^:, ).
NPRINT = OUTPUT OPTION: POINT SOURCE PLUME RISE INFO (0 OR 1)
INPTSC = INPUT OPTN: POINT SOURCE DATA ON UNIT IRD OR IDSK (1 OR
NGPR = GRADUAL PLUME RISE OPTION NEAR PT. SOURCE (= 0 ),
NGPR = 1, THEN FINAL EFFECTIVE PLUME RISE AT ALL DISTANCES
NBID = BOUYANCY INDUCED DISPERSION (BID), (=0 NO BID, =1 YES)
READ ( IRD , 805 ) NTOPT , NWDOPT , NWSOPT , NWPOPT , NSCEN , NL 1ST , NARRAY ,
PMT19680
PMT19690
PMT19700
PMT19710
PMT19720
PMT19730
PMT19740
PMT19750
PMT19760
PMT19770
PMT19780
PMT19790
PMT19800
PMT19810
PMT19820
PMT19830
PMT19840
PMT19850
PMT 19851
PMT19860
PMT19870
PMT19880
PMT 19890
PMT19900
PMT19910
PMT19920
PMT19930
PMT19940
PMT19941
PMT19950
PMT19960
PMT19970
PMT19980
PMT19990
PMT20000
PMT20010
PMT20020
PMT20030
PMT20040
PMT20050
PMT20060
PMT20070
PMT20080
PMT20090
PMT20100
PMT20110
PMT20120
PMT20130
PMT20140
PMT20150
PMT20160
PMT20170
PMT20180
PMT20190
PMT20200
PMT20210
PMT20220
PMT20230
2)PMT20240
PMT20241
PMT2024 ?
PMT2024 3
PMT20250
PMT20260
1 NBID PMT20271
PMT20280
IF(NTOPT.GE.l .AND NTOPT.LE.3) GO TO 2 PMT20290
WRITE(IWR,660) NTOPT PMT20300
NTOPT=1 PMT20310
177
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
2 IF(NWDOPT.LE.l) GO TO 6
IFfNWDOPT.GT.7) GO TO 5
IF(NTOPT.EQ.l .OR. NWDOPT.IE.l) GO TO 6
WRITE(IWR,615)
" NWDOPT=0
10
20
IF
IF
IF
IF
IF
IF
IF
IF
IF
WE
NWSOPT.GT.r
NWPOPT.GT.l
NWSOPT=0
NWPOPT=0
NSCEN.EQ.O) NSCEN=1
NTOPT.EQ.3.AND.NSCEN.EQ.24) NTOPT=2
NTOPT.EQ.2 .AND. NSCEN.NE.24) GO TO 500
NSCEN.GT.24) GO TO 510
NLIST.EQ.O;
NLIST.GT.l)
NWDOPT.LE.l
TE(IWR,605)
GO TO 25
GO TO 22
) GO TO 25
22 NLIST=0
25 IF(NARRAY.GT.S) NARRAY=0
IF(NTAPE.EQ.O) GO TO 40
IF(NTAPE,GT.l) GO TO 30
IF(NWDOPT.LE.l) GO TO 40
WRITE(IWR,620)
30 NTAPE=0
40 IF(NCSOPT.EQ.O) GO TO 51
IF(NCSOPT.GT.l) NCSOPT=0
IF(NTOPT.EQ.l) GO TO 45
NCSOPT=0
WRITE(IWR,625)
45 IF(NWDOPT.GT.l.AND.NSCEN.GT.l) GO TO 50
GO TO 51
50 NCSOPT=0
51 IF
IF
IF
IF
IF
IF
IF
WRITE(IWR,635)
NMAX.GT.l) NMAX=0
NSTDWN.GT.l
NPRISE.GT.i;
NINPEN.GT.l
NSTDWN=0
NPRISE=0
NINPEN=0
INTER.EQ.O) INTER=1
NPRINT.GT.l) NPRINT=0
INPTSC.LT.l .OR. INPTSC.GT.2) INPTSC=1
SET LABEL FOR TIME AVERAGING
IAV=1
IF(NTOPT.EQ.2) IAV=24
IF (NTOPT.EQ.3) IAV=NSCEN
**** READ THIRD CONTROL PARAMETER CARD (GRID, DTDZ)
XRSWC.YRSWC = COORDINATES OF SOUTHWEST CORNER OF RECEPTOR GRID
LX
LY
GRID
NUMBER OF COLUMNS IN RECEPTOR GRID.
NUMBER OF ROWS IN RECEPTOR GRID.
SPACING BETWEEN ROWS AND COLUMNS OF RECEPTOR GRID
115
C
C
C
DTDZ(1&2) = VERTICAL POTENTIAL TEMPERATURE GRADIENT
FOR STABILITY CLASSES E & F.
READ(IRD,810)XRSWC,YRSWC.LX.LY,GRID,DTDZ(l),DTDZ(2)
IF(LX.EQ.O) LX=1
IF(LY.EQ.O) LY=1
IF(NTAPE.EQ.O) GO TO 115
NRECS=((LX+1)/INTER)*((LY+1)/INTER)*NSCEN
IF(NTOPT.EQ.2) NRECS= NRECS/24
IF(NTOPT.EQ.3) NRECS= NRECS/NSCEN
IFfNRECS.LT.62500) GO TO 115
WRITE(IWR,600)
NTAPE=0
CONTINUE
**** READ FOURTH CONTROL PARAMETER CARD (POLLUTANTS)
PMT20320
PMT20330
PMT20340
PMT20350
PMT20360
PMT20370
PMT20380
PMT20390
PMT20400
PMT20410
PMT20420
PMT20430
PMT20440
PMT20450
PMT20460
PMT20470
PMT20480
PMT20490
PMT20500
PMT20510
PMT20520
PMT20530
PMT20540
PMT20550
PMT20560
PMT20570
PMT20580
PMT20590
PMT20600
PMT20610
PMT20620
PMT20630
PMT20640
PMT20650
PMT20660
PMT20670
PMT20680
PMT20690
PMT20700
PMT20710
PMT20720
.PMT20730
PMT20740
PMT20750
PMT20760
PMT20770
(KM)PMT20780
PMT20790
PMT20800
(KM) PMT20810
PMT20820
PMT20830
PMT20840
PMT20850
PMT20860
PMT20870
PMT20880
PMT20890
PMT20900
PMT20910
PMT20920
PMT20930
PMT20940
PMT20950
PMT20960
PMT20970
PMT20980
PMT20990
PMT21000
PMT21010
178
-------
C NPOL = NUMBER OF POLLUTANTS (1 OR 2)
C ICT = CHEMICAL TRANSFORMATION OR DECAY OPTION (0 OR 1)
C VD1 = DEPOSITION VELOCITY FOR POLLUTANT SPECIES-1 (CM/S)
C Wl = SETTLING VELOCITY FOR POLLUTANT SPOECIES-1 (CM/S)
C VD2 = DEPOSITION VELOCITY FOR POLLUTANT SPECIES-2 (CM/S)
C W2 = SETTLING VELOCITY FOR POLLUTANT SPECIES-2 (CM/S)
C XKT = CHEMICAL TRANSFORMATION OR DECAY RATE OF POLLUTANT
C SPECIES-1 (PERCENT PER HOUR)
C GAMMA = RATIO OF MOLECULAR WEIGHTS OF SPECIES-2 (PRODUCT)
C TO SPECIES-1 (REACTANT) IN CHEMICAL TRANSFORMATION
C
C NOTE: FOR DEPOSITION TO OCCUR, W SHOULD BE LESS THAN OR EQUAL TO VD.
C FOR DEPOSITION OF GASES AND VERY SMALL PARTICLES, W=0.
C FOR DEPOSITION OF SMALL PARTICLES, W IS LESS THAN VD.
C FOR DEPOSITION OF PARTICLES OF SIZE > 50 MICRONS, W=VD.
C
READ (IRD.812) NPOL, ICT, VD1.W1, VD2.W2, XKT, GAMMA
C
IF NPOL.LT.l .OR. NPOL.GT.2) NPOL=1
IF W1.GT.VD1) W1=VD1
IF Wl.LT.0.01) Wl=0.0
IF VDl.LT.0.01) VD1=0.0
IF NPOL.EQ.2) GO TO 117
VD =0.0
W2=0.0
GO TO 118
117 IF W2.GT.VD2) W2=VD2
IF W2.LT.0.01) W2=0.0
IF VD2.LT.0.01) VD2=0.0
118 IF ICT.EQ.l) GO TO 119
XKT=0.0
GAMMA=0.0
GO TO 122
119 IF(XKT.GE.0.1 .AND. XKT. LE. 100.) GO TO 120
TXKT=0.1
IF(XKT.GT.100.) TXKT=100.
WRITE (IWR, 640) XKT.TXKT
XKT=TXKT
C
C CONVERT CHEMICAL TRANSFORMATION RATE XKT (PERCENT PER HOUR) TO
C THE EQUIVALENT TIME SCALE TAUC (SECONDS).
120 TAUC=0.36E06/XKT
C
122 IF(NCSOPT.EQ.O .OR. (LX.LE.25 .AND. LY.LE.25)) GO TO 125
WRITE (IWR, 645)
NCSOPT=0
C
C SHIFT THE RECEPTOR GRID TO THE COMPUTATION GRID.
125 XSWC= XRSWC - 0.5*GRID
YSWC= YRSWC - 0.5*GRID
C
130 IF(DTDZ(1).LT. 0.00001) DTDZ(1)=0.020
IF(DTDZ(2).LT. 0.00001) DTDZ(2)=0. 035
C
C IF GRID IS ZERO, SWITCH ON AUTOMATIC GRID OPTION.
IGRID=0
IF(GRID.LT.1.0E-5) IGRID=1
IF(IGRID.EQ.l.AND.NTOPT.GT.l) GO TO 520
C
C **** READ 5TH CONTROL PARAMETER CARD (AREA SOURCE EMISSIONS HEIGHT
C AND SCALING , AND CONCENTRATION CALIBRATION)
C
C HAS = EFFECTIVE HEIGHT OF AREA SOURCE EMISSIONS (METERS).
C ASCALE(1&2) = AREA SOURCE EMISSION SCALING FACTORS
C FOR POLLUTANT SPECIES-1 AND 2.
C A(l&2) = CONCENTRATION CALIBRATION FACTOR (INTERCEPT)
C FOR POLLUTANT SPECIES-1 AND 2.
C B(l&2) = CONCENTRATION CALIBRATION FACTOR (SLOPE)
C FOR POLLUTANT SPECIES-1 AND 2.
C
PMT21020
PMT21030
PMT21040
PMT21050
PMT21060
PMT21070
PMT21080
PMT21090
PMT21100
PMT21110
PMT21120
PMT21130
PMT21140
PMT21150
PMT21160
PMT21170
PMT21180
PMT21190
PMT21200
PMT21210
PMT21220
PMT21230
PMT21240
PMT21250
PMT21260
PMT21270
PMT21280
PMT21290
PMT21300
PMT21310
PMT21320
PMT21330
PMT21340
PMT21350
PMT21360
PMT21370
PMT21380
PMT21390
PMT21400
PMT21410
PMT21420
. PMT21430
PMT21440
PMT21450
PMT21460
PMT21470
PMT21480
PMT21490
PMT21500
PMT21510
PMT21520
PMT21530
PMT21540
PMT21550
PMT21560
PMT21570
PMT21580
PMT21590
PMT21600
PMT21610
PMT21620
PMT21630
PMT21640
PMT21650
PMT21660
PMT21670
PMT21680
PMT21690
PMT21700
PMT21710
179
-------
135 READ(IRD,815) HAS,ASCALE(l),ASCALE(2),A(l),B(1),A(2),B(2)
C
C
C
C
C
C
C
C
C
C
C
IF(ASCALE(1).LE.O.)
IF(ASCALE(2).LE.O.)
ASCALE(1)=1.0
ASCALE(2)=1.0
**** READ CARD 6 (POLLUTANT AND CALIBRATION LABELS)
READ(IRD,817)(POLNAM(I,1).1=1,3
,fCALNAM(I,l),I=l,7),
,(CALNAM(I,2),I=1,7)
IF(NWPOPT.EQ.O) GO TO 136
**** READ CARD 7 (WIND PROFILE EXPONENTS AND ANEMOMETER HEIGHT)
NOTE: THIS IS AN OPTIONAL CARD
HA
Pl(I)
HMIN
HMAX
UMIN
= ANEMOMETER HEIGHT (METERS)
,1=1,6 = WIND PROFILE EXPONENTS FOR STABILITY CLASSES ]
= WIND CONSTANT BELOW THIS HEIGHT (DEFAULT 10 M)
= WIND CONSTANT ABOVE THIS HEIGHT (DEFAULT 200MJ
= WIND SPEED NOT ALLOWED LESS THEN THIS VALUE (DEFAUL3
TO 6
C
C
C
C
C
C
C
C
C
C
C
C
READ(IRD,818) HA, HMIN, HMAX, UMIN,(PI(I),1=1,6)
CHECK FOR DEFAULTS AND SET THEM EQUAL TO STANDARD
IF(HA.LT.O.Ol) HA=10.
IF(HMIN.LT.O.Ol) HMIN=10.
IF(HMAX.LT.O.Ol) HMAX=200.
IF(UMIN.LT.O.Ol) UMIN=1.
DO 136 1=1,6
IF(P1(I).LT.0.01)
136 CONTINUE
**** READ ONE TO 24 SCENARIO PARAMETER CARDS.
VALUES.
140
NSC = STABILITY CLASS NUMBER (1 TO 6)
NWS = WIND SPEED CLASS NUMBER (1 TO 6)
NWD = WIND SECTOR NUMBER (1 TO 16)
WS = WIND SPEED (M/S)
WD = WIND DIRECTION (DEGREES)
TA = AMBIENT TEMPERATURE (DEGREES CELSIUS)
HMIX = MIXING HEIGHT (METERS)
DTDZI = POT.TEMP.GRADIENT IN ELEVATED STABLE LAYER (DEG.C/M)
DO 150 IS=1.NSCEN
READ(IRD.820)NSC(IS),NWS(IS),NWD(IS),WS(IS),WD(IS),TA(IS),
1 HMIX(ISj,DTDZI(IS)
IF(NSC(IS).GE.l .AND. NSC(IS).LE.6) GO TO 140
NUM=1
IF(NSC(IS).GT.6) NUM=6
WRITE(IWR,535) IS,NSC(IS),NUM
NSC(IS)=NUM
IF(NWSOPT.EQ.O) GO TO 142
IF(NWS(IS).GE.l
NUM=1
IF(NWS(IS).GT.6) NUM=6
WRITE(IWR,545) IS.NWS(IS),NUM
.AND. NWS(IS).LE.6) GO TO 144
IHl J. JLli I J. IT tl. • \J~
NWS(IS)=NUM
GO TO 144
142 IF(WS(IS).GT.O
) GO TO 144
WRITE(IWR.565) IS,WS(IS)
WS(IS)=1.6
144 IF(NWDOPT.NE.l)
5.1
GO TO 146
.AND. NWD(IS).LE.16) GO TO 146
IF(NWD(IS).GE
NUM=1
IF(NWD(IS).GT.16) NUM=16
WHITE(IWR,555) IS,NWD(IS),NUM
NWD(IS)=NUM
146 IF(HMIX(IS).LT.1.0E-5) HMIX(IS)= 9999.9
IF(NINPEN.EQ.O) GO TO 150
IF(DTDZI(IS).LT.0.00001) DTDZI(IS)=0.010
150 CONTINUE
C
PMT21720
PMT21730
PMT21740
PMT21750
PMT21760
PMT21770
PMT21780
PMT21790
PMT21800
PMT21810
PMT21820
PMT21830
PMT21840
PMT21850
PMT21860
PMT21870
PMT21871
PMT21872
M/S)PMT21873
PMT21880
PMT21890
PMT21900
PMT21901
PMT21902
PMT21903
PMT21910
PMT21920
PMT21930
PMT21940
PMT21950
PMT21960
PMT21970
PMT21980
PMT21990
PMT22000
PMT22010
PMT22020
PMT22030
PMT22040
PMT22050
PMT22060
PMT22070
PMT22080
PMT22090
PMT22100
PMT22110
PMT22120
PMT22130
PMT22140
PMT22150
PMT22160
PMT22170
PMT22180
PMT22190
PMT22200
PMT22210
PMT22220
PMT22230
PMT22240
PMT22250
PMT22260
PMT22270
PMT22280
PMT22290
PMT22300
PMT22310
PMT22320
PMT22330
PMT22340
PMT22350
180
-------
c
c
PRINT INPUT CONTROL PARAMETERS
IF(ISTOP.EQ.l
WRITE(IWR,902
WRITE(IWR,904
WRITE(IWR,906
WRITE?IWR,908
IF(IGRID.EQ.O
WRITE(IWR,900
WRITE(IWR,922
WRITE(IWR,900) TT
NTOPT
NWDOPT
NWSOPT
NSCEN
WRITE(IWR,916) IX,LY,GRID,XRSWC,YRSWC
TT
NPOL,(POLNAM(I,1),I=1,3)
IF(NPOL.EQ.2) WRITE(IWR.923) (POLNAM(I,2),1=1,3)
WRITE(IWR,924) ASCALE(l}
IF(NPOL.EQ.2) WRITE(IWR.935) ASCALE(2)
WRITE(IWR,925) A(1),B(1)
IF(NPOL.EQ.2) WRITE(IWR,926) A(2).B(2)
WRITE(IWR,927) (CAINAM(l.l),1=1,7J
IF?NPOL.EQ.2J WRITE(IWR,921) (CALNAM(I,2),1=1,7)
WRITE(IWR,928) VDl
IF(NPOL.EQ.2T WRITE(IWR,931) VD2
WRITE(IWR,929) Wl
IF(NPOL.EQ.2) WRITE(IWR,933) W2
WRITE(IWR,930) ICT
IF(NPOL.EQ.l) WRITE(IWR,932)
IF(NPOL.EQ.2) WRITE(IWR,934)
IF(ICT.EQ.O) GO TO 152
WRITE(IWR,936) XKT
IF(NPOL.EQ.lj GO TO 152
WRITE(IWR,938) GAMMA
152 WRITE(IWR,940
C
C
C
IF
IF
IF
IF
IF
IF
IF
NLIST.GT.O) WRITE(IWR,942) NLIST
NARRAY.GT.O
NARRAY.EQ.l
NARRAY.EQ.2
NARRAY.EQ.3
NTAPE.GT.O)
WRITE
WRITE
WRITE
WRITE
IWR,944
IWR,946
IWR,948
IWR,950
NARRAY
WRITE?IWR.952) NTAPE,INTER
ii J.fu ia * va i » v / iiLi.LJUuvJ.rriL* J*Jt* J LI in.
NMAX.GT.O) WRITE(IWR,958) NMAX
PRINT INPUT PARAMETERS FOR SCENARIOS
WRITE
WRITE
WRITE
WRITE
IWR,960
IWR,962
IWR,963
IWR,964
TT
C
C
C
C
DO 162 IS=1,NSCEN
KS=NSC(IS)
WRITE(IWR,966) IS.SCLAB(KS)
IF(NWSOPT.EQ.O) GO TO 153
KW=NWS(IS)
WS(IS)=CWS(KW)
WRITE(IWR,970) KW
GO TO 154
153 WRITE(IWR,972) WS(IS)
154 IF(NWDOPT.EQ.l) GO TO 155
WDOUT=WD(ISy
WRITE(IWR,973) WDOUT
GO TO 156
155 KD=NWD(IS)
WDOUT=SECTAN(KD) * 180./3.14159265
WRITE(IWR,974) KD
156 IF
IF
WD
TA
NINPEN.EQ.1)WRITE(IWR,978)TA(IS).DTDZI(IS),HMIX(IS)
NINPEN.EQ.O)WRITE(IWR,979) TA(IS),HMIX(IS)
IS)= WD(IS}*3.14159265/180.
IS)= TA(IS) + 273.15
FOR EACH SCENARIO, CALCULATE THE CRITICAL DOWNWIND DISTANCES
AT WHICH VERTICAL MIXING IMPENDS (DCRIT(IS,1)) AND IS COMPLETE
(DCHIT(IS,2)).
JSC=NSC(ISJ
PC1=0.47*HMIX(IS)/AZ(JSC)
PMT22360
PMT22370
PMT22380
PMT22390
PMT22400
PMT22410
PMT22420
PMT22430
PMT22440
PMT22450
PMT22460
PMT22470
PMT22480
PMT22490
PMT22500
PMT22510
PMT22520
PMT22530
PMT22540
PMT22550
PMT22560
PMT22570
PMT22580
PMT22590
PMT22600
PMT22610
PMT22620
PMT22630
PMT22640
PMT22650
PMT22660
PMT22670
PMT22680
PMT22690
PMT22700
PMT22710
PMT22720
PMT22730
PMT22740
PMT22750
PMT22760
PMT22770
PMT22780
PMT22790
PMT22800
PMT22810
PMT22820
PMT22830
PMT22840
PMT22850
PMT22860
PMT22870
PMT22880
PMT22890
PMT22900
PMT22910
PMT22920
PMT22930
PMT22940
PMT22950
PMT22960
PMT22970
PMT22980
PMT22990
PMT23000
PMT23010
PMT23020
PMT23030
PMT23040
PMT23050
181
-------
c
c
c
c
c
c
c
162
C
C
C
C
C
C
C
C
C
IF(JSC.NE.S) GO TO 157
STABILITY CLASS C
DCR(IS.1}=.001*PC1
GO TO 161
157 IF(JSC.LT.S) GO TO 158
STABILITY CLASSES D,E, AND F
PC2=PC1*PC1*BZ(JSC)
PC3=2./(PC1*BZ(JSC))
DUMMY= 0.5*PC2*(1-+SQRT(1.+PC3*PC3))
DCR(IS.1)=.001*DUMMY
GO TO 161
STABILITY CLASSES A AND B
FIRST APPROXIMATION
158 XX(1)=PC1
DO 159 1=1,100
11=1+1
XX(I1)=PC1/SQRT(1.+BZ(JSC)*XX(I))
DIFF=ABS(XX(I1)-XX(I))
IF(DIFF.LE.0.5) GO TO 160
159 CONTINUE
160 DCR(IS,1)=.001*XX(I1}
161 DCR(IS,2)=2.*DCR(IS,1)
CONTINUE
**** READ UP TO 50 AREA SOURCE CARDS.
XA.YA
SIZE
= COORDINATES OF SOUTHWEST CORNER OF AREA SOURCE (KM).
= LENGTH OF A SIDE OF AREA SOURCE (M).
EA(1&2)= EMISSION RATES OF 2 POLLUTANTS (G/S).
NOTE THAT EA(1&2) ARE EMISSION RATES OF AN EQUIVALENT POINT
SOURCE LOCATED AT THE CENTER OF THE AREA SOURCE.
WRITE(IWR,990) TT
NAS=1
SUMAQ(1)=0.
C
170
C
SUMAQ(2)=0.
SUMAR(1)=0.
SUMAR(2)=0.
RE AD ( IRD , 825 ) XA ( NAS )
,YA(NAS),SIZE(NAS),EA(NAS,1),EA(NAS,2)
175
C
IF(NPOL.EQ.l) EA(NAS,2)=0.0
IF((SIZE(NAS)+EA(NAS,1)+EA(NAS,2)).LT.1.0E-04) GO TO 180
IF(SIZE(NAS).GE.1.0) GO TO 172
SIZE?NAS)=1.0
IF(GRID.NE.O.) SIZE(NAS)=GRID*1000.
WRITE(IWR,585) NAS.SIZE(NAS)
172 DO 175 K=l,2
EAR(K)=EA(NAS,K)
SUMAR(K)=SUMAR(K)+EAR(K)
EA(NAS,K)= EA(NAS,K)*ASCALE(K)
SUMAQ(K)=SUMAQ(K)+EA(NAS,K)
180
C
C
C
PRINT INPUT PARAMETERS FOR THIS AREA SOURCE
WRITE(IWR,992)NAS,XA(NAS),YA(NAS),SIZE(NAS),EAR(1),EA(NAS,1),
IEAR(2),EA(NAS,2)
SIZE(NAS)=SIZE(NAS)*0.001
IF(NAS/50*50.EQ.NAS) WRITE(IWR,990)TT
NAS=NAS-fl
GO TO 170
NAS=NAS-1
WRITE(IWR,994) SUMAR(l),SUMAQ(1),SUMAR(2),SUMAQ(2)
WRITE(IWR,996) HAS
**** READ UP TO 300 POINT SOURCES
PMT23060
PMT23070
PMT23080
PMT23090
PMT23100
PMT23110
PMT23120
PMT23130
PMT23140
PMT23150
PMT23160
PMT23170
PMT23180
PMT23190
PMT23200
PMT23210
PMT23220
PMT23230
PMT23240
PMT23250
PMT23260
PMT23270
PMT23280
PMT23290
PMT23300
PMT23310
PMT23320
PMT23330
PMT23340
PMT23350
PMT23360
PMT23370
PMT23380
PMT23390
PMT23400
PMT23410
PMT23420
PMT23430
PMT23440
PMT23450
PMT23460
.PMT23470
PMT23480
PMT23490
PMT23500
PMT23510
PMT23520
PMT23530
PMT23540
PMT23550
PMT23560
PMT23570
PMT23580
PMT23590
PMT23600
PMT23610
PMT23620
PMT23630
PMT23640
PMT23650
PMT23660
PMT23670
PMT23680
PMT23690
PMT23700
PMT23710
PMT23720
PMT23730
PMT23740
PMT23750
182
-------
c
c
c
c
c
c
c
c
c
XP,YP = COORDINATES OF POINT SOURCE (KM).
EP(1&2) = EMISSION RATES OF 2 POLLUTANTS (G/S).
HP = SOURCE HEIGHT (M).
DP = INSIDE DIAMETER (M).
VP = VELOCITY (M/S).
TP = TEMPERATURE (DEGREES CELSIUS).
K jffl = IDENTIFICATION.
184 WRITE(IWR,980)
NPS=1
SUMPQ(1)=0.
TT
SUMPQ(2
)=0.
)=0.
C
C
185 IF(INPTSC.EQ.2)READ(IDSK,830)XP(NPS),YP(NPS),EP(NPStl),EP(NPS,2)
1 HP(NPS),DP(NPS),VP(NPS),TP(NPS),NAME(1),NAME(2)
IFCINPTSC.EQ.1) READ(iRD,830)XP(NPS'),YP(NPS),EP(NPS,l),EP(NPS,2)
1 HP(NPS),DP(NPS),VP(NPS);TP(NPS),NAME(1),NAME(2)
IF(NPOL.EQ.l) EP(NPS,2)=0.0
IF(HP(NPSy+DP(NPS)+VP(NPS)+TP(NPS).LT.1.0E-4) GO TO 190
IF(DP(NPS).GT.O.O) GO TO 187
WRITE(IWR,575) NPS
DP(NPS)=1.0E-4
PRINT INPUT PARAMETERS FOR THIS POINT SOURCE
187 WRITE?IWR.984) NPS,NAME_(1) ,NAME(2) ,XP(NPS), YP(NPS) ,EP(NPS, 1)
1 EP(NPS,2;,HP(NPS),DP(NPS),VP(NPS),TP(NPS)
190
TP(NPS)=TP(NPS)+273.15
IF(NPS/50*50.EQ.NPSJ WRITE(IWR,980)TT
SUMPQ(1)=SUMPQ(1)+EP(NPS,1)
SUMPCK2)=SUMPQ(2)+EP(NPS,2)
NPS=NPS+1
GO TO 185
NPS= NPS-1
WRITE(IWR,986) SUMPQ(l),SUMPQ(2)
IF(NPS.LT.l) GO TO
301)
..A . fc .... 192
WRlTE(IWR,90l)
WRITE_(IWR,907) NWPOPT
IF(NWPOPT.EQ.i) WRITE(IWR,959) (P1(I),1=1,6),HA ,HMIN,HMAX,UMIN
915
919
WR]
WR]
WR]
WR]
IF
IF
IF
IF
IF
IF
[TE(IWR,910
:TE(IWR,911
[TE(IWR,920
.rTE(IWR,912
IGRID.EQ.l
NCSOPT.GT.
NCSOPT.GT. (
NPRINT.GT.C
NGPR.EQ.O)
NGPR.EQ.l)
NSTDWN
NPRISE
DTDZ?1),DTDZ(2)
NINPEN
WRITE(IWR,914)
.OR.NPRINT.GT.O) WRITE (IWR, 940)
)) WRITE? IWR, 954) NCSOPT
)) WRITE (IWR. 956) NPRINT
WRITE (IWR, 9 15) NGPR
WRITE(IWR,919) NGPR
FORMATC ',10X,'GRAD. PLUME RISE OPTION WHEN NGPR=0 : NGPR =
FORMAT(' ',10X,' FINAL EFFECTIVE PLUME RISE USED: NGPR =',!!)
WRITE?IWR.918) NBID
FORMAT(' J,9X,'BOUYANCY INDUCED DISPERSION FOR NBID=1
918
C
C IF THERE WERE SERIOUS
192 IF(ISTOP.EQ.O) GO TO
WRITE (IWR, 630)
CALL WAUDIT
STOP
ERRORS
195
IN INPUT PARAMETERS, STOP
PMT23760
PMT23770
PMT23780
PMT23790
PMT23800
PMT23810
PMT23820
PMT23830
PMT23840
PMT23850
PMT23860
PMT23870
PMT23880
PMT23890
PMT23900
PMT23910
PMT23920
PMT23930
PMT23940
PMT23950
PMT23960
PMT23970
PMT23980
PMT23990
PMT24000
PMT24010
PMT24020
PMT24030
PMT24040
PMT24050
PMT24060
PMT24070
PMT24080
PMT24090
PMT24100
PMT24110
PMT24120
PMT24130
PMT24140
PMT24150
PMT24160
PMT24170
PMT24180
PMT24190
PMT24200
PMT24210
PMT24220
PMT24230
PMT24240
PMT24250
PMT24251
PMT24252
IDPMT24253
PMT24254
PMT24255
NBID=',I2) PMT24256
PMT24260
PMT24270
PMT24280
PMT24290
C
C
C
C
C
INITIALIZE FOR
195 IWDOPT= 0
ISCEN=0
RETURN
FIRST CALL TO INMOD FOR SCENARIO PREPARATION
PREPARE SCENARIO INFORMATION
PMT24300
PMT24310
PMT24320
PMT24330
PMT24340
PMT24350
PMT24360
PMT24370
PMT24380
183
-------
C PMT24390
300 IF(NWDOPT.LE.l) GO TO 350 PMT24400
IFCISCEN.EQ.O.OR.IWDOPT.GE.4) GO TO 320 PMT24410
IWDOPT= IWDOPT + 1 PMT24420
WD(ISCEN)= WD(ISCEN) + WDINC(NWDOPT-l) PMT24430
IF(WD(ISCEN).GE.6.2831853) WD(ISCEN)=WD(ISCEN) - 6.2831853 PMT24440
GO TO 353 PMT24450
320 ISCEN= ISCEN + 1 PMT24460
IWDOPT= 1 PMT24470
GO TO 353 PMT24480
350 ISCEN= ISCEN + 1 PMT24490
353 ISC=NSC?ISCEN) PMT24500
IWD=NWD(ISCEN) PMT24510
D47= DCR(ISCEN,1) PMT24520
D80= DCR(ISCEN,2) PMT24530
08047= D80 - D47 PMT24540
IF(NCSOPT.EQ.O) GO TO 400 PMT24550
DO 380 1=1,25 PMT24560
DO 380 J=l,25 PMT24570
DO 380 K=l,5 PMT24580
DO 380 N=l,2 PMT24590
NWORST(I,J,K,N)=0 PMT24600
380 CWORST(I,J,K,N)=0- PMT24610
400 RETURN PMT24620
C PMT24630
C ERROR MESSAGES PMT24640
C PMT24650
500 WRITE(IWR.505) PMT24660
505 FORMAT(1HO,'WHEN TIME AVG OPTION NTOPT=2, NUMBER OF SCENARIOS MUSTPMT24670
1 =24') PMT24680
ISTOP=1 PMT24690
GO TO 10 PMT24700
510 WRITE(IWR,515) NSCEN PMT24710
515 FORMAT?1HO,'MAXIMUM NUMBER OF SCENARIOS ALLOWED IS 24. NSCEN=',I4)PMT24720
ISTOP=1 PMT24730
GO TO 20 PMT24740
520 WRITE(IWR,525) PMT24750
525 FORMAT(1HO,'AUTOGRID MAY NOT BE USED WITH TIME AVG OPTION NTOPT>1'PMT24760
1) PMT24770
ISTOP=1 PMT24780
GO TO 135 PMT24790
535 FORMAT(1HO 'IN SCENARIO',13,' STABILITY CLASS NUMBER NSC=',I2, PMT24800
1' IS OUT OF RANGE. NSC SET TO',12) PMT24810
545 FORMAT(1HO,'IN SCENARIO',13,' WIND SPEED CLASS NUMBER NWS=',I2, PMT24820
1' IS OUT OF RANGE. NWS SET TO',12) PMT24830
555 FORMAT(1HO,'IN SCENARIO',13,' WIND DIRECTION SECTOR NUMBER NWD=', PMT24840
1 13,' IS OUT OF RANGE. NWD SET TO',13) PMT24850
565 FORMAT(1HO,'IN SCENARIO',13,' SPECIFIED WIND SPEED WS =',F7.3,' ISPMT24860
1 LESS THAN ZERO. WS SET TO 1.0 M/S') PMT24870
575 FORMAT?1HO,'POINT SOURCE',14.': INSIDE DIAMETER MUST BE GREATER TPMT24880
1HAN ZERO. DP SET TO .0001 M3) PMT24890
585 FORMAT(1HO 'AREA SOURCE'.13.': LENGTH OF SIDE MUST BE GREATER THAPMT24900
IN ZERO. SIZE SET TO ' F9.2) PMT24910
600 FORMAT?1HO,'RUN REQUESTED WOULD PRODUCE OVER 62500 RECORDS ON TAPEPMT24920
I'/' OUTPUT OPTION NTAPE HAS BEEN SET TO ZERO') PMT24930
605 FORMAT?1HO 'OUTPUT OPTION NLIST MAY NOT BE USED WITH AUTOMATIC WINPMT24940
ID SHIFT OPTION (NWDOPT>1)'/' NLIST HAS BEEN SET TO ZERO') PMT24950
615 FORMAT?1HO,'AUTOMATIC WIND SHIFT OPTION (NWDOPT>1) MAY NOT BE USEDPMT24960
1 WITH TIME AVG OPTION NTOPT>1'/' NWDOPT HAS BEEN SET TO ZERO') PMT24970
620 FORMAT(1HO,'OUTPUT OPTION NTAPE MAY NOT BE USED WITH AUTOMATIC WINPMT24980
ID SHIFT OPTION (NWDOPT>1)'/' NTAPE HAS BEEN SET TO ZERO') PMT24990
625 FORMAT?1HO,'CONTROL STRATEGY OUTPUT OPTION NCSOPT MAY NOT BE USED PMT25000
1WITH NTOPT>1'/' NCSOPT HAS BEEN SET TO ZERO') PMT25010
630 FORMAT(1H1//" SERIOUS ERROR(S) IN INPUT PARAMETERS',5X, PMT25020
1 'RUN CANNOT BE CONTINUED5) PMT25030
635 FORMAT?1HO,'CONTROL STRATEGY OUTPUT OPTION NCSOPT MAY NOT BE USED PMT25040
IFOR MORE THAN'/' ONE SCENARIO WITH AUTOMATIC WINDSHIFT OPTION'/, PMT25050
2' NCSOPT HAS BEEN SET TO ZERO') PMT25060
640 FORMAT(1HO,'CHEMICAL TRANSFORMATION RATE XKT=',F7.3,' IS OUT OF RAPMT25070
INGE'/' XKT HAS BEEN SET TO',F8.3) PMT25080
184
-------
645 FORMAT(1HO 'CONTROL STRATEGY OUTPUT OPTION NCSOPT MAY NOT BE USED PMT25090
1WHEN NUMBER OF COLUMNS OR ROWS IN RECEPTOR GRID IS GREATER THAN 25PMT25100
2'/' NCSOPT HAS BEEN SET TO ZERO')
660 FORMAT(1HO,'TIME AVERAGING OPTION NTOPT=',I2,' IS OUT OF RANGE
1TOPT SET TO 1')
C
C
C
800
INPUT FORMATS
805
810
812
815
817
818
820
825
830
C
C
C
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
20A4)
1814)
2F10. 0.2110, 3F10.0)
2I5.6F10.0)
7F10.0)
3A4,7A4,3A4,7A4)
10F7.0)
3I5.5F10.0)
5F1&.0)
8F9.0.2A4)
OUTPUT FORMATS
PMT25110
NPMT25120
PMT25130
PMT25140
PMT25150
PMT25160
PMT25170
PMT25180
PMT25190
PMT25200
PMT25210
PMT25220
PMT25230
PMT25240
PMT25250
PMT25260
PMT25270
PMT25280
PMT25290
900 FORMAT(1H1.37X,'POLLUTION EPISODIC MODEL (PEM-2)'///4X,'INPUT CONTPMT25300
1ROL PARAMETERS: ',20A4//) PMT25310
901 FORMAT(//4X 'INPUT CONTROL PARAMETERS:'//) PMT25320
902 FORMAT(10X,}AVERAGING TIME OPTION: NTOPT=* II// PMT25330
1 18X,'A SCENARIO IS A SET OF METEOROLOGICAL DATA FOR ONE HOUR'// PMT25340
2 13X,'l 1 HOUR: CONCENTRATIONS ARE CALCULATED FOR EACH SCENARIO'/PMT25350
3 13X,'2 24 HOURS: CONCENTRATIONS CALCULATED FOR 24 SCENARIOS ARE PMT25360
4AVERAGED'/13X '3 VARIABLE: CONCENTRATIONS CALCULATED FOR A GIVEN PMT25370
5NUMBER (2 TO 23) OF SCENARIOS ARE AVERAGED'//) PMT25380
904 FORMAT(10X,'WIND DIRECTION OPTION: NWDOPT=' II// PMT25390
113X,'0 DIRECTION IN DEGREES TO BE SPECIFIED FOR EACH SCENARIO'/ PMT25400
213X,'l SECTOR NUMBER TO BE SPECIFIED FOR EACH SCENARIO'/ PMT25410
312X,'2-7 DIRECTION IN DEGREES TO BE SPECIFIED FOR THE FIRST OF FOUPMT25420
4R SUB-SCENARIOS.'/17X,'FOR EACH SUCCEEDING SUB-SCENARIO. WIND DIREPMT25430
5CTION IS AUTOMATICALLY INCREASED'/17X,'BY 90,45,30,15,10,OR 5 DEGRPMT25440
6EES, DEPENDING ON THE OPTION NUMBER SELECTED.'//) PMT25450
906 FORMAT(1OX,'WIND SPEED OPTION: NWSOPT=',II// PMT25460
113X,'0 SPEED IN M/S TO BE SPECIFIED FOR EACH SCENARIO'/ PMT25470
213X,'l WIND SPEED CLASS NUMBER TO BE SPECIFIED FOR EACH SCENARIO'PMT25480
3//) PMT25490
907 FORMAT(10X,'WIND PROFILE EXPONENTS OPTION: NWPOPT=',II// PMT25500
113X,'0 EXPONENTS AND ANEMOMETER HEIGHT ARE STANDARD DEFAULT VALUEPMT25510
2S'/ PMT25520
313X,'l EXPONENTS AND ANEMOMETER HEIGHT TO BE SPECIFIED BY THE USEPMT25530
PMT25540
PMT25550
PMT25560
PMT25570
PMT25580
911 FORMATS10X,'NEW PLUME-RISE EQUATIONS OPTION: NPRISE=' II// PMT25590
1 13X,'0 STANDARD PLUME-RISE EQS. ARE USED FOR ALL STABILITY CLASSPMT25600
2ES'/ PMT25610
3 13X,'l NEW EQS. ARE USED FOR PEAK BUOYANCY RISE FOR STABILITY CLPMT25620
4ASSES A-D'//) PMT25630
912 FORMAT(10X,'PLUME PENETRATION ABOVE MIXING HEIGHT OPTION: NINPEN='PMT25640
1,1I//, PMT25650
2 13X,'0 STANDARD TREATMENT OF PLUME PENETRATION ABOVE THE MIXING'PMT25660
3,' HEIGHT'?, PMT25670
4 ISX.'l NEW SCHEMES FOR PLUME PENETRATION OF ELEVATED STABLE LAYEPMT25680
5R USED'/16X,' FOR STABILITY CLASSES A-D AND BUOYANCY-DOMINATED PLUPMT25690
6ME'//) PMT25700
914 FORMAT(10X,'AUTOMATIC RECEPTOR GRID OPTION IS IN EFFECT'//) PMT25710
916 FORMAT(10X,'RECEPTOR GRID:', PMT25720
16X,'COLUMNS: LX=' 13,4X,'ROWS: LY=',I3/ PMT25730
230X,'SPACING: GHID=',F7.3,' KM'/ PMT25740
330X,'SOUTHWEST CORNER XRSWC= '.F8.3,' KM W'/ PMT25750
450X,'YRSWC= '.F8.3,' KM S'//) PMT25760
920 FORMATQOX, 'POTENTIAL TEMPERATURE GRADIENT: DTDZ(1)= ',F7.3, PMT25770
1' DEG/M STABILITY CLASS E'/ PMT25780
4R')'
908 FORMATS10X,'NUMBER OF SCENARIOS: NSCEN=',I2//)
910 FORMAT(//10X,'STACK-TIP DOWNWASH ALGORITHM OPTION: NSTDWN=',II//
1 13X,'0 ALGORITHM IS IN EFFECT'/
2 13X,'1 ALGORITHM IS NOT USED'//)
185
-------
242X,'DTDZ(2)= ' F7.3,' DEG/M STABILITY CLASS F'//) PMT25790
921 FORMAT(1H+.85X.7A4) PMT25800
922 FORMAT(10X,'NUMBER OF POLLUTANTS: NPOL=',I1/ PMT25810
1 51X,'POLLUTANT-1: *,3A4) PMT25820
923 FORMAT(lH+,85X,'POLLUTANT-2: ',3A4) PMT25830
924 FORMAT?/10X 'AREA SOURCE SCALING FACTOR:',17X,'ASCALE=',F9.3) PMT25840
925 FORMAT(iox,'CALIBRATION COEFFICIENTS:', PMT25850
1 16X 'A=',F10.3' B='.F10.3) PMT25860
926 FORMAT 1H+.85X,!A=',Fl6.3,' B=',F10.3) PMT25870
10X,'CALIBRATION IDENTIFICATION:',14X,7A4.6X.7A4) PMT25880
' 'VDl=',F8.3) PMT25890
927 FORMAT
928 FORMAT
929 FORMAT
930 FORMAT
931 FORMAT
932 FORMAT
10X, 'DEPOSITION VELOCITY (CM/S) : ' ,20X, ' VD1=' ,F8.3) PMT25890
10X.' SETTLING VELOCITY (CM/S) : ' ,23X ,'W1=' , F8.3) PMT25900
10X.' SETTLING VELOCITY (CM/S) : ,23X ,'W1=' , F8.3)
//10X 'CHEMICAL TRANSFORMATION OPTION: ICT=',I1/)
1H+.91X 'VD2=',F8.3)
13X,'NPOL=1'/
PMT25910
PMT25920
PMT25930
215X,'ICT=0 CHEMICAL TRANSFORMATION LOSS OF POLLUTANT IS IGNORED'/PMT25940
315X,'ICT=1 FIRST-ORDER CHEMICAL TRANSFORMATION LOSS OF POLLUTANT PMT25950
4IS CONSIDERED'//) PMT25960
933 FORMAT71H+,92X,'W2=',F8.3) PMT25970
934 FORMAT(13X,'NPOL=2'/ PMT25980
215X.'ICT=0 CHEMICAL TRANSFORMATION LOSS OF POLLUTANTS IS IGNORED'PMT25990
3/15X,'ICT=1 FIRST-ORDER CHEMICAL TRANSFORMATION OF POLLUTANT-1 TOPMT26000
4 POLLUTANT-2 IS CONSIDERED'//) PMT26010
935 FORMAT(1H+.88X,'ASCALE=' F9.3) PMT26020
1 POLLUTANT-1 (REACTANT): GAMMA=',F6.3/) PMT26060
940 FORMATQOX,'OUTPUT OPTIONS SELECTED:'//) PMT26070
942 FORMAT(13X,'NLIST=',II,3X,'LISTS OF CONCENTRATION AND SURFACE DEPOPMT26080
1SITION FLUX AT EACH RECEPTOR IN THE GRID,'/24X,'ONE COLUMN PER PAGPMT26090
2E') PMT26100
944 FORMAT(13X,'NARRAY=',I1,2X,'MAPS OF CONCENTRATION AND SURFACE DEPOPMT26110
1SITION FLUX AT EACH RECEPTOR IN THE GRID ') PMT26120
948 FORMAT(24X,'CALIBRATED AND UNCALIBRATED'; PMT26130
948 FORMAT(24X,'UNCALIBRATED ONLY') PMT26140
950 FORMAT(24X,'CALIBRATED ONLY') PMT26150
952 FORMAT(13X,'NTAPE=',I1.3X,'TAPE CONTAINING COORDINATES, CONCENTRATPMT26160
HON. AND SURFACE DEPOSITION FLUX'/24X,'AT EACH RECEPTOR IN THE GRIPMT26170
2D'/13X'INTER=',I2,2X,'INTERVAL OF RECEPTORS WHICH WILL BE WRITTENPMT26180
3 ON TAPE') PMT26190
954 FORMAT(13X.'NCSOPT=' I1.2X 'LIST OF POINT SOURCE CULPABILITY FOR CPMT26200
lONCENTRATION AND SURFACE DEPOSITION FLUX'/24X,'AT EACH RECEPTOR INPMT26210
2 THE GRID'//) PMT26220
956 FORMAT(13X,'NPRINT=',I1,2X,'LIST OF POINT SOURCE PARAMETERS AND EFPMT26230
1FECTIVE STACK HEIGHTSV24X,'PRINTED AT BEGINNING OF EACH SCENARIO'PMT26240
2//) PMT26250
958 FORMAT(13X,'NMAX=',I1.4X 'LIST OF RECEPTORS WITH HIGHEST CONCENTRAPMT26260
1TION AND SURFACE DEPOSITION FLUX'/24X,'FOR EACH SCENARIO - PRINTEDPMT26270
2 AT END OF RUN') PMT26280
959 FORMAT(/16X 'USER SPECIFIED WIND PROFILE EXPONENT VALUES:'/20X, PMT26290
16(F4.2,3X)/20X,'ANEMOMETER HEIGHT = 'F4.1, IX,'METERS', PMT26300
23X,'HMIN =',1X,F4.1,' ,HMAX = ',F4.0, ,UM1N = r,F3.1) PMT26301
960 FORMAT(1H1.37X,'POLLUTION EPISODIC MODEL (PEM^2)V//4X,'INPUT SCENPMT26310
1ARIO PARAMETERS: '.20A4//26X 'WIND DIRECTIONS',27X,'WIND SPEED CLPMT26320
2ASSES',12X,'STABILITY CLASSES'/) PMT26330
962 FORMATUOX 'SECTOR DIRECTION4,6X ' SECTOR DIRECTION', 9X, PMT26340
1'CLASS SPEED CLASSM5X,'CLASS1/ PMT26350
«>1f\Y »WTIMTJPn» RY >l'T\'Pn\' fiY 'MTIMnPO' QV *fT\Vfl\' QV » TXJTIT7V /M/c\ nua'OC">on
963.FOHMAT(13Xt14_. ENfi _.67.5| LSxt 112._ WSW. >7.5» .lix, !3' ,6X, PMT26410
WPMT26420
PMT26430
SiiT-8
964 FORMAT(5X,'SCENARIO',3X,'STABILITY',3X, 'WIND SPEED',5X,'WIND',8X, PMT26480
186
-------
966
970
972
973
974
978
979
980
l'WIND',6X, 'WIND', 8X ' AMBIENT' 4X, 'TEMP GRADIENT ABOVE', 8X,
2 'MIXING' /6x, * NUMBER' , ex , ' CLASS ' , 7x , ' CLASS ' , sx, ' SPEED ' , 6x ,
3' SECTOR' ,3X, ' DIRECTION' . 3X, ' TEMPERATURE ' . 5X 'MIXING HEIGHT
411X, 'HEIGHT J/43X, ' (M/S) ' , 17X, ' (DEC) ' ,7X, ' (DEG C) ' , 10X,
5'(DEG/M)M5X. '(
FORMAT 8X.I2.10X
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
FORMAT
IT SOUR
.A2
1H+.42X.F6.3
1H+,63X,F6.2
1H+.55X.I2)
1H+,76X,F7.2,11X,F6.3.11X,F7.1)
1H+,76X,F7.2,28X,F7.1J
1H1.37X 'POLLUTION EPISODIC MODEL (PEM-2)
j.nj.,o/A, rwjjijuij-uiii crioiu*
E PARAMETERS: ',20A4///
PMT26490
PMT26500
PMT26510
PMT26520
PMT26530
PMT26540
PMT26550
PMT26560
PMT26570
PMT26580
PMT26590
PMT26600
///4X,'INPUT POINPMT26610
PMT26620
PMT26630
PMT26640
PMT26650
6'(M/S)',8X,'(DEG C)V) PMT26670
984 FORMAT(6X,13,3X,2A4.3X,F8.2,2X,F8.2,10X,F9.3,10X,F9.3,6X,F6.2,5X, PMT26680
1F6.3.6X,F7.3,6X,F8.3)
986 FORMAT(1HO,5X,'SUMS OF THE POINT SOURCE EMISSION RATES',6X,F9.3,
1' G/S',6X.F9.3,' G/SM
990 FORMAT(1H1,37X,'POLLUT
PMT26690
PMT26700
PMT26710
ION EPISODIC MODEL (PEM-2)'///4X,'INPUT AREAPMT26720
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
1 SOURCE PARAMETERS: ',20A4///
270X,'POLLUTANT-1'17X,'POLLUTANT-2'/5X.'AREA SOURCE'.8X.
3'COORDINATES',9X, LENGTH OF SIDE',11X, EMISSION RATE'.ISX,
4'EMISSION RATE'/
57X,'NUMBER',9X,'X(KM)',5X,'Y(KM)' 13X,'(M)',12X,'INPUT (G/S)
64X,'SCALED'!7X|'INPUT 5G/S)',4X,'SCALEDV)
992 FORMAT(9X,I2,8X,F8.2,2X,F8.2,10X,F8.2,9X,F9.3,4X,F9.3,6X,
1 F9.3,4X,F9.3)
994 FORMATUHO, ISX.'SUMS OF THE AREA SOURCE EMISSION RATES',
1 7X,F9.3.4X,F9.3,6X,F9.3,4X,F9.3)
996 FORMAT(/17X,'EFFECTIVE HEIGHT OF THE AREA SOURCE EMISSIONS',
1 ' = '.F6.2,' M')
END
SUBROUTINE
OUTMOD
SUBROUTINE
OUTMOD , PART OF PEM-2 (VERSION 84130)
***
***
SUBROUTINE OUTMOD COORDINATES OUTPUT OF THE CONCENTRATION(S)
AND SURFACE DEPOSITION FLUX(ES) CALCULATED FOR EACH RECEPTOR
IN THE GRID FOR EACH SCENARIO OR AVERAGING-PERIOD.
ON OPTION, THE OUTPUT MAY BE IN THE FORM OF LISTS, ARRAY
MAPS, OR TAPE.
ON OPTION, OUTMOD CALLS SUBROUTINE WOROUT TO PRINT A CULPABILITY
LIST OF POINT SOURCES.
OUTMOD ALSO CALLS SUBROUTINE SCENMX TO DETERMINE AND STORE THE
RECEPTORS WITH MAXIMUM CONCENTRATION^) AND SURFACE DEPOSITION
FLUX(ES) FOR THE AVERAGING-PERIOD.
PEM MODIFICATIONS AND FORMATS BY MARTHA M. STEVENS,
NOAA-ATDL, P.O. BOX-E, OAK RIDGE, TENN 37831
DECEMBER 1982
PEM-2 MODIFICATIONS BY K. SHANKAR RAO
DECEMBER 1984
COMMON/PEMCOM/CONC(50,50,2),SDF(50,50,2).TT(20).
1 XP(300).YP(300),EP(360,2),HP(300),DP(300),VP(360),TP(300),
2 XA(50),YA(50))EA(50.2))SI^E(50),
3 WD(24),WS(24),TA(24),HMIX(24),DTDZI(24),
4 AZ(6),BZ(6),c£(6),P(6),SCLAB(6),DTDZ(2),SECTAN(16),
...... 2).CALNAM(7,2),
XSWC,YSWC,GRID,LX,LY,A(2),B('2),POLNAM(3,2),CALNAM
ITA,IRD,IWR,IDSK,D80,D47)D8047,DIST,DELTA,HPRIME,
PMT26730
PMT26740
PMT26750
PMT26760
PMT26770
PMT26780
PMT26790
PMT26800
PMT26810
PMT26820
PMT26830
PMT26840
PMT26850
PMT26860
PMT26870
PMT26880
.PMT26890
PMT26900
PMT26910
PMT26920
PMT26930
PMT26940
PMT26950
PMT26960
PMT26970
PMT26980
PMT26990
PMT27000
PMT27010
PMT27020
PMT27030
PMT27040
PMT27050
PMT27060
PMT27070
PMT27080
PMT27090
PMT27100
PMT27110
PMT27120
PMT27130
PMT27140
PMT27150
PMT27160
PMT27170
187
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
7 ESH(2),PEAK,IBUOY,IRISE,IDWN,EFF,XS,UINV,WVEC,
8 NAS.NPS,INDEX.IGRID,IAV,ISCEN,IWDOPT.IWD,ISC,IPS,
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NLIST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
COMMON/PARM1/NPOL,VD1.Wl.VD2,W2
DIMENSION CON(2),CALCON(2),SD(2),CALSD(2),AVD(2)
CONTROL STRATEGY RESULTS OUTPUT BY SUBROUTINE WOROUT
IF(NCSOPT.GT.O) CALL WOROUT
PRINT AND/OR WRITE-ON-TAPE LISTS OF CONCENTRATIONS) AND
SURFACE DEPOSITION FLUX(ES)
IFfNLIST.EQ.O .AND. NTAPE.EQ.O) GO TO 350
IF(NTAPE.GT.O) WRITE(ITA,900)TT
NDEP=0
IF(VD1.GE.0.01.OR.VD2.GE.0.01) GO TO 100
GO TO 150
100 NDEP=1
DEFINE CALIBRATION COEFFICIENTS FOR DEPOSITION FLUX
AVD(1)=A(1)*VD1*36.
AVD(2)=A(2)*VD2*36.
150 IF(NLIST.EQ.O) GO TO 200
WOUT=WD(ISCEN)*180./3.1415927
PRINT TITLE, SCENARIO, AND AVERAGING-PERIOD INFORMATION
IF(NTOPT.EQ.l) WRITE(IWR,905)TT,ISCEN,SCLAB(ISC),WS(ISCEN),WOUT,
1 HMIX(ISCEN).IAV
IF(NTOPT.GT.l) WRITE(IWR,906) TT,ISCEN,IAV
PRINT TITLES FOR UNCALIBRATED CONCENTRATION AND DEPOSITION FLUX,
AND CALIBRATED CONCENTRATION
WRITE(IWR,910)(CALNAM(L,1),L=1,7),(CALNAM(L,2),L=1,7)
BEGIN DO-LOOP ON RECEPTOR GRID COLUMNS
200 DO 325 1=1,LX
XI=I
X=XSWC+(XI-0.5)*GRID
BEGIN DO-LOOP ON RECPTOR GRID ROWS
DO 300 J=1,LY
YJ=J
Y=YSWC+(YJ-0.5)*GRID
C
C
C
INITIALIZE CONCENTRATION AND SDF VARIABLES
DO 260 K=l,2
CON(K)=0.
CALCON(K)=0.
SD(K)=0.
CALSD(K)=0.
260 CONTINUE
DEFINE AND PRINT UNCALIBRATED CONCENTRATIONS AND DEPOSITION
AND CALIBRATED CONCENTRATIONS
DO 280 K=1,NPOL
CON(K)=CONC(I,J,K)
CALCON(K)= A(K) + B(K) * CON(K)
IF(NDEP.EQ.O) GO TO 280
SD(K)=SDF(I,J,K)
IF(NTAPE.GT.O) CALSD(K)= AVD(K) + B(K) * SD(K)
280 CONTINUE
IF(NLIST.EQ.O) GO TO 290
O)
.1.
C
C
GO TO 290
WRITE ON TAPE ALL CALIBRATED AND UNCALIBRATED OUTPUT DATA
290 IF (NTAPE. EQ.O) GO TO 300
PMT27180
PMT27190
PMT27200
PMT27210
PMT27220
PMT27230
PMT27240
PMT27250
PMT27260
PMT27270
PMT27280
PMT27290
PMT27300
PMT27310
PMT27320
PMT27330
PMT27340
PMT27350
PMT27360
PMT27370
PMT27380
PMT27390
PMT27400
PMT27410
PMT27420
PMT27430
PMT27440
PMT27450
PMT27460
PMT27470
PMT27480
PMT27490
PMT27500
PMT27510
PMT27520
PMT27530
PMT27540
PMT27550
PMT27560
PMT27570
PMT27580
.PMT27590
PMT27600
PMT27610
PMT27620
PMT27630
PMT27640
PMT27650
PMT27660
PMT27670
PMT27680
PMT27690
PMT27700
FLUXESPMT27710
PMT27720
PMT27730
PMT27740
PMT27750
PMT27760
PMT27770
PMT27780
PMT27790
PMT27800
PMT27810
PMT27820
PMT27830
PMT27840
PMT27850
PMT27860
PMT27870
188
-------
IF(((I-1)/INTER)*INTER.NE.(I-l).OH.((J-1)/INTER)*INTER.NE.
1 (J-l)) GO TO 300
WRITE(ITA,975)X,Y,(CON(K),SD(K),CALCON(K),CALSD(K),K=1,2)
300 CONTINUE
C
C END LOOP ON GRID ROWS
325 CONTINUE
C END LOOP ON GRID COLUMNS
C
C
C PRINT ARRAY MAPS OF CONCENTRATIONS
350 IF(NARRAY.GT.O) CALL ARRAY
C
C
C
C
PMT27880
PMT27890
PMT27900
PMT27910
PMT27920
PMT27930
PMT27940
PMT27950
PMT27960
PMT27970
PMT27980
PMT27990
PMT28000
DETERMINE MAXIMUM PREDICTED CONCENTRATION(S) FOR SCENARIO VIA SCENMX PMT28010
IF(NMAX.GT.O.AND.(NTOPT.EQ.1.0R.ISCEN.EQ.NSCEN)) CALL SCENMX PMT28020
PMT28030
RETURN • PMT28040
PMT28050
PMT28060
, PMT28070
F5.2 ' M/S.PMT28080
AVERAGING PMT28090
PMT28100
. PMT28110
120A4/1X.I2,' SCENARIOS,',2X,'AVERAGING TIME=',13,' HRS.'//) PMT28120
910 FORMAT(15X,'RECEPTOR',4X,'UNCALIBRATED CONCENTRATION',2X,'UNCALIB.PMT28130
1DEPOSITION FLUX',2X 'CALIBRATED CONCEN.POL-1:'.7A4/14X,'COORDINATEPMT28140
2S',3X,'(MICROGRAMS/CUBIC METER)',3X,'(MICROGRAMS/SQ.M/HOUR)',3X. PMT28150
3'CALIBRATED CONCEN.POL-2:'.7A4/1X,'COL ROW',5X.'X(KM)',3X.^YfKM)'.PMT28160
44X,'POL-l',llX,'POL-2',9X,}POL-l')8X,)POL-2',4X,'POL-l5,8X,'POL-2'PMT2817g
970 FORMAT(2(2X.I2),2X,2(2X,F6.2),2X,F8.2,8X,F8.2,2(3X,F10.1),
900 FORMAT(20A4)
905 FORMAT(1H1, PEM-2 OUTPUT: PREDICTED CONCENTRATIONS:
120A4>' SCENARIO ',12,', STABILITY=',A2,', WIND SPEED='
2 WIND DIRECTION=',F6,2,' DEC, MIXING HEIGHT^',F7.1,' M
3TIME=',I2 ' HR.'//)
906 FORMAT(1H1,'PEM-2 OUTPUT: PREDICTED CONCENTRATIONS:
.
1 2(2X,Ell.4)1
975 FORMAT(10F8.2)
END
SUBROUTINE ARRAY
SUBROUTINE ARRAY
PART OF PEM-2 (VERSION 84130),
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C *** PEM MODIFICATIONS AND FORMATS BY M.M. STEVENS,
C NOAA-ATDL. P.O. BOX E, OAK RIDGE, TN 37831
C DECEMBER 1982
C *** PEM-2 MODIFICATIONS AND FORMATS BY K. SHANKAR RAO
SUBROUTINE ARRAY CREATES ARRAY MAPS OF THE CONCENTRATIONS AND
SURFACE DEPOSITION FLUXES IN THE RECEPTOR GRID AND
PRINTS THEM AT THE END OF EACH SCENARIO OR AVERAGING PERIOD.
UNCALIBRATED AND CALIBRATED CONCENTRATIONS OF EACH POLLUTANT
APPEAR ON SEPARATE MAPS OF UP TO FOUR SECTIONS (PAGEST EACH.
EACH SECTION (PAGE) ACCOMODATES VALUES AT 25X25 RECEPTORS.
C
C
C
JULY 1984
COMMON/PEMCOM/CONC(50.50.2),SDF(50,50,2),TT(20).
1 XP(300) .YP(300) ,EP(300,2) ,HP(300) ,DP(300) , VP(300) , TP(300) ,
2 XA(50),YA(50),EA(50.2);Sl£E(50),
3 WD(24),WS(24),TA(24).HMIX(24),DTDZI(24),
4 AZ(6),BZ(6),CZ(6),P(6),SCLAB(6),DTDZ(2),SECTAN(16),
5 XSWC,YSWC,GRID,LX,LY,A[2),B(2),POLNAM(3,2),CALNAM(7,2),
6 ITA, IRD , IWR, IDSK, D80 , D47 , D8047 , DIST, DELTA, HPRIME ,
7 ESH(2) .PEAK, IBUOY, IRISE, IDWN.EFF.XS.UINV.WVEC,
8 NAS, NFS , INDEX, IGRID, IAV, ISCEN, IWDOPT, IWD, ISC, IPS,
9 NTOPT , NWDOPT, NWSOPT , NWPOPT, NSCEN, NLIST, NARRAY, NTAPE , NCSOPT ,
* NMAX, NSTDWN, NPRISE , NINPEN, INTER, NPRINT, NGPR, NBID
COMMON/PARM1/NPOL , VD 1 , Wl , VD2 , W2
PMT28180
PMT28190
PMT28200
PMT28210
PMT28220
PMT28250
PMT28230
PMT28240
PMT28260
PMT28270
.PMT28280
PMT28290
PMT28300
PMT28310
PMT28320
PMT28330
PMT28340
PMT28350
PMT28360
PMT28370
PMT28380
PMT28390
PMT28400
PMT28410
PMT28420
PMT28430
PMT28440
PMT28450
PMT28460
PMT28470
PMT28480
PMT28490
PMT28500
PMT28510
PMT28520
PMT28530
PMT28540
PMT28550
PMT28560
189
-------
DIMENSION X(50),CC(50),SSDF(50),DV(2),AVD(2)
INTEGER CC.SSDF
DV(1)=VD1
DV(2)=VD2
WOUT= WD(ISCEN)*180./3.1415927
NLX=1
NLY=1
IF(LX.GT.25) NLX=2
IF(LY.GT.25J NLY=2
NSECT=NLX*NLY
C
100 ISECT=0
DO 700 JLX=1,NLX
MX2= JLX*25
IF(MX2.GT.LX) MX2=LX
MX1=1
IF(JLX.EQ.2) MX1=26
DO 125 I=MX1,MX2
XI=I
125 X(I) = XSWC + (XI-0.5)*GRID
DO 600 JLY=1,NLY
ISECT=ISECT+1
IF(JLY.EQ.l) GO TO 150
MY1=26
MY2=LY
GO TO 175
150 MY1=1
MY2=25
IF(LY.LT.25) MY2=LY
C
C
175 DO 500 N=1,NPOL
NREP=0
180 IF(NARRAY.EQ.S) GO TO 181
C PRINT UNCALIBRATED ARRAYS OF CONCENTRATION AND DEPOSITION FLUX
C (FOR NARRAY = 1 OR 2)
IF(NTOPT.EQ.l) WRITE(IWR,900)ISECT,NSECT,ISCEN,TT
IF(NTOPT.GT.l) WRITE(IWR.901)ISECT,NSECT,TT
IF(NTOPT.EQ.1)WRITE(IWR,902)SCLAB(ISC),WS(ISCEN),WOUT,HMIX(ISCEN)
1 IAV.N,(POLNAM(L.N),L=l,3)
IF(NTOPT.GT.l) WRITE(IWR,903)ISCEN,IAV,N,(POLNAM(L.N),L=1,3)
IF(NREP.EQ.O) GO TO 185
C LOOP THROUGH SDF ARRAY TO FIND ANY VALUE GE 1000. IN THAT CASE.
C SET FLAG TO SCALE SDF VALUES AS THEY ARE SET IN SSDF ARRAY
181 IFLAG=0
DO 183 NX=1,LX
DO 183 NY=1,LY
IF(NARRAY.EQ.3]
IF(SDF(NX,NY,N
GO TO 183
182 DUMMY=AVD(N)+B(N)*SDF(NX,NY,N)
IF(DUMMY.GT.999.49) GO TO 184
183 CONTINUE
IF(NARRAY.EQ.3) GO TO 320
WRITE(IWR,905)
GO TO 190
184 IFLAG=1
IF(NARRAY.EQ.3) GO TO 320
WRITE(IWR,910)
GO TO 190
185 WRITE(IWR,904)
190 WRITE(IWR,915) (X(I),I=MX1,MX2,2)
DO 300 J=MY1,MY2
IY= MY2 + MY1 - J
Y=IY
Y= YSWC + (Y-0.5)*GRID
C
IF(NHEP.EQ.l) GO TO 240
GO TO 182
GT.999.49) GO TO 184
PMT28570
PMT28580
PMT28590
PMT28600
PMT28610
PMT28620
PMT28630
PMT28G40
PMT28650
PMT28660
PMT28670
PMT28680
PMT28690
PMT28700
PMT28710
PMT28720
PMT28730
PMT28740
PMT28750
PMT28760
PMT28770
PMT28780
PMT28790
PMT28800
PMT28810
PMT28820
PMT28830
PMT28840
PMT28850
PMT28860
PMT28870
PMT28880
PMT28890
PMT28900
PMT28910
PMT28920
PMT28930
PMT28940
PMT28950
.PMT28960
PMT28970
PMT28980
PMT28990
PMT29000
PMT29010
PMT29020
PMT29030
PMT29040
PMT29050
PMT29060
PMT29070
PMT29080
PMT29090
PMT29100
PMT29110
PMT29120
PMT29130
PMT29140
PMT29150
PMT29160
PMT29170
PMT29180
PMT29190
PMT29200
PMT29210
PMT29220
PMT29230
PMT29240
PMT29250
PMT29260
190
-------
230
300
DO 230 I=MX1,MX2
CC(I)= CONC(I,IY,N) +0.5
WRITE(IWR,920)Y,(CC(I),I=MX1,MX2)
GO TO 300
240 DO 250 I=MX1.MX2
IF(IFLAG.EQ.O) GO TO 245
SSDF(I)=SDF(I,IY,N)*1.0E-03 + 0.5
GO TO 250
245 SSDF(I)= SDF(I,IY,N) +0.5
250 CONTINUE
WRITE(IWR, 920) Y,(SSDF(I),I=MX1,MX2)
WRITE(IWR,925)Y
C
C
C
C
WRITE(IWR,915)(X(I),I=MX1,MX2,2)
IF(NARRAY.EQ.2) GO TO 450
PRINT CALIBRATED ARRAYS OF CONCENTRATION (FOR NARRAY = 1 OR 3)
AND DEPOSITION FLUX (FOR NARRAY = 3 ONLY)
320 IF(NTOPT.EQ.l) WRITE(IWR,900)ISECT,NSECT,ISCEN.TT
IF(NTOPT.GT.l) WRITE(IWR,901)ISECT,NSECT,TT
IFCNTOPT.EQ.1)WRITE(IWR.902)SCLAB(ISC),WS(ISCEN),WOUT,HMIX(ISCEN)
AVtN,(POLNAM(L.N),L=l,3)
IF
IF
IF
IF
IF
IF
xnT 9 u, ^ i \sjjii niTx\ jj.iiyjjj—j.joy
NTOPT.GT.l) WRITE(IWR.903)ISCEN,IAV,N,(POLNAM(L,N).L=1,3)
NREP.EQ.O) WRITE(IWR,906)(CALNAM(L,N),L=1,7),A(N),B(N)
NARRAY.EQ.l) GO TO 322
NREP.EQ.O) GO TO 322
.0) WRITE(IWR,907)
IFLAG.EQ
IFLAG.EQ
.0)
.1) WRITE(IWR;909)
322 WRITE(IWR,915)(X(I),I=MX1,MX2,2)
DO 400 J=MY1.MY2
IY= MY2 + MY1 - J
Y=IY
Y= YSWC + (Y-0.5)*GRID
330
IF(NREP.EQ.l) GO TO 340
DO 330 I=MX1,MX2
CC(I)= A(N) + B(N)*CONC(I,IY,N) + 0.5
WRITE(IWR,920}" "
GO TO 400
V v \ •»• / t» \ LI y • .feryny-'-wi.wy.j.i.kj.i&i/ •
WRITE(IWR,920)Y,(CC(I),I=MX1,MX2)
340 IF(NARRAY.EQ.l) GO TO 500
DO 350 I=MX1,MX2
SSDF(I)= AVD(N) + B(N) * SDF(I.IY.N)
IF(IFLAG.EQ.l) SSDF(I)=SSDF(I)*1.0E-03
SSDF?I)^SSDF(I)+0.5
350 CONTINUE
WRITE(IWR,920) Y,(SSDF(I),I=MX1,MX2)
400 WRITE(IWR,925)Y
WRITE(IWR,915)(X(I),I=MX1,MX2,2)
C
450 IF(NREP.EQ.l) GO TO 500
C IF NO SURF DEP FLUX WAS CALCULATED, SKIP PRINT
IF(DV(N).LE.0.01) GO TO 500
NREP=I
AVD(N)=A(N)*DV(N)*36.
GO TO 180
CONTINUE
CONTINUE
CONTINUE
500
600
700
C
C
900
RETURN
'SECTION
'SECTION
,11,
,11,
OF
OF
',11,', SCENARIO
M1.3X,
FORMAT(lHl,'PEM-2 OUTPUT:
1,I2,2X,20A4)
901 FORMAT(1H1,*PEM-2 OUTPUT:
1 20A4)
902 FORMATC STABILITY=' A2 '. WIND SPD='.F5.2,' M/S. WIND DIR=',F6.2
1 ' DEG, MIXING HT=>,F7.1,' M, AVERAGING TIME=',I2,' HE.',6X,
2 'POLLUTANT-'.II,': ',3A4J
903 FORMAT(IX,12,' SCENARIOS,*,2X,'AVERAGING TIME=',I3,' HRS.',64X,
PMT29270
PMT29280
PMT29290
PMT29300
PMT29310
PMT29320
PMT29330
PMT29340
PMT29350
PMT29360
PMT29370
PMT29380
PMT29390
PMT29400
PMT29410
PMT29420
PMT29430
PMT29440
PMT29450
PMT29460
.PMT29470
PMT29480
PMT29490
PMT29500
PMT29510
PMT29520
PMT29530
PMT29540
PMT29550
PMT29560
PMT29570
PMT29580
PMT29590
PMT29600
PMT29610
PMT29620
PMT29630
PMT29640
PMT29650
PMT29660
PMT29670
.PMT29680
PMT29690
PMT29700
PMT29710
PMT29720
PMT29730
PMT29740
PMT29750
PMT29760
PMT29770
PMT29780
PMT29790
PMT29800
PMT29810
PMT29820
PMT29830
PMT29840
PMT29850
PMT29860
PMT29870
PMT29880
'PMT29890
PMT29900
PMT29910
PMT29920
.PMT29930
PMT29940
PMT29950
PMT29960
191
-------
1 'POLLUTANT-',11,': ',3A4) PMT29970
904 FORMATC UNCALIBRATED CONCENTRATION - MICROGRAMS PER CUBIC METER')PMT29980
905 FORMATC UNCALIBRATED SURFACE DEPOSITION FLUX - MICROGRAMS PER SQUPMT29990
1ARE METER PER HOUR') PMT30000
906 FORMATC CALIBRATED CONCENTRATION - ',7A4,18X,'CALIBRATION COEFFICPMT30010
1IENTS: A = ' F11.4' B=',F11.4) PMT30020
907 FORMATC CALIBRATED SURFACE DEPOSITION FLUX - MICROGRAMS PER SQUARPMT30030
IE METER PER HOUR') PMT30040
909 FORMATC CALIBRATED SURFACE DEPOSITION FLUX - KILOGRAMS PER SQUAREPMT30050
1 KILOMETER PER HOUR') PMT30060
910 FORMATC UNCALIBRATED SURFACE DEPOSITION FLUX - KILOGRAMS PER SQUAPMT30070
IRE KILOMETER PER HOUR')
FORMAT(1HO,14X,13F8.2)
FORMAT(1HO,4X,F8.2,4X,25I4)
FORMAT(1H+,122X,F8.2)
END
915
920
925
C
C
C
C
C
C
C
C
C
C
C
C
C *** PEM MODIFICATIONS BY M.M. STEVENS,
SUBROUTINE WORST(I,J,CHI,N)
SUBROUTINE WORST
PART OF PEM-2 (VERSION 84130)
THE
SUBROUTINE WORST DETERMINES THE FIVE POINT SOURCES CONTRIBUTING
MOST TO THE TOTAL CONCENTRATION AT EACH RECEPTOR. SOURCE
IDENTIFICATIONS AND CONTRIBUTIONS ARE STORED IN NWORST AND CWORST
RESPECTIVELY, FOR OUTPUT BY SUBROUTINE WOROUT.
NOAA-ATDL, P.O.
DECEMBER 1982
BOX-E, OAK RIDGE, TENN 37831
C
C
C
C *** PEM-2 MODIFICATIONS BY K. S. RAO
C
C
C
,2),
C
C
205
210
215
220
225
250
DECEMBER 1984
COMMON/PEMCOM/CONC(50.50,2),SDF{50,50,2).TT(20).
1 XP(300),YP(300),EP(360,2),HP(300),DP(306),VP(36o),TP(300)
2 XA(50) YA(50),EA(50.2)JSIZE(50),
3 WD(24),WS(24),TA(24),HMIX(24),DTDZI(24),
4 AZ(6).BZ(6),CZ(6),P(6),SCLAB(6) JDTDZ(2},SECTAN(16),
5 XSWC,YSWCIGRID,LX,LY,A(2),B(2),POLNAM(3,2),CALNAM(7,:
6 ITA,IRD.IWR,IDSK.D80,D47,D8047,DIST)DELTA,HPRIME,
7 ESH(2))PEAK,IBUOY,IRISE,IDWN,EFF)XS,UINV,WVEC,
8 NAS.NPS,INDEX,IGRID,IAV,ISCEN,IWDOPT,IWD.ISC.IPS,
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NL1ST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
COMMON/CSWOR/NWORST(25,25,5,2),CWORST(25,25,5,2)
IF(CHI.LE.CWORST(I,J,5,N)} RETURN
IF(CHI.GT.CWORST(I,J,4,N)) GO TO 205
CWORST(I,J,5,N)= CHI
NWORST(I,J,5,N)= IPS
RETURN
IF(CHI.GT.CWORST(I,J,3,N)) GO TO 210
NW=1
GO TO 225
IF(CHI.GT.CWORST(I,J,2,N)) GO TO 215
NW=2
GO TO 225
IF(CHI.GT.CWOHST(I,J,1,N)) GO TO 220
NW=3
GO TO 225
NW=4
DO 250 IW=1,NW
CWORST(I,J,6-IW,N)= CWORST(I,J.5-IW.N
NWORST(I,J,6-IW,N)= NWORST(I,J.5-IW.N
PMT30080
PMT30090
PMT30100
PMT30110
PMT30120
PMT30130
PMT30140
PMT30150
PMT30160
PMT30170
PMT30180
PMT30190
PMT30200
PMT30210
PMT30220
PMT30230
PMT30240
PMT30250
PMT30260
PMT30270
PMT30280
PMT30290
PMT30300
PMT30310
PMT30320
PMT30330
PMT30340
PMT30350
PMT30360
PMT30370
PMT30380
PMT30390
PMT30400
PMT30410
PMT30420
PMT30430
PMT30440
PMT30450
PMT30460
PMT30470
PMT30480
PMT30490
PMT30500
PMT30510
PMT30520
PMT30530
PMT30540
PMT30550
PMT30560
PMT30570
PMT30580
PMT30590
PMT30600
PMT30610
PMT30620
PMT30630
PMT30640
PMT30650
192
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
CWORST(I,
NWORST(I,
RETURN
END
J,5-NW,N)= CHI
J,5-NW,N)= IPS
PMT30660
PMT30670
PMT30680
PMT30690
PMT30700
PMT30710
PMT30720
PMT30730
PMT30740
PMT30750
SUBROUTINE WOROUT PRINTS A CULPABILITY LIST OF THE FIVE POINT SOURCESPMT30760
WHICH CONTRIBUTE MOST TO THE TOTAL CONCENTRATION OF EACH POLLUTANT.PMT30770
SUBROUTINE WOROUT
SUBROUTINE
WOROUT , PART OF PEM-2 (VERSION 84130)
THIS ROUTINE LISTS THE FIVE POINT SOURCES AND THEIR PERCENTAGE
CONTRIBUTIONS TO THE TOTAL CONCENTRATION AND SURFACE DEPOSITION
FLUX AT EACH RECEPTOR.
TO REDUCE OUTPUT. ONLY RECEPTORS WITH THE HIGHEST CONTRIBUTIONS
EXCEEDING 1 MICROGRAM PER CUBIC METER ARE PRINTED.
USING DATA COMPILED BY SUBROUTINE WORST, THIS INFORMATION IS
PRINTED AT THE END OF EACH SCENARIO OR SUB-SCENARIO FOR NTOPT=1.
*** PEM MODIFICATIONS AND FORMATS BY M.M. STEVENS,
NOAA-ATDL. P.O. BOX E, OAK RIDGE, TN 37831
DECEMBER 1982
*** PEM-2 MODIFICATIONS BY K. S. RAO
DECEMBER 1984
C
C
C
TP(300)
COMMON/PEMCOM/CONC(50.50,2),SDF[50,50,2).TT(20).
XP 300),YP(300y.EP(36o,2),HP(300),DP(3o6),VP(36o),
XA 50),YA(50),EA(50,2),SIZE(50),
WD 24),WS£24),TA(24),HMIX(24).DTDZI(24),
AZ 6),BZ(6),CZ(6)JP(6),SCLABr6),DTDZ(2)>SECTAN(16),
XSWC,YSWC,GRIDiLX,LY,A(2),B(2),POLNAM(3,2).CALNAM(7,2),
ITA,IRD,IWR,IDSK,D80,D47,D8047,DIST,DELTA,HPRIME,
7 ESH(2_) .PEAK, IBUOY, IRISE, IDWN.EFF, XS.UINV.WVEC,
8 NAS.NPS,INDEX,IGRID,IAV,ISCEN,IWDOPT.IWD,ISC,IPS,
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NLIST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
COMMON/CSWOR/NWORST(25,25,5.2),CWORST(25,25,5,2)
COMMON/PARM1/NPOL,VD1,Wl,VD2,W2
START DO-LOOP ON POLLUTANT SPECIES
DO 400 K=1,NPOL
WRITE(IWR,905) TT,ISCEN
IF(NWDOPT.LE.l) GO TO 200
WOUT=WD(ISCEN)*180./3.1415927
WRITE(IWR,910) WOUT
C
C
C
C
C
C
C
C
C
200 WRITE(IWR,920)
WRITE(IWR,915)
K,(POLNAM(M,K),M=1,3)
START DO-LOOP ON RECEPTOR GRID COLUMNS
DO 350 1=1,LX
XI=I
X= XSWC + (XI-0.5)*GHID
START DO-LOOP ON RECEPTOR GRID ROWS
DO 300 J=1,LY
SUPPRESS PRINT IF THE HIGHEST CONCENTRATION IS INSIGNIFICANT
IF(CWORST(I,J,1,K).LT.1.0) GO TO 300
START DO-LOOP TO CONVERT FIVE HIGHEST CONTRIBUTIONS TO
PERCENTAGES OF TOTAL CONCENTRATION AT THE RECEPTOR
DO 250 L=l,5
CWORST(I,J,L,K)=CWORST(I,J,L,K)*100./CONC(I,J,K)
PMT30780
PMT30790
PMT30800
PMT30810
PMT30820
PMT30830
PMT30840
PMT30850
PMT30860
PMT30870
PMT30880
PMT30890
PMT30900
PMT30910
PMT30920
PMT30930
PMT30940
PMT30950
PMT30960
PMT30970
PMT30980
PMT30990
PMT31000
PMT31010
PMT31020
PMT31030
PMT31040
PMT31050
.PMT31060
PMT31070
PMT31080
PMT31090
PMT31100
PMT31110
PMT31120
PMT31130
PMT31140
PMT31150
PMT31160
PMT31170
PMT31180
PMT31190
PMT31200
PMT31210
PMT31220
PMT31230
PMT31240
PMT31250
PMT31260
PMT31270
PMT31280
PMT31290
PMT31300
PMT31310
PMT31320
PMT31330
PMT31340
193
-------
c
c
250 CONTINUE
END LOOP ON FIVE HIGHEST CONTRIBUTIONS
YJ=J
Y= YSWC
PMT31350
PMT31360
PMT31370
PMT31380
PMT31390
(;YJ-0.5)*GRID
WRITE(IWR,925)I.J,X,Y,NWORST(I,J,1.K),CWORST(I,J,1.K),NWORST(I,J,2PMT31400
1,K),CWORST(I,J,2.K),NWORST(I,J,3.K5,CWORST(I,J)3.K ,IWORST(I,J 4 KPMT31410
2),CWORST(I,J,4,K),NWORST(I,J,5,K))CWORST(I,J,5IK),CONC(I,J,K),SDF(PMT31420
3I,J,K) PMT31430
300 CONTINUE
C END LOOP ON GRID ROWS
350 CONTINUE
C END LOOP ON GRID COLUMNS
400 CONTINUE
C END LOOP ON SPECIES
C
C
RETURN
PMT31440
PMT31450
PMT31460
PMT31470
PMT31480
PMT31490
PMT31500
PMT31510
PMT31520
905 FORMAT(1H1.37X,'POLLUTION EPISODIC MODEL (PEM-2)V//4X,'OUTPUT:
. v... ..—i RODUCE THE HIGHESPMT31550
:\yiu'ui. j. i xiix * *J t f\ * i vjjuu J. j-v/n ui J.LJI/I/ j-vy riwu u v *• t^L"1 ** J / / / *"*A « l/u IfU 1 • PMT31540
1.20A4//4X,'LIST OF THE FIVE POINT SOURCES WHICH PRODUCE THE HIGHESPMT31550
2T VALUES OF CONCENTRATION AND SURFACE DEPOSITION FLUX AT EACH RECEPMT31560
3PTOR'//5X,'SCENARIO',14X,' - CONCENTRATION IN MICROGRAMS PER ', PMT31570
4'CUBIC METER'/6X,'NUMBER: '12,16X,'SURFACE DEPOSITION FLUX IN MICPMT31580
5ROGRAMS PER SQUARE METER PER HOUR'/} PMT31590
910 FORMAT(6X.'WIND DIRECTION = ',F5.1,* DEC'/) PMT31600
915 FORMAT(45X,'POINT SOURCE SEQUENCE NUMBER AND PERCENT'/ PMT31610
115X,'COORDINATES'.15X,'OF TOTAL CONCENTRATION AND SURFACE DEPOSITIPMT31620
20N FLUX',14X,'TOTAL'.8X,'TOTAL SURFACE'/ PMT31630
3' COL ROW',4X,'X (KMr,4X,'Y (KM) ' 9X, 'HIGHEST' ,6X.' SECOND' 8X, PMT31640
'THIRD',7X,'FOURTH',8X,'FIFTH*,6X,JCONCENTRATION',3X,'DEPOSITION FPMT31650
4
SLUX'/l
920 FORMAT(45X,'POLLUTANT-',II,' :',3A4
PMT31660
PMT31670
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
925 FORMAT(2(2X,I2),3XJF8.2,2X>F8.2,3X,5(3X,I3,F7.2)J6X,F8.2,9X,F8.2) PMT31680
PMT31690
END PMT31700
SUBROUTINE SCENMX
SUBROUTINE SCENMX
PART OF PEM-2 (VERSION 84130)
PMT31710
PMT31720
PMT31730
PMT31740
.PMT31750
PMT31760
PMT31770
PMT31780
PMT31790
PMT31800
PMT31810
PMT31820
THE STORED VALUES ARE PRINTED BY SUBROUTINE MAXOUT AT THE END OF RUN.PMT31830
PMT31840
PMT31850
PMT31860
SUBROUTINE SCENMX LOCATES AND STORES THE COORDINATES, CONCENTRATION,
AND SURFACE DEPOSITION FLUX AT THE RECEPTOR GRID POINTS RECORDING
THE HIGHEST CONCENTRATION AND SURFACE DEPOSITION FLUX OF EACH
POLLUTANT IN EACH SCENARIO (IF NTOPT=1) OR AVERAGING-PERIOD (IF
NTOPTM).
C *** PEM MODIFICATIONS BY M.M. STEVENS,
C
C
C
TP(300)
NOAA-ATDL. P.O.BOX - E, OAK RIDGE, TN 37831
DECEMBER 1982
COMMON/PEMCOM/CONC(50.50.2).SDF(50,50,2).TT(20).
1 XP 300),YP(300),EP(360,2),HP(300),DP(30&),VP(3&0),
2 XA 50T,YA(50),EA(50,2),SIZE(50),
3 WD 24),WS(24),TA(24),HMIX(24),DTDZI(24),
4 AZ 6).BZ(6),CZ(6),P(6),SCLAB(6),DTDZ(2i,SECTAN(16),
5 XSWC,YSWC,GRID,LX,LY,A(2),B(2),POLNAM(3,2),CALNAM(7,2),
6 ITA,IRD,IWR,IDSK,D80,D47,08047,DIST,DELTA,HPRIME,
7 ESH(2),PEAK,IBUOY,IRISE,IDWN,EFF,XS,UINV,WVEC>
8 NAS.NPS,INDEX,IGRID,IAV,ISCEN,IWDOPT,IWD,ISC,IPS,
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NLIST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
COMMON/MAX/XMX(24,4,2),YMX(24,4,2),ZMX(24,4,2),SMX(24,4,2)
PMT31870
PMT31880
PMT31890
PMT31900
PMT31910
PMT31920
PMT31930
PMT31940
PMT31950
PMT31960
PMT31970
PMT31980
PMT31990
PMT32000
PMT32010
PMT32020
PMT32030
194
-------
c
c
120
130
140
150
350
400
C
C
C
C
C
C
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
COMMON/PARM1/NPOL,VD1,Wl,VD2, W2
IF(NTOPT.EQ.l) GO TO 120
GO TO 130
1= ISCEN
IF(NWDOPT.LE.l) GO TO 140
J= IWDOPT
GO TO 150
J= 1
DO 400 K=1,NPOL
Z= 0.
DO 350 NX=1,LX
DO 350 NY=1.LY
IF(CONC(NX,NY,K)
Z= CONG(NX.NY.K)
ZS=SDF(NX,NY,K)
ZX=NX
ZY=NY
CONTINUE
ZMX(I,J,K
SMX(I,J,K
XMX(I,J,K
YMXCI.J.K
LT.Z) GO TO 350
X L 1*\ I J- • fc/ • X
CONTINUE
RETURN
END
= Z
=ZS
= xswc
= YSWC
(ZX -
(ZY -
0.5)*GRID
0.5)*GRID
SUBROUTINE MAXOUT
SUBROUTINE MAXOUT
PART OF PEM-2 (VERSION 84130)
SUBROUTINE MAXOUT PRINTS THE COORDINATES, CONCENTRATION, AND
SURFACE DEPOSITION FLUX AT THE RECEPTOR GRID POINTS RECORDING
THE HIGHEST CONCENTRATION OF EACH POLLUTANT IN EACH SCENARIO OR
AVERAGING PERIOD. THESE VALUES WERE SELECTED AND STORED BY SUB-
ROUTINE SCENMX.
*** PEM MODIFICATIONS AND
NOAA-ATDL. P.O.BOX E,
DECEMBER 1982
*** PEM-2 MODIFICATIONS BY K. S. RAO
DECEMBER 1984
FORMATS BY M.M. STEVENS,
OAK RIDGE, TN 37831
COMMON/PEMCOM/CONC(50.50,2),SDF(50,50,2).TT(20).
XP(300),YP(300),EP(300,2),HP[300),DP(300),VP(300),TP(300),
v A fm\ v i / cn\ #il/ —•* ~» — '-*—xi-> ' ' * '' v '' v •" '
XA(50),YA(50),EA(
ir,YA(50),EA(50.2r,SIZE(50}, '
WD(24),WS(24),TA(24},HMIX(24),DTDZI(24;
2),
C
C
,,,,,
AZ(6),BZ(6),CZ(6),P(6).SCLAB(6),DTDZ(2),SECTAN(16),
^ XSWC,YSWC,GRID,LX,LY,A(2),B72T,POLNAM(3,2),CALNAM(7,
6 ITA.IRD,IWR,IDSK,D80,D47,D8047,D1ST,DELTA,HPRIME,
. ESH(2),PEAK,IBUOY,IRISE,IDWN,EFF,XS,UINV,WVEC,
8 NAS,NPS,INDEX,IGRID,IAV,ISCEN,IWDOPT,IWD.ISC,IPS.
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NLIST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
COMMON/MAX/XMX(24,4,2),YMX(24,4,2))ZMX(24)4,2),SMX(24,4,2)
COMMON/PARM1/NPOL,VD1,Wl,VD2,W2
DIMENSION ZC(2),ZS(2),AVD(2)
CHECK WHETHER SURF DEP FLUX WAS CALCULATED AND SET FLAG
NREP=0
IF(VD1.GE.0.01 .OR. VD2.GE.0.01) GO TO 100
GO TO 110
PMT32040
PMT32050
PMT32060
PMT32070
PMT32080
PMT32090
PMT32100
PMT32110
PMT32120
PMT32130
PMT32140
PMT32150
PMT32160
PMT32170
PMT32180
PMT32190
PMT32200
PMT32210
PMT32220
PMT32230
PMT32240
PMT32250
PMT32260
PMT32270
PMT32280
PMT32290
PMT32300
PMT32310
PMT32320
PMT32330
PMT32340
PMT32350
PMT32360
PMT32370
PMT32380
PMT32390
PMT32400
PMT32410
PMT32420
PMT32430
.PMT32440
PMT32450
PMT32460
PMT32470
PMT32480
PMT32490
PMT32500
PMT32510
PMT32520
PMT32530
PMT32540
PMT32550
PMT32560
PMT32570
PMT32580
PMT32590
PMT32600
PMT32610
PMT32620
PMT32630
PMT32640
PMT32650
PMT32660
PMT32670
PMT32680
PMT32690
PMT32700
PMT32710
PMT32720
195
-------
c
c
c
c
c
c
c
c
c
c
100 NREP=1
AVD(1)=A(1)*VD1*36.
AVD(2)=A(2)*VD2*36.
110 IF(NWDOPT.GT.l) GO TO 300
J=l
N=l
IF(NTOPT.EQ.l) N=NSCEN
PRINT HIGHEST CONCENTRATIONS
WRITE(IWR,900) TT
WRITE(IWR.902) 7cALNAM(L.l).L=1.7)
IF(NPOL.EQ.2) WRITE(IWR,903) (CALNAM(L,2),L=1,7)
WRITE(IWR.910) ?POLNAM(L.1).L=1,3)
IF(NPOL.EQ.2) WRITE(IWR,911) (POLNAM(L,2),L=1,3)
WRITE(IWR,912)
WRITE(IWR.915)
DO 200 1=1,N
DO 120 K=l NPOL
120 ZC(K) = A(K} + B(K)*ZMX(I,1,K)
WRITE(IWR,920)
WRITE(IWR.923) I,(XMX(I,1,K),YMX(I,1,K),ZMX(I,1,K),ZC(K),
1 K=1,NPOL)
200 CONTINUE
PRINT SURFACE DEPOSITION FLUX VALUES
IF NO SURF DEP FLUX WAS CALCULATED, SKIP PRINT
IF(NREP.EQ.O) RETURN
WRITE(IWR,900) TT
WRITE(IWR,932) (CALNAM(L.l).1=1,7)
IF(NPOL.EQ.2) WRITE(IWR,933) (CALNAM(L,2),L=1,7)
WRITE (IWR. 910) _(POLNAMJ'L,1).L=1.3)
IF(NPOL.EQ.2) WRITE(IWR,911) (POLNAM(L,2),L=1,3)
WRITE(IWR,942)
WRITE[IWR.915)
DO 250 1=1,N
DO 220 K=1,NPOL
220 ZS(K)= AVD(K) + B(K)*SMX(I,1,K)
WRITE(IWR,920)
WRITE(IWR,923) I,(XMX(I,1,K),YMX(I,1,K),SMX(I,1,K),ZS(K),
1 K=1,NPOL)
25JO CONTINUE
RETURN
PRINT FOR CASE OF NWDOPTH - SUB-SCENARIOS
300 N=NSCEN
PRINT HIGHEST CONCENTRATIONS
DO 500 1=1,N
IF((?I-1)/8)*8.NE.I-1) GO TO 310
WRITE(IWR,900) TT
WRITE(IWR,902) (CALNAM(L.1),L=1,7)
IF(NPOL.EQ.2) WRITE(IWR,903) (CALNAM(L,2),L=1,7)
WRITE(IWR, 910) _(POLNAM(L. 1) . L=1.3)
IF(NPOL.EQ.2) WRITE(IWR,911) (POLNAM(L,2),L=1,3)
WRITE(IWR,912)
WRITE(IWR,915)
310 WRITE(IWR,920)
DO 400 J=l,4
DO 320 K=1.NPOL
320 ZC(K)= A(K) + B(K)*ZMX(I,J,K)
WRITE(IWR.925) I,J,(XMX(I,J,K),YMX(I,J,K),ZMX(I,J,K),ZC(K),
1 K=1,NPOL)
400 CONTINUE
500 CONTINUE
PRINT SURFACE DEPOSITION FLUX VALUES
IF NO SURF DEP FLUX WAS CALCULATED, SKIP PRINT
IF(NREP.EQ.O) RETURN
DO 600 1=1,N
PMT32730
PMT32740
PMT32750
PMT32760
PMT32770
PMT32780
PMT32790
PMT32800
PMT32810
PMT32820
PMT32830
PMT32840
PMT32850
PMT32860
PMT32870
PMT32880
PMT32890
PMT32900
PMT32910
PMT32920
PMT32930
PMT32940
PMT32950
PMT32960
PMT32970
PMT32980
PMT32990
PMT33000
PMT33010
PMT33Q20
PMT33030
PMT33040
PMT33050
PMT33060
PMT33070
PMT33080
PMT33090
PMT33100
PMT33110
PMT33120
PMT33130
PMT33140
PMT33150
PMT33160
PMT33170
PMT33180
PMT33190
PMT33200
PMT33210
PMT33220
PMT33230
PMT33240
PMT33250
PMT33260
PMT33270
PMT33280
PMT33290
PMT33300
PMT33310
PMT33320
PMT33330
PMT33340
PMT33350
PMT33360
PMT33370
PMT33380
PMT33390
PMT33400
PMT33410
PMT33420
196
-------
IF(((I-1)/8)*8.NE.I-1) GO TO 510
WRITE(IWR,960) TT
WRITE(IWR,932) ?CALNAM(L.1).L=l.7)
IFONPOL.EQ.2) WRITE(IWR,933) (CALNAM(L,2),L=1,7)
WRITE(IWR,910) ?POLNAM(L.1).L=1,3)
IF(NPOL.EQ.2) WRITE(IWR,911) (POLNAM(L,2),1=1,3)
WRITE(IWR,942
WRITE(IWR,915)
510 WRITE(IWR,920)
DO 550 J=I,4
DO 520 K=ltNPOL
520 ZS(K)= AVD
WRITE(IWR,
1 K=1,NPOL)
550 CONTINUE
600 CONTINUE
700 RETURN
B(K)*SMX(I,J,K)
I,J,(XMX(I,J,K),YMX(I,J,K),SMX(I,J,K),ZS(K)
PMT33430
PMT33440
PMT33450
PMT33460
PMT33470
PMT33480
PMT33490
PMT33500
PMT33510
PMT33520
PMT33530
PMT33540
PMT33550
PMT33560
PMT33570
PMT33580
PMT33590
PMT33600
PMT33610
PMT33620
900 FORMAT(1H1.37X,'POLLUTION EPISODIC MODEL (PEM-2)V//4X,'OUTPUT:
1.20A4//) PMf33630
902 FORMAT(4X,'HIGHEST PREDICTED CONCENTRATION OF EACH POLLUTANT FOR EPMT33640
1ACH SCENARIO OR AVERAGING PERIOD'//4X,'UNCALIBRATED CONCENTRATION PMT33650
2IN MICROGRAMS PER CUBIC METER - CALIBRATION, POLLUTANT-1: ',7A4)PMT33660
903
*,7A4)
FORMAT 65X.'CALIBRATION, POLLUTANT-2:
910 FORMAT //40X.'POLLUTANT-1: ',3A4)
911 FORMAT 1H+.93X.'POLLUTANT-2: ',3A4)
912 FORMAT /' SCENARIO WIND DIRECTION*,7X 'COORDINATES' 14X,
1'CONCENTRATION' 16X,'COORDINATES',14X.'CONCENTRATION1)
915 FORMAT(2X,'NUMBER',4X,'SUB-SCENARIO',6X.'X(KM)',5X.'Y(KM)',
1'UNCALIBRATED',4X,'CALIBRATED',7X,'X(KM)',5X,'Y(KM)' ,6X,
2'UNCALIBRATED',4X,'CALIBRATED'/)
920 FORMAT(IX)
923 FORMAT(4X.I2,21X,F9.2,1X,F9.2,5X,F11.4,4X,F11.4,4X,F9.2,1X,
1F9.2.5X.F11.4.4X F11.4)
6X,
PMT33670
PMT33680
PMT33690
PMT33700
PMT33710
PMT33720
PMT33730
PMT33740
PMT33750
PMT33760
PMT33770
925 FORMAT(4x,I2,ilX,I2.8X.F9.2,lX,F9.2,5X,Fll.4,4X,F11.4,4X,F9.2,lX, PMT33780
lF9.2.5X.Fil.4,4X,Fli.4J PMT33790
932 FORMAT(4X,'HIGHEST PREDICTED SURFACE DEPOSITION FLUX OF EACH POLLUPMT33800
1TANT FOR EACH SCENARIO OR AVERAGING PERIOD'//4X 'UNCALIBRATED VALUPMT33810
2ES IN MICROGRAMS PER SQUARE METER PER HOUR - CALIBRATION, POLLUTPMT33820
3ANT-1: ',7A4) PMT33830
933 FORMAT(68X,'CALIBRATION, POLLUTANT-2: '.7A4) .PMT33840
942 FORMAT(/' SCENARIO WIND DIRECTION' 7X 'COORDINATES' 9X, PMT33850
1'SURFACE DEPOSITION FLUX',11X,'COORDINATES',9X,'SURFACE DEPOSITIONPMT33860
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
2 FLUX')
END
SUBROUTINE RISE
SUBROUTINE RISE
PART OF PEM-2 (VERSION 84130)
SUBROUTINE RISE CALCULATES PLUME RISE VIA THE STANDARD EQUATIONS
OF BRIGGS (1971,1969) IF NPRISE=0. IF NPRISE=1 OPTION IS SELECTED
PMT33870
PMT33880
PMT33890
PMT33900
PMT33910
PMT33920
PMT33930
PMT33940
PMT33950
PMT33960
wr onxuvio i i j i i , i^i^jj i i.c nr nioc. — \j , LC vtcHJLLJO — JL wr i J.WH j.o ^cuUCiU iCiii, ri'iiuo^ou
THE NEW PLUME RISE EQUATIONS OF BRIGGS (1984,1975) ARE USED FOR THEPMT33970
BUOYANCY-DOMINATED PEAK PLUME RISE IN UNSTABLE/NEUTRAL CONDITIONS. PMT33980
IF IRISE=1, THE DISTANCE-DEPENDENT EFFECTIVE SOURCE HEIGHT (ESH(l))PMT33990
IS RETURNED. IF IRISE=2, MAXIMUM EFFECTIVE SOURCE HEIGHT (ESH(2) ISPMT34000
RETURNED. RISE IS CALLED ONLY ONCE PER SOURCE PER SCENARIO WITH PMT34010
IRISE=2. IT IS CALLED WITH IRISE=1 WHENEVER THE DOWNWIND DISTANCE
(DIST) IS LESS THAN THE DISTANCE TO MAXIMUM PLUME RISE (PEAK).
SUBROUTINE RISE IS CALLED IN THE MAIN PROGRAM, AND IN SUBROUTINES
QZCAL AND AUTGRD.
PEM-2 MODIFICATIONS: APRIL 1984
K.SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37831
PMT34020
PMT34030
PMT34040
PMT34050
PMT34060
PMT34070
PMT34080
PMT34090
PMT34100
PMT34110
197
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
COMMON/PEMCOM/CONC(50,50,2) ,SDF(50,50,2) ,TT(20) .
XP(300),YP(300y.EP(300,2),HP(300),DP(306),VP(36o),TP(300),
XA(50),YA(50),EA(50.2) SIZE(50),
1
2
3 WD
4
5
6
50),YA(50),E(50.2) SIZE(50),
24),WS(24),TA(24).HMIX(24).DTDZI(24),
6)z6ci(6)P6)SCLAB6DT22
AZ(6),BZ(6),CZ(6),P(6),SCLAB(6),DTDZ(2),SECTAN(16),
XSWC,YSWC,GRID,LX,LY,A(2),B(2),POLNAM73,2).CALNAM(7,2),
u ITA,IRD,IWR,IDSK,D80,D47,D8047,DIST,DELTA,HPRIME,
7 ESH(2_) .PEAK, IBUOY, IRISE, IDWN.EFF,XS.UINV.WVEC.
8 NAS.NPS,INDEX,IGRID,IAV,ISCEN,IWDOPT,IWD,ISC,IPS,
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NL1ST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
IDWN=1
IF(IRISE.EQ.l) GO TO 200
IRISE=2: DETERMINE WHETHER THE PLUME IS DOMINATED BY MOMENTUM OR
BUOYANCY, AND CALCULATE OPTIONAL STACK-TIP DOWNWASH CORRECTION,
MAXIMUM EFFECTIVE SOURCE HEIGHT, AND VALUES OF CONSTANT FACTORS
RELATED DISTANCE-DEPENDENT PLUME RISE EQUATIONS.
HPRIME=HP(IPS)
IF(NSTDWN.EQ.i) GO TO 10
NSTDWN=0; DOWNWASH CORRECTION.
RATV=VP(IPS)*UINV
IF(RATV.GE.1.51 GO TO 10
DWNWSH=2.0*(1.5-RATV)*DP(IPS)
IDWN=3
IF(DWNWSH.GE.HP(IPS)) DWNWSH=HP(IPS)
HPRIME=HP(IPS)-DWNWSH
DETERMINE IF PLUME IS MOMENTUM-DOMINATED (IBUOY=0)
OR BUOYANCY-DOMINATED aBUOY=l),
USING THE BUOYANCY - MOMENTUM CROSSOVER TECHNIQUES.
10 IBUOY=1
CVD3=3.0*VP(IPS)*DP(IPS)
DELHUM=CVD3*UINV
IF(ISC.LT.S) GO TO 20
STABILITY CLASSES E AND F.
IF(ISC.EQ.6) GO TO 15
BRIGC=115.28
DIF=ABS(DTDZ(1)-0.02)
GO TO 16
15 BRIGC= 87.14
DIF=ABS(DTDZ(2)-0.035)
16 IFfDIF.GT.0.001) BRIGC=16.30/SQRT(DTDZ(ISC-4))
IF(VP(IPS).GT.BRIGC*(TP(IPS)-TA(ISCEN))/SQRT(TA(ISCEN))) IBUOY=0
IF(IBUOY.EQ.O) GO TO 90
GO TO 60
20 IF(NPRISE.EQ.l) GO TO 50
NPRISE=0: STANDARD (DEFAULT) PLUME RISE EQS. STABILITY CLASSES A
IF(EFF.GE,55.) GO TO 30
AF=21.425
BF=0.75
GO TO 40
30 AF=38.710
BF=0.6
40 IF(CVD3.GT.AF*EFF**BF) IBUOY=0
IFCIBUOY.EQ.O) GO TO 80
IF(EFF.LT.55.) XS=49.*(EFF**0.625)
IF(EFF.GE.55.) XS=119.*(EFF**0.4)
GO TO 60
NPRISE=1: NEW (OPTIONAL) PLUME RISE EQS. STABILITY CLASSES A-D.
50 DELH1=30.*(EFF*UINV)**0.6
FOU3=EFF*(UINV**3)
TERMH2=HPRIME+200.*FOU3
DELH2=24.*(FOU3**0.6)*(TERMH2**0.4)
PMT34120
PMT34130
PMT34140
PMT34150
PMT34160
PMT34170
PMT34180
PMT34190
PMT34200
PMT34210
PMT34220
PMT34230
PMT34240
PMT34250
PMT34260
PMT34270
PMT34280
PMT34290
PMT34300
INPMT34310
PMT34320
PMT34330
PMT34340
PMT34350
PMT34360
PMT34370
PMT34380
PMT34390
PMT34400
PMT34410
PMT34420
PMT34430
PMT34440
PMT34450
PMT34460
PMT34470
PMT34480
PMT34490
PMT34500
PMT34510
PMT34520
.PMT34530
PMT34540
PMT34550
PMT34560
PMT34570
PMT34580
PMT34590
PMT34600
PMT34610
PMT34620
PMT34630
-DPMT34640
PMT34650
PMT34660
PMT34670
PMT34680
PMT34690
PMT34700
PMT34710
PMT34720
PMT34730
PMT34740
PMT34750
PMT34760
PMT34770
PMT34780
PMT34790
PMT34800
PMT34810
198
-------
C SELECT THE LOWER VALUE GIVEN BY THE TWO BUOYANCY RISE EQUATIONS.
DELTAH=DELH1
IF(DELH2.LT. DELHI) DELTAH=DELH2
C SELECT THE HIGHER VALUE GIVEN BY THE MOMENTUM RISE AND DELTAH.
IF DELHUM.GT. DELTAH) IBUOY=0
IF IBUOY.EQ.O) GO TO 80
IF DELH2.GE. DELHI) XS=81. 19*(EFF**0.4)/(UINV**0. 6)
IF DELH2.LT. DELHI) XS=58.09*(FOU3**0.4)*(TERMH2**0. 6)
C
60 CTB= 1.6*UINV*EFF**0. 333333
IF(ISC.GE.5) GO TO 70
IF(NPRISE.EQ.l) GO TO 100
C
C PEAK PLUME RISE: BUOYANCY-DOMINATED PLUME, UNSTABLE AIR (A-D).
DELTAH= CTB*XS**0. 666667
GO TO 100
C
C PEAK PLUME RISE: BUOYANCY-DOMINATED PLUME, STABLE AIR (E,F).
70 DELTAH= 2. 6*(EFF*UINV*TA(ISCEN)/(9. 8*DTDZ(ISC-4) ) )**0. 333333
GO TO 100
C
C PEAK PLUME RISE: MOMENTUM-DOMINATED PLUME, UNSTABLE AIR (A-D).
PMT34820
PMT34830
PMT34840
PMT34850
PMT34860
PMT34870
PMT34880
PMT34890
PMT34900
PMT34910
PMT34920
PMT34930
PMT34940
PMT34950
PMT34960
PMT34970
PMT34980
PMT34990
PMT35000
PMT35010
PMT35020
PMT35030
80 CTMU= 1.89*(VP(IPS)*VP(IPS)*DP(IPS)*UINV/(VP(IPS)+3./UINV))**0.666PMT35040
1667
DELTAH= DELHUM
GO TO 100
C
C PEAK PLUME RISE: MOMENTUM-DOMINATED PLUME, STABLE AIR (E,F).
C
90 FACT=UINV*TA(ISCEN)/TP(IPS)
DELTAH= 1 . 5* (0 . 5*VP ( IPS ) *DP ( IPS ) ) **0 . 666667*FACT**0 . 333333
1 *(TA( ISCEN) / (DTDZ ( ISC-4) *9 . 8) ) **0 . 166667
IF(DELHUM.LT. DELTAH) DELTAH=DELHUM
C
100 ESH(2)= HPRIME + DELTAH
RETURN
C
200 IF(IBUOY.EQ.O) GO TO 210
C
C DISTANCE-DEPENDENT PLUME RISE: BUOYANCY-DOMINATED PLUME,
C ANY STABILITY (A-F) .
DELTAH= CTB*(DIST*1000. )**0. 666667
ESH?1)=DELTAH + HPRIME
IF(ESH(1).GT.ESH(2)) ESH(1)=ESH(2)
RETURN
C
C DISTANCE-DEPENDENT PLUME RISE: MOMENTUM-DOMINATED PLUME,
C UNSTABLE AIR (A-D).
210 IF? ISC. GE. 5) GO TO 220
DELTAH= CTMU*(DIST*1000.)**0. 333333
ESH?1)=DELTAH + HPRIME
IF(ESH(1).GT.ESH(2)) ESH(1)=ESH(2)
RETURN
C
C THERE IS NO DISTANCE-DEPENDENT PLUME RISE GIVEN FOR A
C MOMENTUM-DOMINATED PLUME IN STABLE AIR. DISTANCE TO MAXIMUM PLUME
C RISE FOR THIS SITUATION IS SET EQUAL TO ZERO IN THE MAIN PROGRAM,
C SO THE MAXIMUM HEIGHT, ESH(2), IS USED AT ALL DISTANCES.
220 ESH(1>ESH(2)
RETURN
C
END
C
C
C
C
SUBROUTINE AUTGRD
C SUBROUTINE AUTGRD , PART OF PEM-2 (VERSION 84130).
C
C
PMT35050
PMT35060
PMT35070
PMT35080
PMT35090
PMT35100
PMT35110
PMT35120
PMT35130
PMT35140
PMT35150
PMT35160
PMT35170
PMT35180
PMT35190
PMT35200
PMT35210
PMT35220
. PMT35230
PMT35231
PMT35240
PMT35250
PMT35260
PMT35270
PMT35280
PMT35290
PMT35300
PMT35301
PMT35310
PMT35320
PMT35330
PMT35340
PMT35350
PMT35360
PMT35370
PMT35380
PMT35390
PMT35400
PMT35410
PMT35420
PMT35430
PMT35440
PMT35450
PMT35460
PMT35470
PMT35480
199
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
SUBROUTINE AUTGRID CALCULATES THE FIVE PARAMETERS DEFINING THE
RECEPTOR GRID (XSWC.YSWC,LX.LY.GRID) WHEN THE AUTOMATIC GRID
OPTION IS USED. THIS IS DONE BY SETTING GRID=0.0 IN THE INPUT
DATA. GRID PARAMETERS WILL BE CHOSEN FOR EACH SCENARIO SO AS
TO INSURE GOOD COVERAGE BY RECEPTORS NEAR THE POINT OF
MAXIMUM CONCENTRATION. THIS POINT IS DETERMINED USING GAUSSIAN
PLUME ALGORITHMS WITHOUT POLLUTANT REMOVAL MECHANISMS. THIS
POINT IS THEREFORE ONLY APPROXIMATE FOR PROBLEMS WHICH INCLUDE
DEPOSITION, SEDIMENTATION, AND CHEMICAL DECAY/TRANSFORMATION.
THE OPTIMUM RECEPTOR GRID IN THIS CASE SHOULD BE DETERMINED BY
TRIAL AND ERROR, USING THE RECEPTOR GRID DEFINED BY AUTGRD AS
THE FIRST APPROXIMATION.
NOTE THAT THE AUTOMATIC GRID OPTION CANNOT BE USED WHEN NTOPT>1
*** PEM-2 MODIFICATIONS BY K. SHANKAR RAO,
NOAA-ATDL, OAK RIDGE, TENN.
APRIL 1984
COMMON/PEMCOM/CONC(50,50,2),SDF(50,50,2),TT(20),
1 XP 300),YP(300).EP(300,2),HP7300),DP(300),VP(300),TP(300),
2 XA 50),YA(50},EA(50.2),SIZE(50),
3 WD 24),WS(24),TA(24KHMIX724),DTDZI(24),
4 AZ 6),BZ(6),CZ(6),P(6),SCLAB(6),DTDZ(2),SECTAN(16),
5 XSWC,YSWC,GRID,LX,LY,A(2),B(2LPOLNAM(3,2),CALNAM(7,2))
6 ITA,IRD,IWR,IDSK,D80,D47,D8047,DIST,DELTA,HPRIME,
7 ESH(2J),PEAK, IBUOY,IRISE,IDWN,EFF,XS,UINV,WVEC,
8 NAS.NPS,INDEX,IGRID,IAV,ISCEN,IWDOPT,IWD,ISC,IPS,
9 NTOPT,NWDOPT,NWSOPT,NWPOPT,NSCEN,NLIST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT,NGPR,NBID
C
C
COMMON/PARM2A/HAS,KSC.AA,BA,CA
COMMON/PARM7A/HA.PI(6|
DIMENSION XCRNR(4),YCRNR
(4),HL(2),DL(2),XTM(2)
EPS=.005
NSTOP=100
AART2=SQRT(2.)*AA
E= 1.570796 -WVEC
SINEE= SIN(E)
COSNE= COS(E)
GX1= XP(1)*COSNE
GX2= GX1
GY1= YP(1)*COSNE
GY2= GY1
GXl=GXl+5.
GYl=GYl+5.
DO 200 1=1,NPS
XT= XP(I)*COSNE
YT= YP(I)*COSNE
+ YP(1)*SINEE
- XP(1)*SINEE
YP(I)*SINEE
XP(I)*SINEE
UINV = l./WS(ISCEN)
IF(NWPOPT.EQ.l) GO TO 165
IF(HP(I).GT.10.) UINV = UINV*((10./HP(I))**P(ISC))
GO TO 166
165 IF(HP(I).GT.HA) UINV = UINV*((HA/HP(I)))**P1(ISC)
166 EFF= 2.45*VP(I)*DP(I)*DP(I)*(TP(I)-TA(ISCEN))/TP(I)
HL(1)= HP(I)
XSTAR1=HL(1)/AART2
CALL ROOTf XCMAX1.XSTAR1,EPS,NSTOP,IER)
DL(1)=.001*XCMAX1
. IPS=I
IRISE=2
CALL RISE
HL(2)=ESH(2)
PMT35490
PMT35500
PMT35510
PMT35520
PMT35530
PMT35540
PMT35550
PMT35560
PMT35570
PMT35580
PMT35590
PMT35600
PMT35610
PMT35620
PMT35630
PMT35640
PMT35650
PMT35660
PMT35670
PMT35680
PMT35690
PMT35700
PMT35710
PMT35720
PMT35730
PMT35740
PMT35750
PMT35760
PMT35770
PMT35780
PMT35790
PMT35800
PMT35810
PMT35820
PMT35830
PMT35840
PMT35850
PMT35860
PMT35870
PMT35880
PMT35890
PMT35900
PMT35910
PMT35920
PMT35930
PMT35940
PMT35950
PMT35960
PMT35970
PMT35980
PMT35990
PMT36000
PMT36010
PMT36020
PMT36030
PMT36040
PMT36050
PMT36060
PMT36070
PMT36080
PMT36090
PMT36100
PMT36110
PMT36120
PMT36130
PMT36140
PMT36150
PMT36160
PMT36170
PMT36180
200
-------
300
400
420
500
540
560
580
XSTAR2=HL(2)/AART2
CALL ROOT(XCMAX2,XSTAR2,EPS,NSTOP,IER)
DL(2)=.001*XCMAX2
DL(
XTM(1)= XT +
XTM(2)= XT + DL
IF
IF
IF
IF
XTM(2
XTM(1
).GT.GX2) GX2= XTM(2)
J.LT.GXl) GX1= XTM(l)
200 CONTINUE
YT.GT.GY2)
YT.LT.GY1)
GY2=
GY1=
YT
YT
XCRNR 1 = GX1
XCRNR 2 = GX2
XCRNR 3 = GX2
XCRNR 4 = GX1
YCRNR 1 = GY1
YCRNR 2 = GY1
YCRNR 3 = GY2
YCRNR 4 = GY2
DO 30 =1,4
XCRNRT= XCRNR(J)
XCRNR(J)= XCRNR(J)*COSNE - YCRNR(J)*SINEE
YCRNR(J)= YCRNR(J)*COSNE + XCRNRT*SINEE
XSWC= XCRNR(l)
XNEC= XSWC
YSWC= YCRNR(l)
YNEC= YSWC
DO 400 1=2 4
IF XCRNR
IF XCRNR
IF YCRNR
IF YCRNR
XT= XNEC
YT= YNEC
DMAX= XT
IF(YT.GT.XT) DMAX=
IFfDMAX.LT.lO.)
IF(XT.GT.YT) GO
LY= 50
GRID= YT/50.
LX= XT/GRID
IF(LX.LT.50) LX= LX+1
GO TO 600
LX= 50
GRID= XT/50.
LY= YT/GRID
IF(LY.LT.SO) LY=LY+1
GO TO 600
IF(DMAX.LT.5.) GO TO 540
GRID= 0.2
LX= XT/GRID
LY= YT/GRID
1 I MUMl-l
.GT.
.LT.
.GT.
.LT.
XSWC
YSWC
XNEC
XSWC
YNEC
YSWC
XNEC=
XSWC=
YNEC=
YSWC=
XCRNR
XCRNR
YCRNR
YCRNR
I-IMI-HM
YT
GO TO 500
TO 420
IF(LX.LT.50)
LX=LX+1
LY=LY+1
IF(LY.LT.50]
GO TO 600
IF(DMAX.LT.0.25) GO TO 580
IF(XT.GT.YT) GO TO 560
LY= 25
GRID= YT/25.
LX= XT/GRID
IF(LX.LT.25) LX=LX+1
GO TO 600
LX= 25
GRID= XT/25.
LY= YT/GRID
IF(LY.LT.25) LY=LY+1
GO TO 600
GRID= 0.01
LX= XT/GRID
LY= YT/GRID
PMT36190
PMT36200
PMT36210
PMT36220
PMT36230
PMT36240
PMT36250
PMT36260
PMT36270
PMT36280
PMT36290
PMT36300
PMT36310
PMT36320
PMT36330
PMT36340
PMT36350
PMT36360
PMT36370
PMT36380
PMT36390
PMT36400
PMT36410
PMT36420
PMT36430
PMT36440
PMT36450
PMT36460
PMT36470
PMT36480
PMT36490
PMT36500
PMT36510
PMT36520
PMT36530
PMT36540
PMT36550
PMT36560
PMT36570
PMT36580
PMT36590
.PMT36600
PMT36610
PMT36620
PMT36630
PMT36640
PMT36650
PMT36660
PMT36670
PMT36680
PMT36690
PMT36700
PMT36710
PMT36720
PMT36730
PMT36740
PMT36750
PMT36760
PMT36770
PMT36780
PMT36790
PMT36800
PMT36810
PMT36820
PMT36830
PMT36840
PMT36850
PMT36860
PMT36870
PMT36880
201
-------
IF(LX.LT.25) LX=LX+1
IF(LY.LT.25) LY=LY+1
600 XSWC= XSWC - 0.5*GRID
YSWC= YSWC - 0.5*GRID
IF(NCSOPT.LT.l.OR.(LX.LE.25.AND.LY.LE.25)) GO TO 700
XL=LX
YL=LY
IF(LX.GT.LY) GO TO 640
DELG= YL/25.
LY=25
GRID= GRID*DELG
LX= XL/DELG
IF(LX.LT.25) LX=LX+1
GO TO 700
640 DELG= XL/25.
LX=25
GRID= GRID*DELG
LY= YL?DELG + 1.
700 CONTINUE
WRITE(IWR,900)TT, ISCEN, IWDOPT
XRSWC=XSWC+0.5*GHID
YRSWC=YSWC+0.5*GRID
WRITE(IWR.905)LX,LY,GRID,XRSWC,YRSWC
900 FORMAT(1H1.37X 'POLLUTION EPISODIC MODEL (PEM-2)V//4X 'OUTPUT: rmio/i^u
li2pA4//4XLlAyTOMATICALLY_GENERATED RECEPTOR GRID PARAMETERS FOR SCPMT37130
,' ROWPMT37150
F8.3, PMT37160
PMT37170
PMT37180
PMT37190
PMT36890
PMT36900
PMT36910
PMT36920
PMT36930
PMT36940
PMT36950
PMT36960
PMT36970
PMT36980
PMT36990
PMT37000
PMT37010
PMT37020
PMT37030
PMT37040
PMT37050
PMT37060
PMT37070
PMT37080
PMT37090
PMT37100
PMT37110
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
4.U \SL LJi fi\s xiiw — » JL' r • ~t • iu*i / / ~rn.
2' KM WEST,',F8.3,' KM SOUTH'/)
RETURN
END
SUBROUTINE FUNR(X,R,FX,FPRIMX)
SUBROUTINE FUNR
PART OF PEM-2 (VERSION 84130),
FUNR IS THE EXTERNAL SUBROUTINE CALLED IN SUBROUTINE ROOT.
PMT37200
PMT37210
PMT37220
PMT37230
PMT37240
PMT37250
PMT37260
FOR ANY GIVEN X, THIS SUBROUTINE DEFINES THE FUNCTION, F(X), AND PMT37270
ITS FIRST DERIVATIVE WITH RESPECT TO X, FPRIM(X).
C
C
C
C
THESE FUNCTIONS ARE OF THE FORM: F(X)=P(X)*Q(X)-R. AND
FPRIM(X)=P(X)*DQDX(X)+Q(X)*DPDX(X)
PEM-2 PROGRAM DEVELOPMENT: JANUARY 1984
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37831
COMMON/PARM2A/HAS,KSC,AA,BA,CA
STABILITY CLASS C
IF(KSC.NE.S) GO TO 10
PX=X;)tX
DX=1.+.0004*X
QX=7l.+.0003*X)/DX
DPDX=2.*X
DQDX=-'.0001/(DX*DX)
GO TO 25
10 DX=1.+BA*X
IF(KSC.GT.S) GO TO 15
STABILITY CLASSES A AND B
PX=0.5*X*X*DX
DPDX=X*(1.5*BA*X+1.)
GO TO 20
PMT37280
PMT37290
PMT37300
PMT37310
PMT37320
PMT37330
PMT37340
PMT37350
PMT37360
PMT37370
PMT37380
PMT37390
PMT37400
PMT37410
PMT37420
PMT37430
PMT37440
PMT37450
PMT37460
PMT37470
PMT37480
PMT37490
PMT37500
PMT37510
PMT37520
PMT37530
PMT37540
PMT37550
PMT37560
PMT37570
202
-------
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
STABILITY CLASSES D,E, AND F
15 PX=0.5*X*X/DX
DPDX=0.5*X*(1.+DX)/(DX*DX)
ALL STABILITY CLASSES EXCEPT C
20 TX1=1.+0.5*BA*X
TX2=1.+.0002*X
TX3=1.+.0004*X
QX=1.+DX*TX2/(TX1*TX3)
DQDX=(-.0002*DX*TX1+0.5*BA*TX2*TX3)/((TXl*TX3)**2)
ALL STABILITY CLASSES
25 FX=PX*QX-R
FPRIMX=PX*DQDX+QX*DPDX
RETURN
END
SUBROUTINE ROOT(X,XSTAR.EPS,NSTOP,IEH)
SUBROUTINE ROOT , PART OF PEM-2 (VERSION 84130)
THIS SUBROUTINE FINDS THE ROOT OF A POLYNOMIAL EQUATION
F(X) = 0, USING THE NEWTON-RAPHSON ITERATION METHOD.
THIS SUBROUTINE IS CALLED IN SUBROUTINE AUTGRD TO
DETERMINE THE DOWNWIND DISTANCE TO MAXIMUM GROUND-LEVEL
CONCENTRATION FROM AN ELEVATED POINT-SOURCE PLUME.
X = ROOT OF EQUATION F(X)=0. (OUTPUT)
XSTAR = INITIAL GUESS OF VALUE OF X (INPUT)
INPUT)
TEPS (INPUT)
EPS = UPPER BOUND OF ERROR IN X
NSTOP = MAXIMUM NO.OF ITERATION
IER = ERROR MESSAGE (OUTPUT)
= 0 NO ERROR
= 1 NO CONVERGENCE AFTER NSTOP ITERATIONS
= 2 FPRIM GOES TO ZERO AT SOME ITERATION STEP
PEM-2 PROGRAM DEVELOPMENT: JANUARY 1984
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37831
COMMON/PARM2A/HAS,KSC,AA,BA,CA
INITIALIZATION
IER=0
X=XSTAR
R=XSTAR*XSTAR
XO=X
CALL FUNR(XO,R,F,FPRIM)
XOF=100.*EPS
START ITERATION LOOP
DO 16 1=1.NSTOP
IF(F) 11,16,11
EQUATION IS NOT SATISFIED BY X
11 IF(FPHIM) 12,18,12
ITERATION IS IMPOSSIBLE
12 DX=F/FPRIM
X=X-DX
XO=X
CALL FUNR(XO,R,F,FPRIM)
TEST ON SATISFACTORY ACCURACY
XO=EPS
PMT37580
PMT37590
PMT37600
PMT37610
PMT37620
PMT37630
PMT37640
PMT37650
PMT37660
PMT37670
PMT37680
PMT37690
PMT37700
PMT37710
PMT37720
PMT37730
PMT37740
PMT37750
PMT37760
PMT37770
PMT37780
PMT37790
PMT37800
PMT37810
PMT37820
PMT37830
PMT37840
PMT37850
PMT37860
PMT37870
PMT37880
PMT37890
PMT37900
PMT37910
PMT37920
PMT37930
PMT37940
PMT37950
PMT37960
PMT37970
PMT37980
PMT37990
PMT38000
PMT38010
PMT38020
PMT38030
PMT38040
PMT38050
PMT38060
PMT38070
PMT38080
PMT38090
PMT38100
PMT38110
PMT38120
PMT38130
PMT38140
PMT38150
PMT38160
PMT38170
PMT38180
PMT38190
PMT38200
PMT38210
PMT38220
PMT38230
PMT38240
PMT38250
PMT38260
203
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
XABS=ABS(X)
IF(XABS-1.) 14,14,13
13 XO=XO*XABS
14 IF(ABS(DX)-XO) 15,15,16
15 IF(ABS(F)-XOF) 17,17,16
16 CONTINUE
END ITERATION LOOP
NO CONVERGENCE AFTER NSTOP ITERATION STEPS ERROR RETURN
IER=1
17 RETURN
ERROR RETURN IN CASE OF ZERO DENOMINATOR
18 IER=2
RETURN
END
BLOCK DATA
BLOCK DATA , PART OF PEM-2 (VERSION 84130)
C
C
C
C
C
C
C
C
THIS SUBPROGRAM INITIALIZES VARIABLES IN COMMON/PEMCOM/
*** PEM MODIFICATIONS BY M.M.STEVENS,
NOAA-ATDL. P.O.BOX-E, OAK RIDGE, TENN 37831
DECEMBER 1982
*** PEM-2 MODIFICATIONS BY K. SHANKAR RAO,
DECEMBER 1983
COMMON/PEMCOM/CONC(50.50.2).SDF(50,50,2).TT(20).
1 XP 300),Yp7300),EP(300,2),te7300),DP(306),VP(300),TP(300),
2 XA 50) YA(50),EA(50.2) SIZE(50),
3 WD 24),WS(24),TA(24).HMIX(24),DtDZI(24),
4 AZ 6),BZ(6),CZ(6),P(6),SCLAB(6),DTDZ(2i,SECTAN(16),
5 XSWC,YSWC,GRID,LX,LY,A(2),B(2T,POLNAM(3,2),CALNAM(7S2),
6 ITA,IRD.IWR,IDSK.D80.D47,08047,D1ST,DELTA.HPRIME,
7 ESH(2),PEAK,IBUOY,IRISE,IDWN,EFF,XS,UINV,WVEC,
8 NAS.NPS,INDEX.IGRID,IAV.ISCEN,IWDOPT,IWD,ISC.IPS,
9 NTOPT.NWDOPT,NWSOPT,NWPOPT,NSCEN,NLIST,NARRAY,NTAPE,NCSOPT,
* NMAX,NSTDWN,NPRISE,NINPEN,INTER,NPRINT.NGPR.NBID
DATA INDEX,NAS,NPS/0,0,O/
DATA ITA,IRD,IWR.IDSK/1,5,6,8/
DATA SCLAB/2HA ,2HB ,2HC ,2HD .2HE ,2HF /
DATA P/0.15,0.15,0.2,0.25.0.3,0.3/
DATA AZ/.24..24..20,.14..08,.087
DATA BZ/.OOl,.001,0.,.0003,.0015,.0015/
DATA CZ/.001..001.0..0.,0.,0./
DATA SECTAN/0...39270,.78540.1.17810.1.57080.1.96350.2.35620,
1 2.74890,3.14159,3.53429,3.92699,4.31969,4.71239,5.10509,
2 5.49779.5.89049/
END
SUBROUTINE XINTEG(XL,XU,EPS,NDIM,FCT,Y,IER,AUX)
SUBROUTINE XINTEG , PART OF PEM-2 (VERSION 84130),
REAL*8 FCT
FOR UNIVAC-1100
REAL*8 XL,XU,X,Y
DIMENSION AUX(l)
PMT38270
PMT38280
PMT38290
PMT38300
PMT38310
PMT38320
PMT38330
PMT38340
PMT38350
PMT38360
PMT38370
PMT38380
PMT38390
PMT38400
PMT38410
PMT38420
PMT38430
PMT38440
PMT38450
PMT38460
PMT38470
PMT38480
PMT38490
PMT38500
PMT38510
PMT38520
PMT38530
PMT38540
PMT38550
PMT38560
PMT38570
PMT38580
PMT38590
PMT38600
PMT38610
PMT38620
PMT38630
PMT38640
PMT38650
PMT38660
PMT38670
PMT38680
PMT38690
PMT38700
PMT38710
PMT38720
PMT38730
PMT38740
PMT38750
PMT38760
PMT38770
PMT38780
PMT38790
PMT38800
PMT38810
PMT38820
PMT38830
PMT38840
PMT38850
PMT38860
PMT38870
PMT38880
PMT38890
PMT38900
PMT38910
PMT38920
PMT38930
PMT38940
204
-------
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
THIS SUBROUTINE PERFORMS NUMERICAL INTEGRATION OF AN EXTERNALLY
PMT38950
PMT38960
DEFINED FUNCTION OVER A FINITE INTERVAL USING THE TRAPEZOIDAL RULEPMT38970
WITH ROMBERG EXTRAPOLATION. THIS ROUTINE IS CALLED IN THE MAIN
PROGRAM FOR NUMERICAL INTEGRATIONS W.R.T. X FOR AREA SOURCES.
XL = LOWER LIMIT OF INTEGRATION INTERVAL. (INPUT)
XU = UPPER LIMIT OF INTEGRATION INTERVAL. (INPUT)
EPS = UPPER BOUND FOR RELATIVE ERROR BETWEEN SUCCESSIVE
APPROXIMATIONS TO THE INTEGRAL. (INPUT)
NDIM = MAXIMUM NO. OF BISECTIONS OF INTERVAL (XL.XU). (INPUT)
FCT = EXTERNALLY DEFINED INTEGRAND FUNCTION. (INPUT)
Y = BEST POSSIBLE APPROXIMATION OF INTEGRAL. (OUTPUT)
IER = ERROR MESSAGE (OUTPUT)
= 0 NO ERROR
PMT38980
PMT38990
PMT39000
PMT39010
PMT39020
PMT39030
PMT39040
PMT39050
PMT39060
PMT39070
PMT39080
PMT39090
= 1 SPECIFIED ACCURACY CANT BE REACHED DUE TO ROUNDING ERRORSPMT39100
= 2 IMPOSSIBLE TO CHECK ACCURACY (IF NDIM<5) OR SPECIFIED
ACCURACY CAN'T BE REACHED. NDIM SHOULD BE INCREASED.
AUX = AUXILIARY STORAGE ARRAY WITH DIMENSION NDIM. (INTERNAL)
PEM-2 PROGRAM DEVELOPMENT: DECEMBER 1983
K. SHANKAR RAO
NOAA-ATDL, P.O. BOX-E
OAK RIDGE, TENN 37831
PREPARATIONS FOR ROMBERG-LOOP
AUX(l) = .5*(FCT(XL)-hFCT(XU))
H=XU-XL
IF(NDIM-l) 8,8,1
1 IF(H) 2,10,2
NDIM IS GREATER THAN 1 AND H IS NOT EQUAL TO 0.
2 HH=H
EPSREL=EPS
EPSA=1.0E-10
DELT2=1.E06
P=l.
JJ=1
DO 7 1=2, NDIM
Y=AUX(1)
DELT1=DELT2
HD=HH
HH=0.5*HH
P=.5*P
X=XL+HH
SUM=0.
DO 3 J=1,JJ
SUM=SUM+FCT(X)
3 X=X+HD
AUX(I)=.5*AUX(I-1)+P*SUM
A NEW APPROXIMATION OF INTEGRAL VALUE IS COMPUTED BY MEANS OF
TRAPEZOIDAL RULE.
START OF ROMBERG EXTRAPOLATION METHOD.
Q=l.
IM1=I-1
DO 4 J=1,IM1
II=I-J
Q=Q+Q
Q=Q+Q
4 AUX(II)=AUX(II+1)+(AUX(II+1)-AUX(II))/(Q-1.)
END OF ROMBERG-STEP
FINAL VALUE OF AUX(II)=AUX(1) WHICH CONTAINS VALUE OF
INTEGRAL FOR THIS APPROXIMATION.
PMT39110
PMT39120
PMT39130
PMT39140
PMT39150
PMT39160
PMT39170
PMT39180
PMT39190
PMT39200
PMT39210
PMT39220
PMT39230
PMT39240
PMT39250
PMT39260
PMT39270
PMT39280
PMT39290
PMT39300
PMT39310
PMT39320
PMT39330
PMT39340
PMT39350
PMT39360
PMT39370
PMT39380
PMT39390
PMT39400
PMT39410
PMT39420
PMT39430
PMT39440
PMT39450
PMT39460
PMT39470
PMT39480
PMT39490
PMT39500
PMT39510
PMT39520
PMT39530
PMT39540
PMT39550
PMT39560
PMT39570
PMT39580
PMT39590
PMT39600
PMT39610
PMT39620
PMT39630
PMT39640
205
-------
TESTS FOR CONVERGENCE
c
c
c
5
6
7
8
9
IF
IF
IF
IF
IF
Y.GT.EPSA) DELT2=ABS(Y-AUX(1))/Y
Y.LE.EPSA) DELT2=0.
1-2) 7,5,5
DELT2-EPSREL) 10,10.6
DELT2-DELT1) 7,ll,ll
JJ=JJ+JJ
END LOOP ON APPROXIMATIONS
IER=2
Y=H*AUX(1)
RETURN
C
c
10
c
c
11
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
GO TO 9
IER=1
Y=H*Y
RETURN
END
SUBROUTINE D01AJF(F, A, B, EPSABS, EPSREL, RESULT, ABSERR.WORK,
* LWORK, IWORK, LIWORK, IFAIL)
SUBROUTINE D01AJF , PART OF PEM-2 (VERSION 84130).
MARK 8 RELEASE. NAG COPYRIGHT 1980
D01AJF IS A GENERAL PURPOSE INTEGRATOR WHICH CALCULATES
AN APPROXIMATION TO THE INTEGRAL OF A FUNCTION OVER A FINITE
INTERVAL (A,B). THIS ROUTINE CAN BE USED WHEN THE INTEGRAND
HAS SINGULARITIES, ESPECIALLY WHEN THESE ARE OF ALGEBRAIC OR
LOGARITHMIC TYPE. D01AJF IS AN ADAPTIVE ROUTINE, USING THE
GAUSS 10-POINT AND KRONROD 21-POINT RULES. THE ALGORITHM
INCORPORATES A GLOBAL ACCEPTANCE CRITERION TOGETHER WITH
EPS-ALGORITHM TO PERFORM EXTRAPOLATION. THE LOCAL ERROR IS
ESTIMATED.
THE GENERAL PURPOSE INTEGRATOR D01AJF INCLUDES THE FOLLOWING:
SUBROUTINES (1) D01AJF, (2) D01AJV, (3) D01AJX, (4) D01AJY,
(5) D01AJZ, INTEGER FUNCTION P01AAF, DOUBLE PRECISION FUNCTIONS
(1) X02AAF, (2) X02ABF, (3) X02ACF, AND SUBROUTINE X04AAF.
THE PROGRAM LISTINGS FOR THESE SUBROUTINES AND FUNCTIONS, COPIED
HERE FROM ORNL - NAG LIBRARY, FOLLOW. THESE ARE DEVELOPED BY
NUMERICAL ALGORITHMS GROUP (NAG)
1131 WARREN AVENUE
DOWNERS GROVE, ILLINOIS 60515
WHICH HOLDS THE COPYRIGHT (NAG FORTRAN MINI MANUAL, MARKS, 1980).
THESE PROGRAM LISTINGS ARE INCLUDED HERE WITH THEIR KIND
PERMISSION. THEY ARE RELEASED BY
COMPUTER SCIENCES DEPARTMENT
OAK RIDGE NATIONAL LABORATORY (ORNL)
OAK RIDGE, TENNESSEE 37831
EXCLUSIVELY FOR USE IN THE PEM. THESE LIBRARY SUBROUTINES AND
PROGRAMS SHOULD NOT BE USED FOR ANY OTHER PURPOSE WITHOUT PRIOR
APPROVAL FROM NAG AND ORNL.
D01AJF ITSELF IS ESSENTIALLY A DUMMY ROUTINE WHOSE FUNCTION IS
PARTITION THE WORK ARRAYS WORK AND IWORK FOR USE BY D01AJV.
WORK IS PARTITIONED INTO 4 ARRAYS EACH OF SIZE LWORK/4.
IWORK IS A SINGLE ARRAY IN D01AJV.
TO
PMT39650
PMT39660
PMT39670
PMT39680
PMT39690
PMT39700
PMT39710
PMT39720
PMT39730
PMT39740
PMT39750
PMT39760
PMT39770
PMT39780
PMT39790
PMT39800
PMT39810
PMT39820
PMT39830
PMT39840
PMT39850
PMT39860
PMT39870
PMT39880
PMT39890
PMT39900
PMT39910
PMT39920
PMT39930
PMT39940
PMT39950
PMT39960
PMT39970
PMT39980
PMT39990
PMT40000
PMT40010
PMT40020
PMT40030
PMT40040
PMT40050
PMT40060
PMT40070
PMT40080
PMT40090
PMT40100
PMT40110
PMT40120
PMT40130
PMT40140
PMT40150
PMT40160
PMT40170
PMT40180
PMT40190
PMT40200
PMT40210
PMT40220
PMT40230
PMT40240
PMT40250
PMT40260
PMT40270
PMT40280
PMT40290
PMT40300
PMT40310
PMT40320
PMT40330
206
-------
c
c
C$P
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
.. SCALAR ARGUMENTS ..
DOUBLE PRECISION A, ABSERR, B, EPSABS, EPSREL, RESULT
INTEGER IFAIL, LIWORK, LWORK
.. ARRAY ARGUMENTS ..
DOUBLE PRECISION WORK(LWORK)
INTEGER IWORK(LIWORK)
.. FUNCTION ARGUMENTS ..
DOUBLE PRECISION F
!'. LOCAL SCALARS . .
DOUBLE PRECISION SRNAME
INTEGER IBL, IEL, IER, IRL, LIMIT
.. FUNCTION REFERENCES . .
INTEGER P01AAF
.. SUBROUTINE REFERENCES . .
D01AJV
EXTERNAL F
DATA SRNAME /8H D01AJF /
CHECK THAT MINIMUM WORKSPACE REQUIREMENTS ARE MET
IF (LWORK.LT.4) GO TO 20
IF (LIWORK.LT.LWORK/8+2) GO TO 20
LIMIT = UPPER BOUND ON NUMBER OF SUBINTERVALS
LIMIT = LWORK/4
SET UP BASE ADDRESSES FOR WORK ARRAYS
IBL = LIMIT + 1
IEL = LIMIT + IBL
IRL = LIMIT + IEL
PERFORM INTEGRATION
CALL D01AJV(F,
PMT40340
PMT40350
PMT40360
PMT40370
PMT40380
PMT40390
PMT40400
PMT40410
PMT40420
PMT40430
PMT40440
PMT40450
PMT40460
PMT40470
PMT40480
PMT40490
PMT40500
PMT40510
PMT40520
PMT40530
PMT40540
PMT40550
PMT40560
PMT40570
PMT40580
PMT40590
PMT40600
PMT40610
PMT40620
PMT40630
XL D01AJV(F, A, B, DABS(EPSABS), DABS(EPSREL), WORK(l),WORK(IBL)PMT40640
WORK(IEL). WORK(IRL), LIMIT, IWORK, LIWORK,RESULT, ABSERR, IER) PMT40650
' (IER.NE.O) GO TO 40 PMT40660
IF
IFAlL = 0
GO TO 60
ERROR 6 = INSUFFICIENT WORKSPACE
20 IER = 6
40 IFAIL = P01AAF(IFAIL,IER,SRNAME)
60 RETURN
END
SUBROUTINE D01AJV(F, A, B,
* RLIST, LIMIT,
EPSABS, EPSREL, ALIST, BLIST.ELIST,
IORD, LIORD. RESULT, ABSERR, IER)'
SUBROUTINE D01AJV , PART OF PEM-2 (VERSION 84130),
MARK 8 RELEASE. NAG COPYRIGHT 1979
BASED ON QUADPACK ROUTINE DQAGS (FORMERLY QAGS)
**********************************************************
PURPOSE
THE ROUTINE CALCULATES AN APPROXIMATION
/RESULT/ TO A GIVEN DEFINITE INTEGRAL I =
INTEGRAL OF /F/ OVER (A,B), HOPEFULLY
SATISFYING FOLLOWING CLAIM FOR ACCURACY .
ABS(I-RESULT) .LE. MAX(EPSABS,EPSREL*ABS(I)).
CALLING SEQUENCE
CALL D01AJV (F,A,B,EPSABS,EPSREL,ALIST,BLIST.ELIST,
RLIST,LIMIT,IORD,LIORD,RESULT,ABSERR,IER)
PARAMETERS
F
- FUNCTION SUBPROGRAM DEFINING THE INTEGRAND
FUNCTION F(X). THE ACTUAL NAME FOR F
NEEDS TO BE DECLARED EXTERNAL
IN THE DRIVER PROGRAM
- LOWER LIMIT OF INTEGRATION
PMT40670
PMT40680
PMT40690
PMT40700
PMT40710
PMT40720
PMT40730
.PMT40740
PMT40750
PMT40760
PMT40770
PMT40780
PMT40790
PMT40800
PMT40810
PMT40820
PMT40830
PMT40840
PMT40850
PMT40860
PMT40870
PMT40880
PMT40890
PMT40900
PMT40910
PMT40920
PMT40930
PMT40940
PMT40950
PMT40960
PMT40970
PMT40980
PMT40990
PMT41000
PMT41010
PMT41020
207
-------
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
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
B
- UPPER LIMIT OF INTEGRATION
EPSABS - ABSOLUTE ACCURACY REQUESTED
EPSREL - RELATIVE ACCURACY REQUESTED
ALIST,BLIST,ELIST,RLIST
- WORK ARRAYS (FUNCTIONS DESCRIBED BELOW)
LIMIT - UPPER BOUND FOR NUMBER OF SUBINTERVALS
IORD - WORK ARRAY
LIORD - LENGTH OF IORD (AT LEAST LIMIT/2 + 2)
RESULT - APPROXIMATION TO THE INTEGRAL
ABSERR - ESTIMATE OF THE MODULUS OF THE ABSOLUTE ERROR,
WHICH SHOULD EQUAL OR EXCEED ABS(I-RESULT)
IER - IER = 0 NORMAL AND RELIABLE
TERMINATION OF THE ROUTINE.
IT IS ASSUMED THAT THE
REQUESTED ACCURACY HAS BEEN
ACHIEVED.
- IER .NE. 0 ABNORMAL TERMINATION OF
THE ROUTINE. THE ESTIMATES
FOR INTEGRAL AND ERROR ARE
LESS RELIABLE. IT IS ASSUMED
THAT THE REQUESTED ACCURACY
HAS NOT BEEN ACHIEVED.
= 1 MAXIMUM NUMBER OF SUBDIVISIONS ALLOWED
HAS BEEN ACHIEVED. THE USER CAN
ALLOW MORE SUB DIVISIONS BY
INCREASING THE DIMENSIONS OF THE
WORK ARRAYS WORK AND IWORK.
HOWEVER, THIS MAY
YIELD NO IMPROVEMENT, AND IT
IS RATHER ADVISED TO HAVE A
CLOSE LOOK AT THE INTEGRAND,
IN ORDER TO DETERMINE THE
INTEGRATION DIFFICULTIES. IF
THE POSITION OF A LOCAL
DIFFICULTY CAN BE DETERMINED
(I.E. SINGULARITY,
DISCONTINUITY WITHIN THE
INTERVAL) ONE WILL PROBABLY
GAIN FROM SPLITTING UP THE
INTERVAL AT THIS POINT AND
CALLING THE INTEGRATOR ON THE
SUB-RANGES. IF POSSIBLE, AN
APPROPRIATE SPECIAL-PURPOSE
INTEGRATOR SHOULD BE USED
WHICH IS DESIGNED FOR
HANDLING THE TYPE OF
DIFFICULTY INVOLVED.
= 2 THE OCCURRENCE OF ROUNDOFF
ERROR IS DETECTED WHICH
PREVENTS THE REQUESTED
TOLERANCE FROM BEING
ACHIEVED. THE ERROR MAY BE
UNDER-ESTIMATED.
= 3 EXTREMELY BAD INTEGRAND BEHAVIOUR
OCCURS AT SOME INTERIOR POINTS OF THE
INTEGRATION INTERVAL.
= 4 IT IS PRESUMED THAT THE REQUESTED
TOLERANCE CANNOT BE ACHIEVED,
AND THAT THE RETURNED RESULT
IS THE BEST WHICH CAN BE
OBTAINED.
PMT41030
PMT41040
PMT41050
PMT41060
PMT41070
PMT41080
PMT41090
PMT41100
PMT41110
PMT41120
PMT41130
PMT41140
PMT41150
PMT41160
PMT41170
PMT41180
PMT41190
PMT41200
PMT41210
PMT41220
PMT41230
PMT41240
PMT41250
PMT41260
PMT41270
PMT41280
PMT41290
PMT41300
PMT41310
PMT41320
PMT41330
PMT41340
PMT41350
PMT41360
PMT41370
PMT41380
PMT41390
PMT41400
PMT41410
PMT41420
PMT41430
PMT41440
PMT41450
PMT41460
PMT41470
PMT41480
PMT41490
PMT41500
PMT41510
PMT41520
PMT41530
PMT41540
PMT41550
PMT41560
PMT41570
PMT41580
PMT41590
PMT41600
PMT41610
PMT41620
PMT41630
PMT41640
PMT41650
PMT41660
PMT41670
PMT41680
PMT41690
PMT41700
PMT41710
PMT41720
208
-------
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
= 5 THE INTEGRAL IS PROBABLY DIVERGENT. OR
SLOWLY CONVERGENT. IT MUST BE NOTED
THAT DIVERGENCY CAN OCCUR
WITH ANY OTHER VALUE OF IER.
**********************************************************
.. SCALAR ARGUMENTS ..
DOUBLE PRECISION A, ABSERR, B, EPSABS, EPSREL, RESULT
INTEGER IER, LIMIT, LIORD
.. ARRAY ARGUMENTS ..
DOUBLE PRECISION ALIST(LIMIT), BLIST(LIMIT), ELIST(LIMIT),
* RLIST(LIMIT)
INTEGER IORD(LIORD)
.. FUNCTION ARGUMENTS ..
DOUBLE PRECISION F
!! SCALARS IN COMMON ..
INTEGER JUPBND
!! LOCAL SCALARS ..
DOUBLE PRECISION Al, A2. ABSEPS. AREA12. AREAl, AREA2, AREA, Bl,
* B2,CORREC, DEFAB1, DEFAB2, DEFABS, ORES, EPMACH, ERLARG,ERLAST,
* ERRBND, ERRMAX, ERR012, ERROR1, ERROR2, ERRSUM.ERTEST, OFLOW,
* RESAflS, RESEPS, SMALL, UFLOW
INTEGER ID, IERRO, IROFFl, IROFF2, IROFF3, K, KSGN, KTMIN.LAST1,
* LAST, MAXERR, NRES, NRMAX, NUMRL2
LOGICAL EXTRAP. NOEXT
.. LOCAL ARRAYS ..
DOUBLE PRECISION RES3LA(3), RLIST2(52)
.. FUNCTION REFERENCES ..
DOUBLE PRECISION X02AAF, X02ABF, X02ACF
.. SUBROUTINE REFERENCES ..
D01AJX, D01AJY, D01AJZ
EXTERNAL F
COMMON /AD01AJ/ JUPBND
THE DIMENSION OF /RLIST2/ IS DETERMINED BY
DATA /LIMEXP/ IN SUBROUTINE D01AJY 7/RLIST2/
SHOULD BE OF DIMENSION (LIMEXP+2) AT LEAST).
EPMACH = X02AAFQ
UFLOW = X02ABFO
OFLOW = X02ACF()
LIST OF MAJOR VARIABLES
ALIST - LIST OF LEFT END-POINTS OF ALL SUBINTERVALS
CONSIDERED UP TO NOW
BLIST - LIST OF RIGHT END-POINTS OF ALL SUBINTERVALS
CONSIDERED UP TO NOW
RLIST(I) - APPROXIMATION TO THE INTEGRAL OVER
(ALIST(I),BLIST(I))
RLIST2 - ARRAY OF DIMENSION AT LEAST LIMEXP+2
CONTAINING THE PART OF THE EPSILON TABLE
WHICH IS STILL NEEDED FOR FURTHER
COMPUTATIONS
ELIST(I) - ERROR ESTIMATE APPLYING TO RLIST(I)
MAXERR - POINTER TO THE INTERVAL WITH LARGEST ERROR
ESTIMATE
ERRMAX - ELIST(MAXERR)
ERLAST - ERROR ON THE INTERVAL CURRENTLY SUBDIVIDED
PMT41730
PMT41740
PMT41750
PMT41760
PMT41770
PMT41780
PMT41790
PMT41800
PMT41810
PMT41820
PMT41830
PMT41840
PMT41850
PMT41860
PMT41870
PMT41880
PMT41890
PMT41900
PMT41910
PMT41920
PMT41930
PMT41940
PMT41950
PMT41960
PMT41970
PMT41980
PMT41990
PMT42000
PMT42010
PMT42020
PMT42030
PMT42040
PMT42050
PMT42060
PMT42070
PMT42080
PMT42090
PMT42100
PMT42110
PMT42120
PMT42130
.PMT42140
PMT42150
PMT42160
PMT42170
PMT42180
PMT42190
PMT42200
PMT42210
PMT42220
PMT42230
PMT42240
PMT42250
PMT42260
PMT42270
PMT42280
PMT42290
PMT42300
PMT42310
PMT42320
PMT42330
PMT42340
PMT42350
PMT42360
PMT42370
PMT42380
PMT42390
PMT42400
PMT42410
PMT42420
209
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
e
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
(BEFORE THAT SUBDIVISION HAS TAKEN PLACE)
AREA - SUM OF THE INTEGRALS OVER THE SUBINTERVALS
ERRSUM - SUM OF THE ERRORS OVER THE SUBINTERVALS
ERRBND - REQUESTED ACCURACY MAX(EPSABS,EPSREL*
ABS(RESULT))
*****! - VARIABLE FOR THE LEFT INTERVAL
*****2 - VARIABLE FOR THE RIGHT INTERVAL
LAST - INDEX FOR SUBDIVISION
NRES - NUMBER OF CALLS TO THE EXTRAPOLATION ROUTINE
NUMRL2 - NUMBER OF ELEMENTS CURRENTLY IN
RLIST2. IF AN APPROPRIATE
APPROXIMATION TO THE COMPOUNDED
INTEGRAL HAS BEEN OBTAINED IT IS
PUT IN RLIST2(NUMRL2) AFTER NUMRL2
HAS BEEN INCREASED BY ONE.
SMALL - LENGTH OF THE SMALLEST INTERVAL CONSIDERED
UP TO NOW, MULTIPLIED BY 1.5
ERLARG - SUM OF THE ERRORS OVER THE INTERVALS LARGER
THAN THE SMALLEST INTERVAL
CONSIDERED UP TO NOW
EXTRAP - LOGICAL VARIABLE DENOTING THAT THE
ROUTINE IS ATTEMPTING TO PERFORM
EXTRAPOLATION. I.E. BEFORE
SUBDIVIDING THE SMALLEST INTERVAL
WE TRY TO DECREASE THE VALUE OF
ERLARG
NOEXT - LOGICAL VARIABLE DENOTING THAT EXTRAPOLATION
IS NO LONGER ALLOWED(/TRUE/ VALUE)
FIRST APPROXIMATION TO THE INTEGRAL
LAST1 = 1
IER = 0
IERRO = 0
CALL D01AJZ(F, A, B, RESULT, ABSERR, DEFABS, RESABS)
TEST ON ACCURACY
ORES = DABS(RESULT)
ERRBND = DMAX1(EPSABS,EPSREL*DRES)
IF (ABSERR.LE.1.0D+02*EPMACH*DEFABS .AND. ABSERR.GT.ERRBND)IER
IF (LIMIT.LT.2 .AND. ABSERR.GT.ERRBND) IER = 1
IF (IER.NE.O .OR. ABSERR.LE.ERRBND) GO TO 320
INITIALIZATION
ALIST(l) = A
BLIST(l) = B
RLIST(l) = RESULT
RLIST2(1) = RESULT
ERRMAX = ABSERR
MAXERR = 1
AREA = RESULT
ERRSUM = ABSERR
ABSERR = OFLOW
NRMAX = 1
NRES = 0
NUMRL2 = 2
PMT42430
PMT42440
PMT42450
PMT42460
PMT42470
PMT42480
PMT42490
PMT42500
PMT42510
PMT42520
PMT42530
PMT42540
PMT42550
PMT42560
PMT42570
PMT42580
PMT42590
PMT42600
PMT42610
PMT42620
PMT42630
PMT42640
PMT42650
PMT42660
PMT42670
PMT42680
PMT42690
PMT42700
PMT42710
PMT42720
PMT42730
PMT42740
PMT42750
PMT42760
PMT42770
PMT42780
PMT42790
PMT42800
PMT42810
PMT42820
PMT42830
.PMT42840
PMT42850
PMT42860
PMT42870
PMT42880
PMT42890
PMT42900
PMT42910
PMT42920
PMT42930
2PMT42940
PMT42950
PMT42960
PMT42970
PMT42980
PMT42990
PMT43000
PMT43010
PMT43020
PMT43030
PMT43040
PMT43050
PMT43060
PMT43070
PMT43080
PMT43090
PMT43100
PMT43110
PMT43120
210
-------
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
KTMIN = 0
EXTRAP = .FALSE.
NOEXT = .FALSE.
IROFF1 = 0
IROFF2 = 0
IROFF3 = 0
KSGN = -I
IF (ORES.GE.(0.1D+01-0.5D+02*EPMACH)*DEFABS) KSGN
MAIN DO-LOOP
= 1
IF (LIMIT.LT.2) GO TO 220
DO 200 LAST=2,LIMIT
BISECT THE SUBINTERVAL WITH THE NRMAX-TH LARGEST
ERROR ESTIMATE
LAST1 = LAST
Al = ALIST(MAXERR)
Bl = 0.5D+00*(ALIST(MAXERR)+BLIST(MAXERR))
A2 = Bl
B2 = BLIST(MAXERR)
ERLAST = ERRMAX
CALL D01AJZ(F, Al, Bl, AREA1, ERROR1, RESABS, DEFAB1)
CALL D01AJZ(F, A2, B2, AREA2, ERROR2, RESABS, DEFAB2)
IMPROVE PREVIOUS APPROXIMATION OF INTEGRAL
AND ERROR AND TEST FOR ACCURACY
AREA12 = AREA1 + AREA2
ERR012 = ERROR1 + ERROR2
ERRSUM = ERRSUM + ERR012 - ERRMAX
AREA = AREA + AREA12 - RLIST(MAXERR)
IF (DEFAB1.EQ.ERROR1 .OR. DEFAB2.EQ.ERROR2) GO TO 40
IF (DABS(RLIST(MAXERR)-AREA12).GT.0.1D-04*DABS(AREA12) .OR.
* ERR012.LT.0.99D-)-00*ERRMAX) GO TO 20
IF (EXTRAP) IROFF2 = IROFF2 + 1
IF (.NOT.EXTRAP) IROFF1 = IROFF1 + 1
20 IF (LAST.GT.10 .AND. ERR012.GT.ERRMAX) IROFF3 = IROFF3 + 1
40 RLIST(MAXERR) = AREA1
RLIST(LAST) = AREA2
ERRBND = DMAX1(EPSABS,EPSREL*DABS(AREA))
IF (ERRSUM.LE.ERRBND) GO TO 280
TEST FOR ROUNDOFF ERROR AND EVENTUALLY
SET ERROR FLAG
IF (IROFF1+IROFF2.GE.10 .OR. IROFF3.GE.20) IER = 2
IF (IROFF2.GE.5) IERRO = 3
SET ERROR FLAG IN THE CASE THAT THE NUMBER OF INTERVAL
BISECTIONS EXCEEDS /LIMIT/
IF (LAST.EQ.LIMIT) IER = 1
SET ERROR FLAG IN THE CASE OF BAD INTEGRAND BEHAVIOUR
AT INTERIOR POINTS OF INTEGRATION RANGE
IF (DMAX1(DABS(Al),DABS(B2)).LE.(0.1D+01+0.1D+03*EPMACH)*
* (DABS(A2)+0.1D+04*UFLOW)) IER = 4
IF (lER.NE.O) GO TO 220
APPEND THE NEWLY-CREATED INTERVALS TO THE LIST
IF (ERROR2.GT.ERROR1) GO TO 60
ALIST
BLIST
BLIST
ELIST
LAST) = A2
MAXERR) = Bl
LAST) = B2
MAXERR) = ERROR1
PMT43130
PMT43140
PMT43150
PMT43160
PMT43170
PMT43180
PMT43190
PMT43200
PMT43210
PMT43220
PMT43230
PMT43240
PMT43250
PMT43260
PMT43270
PMT43280
PMT43290
PMT43300
PMT43310
PMT43320
PMT43330
PMT43340
PMT43350
PMT43360
PMT43370
PMT43380
PMT43390
PMT43400
PMT43410
PMT43420
PMT43430
PMT43440
PMT43450
PMT43460
PMT43470
PMT43480
PMT43490
PMT43500
PMT43510
PMT43520
PMT43530
.PMT43540
PMT43550
PMT43560
PMT43570
PMT43580
PMT43590
PMT43600
PMT43610
PMT43620
PMT43630
PMT43640
PMT43650
PMT43660
PMT43670
PMT43680
PMT43690
PMT43700
PMT43710
PMT43720
PMT43730
PMT43740
PMT43750
PMT43760
PMT43770
PMT43780
PMT43790
PMT43800
PMT43810
PMT43820
211
-------
60
ELIST(LAST) = ERROR2
GO TO 80
C
C
C
C
C
C
C
C
C
C
C
80
C
C
C
C
C
C
100
C
C
C
120
140
C
C
C
160
ALIST
ALIST
BLIST
RLIST
RLIST
ELIST
ELIST
MAXERR) =
LAST) = Al
LAST) = Bl
MAXERR) =
LAST) = AR
MAXERR) =
LAST) = ER
CALL SUBROUTINE D01AJX TO MAINTAIN THE
DESCENDING ORDERING IN THE LIST OF ERROR
ESTIMATES AND SELECT THE SUBINTERVAL WITH
NRMAX-TH LARGEST ERROR ESTIMATE (TO BE BISECTED
NEXT)
CALL D01AJX(LIMIT, LAST, MAXERR, ERRMAX, ELIST, IORD.LIORD,
NRMAX)
IF (LAST.EQ.2) GO TO 180
IF (NOEXT) GO TO 200
ERLARG = ERLARG - ERLAST
IF (DABS(Bl-Al).GT.SMALL) ERLARG = ERLARG + ERR012
IF (EXTRAP) GO TO 100
TEST WHETHER THE INTERVAL TO BE BISECTED NEXT IS THE
SMALLEST INTERVAL
IF (DABS(BLIST(MAXERR)-ALIST(MAXERR)).GT.SMALL) GO TO 200
EXTRAP = .TRUE.
NRMAX = 2
IF (IERRO.EQ.3 .OR. ERLARG.LE.ERTEST) GO TO 140
THE SMALLEST INTERVAL HAS THE LARGEST ERROR.
BEFORE BISECTING DECREASE THE SUM OF THE ERRORS
OVER THE LARGER INTERVALS(ERLARG) AND PERFORM
EXTRAPOLATION
ID = NRMAX
DO 120 K=ID,JUPBND
MAXERR = lORD(NRMAX)
ERRMAX = ELIST(MAXERR)
IF (DABS(BLIST(MAXERR)-ALIST(MAXERR)).GT.SMALL) GO TO 200
NRMAX = NRMAX + 1
CONTINUE
PERFORM EXTRAPOLATION
NUMRL2 = NUMRL2 + 1
RLIST2[NUMRL2) = AREA
CALL D01AJY(NUMRL2, RLIST2, RESEPS, ABSEPS, RES3LA, NRES)
KTMIN = KTMIN +1
IF (KTMIN.GT.5 .AND. ABSERR.LT.O.1D-02*ERRSUM) IER = 5
IF (ABSEPS.GE.ABSERR) GO TO 160
KTMIN = 0
ABSERR = ABSEPS
RESULT = RESEPS
CORREC = ERLARG
ERTEST = DMAX1(EPSABS,EPSREL*DABS(RESEPS))
IF (ABSERR.LE.ERTEST) GO TO 220
PREPARE BISECTION OF THE SMALLEST INTERVAL
(NUMRL2.EQ.1) NOEXT =
"IER.EQ.5) GO TO 220
MAXERR = IORD(1)
ERRMAX = ELIST(MAXERR)
NRMAX = 1
EXTRAP = .FALSE.
SMALL = SMALL*0.5D+00
ERLARG = ERRSUM
.TRUE.
PMT43830
PMT43840
PMT43850
PMT43860
PMT43870
PMT43880
PMT43890
PMT43900
PMT43910
PMT43920
PMT43930
PMT43940
PMT43950
PMT43960
PMT43970
PMT43980
PMT43990
PMT44000
PMT44010
PMT44020
PMT44030
PMT44040
PMT44050
PMT44060
PMT44070
PMT44080
PMT44090
PMT44100
PMT44110
PMT44120
PMT44130
PMT44140
PMT44150
PMT44160
PMT44170
PMT44180
PMT44190
PMT44200
PMT44210
PMT44220
PMT44230
PMT44240
PMT44250
PMT44260
PMT44270
PMT44280
PMT44290
PMT44300
PMT44310
PMT44320
PMT44330
PMT44340
PMT44350
PMT44360
PMT44370
PMT44380
PMT44390
PMT44400
PMT44410
PMT44420
PMT44430
PMT44440
PMT44450
PMT44460
PMT44470
PMT44480
PMT44490
PMT44500
PMT44510
PMT44520
212
-------
c
c
c
c
GO TO 200
180 SMALL = DABS(B-A)*0.375D+00
ERLARG = ERRSUM
ERTEST = ERRBND
RLIST2C2) = AREA
200 CONTINUE
SET FINAL RESULT AND ERROR ESTIMATE
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
220 IF (ABSERR.EQ.OFLOW) GO TO 280
IF (lER+IERRO.EQ.O) GO TO 260
IF (IERRO.EQ.3) ABSERR = ABSERR + CORREC
IF (IER.EQ.O) IER = 3
IF (RESULT.NE.O.D+00.AND .AREA. NE.O.D+00) GO TO 240
IF (ABSERR.GT.ERRSUM) GO TO 280
IF (AREA.EQ.O.D+00) GO TO 320
GO TO 260
240 IF (ABSERR/DABS(RESULT).GT.ERRSUM/DABS(AREA)) GO TO 280
TEST ON DIVERGENCY
260 IF (KSGN.EQ.-l .AND. DMAX1(DABS(RESULT),DABS(AREA)).LE.DEFABS*
*0.1D-01) GO TO 320
IF (0.1D-01.GT.(RESULT/AREA) .OR. (RESULT/AREA).GT.O.1D+03.0R.
* ERRSUM.GT.DABS(AREA)) IER = 6
GO TO 320
COMPUTE GLOBAL INTEGRAL SUM
280 RESULT = O.D+00
DO 300 K=1,LAST
RESULT = RESULT + RLIST(K)
300 CONTINUE
ABSERR = ERRSUM
320 IF (IER.GT.2) IER = IER - 1
lORDjl) = 4*LAST1
RETURN
END
SUBROUTINE D01AJX(LIMIT, LAST, MAXERR, ERMAX, ELIST, IORD.LIORD,
* NRMAX)
SUBROUTINE D01AJX , PART OF PEM-2 (VERSION 84130)
MARK 8 RELEASE. NAG COPYRIGHT 1979
BASED ON QUADPACK ROUTINE ORDER
PURPOSE
THIS ROUTINE MAINTAINS THE DESCENDING ORDERING
IN THE LIST OF THE LOCAL ERROR ESTIMATES
RESULTING FROM THE INTERVAL SUBDIVISION
PROCESS. AT EACH CALL TWO ERROR ESTIMATES
ARE INSERTED USING THE SEQUENTIAL SEARCH
METHOD . TOP-DOWN FOR THE LARGEST ERROR
ESTIMATE, BOTTOM-UP FOR THE SMALLEST ERROR
ESTIMATE.
CALLING SEQUENCE
CALL D01AJX
( LIMIT , LAST , MAXERR, ERMAX , ELIST, IORD , LIORD , NRMAX)
PARAMETERS (MEANING AT OUTPUT)
LIMIT - MAXIMUM NUMBER OF ERROR ESTIMATES THE LIST
CAN CONTAIN
LAST - NUMBER OF ERROR ESTIMATES CURRENTLY
IN THE LIST. ELIST (LAST) CONTAINS
PMT44530
PMT44540
PMT44550
PMT44560
PMT44570
PMT44580
PMT44590
PMT44600
PMT44610
PMT44620
PMT44630
PMT44640
PMT44650
PMT44660
PMT44670
PMT44680
PMT44690
PMT44700
PMT44710
PMT44720
PMT44730
PMT44740
PMT44750
PMT44760
PMT44770
PMT44780
PMT44790
PMT44800
PMT44810
PMT44820
PMT44830
PMT44840
PMT44850
PMT44860
PMT44870
PMT44880
PMT44890
PMT44900
PMT44910
PMT44920
.PMT44930
PMT44940
PMT44950
PMT44960
PMT44970
PMT44980
PMT44990
PMT45000
PMT45010
PMT45020
PMT45030
PMT45040
PMT45050
PMT45060
PMT45070
PMT45080
PMT45090
PMT45100
PMT45110
PMT45120
PMT45130
PMT45140
PMT45150
PMT45160
PMT45170
PMT45180
PMT45190
PMT45200
PMT45210
213
-------
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
G
c
c
c
c
THE SMALLEST ERROR ESTIMATE.
MAXERR - MAXERR POINTS TO THE NRMAX-TH LARGEST ERROR
ESTIMATE CURRENTLY IN THE LIST.
ERMAX - NRMAX-TH LARGEST ERROR ESTIMATE
ERMAX = ELIST(MAXERR)
ELIST - ARRAY OF DIMENSION LAST CONTAINING
THE ERROR ESTIMATES
IORD - ARRAY CONTAINING POINTERS TO ELIST SO
THAT IORD(1) POINTS TO THE LARGEST
ERROR ESTIMATE,....IORD(LAST) TO THE
SMALLEST ERROR ESTIMATE
LIORD - DIMENSION OF IORD
NRMAX - MAXERR = lORD(NRMAX)
##*###************************************************
.. SCALAR ARGUMENTS ..
DOUBLE PRECISION ERMAX
INTEGER LAST, LIMIT, LIORD, MAXERR, NRMAX
.. ARRAY ARGUMENTS ..
DOUBLE PRECISION ELIST(LAST)
INTEGER IORD(LIORD)
'. '. SCALARS IN COMMON . .
INTEGER JUPBND
!! LOCAL SCALARS ..
DOUBLE PRECISION ERRMAX, ERRMIN
INTEGER I, IBEG, IDO, ISUCC, J, JBND, K
COMMON /AD01AJ/ JUPBND
CHECK WHETHER THE LIST CONTAINS MORE THAN
TWO ERROR ESTIMATES
IF (LAST.GT.2) GO TO 20
IORD(1} = 1
IORD(2) = 2
GO TO 180
THIS PART OF THE ROUTINE IS ONLY EXECUTED
IF, DUE TO A DIFFICULT INTEGRAND, SUBDIVISION
INCREASED THE ERROR ESTIMATE. IN THE NORMAL CASE
THE INSERT PROCEDURE SHOULD START AFTER THE
NRMAX-TH LARGEST ERROR ESTIMATE.
20 ERRMAX = ELIST(MAXERR)
IF (NRMAX.EQ.l) GO TO 60
IDO = NRMAX - 1
DO 40 1=1,IDO
ISUCC = IORD(NRMAX-1)
IF (ERRMAX.LE.ELIST(ISUCC)) GO TO 60
IORD(NRMAX) = ISUCC
NRMAX = NRMAX - 1
40 CONTINUE
COMPUTE THE NUMBER OF ELEMENTS IN THE LIST TO
BE MAINTAINED IN DESCENDING ORDER. THIS NUMBER
DEPENDS ON THE NUMBER OF SUBDIVISIONS STILL
ALLOWED
60 JUPBND = LAST
IF (LAST.GT.(LIMIT/2+2)) JUPBND = LIMIT + 3 - LAST
ERRMIN = ELIST(LAST)
PMT45220
PMT45230
PMT45240
PMT45250
PMT45260
PMT45270
PMT45280
PMT45290
PMT45300
PMT45310
PMT45320
PMT45330
PMT45340
PMT45350
PMT45360
PMT45370
PMT45380
PMT45390
PMT45400
PMT45410
PMT45420
PMT45430
PMT45440
PMT45450
PMT45460
PMT45470
PMT45480
PMT45490
PMT45500
PMT45510
PMT45520
PMT45530
PMT45540
PMT45550
PMT45560
PMT45570
PMT45580
PMT45590
PMT45600
PMT45610
PMT45620
PMT45630
PMT45640
PMT45650
PMT45660
PMT45670
PMT45680
PMT45690
PMT45700
PMT45710
PMT45720
PMT45730
PMT45740
PMT45750
PMT45760
PMT45770
PMT45780
PMT45790
PMT45800
PMT45810
PMT45820
PMT45830
PMT45840
PMT45850
PMT45860
PMT45870
PMT45880
PMT45890
PMT45900
PMT45910
214
-------
c
c
c
c
c
c
c
c
INSERT ERRMAX BY TRAVERSING THE LIST TOP-DOWN
STARTING COMPARISON FROM THE ELEMENT
ELIST(IORD(NRMAX+1))
JBND = JUPBND - 1
IBEG = NRMAX + 1
IF (IBEG.GT.JBND) GO TO 100
DO 80 I=IBEG,JBND
ISUCC = IORD(I)
IF (ERRMAX.GE.ELIST(ISUCC)) GO TO 120
lORD(I-l) = ISUCC
80 CONTINUE
100 lORD(JBND) = MAXERR
IOHDCJUPBND) = LAST
GO TO 180
INSERT ERRMIN BY TRAVERSING THE LIST BOTTOM-UP
120 lORD(I-l) = MAXERR
K = JBND
DO 140 J=I,JBND
ISUCC = IORD(K)
IF (ERRMIN.LT.ELIST(ISUCC)) GO TO 160
IORD(K+1) = ISUCC
ooo
140
160
K = K
CONTINUE
IORD(I) =
GO TO 180
IORD(K+1)
SET
LAST
= LAST
MAXERR AND
ERMAX
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
180 MAXERR = IORD(NRMAX)
ERMAX = ELIST(MAXERR)
RETURN
END
SUBROUTINE D01AJY(N, EPSTAB. RESULT, ABSERR, RES3LA, NRES)
SUBROUTINE D&1AJY , PART OF PEM-2 (VERSION 84130),
MARK 8 RELEASE. NAG COPYRIGHT 1979
BASED ON QUADPACK ROUTINE EPSALG
PURPOSE
THE ROUTINE TRANSFORMS A GIVEN SEQUENCE OF
APPROXIMATIONS, BY MEANS OF THE EPSILON
ALGORITHM OF P. WYNN.
AN ESTIMATE OF THE ABSOLUTE ERROR IS ALSO GIVEN.
THE CONDENSED EPSILON TABLE IS COMPUTED. ONLY THOSE
ELEMENTS NEEDED FOR THE COMPUTATION OF THE
NEXT DIAGONAL ARE PRESERVED.
CALLING SEQUENCE
CALL D01AJY (N, EPSTAB, RESULT, ABSERR, RES3LA, NRES)
PARAMETERS
N - EPSTAB (N) CONTAINS THE NEW ELEMENT IN THE
FIRST COLUMN OF THE EPSILON TABLE.
EPSTAB - ONE DIMENSIONAL ARRAY CONTAINING THE
ELEMENTS OF THE TWO LOWER DIAGONALS OF
THE TRIANGULAR EPSILON TABLE.
THE ELEMENTS ARE NUMBERED STARTING AT THE
RIGHT-HAND CORNER OF THE TRIANGLE.
THE DIMENSION SHOULD BE AT LEAST N+2.
PMT45920
PMT45930
PMT45940
PMT45950
PMT45960
PMT45970
PMT45980
PMT45990
PMT46000
PMT46010
PMT46020
PMT46030
PMT46040
PMT46050
PMT46060
PMT46070
PMT46080
PMT46090
PMT46100
PMT46110
PMT46120
PMT46130
PMT46140
PMT46150
PMT46160
PMT46170
PMT46180
PMT46190
PMT46200
PMT46210
PMT46220
PMT46230
PMT46240
PMT46250
PMT46260
PMT46270
PMT46280
PMT46290
PMT46300
PMT46310
-PMT46320
PMT46330
PMT46340
PMT46350
PMT46360
PMT46370
PMT46380
PMT46390
PMT46400
PMT46410
PMT46420
PMT46430
PMT46440
PMT46450
PMT46460
PMT46470
PMT46480
PMT46490
PMT46500
PMT46510
PMT46520
PMT46530
PMT46540
PMT46550
PMT46560
PMT46570
PMT46580
PMT46590
PMT46600
215
-------
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
RESULT - RESULTING APPROXIMATION TO THE INTEGRAL
ABSERR - ESTIMATE OF THE ABSOLUTE ERROR COMPUTED FROM
RESULT AND THE 3 PREVIOUS /RESULTS/
RES3LA - ARRAY CONTAINING THE LAST 3 /RESULTS/
NRES - NUMBER OF CALLS TO THE ROUTINE
(SHOULD BE ZERO AT FIRST CALL)
******************************************************
.. SCALAR ARGUMENTS ..
DOUBLE PRECISION ABSERR, RESULT
INTEGER N, NRES
.. ARRAY ARGUMENTS ..
DOUBLE PRECISION EPSTAB(52), RES3LA(3)
'.'. LOCAL SCALARS . .
DOUBLE PRECISION DELTA1, DELTA2. DELTAS, EO, El, ElABS, E2. E3,
* EPMACH.EPSINF, ERR1, ERR2, ERR3, ERROR, OFLOW, RES, SS, TOL1,
* TOL2,TOL3
INTEGER I, IB2, IB, IE, IND, Kl, K2, K3, LIMEXP, NEWELM, NUM
.. FUNCTION REFERENCES ..
DOUBLE PRECISION X02AAF, X02ACF
MACHINE DEPENDENT CONSTANTS
/LIMEXP/ IS THE MAXIMUM NUMBER OF ELEMENTS THE EPSILON
TABLE CAN CONTAIN. IF THIS NUMBER IS REACHED, THE UPPER
DIAGONAL OF THE EPSILON TABLE IS DELETED.
DATA LIMEXP /50/
EPMACH = X02AAF()
OFLOW = X02ACF()
LIST OF MAJOR VARIABLES
EO - THE 4 ELEMENTS ON WHICH THE
El COMPUTATION OF A NEW ELEMENT IN
E2 THE EPSILON TABLE IS BASED
E3 EO
E3 El NEW
E2
NEWELM - NUMBER OF ELEMENTS TO BE COMPUTED IN THE NEW
DIAGONAL
ERROR - ERROR - ABS(E1-EO|+ABS(E2-E1)+ABS(NEW~E2)
RESULT - THE ELEMENT IN THE NEW DIAGONAL WITH LEAST
ERROR
NRES = NRES + 1
ABSERR = OFLOW
RESULT = EPSTAB(N)
IF (N.LT.3) GO TO 200
EPSTAB(N+2) = EPSTAB(N)
NEWELM = (N-l)/2
EPSTAB(N) = OFLOW
NUM = N
Kl = N
DO 80 1=1,NEWELM
K2 = Kl - 1
K3 = Kl - 2
RES = EPSTAB(Kl+2)
EO = EPSTAB(K3)
El = EPSTAB(K2)
E2 = RES
ElABS = DABS(El)
DELTA2 = E2 - El
ERR2 = DABS(DELTA2)
PMT46610
PMT46620
PMT46630
PMT46640
PMT46650
PMT46660
PMT46670
PMT46680
PMT46690
PMT46700
PMT46710
PMT46720
PMT46730
PMT46740
PMT46750
PMT46760
PMT46770
PMT46780
PMT46790
PMT46800
PMT46810
PMT46820
PMT46830
PMT46840
PMT46850
PMT46860
PMT46870
PMT46880
PMT46890
PMT46900
PMT46910
PMT46920
PMT46930
PMT46940
PMT46950
PMT46960
PMT46970
PMT46980
PMT46990
PMT47000
PMT47010
.PMT47020
PMT47030
PMT47040
PMT47050
PMT47060
PMT47070
PMT47080
PMT47090
PMT47100
PMT47110
PMT47120
PMT47130
PMT47140
PMT47150
PMT47160
PMT47170
PMT47180
PMT47190
PMT47200
PMT47210
PMT47220
PMT47230
PMT47240
PMT47250
PMT47260
PMT47270
PMT47280
PMT47290
PMT47300
216
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
20
40
60
TOL2 = DMAX1(DABS(E2),E1ABS)*EPMACH
DELTAS = El - EO
ERRS = DABS(DELTAS)
TOL3 = DMAX1(E1ABS,DABS(EO))*EPMACH
IF (ERR2.GT.TOL2 .OR. ERR3.GT.TOL3) GO TO 20
IF EO, El AND E2 ARE EQUAL TO WITHIN MACHINE
ACCURACY, CONVERGENCE IS ASSUMED
RESULT = E2
ABSERR = ABS(E1-EO)+ABS(E2-E1)
RESULT = RES
ABSERR = ERR2 + ERRS
GO TO 200
E3 = EPSTAB(Kl)
EPSTAB(Kl) = El
DELTA1 = El - E3
ERR1 = DABS(DELTAl)
TOL1 = DMAX1(E1ABS,DABS(E3))*EPMACH
IF TWO ELEMENTS ARE VERY CLOSE TO EACH OTHER, OMIT
A PART OF THE TABLE BY ADJUSTING THE VALUE OF N
IF (ERR1.LT.TOL1 .OR. ERR2.LT.TOL2 .OR. ERRS.LT.TOL3) GOTO 40
SS = 0.1D+01/DELTA1 + 0.1D+01/DELTA2 - 0.1D+01/DELTA3
EPSINF = DABS(SS*E1)
TEST TO DETECT IRREGULAR BEHAVIOUR IN THE TABLE. AND
EVENTUALLY OMIT A PART OF THE TABLE ADJUSTING THE VALUE
OF N
IF (EPSINF.GT.0.1D-03) GO TO 60
N = I + I - 1
GO TO 100
COMPUTE A NEW ELEMENT AND EVENTUALLY ADJUST
THE VALUE OF RESULT
C
C
RES = El + 0.1D+01/SS
EPSTAB(Kl) = RES
Kl = Kl - 2
ERROR = ERR2 + DABS(RES-E2) + ERRS
IF (ERROR.GT.ABSERR) GO TO 80
ABSERR = ERROR
RESULT = RES
80 CONTINUE
SHIFT THE TABLE
100 IF (N.EQ.LIMEXP) N = 2*(LIMEXP/2) - 1
IB = 1
IF ((NUM/2)*2.EQ.NUM) IB = 2
IE = NEWELM + 1
DO 120 1=1,IE
IB2 = IB + 2
EPSTAB(IB) = EPSTAB(IB2)
IB = IB2
120 CONTINUE
IF (NUM.EQ.N) GO TO 160
IND = NUM - N + 1
DO 140 1=1,N
EPSTAB(I) = EPSTAB(IND)
IND = IND + 1
140 CONTINUE
160 IF (NRES.GE.4) GO TO 180
RESSLA(NRES) = RESULT
ABSERR = OFLOW
GO TO 200
COMPUTE ERROR ESTIMATE
PMT47310
PMT47320
PMT47330
PMT47340
PMT47350
PMT47360
PMT47370
PMT47380
PMT47390
PMT47400
PMT47410
PMT47420
PMT47430
PMT47440
PMT47450
PMT47460
PMT47470
PMT47480
PMT47490
PMT47500
PMT47510
PMT47520
PMT47530
PMT47540
PMT47550
PMT47560
PMT47570
PMT47580
PMT47590
PMT47600
PMT47610
PMT47620
PMT47630
PMT47640
PMT47650
PMT47660
PMT47670
PMT47680
PMT47690
PMT47700
PMT47710
•PMT47720
PMT47730
PMT47740
PMT47750
PMT47760
PMT47770
PMT47780
PMT47790
PMT47800
PMT47810
PMT47820
PMT47830
PMT47840
PMT47850
PMT47860
PMT47870
PMT47880
PMT47890
PMT47900
PMT47910
PMT47920
PMT47930
PMT47940
PMT47950
PMT47960
PMT47970
PMT47980
PMT47990
PMT48000
217
-------
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
180 ABSERR = DABS(RESULT-RES3LA(3)) + DABS(RESULT-RES3LA(2)) +
*DABS(RESULT-RES3LA(1))
RES3LA(1) = RES3LA(2)
RES3LA(2) = RES3LA(3)
RES3LA(3) = RESULT
200 ABSERR = DMAX1(ABSERR,5.0D+00*EPMACH*DABS(RESULT))
RETURN
END
SUBROUTINE D01AJZ(F, A, B, RESULT, ABSERR, RESABS, RESASC)
SUBROUTINE D01AJZ , PART OF PEM-2 (VERSION 84130)
MARK 8 RELEASE. NAG COPYRIGHT 1979
BASED ON QUADPACK ROUTINE QUARUL
******************************************************
PURPOSE
TO COMPUTE I = INTEGRAL OF F OVER (A,B), WITH ERROR
ESTIMATE
J = INTEGRAL OF ABS(F) OVER (A.B)
CALLING SEQUENCE
CALL D01AJZ (F,A,B,RESULT,ABSERR,RESABS,RESASC)
PARAMETERS
A
B
- FUNCTION SUBPROGRAM DEFINING THE INTEGRAND
FUNCTION F(X). THE ACTUAL NAME FOR F NEEDS
TO BE DECLARED EXTERNAL IN THE
CALLING PROGRAM
- LOWER LIMIT OF INTEGRATION
- UPPER LIMIT OF INTEGRATION
C
C
C
C
RESULT - APPROXIMATION TO THE INTEGRAL I.
RESULT IS CALCULATED BY APPLYING
THE 21-POINT GAUSS-KRONROD RULE
(RESK), OBTAINED BY OPTIMAL
ADDITION OF ABSCISSAE TO THE
10-POINT GAUSS RULE (RESG).
ABSERR - ESTIMATE OF THE MODULUS OF THE
ABSOLUTE ERROR, WHICH SHOULD NOT
EXCEED ABS(I-RESULT)
RESABS - APPROXIMATION TO THE INTEGRAL J
RESASC - APPROXIMATION TO THE INTEGRAL OF
ABS(F-I/(B-A)) OVER (A,B)
******************************************************
.. SCALAR ARGUMENTS ..
DOUBLE PRECISION A, ABSERR, B, RESABS, RESASC, RESULT
.. FUNCTION ARGUMENTS ..
DOUBLE PRECISION F
'.'. LOCAL SCALARS ..
DOUBLE PRECISION ABSC, CENTRE, DHLGTH, EPMACH, FC, FSUM, FVAL1,
* FVAL2.HLGTH, RESG, RESK, RESKH, UFLOW
INTEGER J
.. LOCAL ARRAYS ..
DOUBLE PRECISION FVl(lO), FV2(10), WG(10), WGK(ll), XGK(ll)
.. FUNCTION REFERENCES ..
DOUBLE PRECISION X02AAF, X02ABF
THE ABSCISSAE AND WEIGHTS ARE GIVEN FOR THE
INTERVAL (-1,1) . BECAUSE OF SYMMETRY ONLY THE
PMT48010
PMT48020
PMT48030
PMT48040
PMT48050
PMT48060
PMT48070
PMT48080
PMT48090
PMT48100
PMT48110
PMT48120
PMT48130
PMT48140
PMT48150
PMT48160
PMT48170
PMT48180
PMT48190
PMT48200
PMT48210
PMT48220
PMT48230
PMT48240
PMT48250
PMT48260
PMT48270
PMT48280
PMT48290
PMT48300
PMT48310
PMT48320
PMT48330
PMT48340
PMT48350
PMT48360
PMT48370
PMT48380
PMT48390
PMT48400
.PMT48410
PMT48420
PMT48430
PMT48440
PMT48450
PMT48460
PMT48470
PMT48480
PMT48490
PMT48500
PMT48510
PMT48520
PMT48530
PMT48540
PMT48550
PMT48560
PMT48570
PMT48580
PMT48590
PMT48600
PMT48610
PMT48620
PMT48630
PMT48640
PMT48650
PMT48660
PMT48670
PMT48680
PMT48690
218
-------
c
c
c
c
c
c
c
c
c
c
c
c
c
c
POSITIVE ABSCISSAE
WEIGHTS ARE GIVEN.
AND THEIR CORRESPONDING
C
C
C
C
C
C
C
C
C
C
C
c
c
c
c
c
XGK
WGK
WG
21-POINT GAUSS-KRONROD RULE
... ABSCISSAE OF THE 10-POINT
ABSCISSAE OF THE
XGK(2), XGK(4),
GAUSS RULE
XGK(l), XGK(3), ---- ABSCISSAE WHICH
ARE OPTIMALLY ADDED TO THE 10-POINT
GAUSS RULE
WEIGHTS OF THE 21-POINT GAUSS-KRONROD RULE
WEIGHTS OF THE 10-POINT GAUSS RULE,
CORRESPONDING TO THE ABSCISSAE XGK(2),
T
XGK(4),
TO ZERO.
XGK
WG(1), WG(3),
ARE SE
DATA XGK(l), XGK(2)
*6.9739065285171717200779640'121D+00,
*0.9301574913557082260012071801D+00,
*0.8650633666889845107320966884D+00,
*0.7808177265864168970637175783D+00,
*0.6794095682990244062343273651D+00,
*0.56275713466860468333900009930+00,
*0.43339539412924719079926594320+00,
*0.2943928627014601981311266031D+00,
*0.14887433898163121088482600110+00.0.ODO/
PMT48700
PMT48710
PMT48720
PMT48730
PMT48740
PMT48750
PMT48760
PMT48770
PMT48780
PMT48790
PMT48800
PMT48810
PMT48820
PMT48830
XGK(4), XGK(5). XGK(6), XGK(7) ,XGK(8)PMT48840
. 9956571630258680807355272807D+00 , --------
PMT48850
PMT48860
PMT48870
PMT48880
PMT48890
PMT48900
PMT48910
PMT48920
PMT48930
PMT48940
T\J • JL^ W*J i TT«J*J*J»-/U J.\J*J ±t-t J. \J w *-t^i~J£j \J\J\J J* J.U ' \J\J j \J * \J U\J / LLI iTC w^JTV/
DATA WGK(l), WGK(2), WGK(3), WGK(4), WGK(5), WGK(6), WGK(7),WGK(8)PMT48950
*0
WGK(9). WGKflOl. WGK(ll) /O.1169463886737187427806439606D-01,
*U.32558162307964727478818972460-01,
*0.5475589657435199603138130024D-01,
*0.75039674810919952767043140920-01,
*0.93125454583697605535065465080-01,
*0.1093871588022976418992105903D+00,
1234919762620658510779581098D+00,
1347092173114733259280540018D+00,
*0.1427759385770600807970942731D+00,
*0.1477391049013384913748415160D+00,
*0.1494455f "
DATA WG(i;
_-_x.-»
*0.
*0.2190863625159820439955349342D+00', 0. ODO;
*0.2692667193099963550912269216D+00,0.ODO,
*0.2955242247147528701738929947D+00/
EPMACH = X02AAFQ
UFLOW = X02ABF()
LIST OF MAJOR VARIABLES
.
ATA WG(1), WG(2), WG(3), WG(4), WG(5), WG(6), WG(7), WG(8),WG(9)
WG(10) /O.000,0.66671344308688i3759356880989D-01,0.6oO,
.14945134915058059314577633970+00,0.ODO,
CENTRE - MID POINT OF THE INTERVAL
HLGTH - HALF LENGTH OF THE INTERVAL
ABSC - ABSCISSA
FVAL* - FUNCTION VALUE
RESG - 10-POINT GAUSS FORMULA
RESK - 21-POINT GAUSS-KRONROD FORMULA
RESKH - APPROXIMATION TO MEAN VALUE OF F OVER
(A.B), I.E. TO I/CB-A)
CENTRE = 0.5D+00*(A+B)
HLGTH = 0.50+00*(B-A)
DHLGTH = DABS(HLGTH)
COMPUTE THE 21-POINT GAUSS-KRONROD APPROXIMATION TO
THE INTEGRAL, AND ESTIMATE THE ABSOLUTE ERROR
RESG
FC =
= 0.00+00
F(CENTRE)
RESK = WGK(11)*FC
RESABS = DABS(RESK)
DO 20 J=l,10
ABSC = HLGTH*XGK(J)
PMT48960
PMT48970
PMT48980
PMT48990
PMT49000
PMT49010
PMT49020
PMT49030
PMT49040
PMT49050
PMT49060
.PMT49070
PMT49080
PMT49090
PMT49100
.PMT49110
PMT49120
PMT49130
PMT49140
PMT49150
PMT49160
PMT49170
PMT49180
PMT49190
PMT49200
PMT49210
PMT49220
PMT49230
PMT49240
PMT49250
PMT49260
PMT49270
PMT49280
PMT49290
PMT49300
PMT49310
PMT49320
PMT49330
PMT49340
PMT49350
PMT49360
PMT49370
PMT49380
PMT49390
219
-------
FVAL1 = F(CENTRE-ABSC)
FVAL2 = F(CENTRE*ABSC)
FV1(J) = FVAL1
FV2(J) = FVAL2
FSUM = FVAL1 + FVAL2
RESG = RESG + WG(J)*FSUM
RESK = RESK + WGK(J)*FSUM
RESABS = RESABS + WGK(J)*(DABS(FVAL1)+DABS(FVAL2))
20 CONTINUE
RESKH = RESK*0.5D+00
RESASC = WGK(11)*DABS(FC-RESKH)
DO 40 J=l,10
PMT49400
PMT49410
PMT49420
PMT49430
PMT49440
PMT49450
PMT49460
PMT49470
PMT49480
PMT49490
PMT49500
PMT49510
RESASC'= RESASC + WGK(J)*(DABS(FV1(J)-RESKH)+DABS(FV2(J)-RESKH)PMT49520
* ) PMT49530
40 CONTINUE PMT49540
RESULT = RESK*HLGTH PMT49550
RESABS = RESABS*DHLGTH PMT49560
RESASC = RESASC*DHLGTH PMT49570
ABSERR = DABS((RESK-RESG)*HLGTH) PMT49580
IF (RESASC.NE.O.D+00) ABSERR = RESASC*DMIN1(0.1D+01,(0.2D+03* PMT49590
*ABSERR/RESASC)**1.5DO) PMT49600
IF (RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR =DMAX1(EPMACH*RESABS*PMT49610
C
C
C
C
C
C
C
C
C
C
C
C$P 1
*0.5D+02,ABSERR)
RETURN
END
INTEGER FUNCTION P01AAF(IFAIL, ERROR, SRNAME)
FUNCTION P01AAF , PART OF PEM-2 (VERSION 84130)
MARK 1 RELEASE. NAG COPYRIGHT 1971
MARK 3 REVISED
MARK 4A REVISED, IER-45
MARK 4.5 REVISED
MARK 7 REVISED (DEC 1978)
RETURNS THE VALUE OF ERROR OR TERMINATES THE PROGRAM.
INTEGER ERROR, IFAIL, NOUT
DOUBLE PRECISION SRNAME
C TEST IF NO ERROR DETECTED
IF(ERROR.EQ.O) GO TO 20
C DETERMINE OUTPUT UNIT FOR MESSAGE
CALL X04AAF (O.NOUT)
C TEST FOR SOFT FAILURE
IF (MOD(IFAIL,10).EQ.l) GO TO 10
C HARD FAILURE
WRITE (NOUT.99999) SRNAME, ERROR
C STOPPING MECHANISM MAY ALSO DIFFER
CALL WAUDIT
STOP
C SOFT FAIL
C TEST IF ERROR MESSAGES SUPPRESSED
10 IF ?MOD(IFAIL/10,10).EQ.O) GO TO 20
WRITE (NOUT,99999) SRNAME, ERROR
20 P01AAF = ERROR
RETURN
99999 FORMAT (1HO, 38HERROR DETECTED BY NAG LIBRARY ROUTINE
* 11H - IFAIL = , I5//)
END
A8,
C
C
C
C
C
C
C
C
C
DOUBLE PRECISION FUNCTION X02AAFQ
FUNCTION X02AAF , PART OF PEM-2 (VERSION 84130)
NAG COPYRIGHT 1975
MARK 4.5 RELEASE
* EPS *
PMT49620
PMT49630
PMT49640
PMT49650
PMT49660
PMT49670
PMT49680
PMT49690
PMT49700
PMT49710
PMT49720
PMT49730
PMT49740
PMT49750
PMT49760
PMT49770
PMT49780
PMT49790
.PMT49800
PMT49810
PMT49820
PMT49830
PMT49840
PMT49850
PMT49860
PMT49870
PMT49880
PMT49890
PMT49900
PMT49910
PMT49920
PMT49930
PMT49940
PMT49950
PMT49960
PMT49970
PMT49980
PMT49990
PMT50000
PMT50010
PMT50020
PMT50030
PMT50040
PMT50050
PMT50060
220
-------
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
c
c
c
c
UNIVAC DOUBLE PRECISION VERSION
RETURNS THE VALUE EPS WHERE EPS IS THE SMALLEST POSITIVE
NUMBER SUCH THAT 1.0 + EPS > 1.0
FOR ICL 1900
X02AAF = 2.0**(-37.0)
FOR IBM 360/370
X02AAF = 2.0DO**(-52.0DO)
DOUBLE PRECISION Z
FOR IBM-3033
DATA Z/Z3410000000000000/
FOR UNIVAC-1100
DIMENSION ZZ(2)
EQUIVALENCE (ZZ(l).Z)
DATA ZZ /0171410000000,0000000000000/
X02AAF - Z
RETURN
END
DOUBLE PRECISION FUNCTION X02ABFQ
FUNCTION X02ABF , PART OF PEM-2 (VERSION 84130)
NAG COPYRIGHT 1975
MARK 4.5 RELEASE
* RMIN *
UNIVAC DOUBLE PRECISION VERSION
RETURNS THE VALUE OF THE SMALLEST POSITIVE REAL FLOATING-
POINT NUMBER EXACTLY REPRESENTABLE ON THE COMPUTER
FOR ICL 1900
X02ABF = 2.0**(-257.0)
FOR IBM 360/370
X02ABF = 16.0DO**(-65.0DO)
DOUBLE PRECISION Z
FOR IBM-3033
DATA Z/Z0010000000000000/
FOR UNIVAC-1100
DIMENSION ZZ(2)
EQUIVALENCE fZZ(l).Z)
DATA ZZ /OOOOllOOOOOOO.OOOOOOOOOOOOO/
X02ABF = Z
RETURN
END
DOUBLE PRECISION FUNCTION X02ACF()
FUNCTION X02ACF , PART OF PEM-2 (VERSION 84130)
NAG COPYRIGHT 1975
MARK 4.5 RELEASE
* RMAX *
UNIVAC DOUBLE PRECISION VERSION
PMT50070
PMT50080
PMT50090
PMT50100
PMT50120
PMT50130
PMT50140
PMT50150
PMT50155
PMT50160
PMT50170
PMT50175
PMT50180
PMT50185
PMT50190
PMT50200
PMT50205
PMT50210
PMT50220
PMT50230
PMT50240
PMT50250
PMT50260
PMT50270
PMT50280
PMT50290
PMT50300
PMT50310
PMT50320
PMT50330
PMT50340
PMT50350
PMT50360
PMT50370
PMT50380
PMT50390
PMT50400
PMT50410
PMT50420
PMT50430
.PMT50440
PMT50445
PMT50450
PMT50460
PMT50465
PMT50470
PMT50475
PMT50480
PMT50490
PMT50495
PMT50500
PMT50510
PMT50520
PMT50530
PMT50540
PMT50550
PMT50560
PMT50570
PMT50580
PMT50590
PMT50600
PMT50610
PMT50620
PMT50630
PMT50640
PMT50650
PMT50660
PMT50670
221
-------
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
c
c
RETURNS THE VALUE OF THE LARGEST POSITIVE REAL FLOATING-
POINT NUMBER REPRESENTABLE ON THE COMPUTER
FOR ICL 1900
X02ACF = (2.0 - 2.0**(-36.0))*2.0**254.0
FOR IBM 360/370
X02ACF = (1.0DO-16.0DO**(-14.0DO))*16.0DO**63.0DO
DOUBLE PRECISION Z
FOR IBM-3033
DATA Z/Z7FFFFFFFFFFFFFFF/
FOR UNIVAC-1100
DIMENSION ZZ(2)
EQUIVALENCE (ZZ(1V,Z)
DATA ZZ /0377777777777,0777777777777/
X02ACF = Z
RETURN
END
SUBROUTINE X04AAF(I,NERR_)
SUBROUTINE X04AAF
PART OF PEM-2 (VERSION 84130.)
MARK 7 RELEASE. NAG COPYRIGHT 1978
MARK 7C REVISED IER-190 (MAY 1979)
IF I = 0, SETS NERR TO CURRENT ERROR MESSAGE UNIT NUMBER
(STORED IN NERR1).
IF I = 1, CHANGES CURRENT ERROR MESSAGE UNIT NUMBER TO
VALUE SPECIFIED BY NERR.
*** NOTE ***
THIS ROUTINE ASSUMES THAT THE VALUE OF NERR1 IS SAVED
BETWEEN CALLS. IN SOME IMPLEMENTATIONS IT MAY BE
NECESSARY TO STORE NERR1 IN A LABELLED COMMON
BLOCK /AX04AA/ TO ACHIEVE THIS.
.. SCALAR ARGUMENTS ..
INTEGER I, NERR
'. '. LOCAL SCALARS . .
INTEGER NERR1
DATA NERR1 /6/
IF (I.EQ.O) NERR = NERR1
IF Q.EQ.l) NERR1 = NERR
RETURN
END
SUBROUTINE WIND(UA,PWR.HQ, UPL)
SUBROUTINE WIND
PART OF PEM-2 (VERSION 84130)
SUBROUTINE WIND DETERMINES THE WIND SPEED AT SOURCE HEIGHT
ACCORDING TO THE WIND PROFILE POWER LAW.
UA = ANEMOMETER WIND SPEED (M/S)
PWR = EXPONENT OF POWER LAW WIND PROFILE
HQ = SOURCE HEIGHT (M)
UPL = OUTPUT WIND SPEED AT SOURCE HEIGHT (M/S)
HA = ANEMOMETER HEIGHT (M)
HMIN = WIND SPEED HELD CONSTANT BELOW THIS HEIGHT (M)
HMAX = WIND SPEED CONSTANT ABOVE THIS HEIGHT (M)
UMIN = WIND SPEED NOT ALLOWED LESS THAN THIS VALUE (M/S)
IUFLG = WIND SPEED FLAG INDICATOR
PMT50680
PMT50690
PMT50700
PMT50705
PMT50710
PMT50720
PMT50725
PMT50730
PMT50740
PMT50745
PMT50750
PMT50755
PMT50760
PMT50770
PMT50775
PMT50780
PMT50790
PMT50800
PMT50810
PMT50820
PMT50830
PMT50840
PMT50850
PMT50860
PMT50870
PMT50880
PMT50890
PMT50900
PMT50910
PMT50920
PMT50930
PMT50940
PMT50950
PMT50960
PMT50970
PMT50980
PMT50990
PMT51000
PMT51010
PMT51020
.PMT51030
PMT51040
PMT51050
PMT51060
PMT51070
PMT51080
PMT51090
PMT51100
PMT51110
PMT51120
PMT51130
PMT51140
PMT51150
PMT51160
PMT51170
PMT51180
PMT51190
PMT51200
PMT51210
PMT51220
PMT51230
PMT51240
PMT51250
PMT51260
PMT51270
PMT51280
PMT51290
PMT51300
222
-------
c
c
c
c
c
c
c
c
c
c
c
0 - NORMAL COMPUTATION
1 - WIND SPEED SET AT VALUE AT HMIN
2 - WIND SPEED SET AT VALUE AT HMAX
3 - WIND SPEED SET AT UMIN VALUE
COMMON/PARM7A/HA,Pi(6)
COMMON/WND/HMIN,HMAX,UMIN,IUFLG
DEFAULT VALUES FOR HA, HMIN, HMAX, AND UMIN WERE SET
IN SUBROUTINE INMOD AS 10., 10., 200., AND 1. RESPECTIVELY,
UNLESS DEFINED ON THE INPUT CARD #7.
IF(HQ.LT.HMAX) THEN
IF(HQ.GT.HMIN) THEN
UPL=UA*((HQ/HA)**PWR)
IUFLG=0
ELSE
UPL=UA*((HMIN/HA)**PWR)
IUFLG=1
END IF
ELSE
UPL=UA*((HMAX/HA)**PWR)
IUFLG—2
END IF
IF(UPL.LT.UMIN) THEN
UPL=UMIN
IUFLG=3
END IF
RETURN
END
PMT51310
PMT51320
PMT51330
PMT51340
PMT51350
PMT51360
PMT51370
PMT51380
PMT51390
PMT51400
PMT51410
PMT51420
PMT51430
PMT51440
PMT51450
PMT51460
PMT51470
PMT51480
PMT51490
PMT51500
PMT51510
PMT51520
PMT51530
PMT51540
PMT51550
PMT51560
PMT51570
PMT51580
PMT51590
PMT51600
PMT51610
223
-------
c
c
c
c
c
c
c
c
c
c
c
0 - NORMAL COMPUTATION
1 - WIND SPEED SET AT VALUE AT HMIN
2 - WIND SPEED SET AT VALUE AT HMAX
3 - WIND SPEED SET AT UMIN VALUE
COMMON/PARM7A/HA,PI(6)
COMMON/WND/HMIN,HMAX,UMIN,IUFLG
DEFAULT VALUES FOR HA, HMIN, HMAX, AND UMIN WERE SET
IN SUBROUTINE INMOD AS 10., 10., 200., AND 1. RESPECTIVELY,
UNLESS DEFINED ON THE INPUT CARD #7.
IF(HQ.LT.HMAX) THEN
IF(HQ.GT.HMIN) THEN
UPL=UA*((HQ/HA)**PWR)
IUFLG=0
ELSE
UPL=UA*((HMIN/HA)**PWR)
IUFLG=1
END IF
ELSE
UPL=UA*((HMAX/HA)**PWR)
IUFLG-2
END IF
IF(UPL.LT.UMIN) THEN
UPL=UMIN
IUFLG=3
END IF
RETURN
END
PMT51310
PMT51320
PMT51330
PMT51340
PMT51350
PMT51360
PMT51370
PMT51380
PMT51390
PMT51400
PMT51410
PMT51420
PMT51430
PMT51440
PMT51450
PMT51460
PMT51470
PMT51480
PMT51490
PMT51500
PMT51510
PMT51520
PMT51530
PMT51540
PMT51550
PMT51560
PMT51570
PMT51580
PMT51590
PMT51600
PMT51610
223
-------
Date
Return form to;
James M. Godowitch
Meteorology and Assessment Division (MD-80)
U.S. Environmental Protection Agency
Research Triangle Park, NC 27711
I wish to receive future revisions to the
PEM-2 User Guide.
Name
Organization
Address
City/State
Zip Code
Additional Optional Information;
Phone ( ) -
Computer system
------- |