EPA - March 2001
HYDROLOGICAL SIMULATION PROGRAM - FORTRAN
HSPF
Version 12
User's Manual
Brian R. Bicknell
John C. Imhoff
John L. Kittle, Jr.
Thomas H. Jobes
Anthony S. Donigian, Jr.
AQUA TERRA Consultants
Mountain View, California 94043
In Cooperation With
Hydrologic Analysis Software Support Program
Office Of Information
Water Resources Discipline
U.S. Geological Survey
Reston, Virginia 20192
National Exposure Research Laboratory
Office Of Research And Development
U.S. Environmental Protection Agency
Athens, Georgia 30605
-------
-------
Introduction
Introduction
Disclaimer
This report has been reviewed by the Environmental Research Laboratory, U.S. Environmental Protection
Agency, Athens, Georgia and approved for publication. Approval does not signify that the contents
necessarily reflect the views and policies of the U.S. Environmental Protection Agency, nor does mention
of trade names or commercial products constitute endorsement or recommendation for use.
Foreword
As environmental controls become more costly to implement and the penalties of judgment errors become
more severe, environmental quality management requires more efficient analytical tools based on greater
knowledge of the environmental phenomena to be managed. Part of this Laboratory's research on the
occurrence, movement, transformation, impact, and control of environmental contaminants, consists of
the development of management and engineering tools to help pollution control officials achieve water
quality goals through watershed management.
The development and application of mathematical models to simulate the movement of pollutants through
a watershed and thus to anticipate environmental problems has been the subject of intensive EPA research
for a number of years. An important tool in this modeling approach is the Hydrological Simulation
Program - FORTRAN (HSPF), which uses computers to simulate hydrology and water quality in natural
and man-made water systems. HSPF is designed for application to most watersheds using existing
meteorologic and hydrologic data. Although data requirements are extensive, HSPF is thought to be the
most accurate and appropriate management tool presently available for the continuous simulation of
hydrology and water quality in watersheds.
Rosemarie C. Russo, Ph.D.
Director
Environmental Research Laboratory
Athens, Georgia
111
-------
-------
Introduction
Abstract
The Hydrological Simulation Program - FORTRAN (HSPF) is a set of computer codes that can simulate
the hydrologic, and associated water quality, processes on pervious and impervious land surfaces and in
streams and well-mixed impoundments. The manual discusses the structure of the system, and presents a
detailed discussion of the algorithms used to simulate various water quantity and quality processes. It
also contains all of the information necessary to develop input files for applying the program, including
descriptions of program options, parameter definitions, and detailed input formatting data.
The original version of this report was submitted in fulfillment of Grant No. R804971-01 by Hydrocomp,
Inc., under the sponsorship of the U.S. Environmental Protection Agency. That work was completed in
January 1980.
Extensive revisions, modifications, and corrections to the original report and the HSPF code were
performed by Anderson-Nichols and Co. under Contract No. 68-03-2895, also sponsored by the U.S.
EPA. That work was completed in January 1981. Versions 7 and 8 of HSPF and the corresponding
documents were prepared by Linsley, Kraeger Associates, Ltd. and Anderson-Nichols & Co., Inc. under
Contract No. 68-01-6207 (the HSPF maintenance and user-support activities) directed by the U.S. EPA
laboratory in Athens, GA.
The HSPF User's Manuals for Versions 10, 11, and 12 were prepared by AQUA TERRA Consultants of
Mountain View, CA, incorporating code modifications, corrections, and documentation of algorithm
enhancements sponsored by the U.S. Geological Survey, the U.S. EPA Chesapeake Bay Program, the
U.S. Army Corps of Engineers, the South Florida Water Management District, the Minnesota Pollution
Control Agency, and the U.S. EPA Athens National Exposure Research Laboratory. The Version 12
manual and code were prepared under sponsorship of the EPA under Contract No. 68-C-98-010. The
manual is available in Microsoft Word and WordPerfect format, as well as HTML and Windows Help
File.
v
-------
-------
Introduction
Dedication
In Memory Of Robert Carl Johanson, 1941-1998 "Father
of HSPF"
Robert ('Rob") Carl Johanson, Professor of Civil
Engineering at the University of the Pacific in Stockton,
CA, was born in South Africa in 1941, and studied at the
University of Natal in Durban and at Stanford University.
He started as an assistant engineer with the Durban
Harbour Engineer, and obtained his MSc (working with
Bill James) in Engineering with distinction. Later Rob
was affiliated with research groups at Stanford (with
Professors Vennard, Linsley and Crawford), University of
the Witwatersrand (Prof. Midgley) and the Computing
Center for Water Resources at the University of Natal in
Pietermaritzburg (Dr. Mark Dent). He became a US
citizen and consulted widely.
From 1975 to 1981, while working at Hydrocomp. Inc.,
Rob was the Project Manager on the HSPF development
effort for the U. S. EPA Environmental Research
Laboratory in Athens, GA. In consultation with Drs.
Norman Crawford and Delbert Franz, Rob developed the
overall design of the HSPF code using the then-emerging
technology of structured programming, an alien concept to most practicing civil engineers of the time.
Through these efforts, he pioneered one of the first applications of this technology to the water resources
field. He managed the project throughout its duration, implemented the code design, wrote many sections
of the code and essentially reviewed each line of code, supervised the code and application testing, and
wrote much of the user manual.
Due to his exacting attention to detail, his intense commitment to 'always get it right', and his belief in
modeling technology, HSPF still stands today as the state-of-the-art in comprehensive watershed
hydrology and water quality modeling. For more than two decades, with its initial release in 1980, FISPF
has withstood the test of time, and the advancements of science in software, computer hardware, and
environmental technology, largely due to Rob's dedicated and visionary efforts during its initial
development. For all these reasons, Rob is known as the "Father of HSPF". This User Manual for
Version 12 is dedicated to his memory from his friends, former colleagues, and the universe of HSPF
users who have benefited from his industry.
Tony Donigian
AQUA TERRA Consultants
Vll
-------
-------
Introduction
Purpose and Scope of the HSPF Software
The use of models which simulate continuously the quantity/quality processes occurring in the
hydrological cycle is increasing significantly. There has been a proliferation in the variety of models and
in the range of processes they simulate. This has been a mixed blessing to the users. To get the benefits
of simulation, a user must select a model from among several candidate models, and then spend much
effort amassing and manipulating the large quantities of data which the model requires. If the modeler
wishes to couple two or more subprocess models to simulate a complete process, he often encounters
further difficulties. The underlying assumptions and/or structures of the subprocess models may make
them somewhat incompatible. More frequently, the data structures are so different that coupling requires
extensive data conversion work.
One reason for these problems is that the increase in modeling work has not included enough work on the
development of good model structures. That is, very few software packages for water resource modeling
are built on a systematic framework in which a variety of process modules can fit.
With HSPF, a major attempt was made to overcome these problems as far as possible. HSPF consists of a
set of modules arranged in a hierarchical structure, which permit the continuous simulation of a
comprehensive range of hydrologic and water quality processes. Common experience with sophisticated
models suggests that much of the human effort is associated with data management. This fact, often
overlooked by model builders, means that a successful comprehensive model must include a sound data
management component. Otherwise, the user may become so entangled in data manipulation that
progress on the simulation work is significantly impeded. Consequently, the HSPF software is planned
around a time series data management system operating on direct access principles. The simulation
modules draw input from time series storage files and are capable of writing output to them. Because
these transfers require very few instructions from the user, the problems referred to above are minimized.
The system was designed so that the various simulation and utility modules can be invoked conveniently,
either individually or in tandem. A top down approach emphasizing structured design was followed.
Modules were separated according to function so that, as much as possible, they contained only those
activities which are unique to them. Structured design has made the system relatively easy to extend, so
that new modules can be added with relatively little disruption of the existing code.
In the initial development, the functions and processes included in HSPF were derived primarily from the
following group of predecessor models:
• Hydrocomp Simulation Programming (HSP) (Hydrocomp, Inc., 1976, 1977)
• NonPoint Source (NPS) Model (Donigian and Crawford, 1976a)
• Agricultural Runoff Management (ARM) Model (Donigian & Crawford, 1976b; Donigian et al.,
1977)
• Sediment and Radionuclides Transport (SERATRA) (Onishi and Wise, 1979) The HSPF software is
not merely a translation of the above models, but a new system with a framework designed to
accommodate a variety of simulation modules. Many extensions were made to the above models in
the course of restructuring them into the HSPF system.
IX
-------
HSPF Version 12
HSPF has become a valuable tool for water resource planners. Because it is more comprehensive than
most existing systems, it permits more effective planning. More specifically, the program can benefit the
user in the following ways:
1. The time-series-oriented direct access data system and its associated modules can serve as a
convenient means of inputting, organizing, and updating the large files needed for continuous
simulation.
2. The unified structure of the model makes it relatively simple to operate. The user can select
those modules and options that are needed in one run, and the system will ensure that the correct
sets of code are invoked and that internal and external transfers of data are handled. This is
achieved with a minimum of manual intervention. Input of control information is simplified
because a consistent system is used for this data for all the modules.
3. Because the system was carefully planned using top-down programming techniques, it is
relatively easy to modify and extend. The use of uniform programming standards and
conventions assisted in this respect.
4. Since the underlying code is written almost entirely in ANSI standard Fortran, implementation
on a variety of computers and Fortran compilers is possible.
x
-------
Introduction
Purpose and Organization of this Document
1. This report contains the primary documentation of the HSPF system. It is designed to:
2. introduce users to the principles and concepts on which the system is founded
3. describe the technical foundations of the algorithms in the various application (simulation)
modules
4. describe the input which the user supplies to run the system.
To meet these needs and, at the same time, to produce a document which is reasonably easy to use, this
report is divided into several distinct parts, each with its own organization.
This first part contains introductory material.
The second part outlines the general principles on which the HSPF system is based. This includes a
discussion of the "world view" which the simulation modules embody. A firm grasp of this material
is necessary before the detailed material can be properly understood.
The third part documents the function of each part of the software. The organization of this part
follows the layout of the software itself. The relationship between, and the functions of, the various
modules are described, starting at the highest (most general) level and proceeding down to the lowest
(most detailed) level. The algorithms used to simulate the quantity and quality processes which occur
in watersheds are described in this part.
The fourth part describes the User's Control Input; that is, the information which the user must
provide in order to run HSPF.
The Appendices include a glossary of terms and HSPF time series concepts.
Notice of User Responsibility
This product has been carefully developed. Although the work included testing of the software, the
ultimate responsibility for its use and for ensuring correctness of the results obtained, rests with the user.
The EPA and the developers of this software make no warranty of any kind with regard to this software
and associated documentation, including, but not limited to, the implied warranties of merchantability and
fitness for a particular purpose. They shall not be liable for errors or for incidental or consequential
damages in connection with the furnishing, performance or use of this material.
While we intend to correct any errors which users report, we are not obliged to do so. We reserve the right
to make a reasonable charge for work which is performed for a specific user at his request.
XI
-------
-------
Introduction
Acknowledgments
The original development of HSPF was sponsored by the Environmental Research Laboratory in Athens,
Georgia. David Duttweiler was the laboratory director and Robert Swank the head of the Technology
Development and Applications Branch, which supervised the project during the code development period.
Mr. Jim Falco was the Project Officer initially on the HSPF development work; he was succeeded by Mr.
Tom Barnwell, who oversaw HSPF activities for EPA from 1979 until 1995.
Much of the recent development of HSPF has been sponsored by the U.S. Geological Survey Water
Resources Division in Reston, Virginia. Dr. Alan Lumb is the Contract Officer and directs that effort for
the USGS.
The initial HSPF and user manual development work was performed by Hydrocomp, Inc.; members of
the entire project team are acknowledged in the original (Release 5.0) version of the user manual (EPA
Publication No. EPA-600/9-80-015) published in April 1980. Subsequent revisions and extensions to the
HSPF code and user manual were performed by Anderson-Nichols & Co., Inc. and AQUA TERRA
Consultants. The primary participants in the work noted above, and their contributions, are discussed
below.
Robert Johanson was Project Manager for Hydrocomp on the initial development work, and provided
consulting assistance to Anderson-Nichols & Co., Inc. and Linsley, Kraeger Associates on subsequent
development and maintenance work.
John Imhoff had primary responsibility for the RCHRES water quality sections, both during the initial
development work for Hydrocomp and subsequent modifications and development for Anderson-Nichols
and AQUA TERRA.
Harley Davis designed, coded and documented much of the PERLND and IMPLND modules for
Hydrocomp during the initial development effort.
Delbert Franz participated in the overall design of the system and supervised the work on the time series
management system at Hydrocomp.
Jack Kittle performed or directed most HSPF software development activities between 1979 and 1990.
His focus has been on the software structure, time series improvements, and addition of new components.
He designed the MUTSIN (Multiple Timeseries Sequential Input) module, water categories in the
RCHRES module, conditional Special Actions, major structural improvements to the software, and was
responsible for production of Releases 7, 8 and 9. He continues to be a principal advisor in HSPF
development and maintenance.
Tony Donigian participated in the design of the PERLND algorithms in the initial project at Hydrocomp.
Since 1980, he has been the Principal Investigator/Project Manager, providing overall guidance and
supervision, on all projects related to HSPF algorithm development, with particular focus on the
improvements to the AGCHEM sections of the program.
Xlll
-------
HSPF Version 12
Brian Bicknell has been involved in HSPF maintenance and software development since 1981. He has
developed or directed all recent algorithm enhancements and software corrections. He added the WDM
file interaction, the MASS-LINK and SCHEMATIC blocks, and the FILES block. He directed the
development and documentation of Versions 10, 11, and 12, including major enhancements for
simulating forest nitrogen, atmospheric deposition, the DSS file interface, and sediment-nutrient
interactions and bed temperature interactions in RCHRES.
Tom Jobes has been the primary software engineer with day-to-day responsibility for HSPF development
and maintenance since 1992. He implemented most of the enhancements and software corrections in
Versions 10, 11, and 12, with particular responsibility for the DSS file interface, atmospheric deposition,
forest nitrogen and plant uptake enhancements in AGCHEM, multiple WDM files, code structure
improvements, conditional Special Actions, water categories, wetland capabilities in PERLND, the
irrigation capabilities, and the BMPRAC and REPORT modules.
xiv
-------
Introduction
Contents
HSPF User's Manual i
Introduction iii
Disclaimer iii
Foreword iii
Abstract v
Dedication vii
Purpose and Scope of the HSPF Software ix
Purpose and Organization of this Document xi
Notice of User Responsibility xi
Acknowledgments xiii
General Principles 1
View of the Real World 1
General Concepts 1
Nodes, Zones, and Elements 1
Processing Units and Networks 3
Software Structure 5
Concept of an Operation 5
Time Series Storage 7
Time Series Management for an Operation 8
HSPF Software Hierarchy 8
Structure of a Job 11
Elements of a Job 11
Groups Of Operations 11
Conventions Used in Functional Description 14
Structure of Data in Memory 14
Structure of Data in Disk Files 14
Method of Handling Diagnostic Messages 15
Functional Description 17
MAIN Program 17
Interpret a RUN Data Set in the User's Control Input 17
Supervise and Perform Operations 20
Perform Special Actions - SPECL 21
Get Required Input Time Series - TSGET 22
Perform an Operation 23
Pervious Land Segment - PERLND 25
Air Temperature Elevation Difference - ATEMP 27
Accumulation and Melting of Snow and Ice - SNOW 28
Meteorological Conditions - METEOR 33
Precipitation on the Pack - EFFPRC 35
Compact the Pack - COMPAC 36
Evaporation from the Pack - SNOWEV 37
Estimate Heat Exchange Rates - HEXCHR 38
Temperature Index Calculations - DEGDAY 41
Loss of Heat from Pack - COOLER 42
Warm the Snowpack - WARMUP 43
Melt the Pack Using Remaining Heat - MELTER 44
Liquid Water in Pack - LIQUID 45
Occurrence of Ice in Pack - ICING 46
xv
-------
HSPF Version 12
Melt the Pack Using Heat from the Ground - GMELT 47
Reset When Snowpack Disappears - NOPACK 48
Water Budget Pervious - PWATER 49
Interception - ICEPT 54
Distribute Water Available for Infiltration and Runoff - SURFAC 55
Dispose of Moisture Supply - DISPOS 57
Interflow - INTFLW 62
Upper Zone Behavior - UZONE 63
Lower Zone Behavior - LZONE 64
Groundwater Behavior - GWATER 66
Evapotranspiration - EVAPT 67
Water Budget Pervious, High Water Table, Low Gradient 70
Irrigation 83
Production and Removal of Sediment - SEDMNT 88
Detach Soil By Rainfall - DETACH 91
Remove by Surface Flow - SOSED1 92
Remove by Surface Flow - SOSED2 93
Re-attachment of Detached Sediment - ATTACH 94
Soil Temperatures - PSTEMP 95
Water Temperature and Dissolved Gas Concentrations - PWTGAS 97
Lateral inflows 98
Quality Constituents Using Simple Relationships - PQUAL 99
Remove by Association with Sediment - QUALSD 101
Accumulate and Remove by a Constant Unit Rate and by Overland Flow - QUALOF 103
Association with Interflow Outflow - QUALIF 105
Association with Active Groundwater Outflow - QUALGW 106
Introduction to the Agri-chemical Sections 107
Moisture Content of Soil Layers - MSTLAY 109
Pesticide Behavior - PEST 112
Reactions on Pesticides - PSTRXN 115
First-Order Kinetics - FIRORD 116
Single Value Freundlich Method - SV 117
Non-single Value Freundlich Method - NONSV 119
Nitrogen Behavior - NITR 120
Reactions on Nitrogen Forms - NITRXN 122
Phosphorous Behavior - PHOS 127
Movement of a Tracer - TRACER 129
Impervious Land Segment - IMPLND 130
Water Budget Impervious - IWATER 133
How Much Moisture Runs Off - IROUTE 136
Accumulation and Removal of Solids - SOLIDS 137
Washoff Solids - SOSLD1 138
Washoff Solids - SOSLD2 140
Accumulate and Remove Solids Independently of Runoff - AC CUM 141
Water Temperature and Dissolved Gas Concentrations - IWTGAS 142
Washoff of Quality Constituents Using Simple Relationships - IQUAL 143
Remove by Association with Solids - WASHSD 145
Accumulate and Remove by Constant Unit Rate and Overland Flow - WASHOF 146
xvi
-------
Introduction
Free-flowing Reach or Mixed Reservoir - RCHRES 148
Sinking of Suspended Material - SINK 151
Hydraulic Behavior - HYDR 152
Outflows Using Hydraulic Routing - ROUTE 158
Find Outflow Demands Corresponding to Row in RCHTAB - DEMAND 160
Solve Routing Equations - SOLVE 162
Outflows Without Using Hydraulic Routing - NOROUT 163
Values of Auxiliary State Variables - AUXIL 165
Bed Shear Stress and Shear Velocity - SHEAR 167
Prepare to Simulate Advection of Fully Entrained Constituents - ADCALC 170
Conservative Constituents - CONS 172
Advection of Constituent Totally Entrained in Water - ADVECT 174
Heat Exchange and Water Temperature - HTRCH 176
Air Temperature Elevation Difference - RATEMP 183
Behavior of Inorganic Sediment - SEDTRN 184
Cohesive Sediments - COHESV 187
Exchange with Bed - BDEXCH 188
Behavior of Sand, Gravel - SANDLD 191
Sand Transport Capacity Using Toffaleti's Method - TOFFAL 193
Sand Transport Capacity Using Colby's Method - COLBY 198
Generalized Quality Constituent - GQUAL 201
Decay of Dissolved Material - DDECAY 206
Advection of Material on Sediment - ADVQAL 215
Decay of Adsorbed Material - ADECAY 219
Adsorption/Desorption of a Generalized Quality Constituent - ADSDES 221
Constituents Involved in Biochemical Transformations - RQUAL 223
Primary DO and BOD Balances - OXRX 225
Benthal Oxygen Demand and Benthal Release of BOD - OXBEN 228
Oxygen Reaeration Coefficient - OXREA 230
BOD Decay - BODDEC 233
Primary Inorganic Nitrogen and Phosphorus Balances - NUTRX 234
Benthal Release of Constituents - BENTH 238
Nitrification - NITRIF 239
Denitrification - DENIT 240
Adsorption/Desorption of Ammonia and Orthophosphorus - ADDSNU 241
Advection and Deposition/Scour of Adsorbed Ammonia and Orthophosphorus - ADVNUT
242
Ionization of Ammonia to Ammonium - AMMION 244
Ammonia Volatilization - NH3VOL 245
Materials Balance for Transformation from Organic to Inorganic - DECBAL 247
Plankton Populations and Associated Reactions - PLANK 248
Advect Plankton - ADVPLK 253
Light-related Information for Algal Simulation - LITRCH 255
Phytoplankton - PHYRX 256
Zooplankton - ZORX 265
Benthic Algae - BALRX 271
pH, Carbon Dioxide, Total Inorganic Carbon, and Alkalinity - PHCARB 274
Calculate pH - PHCALC 279
XVll
-------
HSPF Version 12
Copy Time Series - COPY 280
Output Time Series to a List File - PLTGEN 281
Display Time Series in a Tabular Format - DISPLY 283
Duration Analysis on a Time Series - DURANL 288
Generate a Time Series from One or Two Other Time Series - GENER 295
Multiple Sequential Input of Time Series from an HSPF PLTGEN File - MUTSIN 296
Best Management Practice Evaluation - BMPRAC 297
Summary Report - REPORT 298
User-Defined Format Input File 300
Looping 301
Special Format for transfer to external database or spreadsheet 302
Module TSPUT 303
REFERENCES 304
Users Control Input 309
GENERAL INFORMATION AND CONVENTIONS 309
The User's Control Input 309
General Comments on Method of Documentation 309
FORMAT OI TIIH USERS CONTROL INPUT 310
GLOBAL Block 312
FILES Block 314
OPN SEQUENCE Block 316
Optimization of Operation Sequencing 318
Block 320
PERLND Block 322
General input 323
ACTIVITY 324
PRINT-INFO 325
GEN-INFO 327
ATEMP input 329
ATEMP-DAT 330
SNOW input 331
ICE-FLAG 332
SNOW-FLAGS 333
SNOW-PARM1 334
SNOW-PARM2 336
MON -MELT -FAC 338
SNOW-IN II 1 339
SNOW-INIT2 340
PWATER input 341
PWAT-PARM1 342
PWAT-PARM2 344
PWAT-PARM3 346
PWAT-PARM4 348
PWAT-PARM5 350
PWAT-PARM6 351
PWAT-PARM7 353
MON-INTERCEP 355
MON-UZSN 356
MON-M AWING 357
MON-INTERFLW 358
MON-IRC 359
XVlll
-------
Introduction
GQ-FRAC 700
OXY-FLAG 702
OXY-FRAC 703
NUT-FLAG 704
DNUT-FRAC 706
ADSNUT-FRAC 707
PLANK-FLAG 708
PLANK-FRAC 709
PH-FLAG 710
PH-FRAC 711
REPORT Block 712
REPORT-FLAGS 713
REPORT-TITLE 715
REPORT-SRC 716
REPORT-CON 717
REPORT-SUMM 718
FTABLES Block 720
FTABLES for the PERLND Application Module 721
FTABLE for PWATER section 721
FTABLES for the RCHRES Application Module 723
FTABLE for HYDR section 723
TIME SERIES LINKAGES 725
General Discussion 725
WDM File Concepts 726
DSS File Concepts 727
EXT SOURCES Block 729
NETWORK Block 732
SCHEMATIC and MASS-LINK Blocks 734
SCHEMATIC Block 737
MASS-LINK Block 739
EXT TARGETS Block 741
PATHNAMES Block 744
Time Series Transform Functions 745
Time Series Catalog 747
Connection of Surface and Instream Application Modules 749
Connection of Two Land Segment Modules 750
Atmospheric Deposition of Water Quality Constituents 751
Catalog for PERLND module 752
Group EXTNL 753
Group ATEMP 755
Group SNOW 756
Group PWATER 757
Group SEDMNT 759
Group PSTEMP 760
Group PWTGAS 761
Group PQUAL 763
Group MSTLAY 765
Group PEST 766
Group NITR 768
Group PHOS 771
XXV
-------
HSPF Version 12
Group TRACER 773
Catalog for IMPLND module 774
Group EXTNL 775
Group ATEMP 776
Group SNOW 776
Group IWATER 777
Group SOLIDS 778
Group IWTGAS 779
Group IQUAL 780
Catalog for RCHRES module 781
Group EXTNL 782
Group IIYDR 784
Group ADCALC 786
Group CONS 787
Group HTRCH 788
Group SEDTRN 789
Group GQUAL 790
RQUAL Groups 792
Group OXRX 792
Group NUTRX 794
Group PLANK 797
Group PIK ARB 800
Groups INFLOW, ROFLOW, and OFLOW 801
GROUP INFLOW 802
Group ROFLOW 803
Group OFLOW 804
Catalog for COPY module 805
Group INPUT 805
Group OUTPUT 805
Catalog for PLTGEN module 806
Group INPUT 806
Catalog for DISPLY module 807
Group INPUT 807
Catalog for DURANL module 808
Group INPUT 808
Catalog for GENER module 809
Group INPUT 809
Group OUTPUT 809
Catalog for MUTSIN module 810
Group OUTPUT 810
Catalog for BMPRAC module 811
Group INFLOW 811
Group RECEIV 812
Group ROFLOW 813
Group REMOVE 814
Catalog for REPORT module 815
Group INPUT 815
XXVI
-------
Introduction
FORMATS Block 816
Sequential and PLTGEN/MUTSIN File Formats 817
Format class HYDFIV - Sequential 818
Format class HYDFIF - Sequential 818
Format class HYDHR - Sequential 819
Format class HYDDAY - Sequential 819
Format class HYDSMN - Sequential 820
Format class HYDMON - Sequential 820
PLTGEN/MUTSIN File Format 821
SPEC-ACTIONS Block 822
MONTH-DATA Block 833
CATEGORY Block 834
Appendix I - Glossary of Terms 835
Appendix II - Time Series Concepts 843
XXVll
-------
-------
General Principles
General Principles
View of the Real World
General Concepts
To design a comprehensive simulation system, one must have a consistent means of representing the
prototype; in this case, a watershed. We view it as a set of constituents which move through a fixed
environment and interact with each other. Water is one constituent; others are sediment, chemicals, etc.
The motions and interactions are called processes.
Nodes, Zones, and Elements
The prototype is a continuum of constituents and processes. Simulation of such a system on a computer
requires representation in a discrete fashion. In general, this is done by subdividing the prototype into
"elements" which consist of "nodes" and "zones."
A node corresponds to a point in space. Therefore, a particular value of a spatially variable function can
be associated with it, for example, channel flow rate and/or flow cross sectional area. A zone corresponds
to a finite portion of the real world. It is usually associated with the integral of a spatially variable
quantity, for example, storage in a channel reach. The zone is the smallest unit into which the world is
subdivided. The relationship between zonal and nodal values is similar to that between the definite
integral of a function and its values at the limits of integration.
An element is a collection of nodes and/or zones. The figures below illustrates these concepts. In HSPF,
the response of the land phase of the hydrologic cycle is simulated using elements called "segments." A
segment is a portion of the land assumed to have areally uniform properties. A segment of land with a
pervious surface is called a "Pervious Land-segment" (PLS). Constituents in a PLS are represented as
resident in a set of zones (Fig. a). A PLS has no nodes. As a further example, consider the formulation of
channel routing. A channel reach is modeled as a one dimensional element consisting of a single zone
situated between two nodes (Fig. b). Flow rate and depth are simulated at the nodes; the zone is
associated with storage.
The conventions of the finite element technique also fall within the scope of these concepts. Figure c
shows a two dimensional finite element used in the simulation of an estuary. Three nodes define the
boundaries of the triangular element. A fourth node, situated inside, may be viewed as subdividing the
element into three zones. This last type of element is not presently used in any HSPF module, but is
included in this discussion to show the generality provided by HSPF. The system can accommodate a
wide variety of simulation modules.
1
-------
HSPF Version 12
Snow Zone
Surface Zone
Upper Zone
Lower Zone
Ground-Water
Zone
PLS Element
\
Zone (storage)
\
<
\
c
1
i
i
i
UpsL
Dournst
Node
Node
Reach Element
Node 1
ode 4
Node 3 Node 2
Estuary Finite Element
(a)
Figure 1: Nodes, zones, and elements
<°)
(C)
There are no fixed rules governing the grouping of zones and nodes to form elements. The model builder
must decide what grouping is reasonable and meaningful, based on his view of the real world processes
being simulated. In general, it is convenient to define elements so that a large portion of the real world
can be represented by a collection of conceptually identical elements. In this way, a single parameter
structure can be defined which applies to every element in the group. Thus, each element is a variation on
the basic theme. It is then meaningful to speak of an "element type." For example, elements of type
"PLS" all embody the same arrangement of nodes and are represented by sets of parameters with identical
structure. Variations between segments are represented only by variations in the values of parameters.
The same applies to any other element, such as a Reach, layered lake or a triangular finite element.
As illustrated in the above discussion, nodes are often used to define the boundaries of zones and
elements. A zone, characterized by storage, receives inflows and disperses outflows; these are called
"fluxes." Note that if the nodal values of a field variable are known, it is often possible to compute the
zonal values (storages). The reverse process does not work.
2
-------
General Principles
Processing Units and Networks
To simulate a prototype, we must handle the processes occurring within the elements and the transfer of
information and constituents between them. The simulation of large prototypes is made convenient by
designing a single "application module" for a given type of element or element group, and applying it
repetitively to all similar members in the system. For example, the RCHRES module may be used to
simulate all the reaches in a watershed using storage routing. This approach is most efficient
computationally if one element or group of elements, called a "processing unit" (PU), is simulated for an
extended period of time before switching to the next one. To permit this, we must be able to define a
processing sequence such that all information required by any PU comes from sources external to the
system or from PU's already simulated. This can only happen if the PU's and their connecting fluxes
form one or more networks which are "directed graphs." In a directed graph there are no bi-directional
paths and no cycles.
{a) (b)
Directed Graphs
(c) (d)
Non-directed Graphs
Processing unit, with feasible
processing sequence no,
where applicable
* Flu* (arrow shows direction)
Figure 2: Directed and Non-directed graphs
The requirement that PU's form directed graphs provides the rule for grouping elements into PU's. Any
elements interacting with each other via loops or bi-directional fluxes must be grouped into a single PU
because none of them can be simulated apart from the others.
Thus, we can have both single element and multi-element PU's. A PLS is an example of the former and a
channel network simulated using the full equations of flow exemplifies the latter. A multi-element PU is
also known as a "feedback region." The collection of PU's which are simulated in a given run is called a
"network."
The processes which occur within a PU are represented mathematically in an "application model." The
corresponding computer code in HSPF is called an "application module" or "simulation module."
3
-------
HSPF Version 12
Reach
Single-element PU's
General channel
network {simulated
using full equations
of motion)
Multiple-element PU
Figure 3: Single- and multi-element processing units
4
-------
General Principles
Software Structure
Concept of an Operation
A great variety of activities are performed by HSPF; for example, input a time series to the WDM file,
find the cross correlation coefficient for two time series, or simulate the processes in a land segment.
They all incorporate two or more of the following functions: get a set of time series, operate on the set of
input time series to produce other time series, and output the resulting time series. This applies both to
application modules (discussed in Processing Units and Networks) and to utility modules, which perform
operations ancillary or incidental to simulation. Thus, a simulation run may be viewed as a set of
operations performed in sequence. All operations have the following structure:
SUPERVISE
OPERATIONS
(subroutine OSUPER)
I
+ + +
I I I
GET TIME OPERATE PUT TIME
SERIES (utility SERIES
(subroutine group or (subroutine group
TSGET) application TSPUT)
module)
The OPERATE function is the central activity in the operation. This work is done by an "operating
module" and its subordinate subprograms. They operate for a specified time on a given set of input time
series and produce a specified set of output time series, under control of the "operations supervisor"
(OSUPER). All of the pieces of time series involved in this internal operation have the same time interval
and time duration. They are therefore viewed as written on an "internal scratch pad" (INPAD),resident in
the memory of the computer (Figure below). The operating module receives the scratch pad with some
rows filled with input, and, after its work is done, returns control to the supervisor with another set of
rows filled with output. The operating module may overwrite an input row with its own output. The
computing module being executed, together with the options being invoked, will determine the number of
rows required in the INPAD. For example, simulation of the hydraulic behavior of a stream requires
relatively few time series (e.g., inflow, depth and outflow), but the inclusion of water quality simulation
adds many more time series to the list. The total quantity of memory space available for storage of time
series is also fixed (specified in a COMMON block) by the options in effect; this is the size (area) of the
INPAD. Since both the size (N*M) and number of rows (M) in the INPAD are known, the "width"
(number of intervals, N) can be found. The corresponding physical time is called the "internal scratch
pad span (INSPAN)."
5
-------
HSPF Version 12
Time Interval Numbers
Row 1 23 456 — — N
Number —
1
2
3
4
5
M
NOTE: there is one time series per row,
Figure 4: Logical structure of the internal scratch pad
The "get time series" function prepares the input time series. This work is done by a subroutine group
called TSGET. It obtains the correct piece of a time series from the appropriate file, aggregates or
disaggregates it to the correct time interval, multiplies the values by a user-specified constant (if
required), and places the data in the required row of the internal scratch pad. Subroutine group TSPUT
performs the reverse set of operations. TSGET and TSPUT are sometimes bypassed if a required time
series is already in the INPAD when the operation is started, or if the output is being passed to the next
operation via the internal scratch pad.
6
-------
General Principles
Time Series Storage
The time series used and produced by an operation can reside in five types of storage.
1. The Watershed Data Management (WDM) File
The WDM file is the principal library for storage of time series. As far as the computer's operating
system is concerned, it consists of a single, large, direct-access file. This space is subdivided into many
data sets containing individual time series. Each is logically self-contained but may be physically
scattered through the file. A directory keeps track of data sets and their attributes. Before time series are
written to the WDM file, the file and its directory must be created using a WDM file utility program such
as WDMUtil or ANNIE. These programs are documented separately.
2. The Hydrologic Engineering Center Data Storage System (DSS) File
The DSS is the primary hydrologic data storage system of the U.S. Army Engineers Hydrologic
Engineering Center (HEC). It is similar in design and function to the WDM file. A DSS file consists of a
single, large, direct-access file containing many individual data sets that are identified by unique
identifiers called "pathnames". A pathname is a string of characters from 5 to 80 characters long, and
similar in construction to a file pathname on computer disk. Creation and maintenance of DSS files is
typically performed by a utility program such as DSSUTL, which is documented separately.
3. Sequential Files
SEQuential files are ASCII, formatted disk files with a constant logical record length. Time series
received from agencies such as the National Weather Service are typically stored in sequential files.
Sequential files provide input to HSPF; they are not available for output.
4. PLTGEN Files
PLTGEN files are ASCII, formatted disk files that are produced (i.e., time series are output to the file) by
the utility module PLTGEN. Up to 20 time series can be written to a single PLTGEN file. Time series
can be input to HSPF from a PLTGEN file by using the MUTSIN utility module.
5. Internal Scratch Pad (INPAD)
If two or more operations performed in sequence use the same internal time step, time series may be
passed between them via the INPAD. Successive operations may simply pick up the data written by the
previous ones, without any external (disk) transfer taking place. This is typically done when time series
representing the flow of water (and constituents) are routed from one stream reach to the one next
downstream.
7
-------
HSPF Version 12
Time Series Management for an Operation
Any operation involves a subset of the activities shown in Figure "Activities involved in an operation" in
the next section. The operating module expects a certain set of time series in the INPAD. The operations
supervisor, acting under user control, ensures that the appropriate input time series are loaded from
whichever source has been selected, and informs the computing module of the rows in the INPAD where
it will find its input. Similar arrangements hold for output of time series.
HSPF Software Hierarchy
The hierarchy of functions in HSPF is shown in Figure "Overview of HSPF software" below. Some
explanatory notes follow.
The "Run Interpreter" is the group of subprograms which reads and interprets the "Users Control Input."
It sets up internal information instructing the system regarding the sequence of operations to be
performed. It stores the initial conditions and the parameters for each operation in the appropriate file on
disk and creates an instruction file which will ensure that time series are correctly passed between
operations, where necessary.
The "Operations Supervisor" is a subroutine which acts on information provided by the Run Interpreter,
invoking the appropriate application or utility modules. It provides them with the correct values for
parameters and state variables by reading the files created by the Run Interpreter.
Operating modules are either application modules or utility modules. They perform the operations which
make up a run. Each time one of these modules is called, an operation is performed for a period
corresponding to the span of the internal scratch pad (INSPAN). The Operations Supervisor ensures that
the correct module is invoked.
"Service subprograms" perform tasks such as reading from and writing to time series storage areas,
adding T minutes to a given date and time, to get a new date and time, etc.
The "Time Series Management System" (TSMS) consists of all the modules which are only concerned
with manipulation of time series or the files used to store time series. It includes the WDM and DSS
management functions, and TSGET and TSPUT.
8
-------
General Principles
f Operating
Vv Module
~ Sub-Routine Call
-~ Time Series Transfer Path
Figure 5: Activities involved in an operation
9
-------
HSPF Version 12
Figure 6: Overview of HSPF software
10
-------
General Principles
Structure of a Job
Elements of a Job
A "JOB" is the work performed by HSPF in response to a complete set of Users Control Input. It consists
of one or more "RUNs". A RUN is a set of operations which can be performed serially, and which all
cover the same period of time. The operations are performed in a sequence specified in the Users Control
Input.
Groups Of Operations
In most runs, time series have to be passed between operations. As described earlier in Time Series
Storage, each operation can communicate with four different time series storage areas: the WDM file,
DSS file, the INPAD, and sequential (SEQ) files. This is illustrated in Figure "Schematic of data flow
and storage for a single run" below.
Potentially, any time series required by or output by any operation can be stored in the WDM file, DSS
file, or a sequential file. The user simply specifies the exact origin or destination for the time series, and
the HSPF system moves the data between that device and the appropriate row of the INPAD.
To transfer data via the INPAD, operations must share the same pad. This means that all time series
placed in the pad have the same time interval and span. This requirement provides a logical basis for
grouping operations; those sharing a common INPAD are called an INGRP. The user specifies the
presence of groups in the "Users Control Input (UCI)." A typical sequence of input is shown at the end of
this section.
The user also indicates (directly or indirectly) in the UCI the source and disposition of all time series
required by or output by an operation. If the user indicates that a time series must be passed to another
operation then the system assumes that the transfer will be made via the scratch pad. If they are not in the
same INGRP there is an error. Without a common INPAD, the data must go via the WDM or DSS file.
11
-------
HSPF Version 12
Figure 7: Schematic of data flow and storage for a si
WDM Watershed Data Mgmt, File
OPN Operation
INGRP Internal Scratch
Pad Group
INPAD Internal Scratch Pad
run
12
-------
General Principles
The sequence of events in a run is as follows (refer to figure above).
a. Operation 1 is performed until its output rows in the INPAD are filled.
b. Data are transferred from those rows to other time series storage areas, as required. If any of these
data are not required by other operations in INGRP1, their INPAD rows are available for re-use by
other operations in INGRP1.
c. Steps (a) and (b) are repeated for each operation in INGRP1.
d. Steps (a), (b), and (c) are repeated, if necessary, until the run span is complete.
e. The INPAD is reconfigured and work on operations 5 through 11 proceeds as in steps (a-d) above.
The step repeats until all INGRP's have been handled. The run is now complete.
Note that reconfiguration of a scratch pad implies that its contents will be overwritten.
OPN SEQUENCE
INGRP
COPY 1
PERLND 1
END INGRP
PERLND 2
PERLND 3
INGRP
COPY 2
RCHRES 1
RCHRES 3
RCHRES 5
RCHRES 2 0
RCHRES 22
RCHRES 2 3
RCHRES 7
RCHRES 8
RCHRES 50
RCHRES 100
RCHRES 200
END INGRP
INGRP
DURANL 1
PLTGEN 1
END INGRP
END OPN SEQUENCE
Figure 8: Extract from typical Users Control Input, showing how grouping of operations is specified
INDELT = 00:30
INDELT = 00:30
INDELT = 00:20
INDELT = 00:30
INDELT = 00:10
13
-------
HSPF Version 12
Conventions Used in Functional Description
The primary purpose of the Functional Description is:
1. to describe the functions performed by the various subprograms
2. to explain the technical algorithms and equations that are implemented in the code.
Subprograms are described in numerical order in the text. This system provides a logical progression for
the descriptions. General comments regarding a group of subprograms can be made when the upper level
subprogram is described, while details specific to an individual subordinate subprogram can be deferred
until that part is described. For example, a general description of the PERLND module is followed by
more detailed descriptions of its twelve sections, ATEMP through TRACER.
Structure of Data in Memory
The way in which we arrange the variables used in our programs is important. They are structured, as far
as possible, using techniques like those used in Structured Program Design. Data items that logically
belong together are grouped together.
Most of the variables in an Operating Module are documented in the Operation Status Vector (OSV). The
OSVs for the application modules are shown in the supplementary document: HSPF Data Structures for
Version 12 (AQUA TERRA Consultants, 2000).
Structure of Data in Disk Files
The HSPF system makes use of four different types of disk-based data files:
1. Watershed Data Management (WDM) file and HEC Data Storage System (DSS) files are binary
files that contain multiple time series data sets that are used for input and output.
2. PLTGEN files are ASCII (text) files that contain up to 20 time series. These files can provide
input to HSPF through use of the Utility module MUTSIN, and are used as output files by the
Utility Module PLTGEN.
3. SEQuential files are ASCII (text) files that allow input of time series data to HSPF. SEQuntial
file formats are available for six specific time intervals.
4. The message/information file (HSPFMSG.WDM), is a read-only, binary file that contains
information used by the program, such as keyword names, input formats, parameter defaults and
limits, and error/warning messages.
14
-------
General Principles
Method of Handling Diagnostic Messages
HSPF makes use of two kinds of diagnostic messages; error messages and warnings, which are printed in
the Run Interpreter Output file during both the Run Interpretation and simulation phases of a run. The
basic text of these messages are all stored on the "message/information" file: HSPFMSG.WDM. This
system for storing the messages has at least two advantages:
1. Because the messages are not embedded in the Fortran source code, they do not normally occupy
any memory. This reduces the length of the executable code.
2. The files are easier to maintain than if the messages were embedded in the code. A user can
obtain a listing of the contents by "exporting" data sets from the message WDM file using the
ANNIE program's Archive function or the standalone utility WDIMEX.
Each message has been given a "maximum count". If the count for a message reaches this value, HSPF
informs the user of the fact. Then:
1. If it is an error message, HSPF quits.
2. If it is a warning, HSPF continues but suppresses any future printing of this message.
In addition to the above features, the Run Interpreter has been designed to:
1. Stop if 20 errors of any kind have been detected. This gives the user a reasonable number of
messages to work on, but avoids producing huge quantities of error messages, many of which
may be spurious (for example, if the code could not recover from early error conditions).
2. Stop at the end of its work if any errors have been detected by it. Therefore, the program will not
enter any time-consuming loop if the Run Interpreter has found any errors in the User's Control
Input.
15
-------
-------
Functional Description
Functional Description
MAIN Program
The MAIN program calls, directly or indirectly, all the other modules in the system. The functions
performed are:
1. Preprocess the Users Control Input (UCI). Subroutine USRRDR transfers the UCI to memory,
sets up a pointer system to non-comment lines, and recognizes input set headings and delimiters:
RUN, END RUN.
2. If a RUN input set has been found, call subroutine INTERP to interpret it and then call O SUPER
to supervise execution of it.
Interpret a RUN Data Set in the User's Control Input
General Description of Module INTERP
This module, known as the Run Interpreter, translates a RUN data set in the User's Control Input into
many elementary instructions, for later use by other parts of the system, when the time series are operated
on. To do this, the Run Interpreter performs such tasks as:
1. Check and augment the data supplied by the user.
2. Decide which time series will be required and produced by each operation, based on the user's
data and built-in tables which contain information on the various operations.
3. Allocate INPAD rows to the various time series.
4. Read the control data, parameters, and initial conditions supplied for each operation, convert them
to internal units, and supply default values where required.
The output of the Run Interpreter is stored in memory arrays containing instructions to be read by the
Operations Supervisor, TSGET and TSPUT. The instruction arrays contain the following information:
17
-------
HSPF Version 12
-~ Function Call
-~ Time Series data flow
Function
(Module Group)
an
Disc-based
es
Figure 9: Functions and data transfers involved in the operations portion of HSPF
18
-------
Functional Description
1. The Operations Supervisor Instructions Array. This array contains instructions which the
Operations Supervisor reads to manage the operations in a run. This includes information on:
a. the configuration of the scratch pads (time intervals and widths)
b. the configuration of the INGROUPs, such as the number of INGROUPs, operations in each
INGROUP, etc.
2. The Operation Status Vector Array. The operations in a run are interrupted every time an INPAD
span is completed. To save computer memory, the system is designed so that the various
operations all use the same area of memory. This requires that upon interruption of an operation,
all information necessary to restart an operation be stored in a disk file or another memory area.
The data, called the "Operation Status Vector" (OSV), reside in a string of contiguous locations
in memory and have a structure specified in the supplementary document "Data Structures for
HSPF Version 12" (AQUA TERRA, 2000). The array OSVMEM contains an exact copy of the
OSV for each operation. It is used to restore the OSV in the common memory area when the
operation is resumed after interruption.
3. The Time Series Instruction Array (TSGPM). This array contains instructions which govern the
transfer of pieces of time series into and out of the INPAD. Each Get instruction enables module
TSGET to retrieve a specified piece of time series from one of the source volumes, transform it to
the interval and form required for the INPAD, and insert it in the desired row of the INPAD. For
Put instructions, the sequence is the reverse of that just described.
Each operation has its own set of Get and Put instructions in TSGPM which are read whenever
modules TSGET and TSPUT are called upon to service that operation (every INSPAN).
4. The Special Action Instruction Array (SPINS). Each record of this array contains a special action
instruction, which specifies the action required to be taken in a given operation at a specific time,
e.g., report operation state, modify a state variable. In some cases, that action may be repeated
several times, or even every interval of the run.
19
-------
HSPF Version 12
Supervise and Perform Operations
Function of Operations Group
The Operations group of modules handles all the manipulations of time series and thus, performs most of
the work in a run. Subroutine OSUPER controls the group. It performs some of the tasks itself, but it
invokes subordinate modules to do other tasks.
General Description of Subroutine OSUPER
The primary tasks of subroutine OSUPER are to ensure that the various operations in the run are called in
the correct sequence and that the associated time series and OSVs are input and/or output at the required
junctures (see Groups Of Operations). OSUPER uses a nest of DO-loops to control the sequencing. The
instruction array OSUPM specifies the ranges of the loops and supplies information ("keys") which
enable OSUPER, TSGET and TSPUT to correctly access the other instruction arrays. OSUPER reads an
instruction each time an operation starts a new INSPAN. Using this information, it then:
1. calls TSGET, to supply the required input time series
2. reads the OSV from disk or memory storage
3. calls the operating module
When the INSPAN is over, OSUPER:
1. writes the OSV to disk or memory storage
2. calls TSPUT, to output time series
20
-------
Functional Description
Perform Special Actions - SPECL
(Subroutine SPECL)
HSPF permits the user to perform certain "Special Actions" during the course of a run. A special action
instruction specifies the following:
1. The operation on which the action is to be performed (e.g., PERLND 10)
2. The date/time at which the action is to be taken.
3. The variable name and element (if the variable is an array) to be updated.
4. The action to be performed. The most common actions are to reset the variable to a specified
value and to increment the variable by a specified value, but a variety of mathematical functions
are available.
The special action facility is used to accommodate things such as:
1. Human intervention in a watershed. Events such as plowing, cultivation, fertilizer and pesticide
application, and harvesting are simulated in this way.
2. Changes to parameters. For example, a user may wish to alter the value of a parameter for which
12 monthly values cannot be supplied. This can be done by specifying a special action for that
variable. The parameter could be reset to its original value by specifying another special action,
to be taken at a later time.
Special Actions can be performed on variables in the PERLND, IMPLND, RCHRES, COPY, PLTGEN,
GENER, and BMP modules. The input is documented in Users Control Input, SPEC-ACTIONS Block.
21
-------
HSPF Version 12
Get Required Input Time Series - TSGET
(module TSGET)
The task of this module is to insert in the INPAD all input time series required by an operation. OSUPER
calls it each time an operation is to commence an INSPAN, passing to it the keys of the first and last
records in the TSGET instruction array which must be read and acted upon. Each instruction causes a
row of the INPAD to be filled. TSGET can draw its input time series from any of the following source
"volumes": WDM file, DSS file, sequential file and INPAD.
TSGET will, if necessary, automatically transform the time interval and "kind" (Appendix II) of the time
series, as it is transferred from the source location to the INPAD (target). TSGET can also perform a
linear transformation on the values in a time series; for example, if the source contains temperatures in
degrees C and the INPAD needs them in degrees F.
22
-------
Functional Description
Perform an Operation
Function of an Operating Module
An operating module is at the center of every operation (Concept of an Operation). When the Operations
Supervisor calls an operating module the time series which it requires are already in the INPAD. The task
of the operating module is to operate on these input time series. The results of this work are:
1. updated state variables. The operating module constantly updates any state variables. These are
located in the OSV. Thus, when the operating module returns control to the Operations
Supervisor, which copies the OSV to disk or memory storage area, the latest values of all state
variables are automatically preserved.
2. printed output. The operating module accumulates values, formats them and routes these data to
output files.
3. output time series. The operating module places these in the INPAD, but is not concerned with
their ultimate disposition; this is handled by module TSPUT.
Note that all time series simultaneously present in an INPAD have the same constant time interval. This
implies that, internally, all time series involved in an operation have the same time interval. Externally,
the time series may have differing time intervals. Part of the function of modules TSGET and TSPUT is
to convert time series from external to internal time intervals and vice versa.
Sub-divisions in an Operating Module
An operating module may be divided into several distinct sections, each of which may be selectively
activated in a given run, under the user's control, e.g., the Pervious Land-segment module (PERLND)
contains twelve sections, the first being air temperature correction, and the last is tracer (conservative
substance) simulation. The operating procedure is as follows: in each time interval of the INSPAN, the
operating module calls each of its active sections in the order in which they are built into the code (the
sequence can not be altered by the user). When the INSPAN has been covered, the operating module
returns control to OSUPER which determines the next action to be taken. This procedure implies that an
operating module must be arranged so that a section is called after any others from which it requires
information. For example, in the Pervious Land-segment module, the sediment calculation section may
use data computed by the snow and water balance sections, but not by sections listed after sediment.
Partitioning of an Operation
A user may activate one group of module sections in an initial run and other groups in subsequent runs.
Thus, it is possible to "partition" an operation. For example, it is possible to calibrate the hydraulic
response of a set of river reaches before moving on to simulate the behavior of constituents contained in
the water without having to re-run the hydrology. Since this type of work involves transfers of results
between the sections handled in different runs, it follows that:
1. The time series involved must be stored between runs, usually in the WDM file.
2. In the second run the system will expect the user to specify external sources for all of these time
series.
23
-------
HSPF Version 12
With the increasing processing power available in recent years, partitioning has become uncommon, since
the decrease in simulation time is now relatively small.
Numbering of Operating Modules
In principle, there is no limit to the number of operating modules which the system can accommodate.
Although the size and complexity of the modules vary greatly, they all are, logically, of equal rank
(Figure "Overview of HSPF software" in General Principles, Software Structure, HSPF Software
Hierarchy).
Inserting Additional Operating Modules
A programmer may insert additional modules. This requires the following tasks:
1. Write or adapt the operating module. This includes restructuring the data into an OSV which
conforms with the requirements of the HSPF system.
2. Add a section of code to the Run Interpreter to interpret the UCI for the new module.
3. Add data to the message/information file (HSPFMSG.WDM).
4. Make minor changes to subroutines OPNBLK and OSUPER.
Types of Operating Modules
There are two general types of operating modules; utility modules and application modules. Utility
modules perform any operations involving time series which are essentially auxiliary to application
operations, e.g., input time series data from ASCII formatted files to the WDM file using COPY, multiply
two time series together to obtain a third one using GENER, or send time series of results to create a
REPORT. Application (simulation) modules represent processes, or groups of processes, which occur in
the real world.
24
-------
Functional Description
Pervious Land Segment - PERLND
(Module PERLND)
A land segment is a subdivision of the simulated watershed. The boundaries are established according to
the user's needs, but generally, a segment is defined as an area with similar hydrologic characteristics.
For modeling purposes, water, sediment, and water quality constituents leaving the watershed move
laterally to a downslope segment or to a reach/reservoir. A segment of land which has the capacity to
allow enough infiltration to influence the water budget is considered pervious. In HSPF, PERLND is the
module that simulates the water quality and quantity processes which occur on a pervious land segment.
The primary module sections in PERLND simulate snow accumulation and melt (Section SNOW), the
water budget (section PWATER), sediment produced by land surface erosion (section SEDMNT), and
water quality constituents by various methods (section PQUAL and the agri-chemical sections). Other
sections perform the auxiliary functions of correcting air temperature (section ATEMP) for use in
snowmelt and soil temperature calculations, producing soil temperatures (section PSTEMP) for
estimating the outflow temperatures and influencing reaction rates in the agri-chemical sections, and
determining outflow temperatures which influence the solubility of oxygen and carbon dioxide. The
structure chart for the PERLND module below shows these sections and their relationships to each other
and to PPTOT, PBAROT, and PPRINT. These last three sections manipulate the data produced. Section
PPTOT places state variables (point values) and PBAROT places flux variables which are actually
averages over the interval (mean values) into the INPAD. PPRINT produces the printable results in the
quantity and frequency that the user specifies. The sections in the structure chart are executed from left to
right.
25
-------
HSPF Version 12
PERLND
Perform
roinpiJat
on a segment
of previous
isnti
Tm
SHOW
PWATiR
to' elewBtom
¦difference
Simulate Ihe
accu mulaliori
and melting
of snow and
tee
<2{1) 1
SirrJstc
•rater liudgel |
fot pewciys
land
B&grort
€2H) 6
sedunt]
l»§iiip]
wwreisT^
Pnodiioe and
Ealiniale
iBmme
soil
water
sediment
temperature
temperature
3M cons.
* sm s
14 2(13
•cans
PQJA_I
I amulai«
SSSLn,.
S&fSl
I *liJi sefllfiieni i,
I Mm 'fi»m
4 IPX?
4 2(1 J F
PEST |
Simulate
Ihe pesicHie |
bahorior in
detail
Ihe soil teers
4.2(M
Simulate
nitnopan
behavior ri
detail
Agr>CA*|rtc«/S«c»on» |
I
I
I
I
jr)TQ- I
PBAROTl
Pine* want.
I'Siuetl CAttfn.il
in IWAD
PPRlWTl
sbar>
iuiacJ outpyi
1 IN PAD
4. iff). 13
ProiudB
Or nKW
oulpul
4 2\
42<1}.1
Figure 10: Structure chart for PERLND Module
26
-------
Functional Description
Air Temperature Elevation Difference - ATEMP
(Section ATEMP of Modules PERLND and IMPLND)
Purpose
The purpose of ATEMP is to modify the input air temperature to represent the mean air temperature over
the land segment. This module section is used by both PERLND and IMPLND. Air temperature
correction is needed when the elevation of the land segment is significantly different than the elevation at
the temperature gage. If no correction for elevation is needed, this module section can be skipped.
Method
The lapse rate for air temperature is dependent upon precipitation during the time interval. If
precipitation occurs, a wet lapse rate of 0.0035 degrees F per foot difference in elevation is assumed.
Otherwise, a dry lapse rate, that varies with the time of day, is used. A table of 24 hourly dry lapse rates
varying between 0.0035 to 0.005 is built into the system. A different, user-defined lapse rate may be
implemented by modifying the HSPF message/information file (HSPFMSG.WDM). The corrected air
temperature is:
AIRTMP =
where:
AIRTMP =
GATMP =
LAPS
ELDAT =
GATMP - LAPS*ELDAT (1)
corrected air temperature (degrees F)
air temperature at gage (degrees F)
lapse rate (degrees F/ft)
elevation difference between the land segment and the
gage (ft)
27
-------
HSPF Version 12
Accumulation and Melting of Snow and Ice - SNOW
(section SNOW of modules PERLND and IMPLND)
Purpose
SNOW deals with the runoff derived from the fall, accumulation, and melt of snow. This is a necessary
part of any complete hydrologic package since much of the runoff, especially in the northern half of the
United States, is derived from snow conditions.
Approach
Two options are available to model the processes involved in snow accumulation and melt on a land
segment. The first method is an energy balance approach based on the work by the Corps of Engineers
(1956), Anderson and Crawford (1964), and Anderson (1968). Empirical relationships are employed
when physical ones are not well known. The snow algorithms use meteorologic data to determine whether
precipitation is rain or snow, to simulate an energy balance for the snowpack, and to determine the effect
of the heat fluxes on the snowpack. Figure "Snow accumulation and melt processes" illustrates the
processes used in this method.
The second (optional) snowmelt method uses a temperature index, or "degree-day" approach. Most
processes from the original method are maintained, while the snowmelt due to atmospheric heat exchange
is calculated using the air temperature and an empirical degree-day factor. This approach minimizes the
requirements for meteorologic data to precipitation and air temperature. The reader is referred to Rango
and Martinec (1995) for a summary of the degree-day method.
Six meteorologic time series may be required by SNOW for each land segment simulated, depending on
the option chosen. They are:
Meteorologic quantity
Energy balance
Temperature index
precipitation
air temperature
solar radiation
dewpoint
wind velocity
cloud cover
required
required
required
required
required
optional
required
required
not used
optional
not used
not used
A value from each of these time series is input to SNOW at the start of each simulation interval.
However, some of the meteorological time series are only used intermittently for calculating rates, such as
in the calculation of the potential rate of evaporation from the snowpack.
Air temperature is used to determine whether precipitation is falling as rain or as snow. The critical
temperature TSNOW may be adjusted upward by up to one degree in unsaturated conditions, based on the
dewpoint. This adjustment is optional when using the temperature index method, and is made only if the
input dewpoint time series is supplied to the PLS.
28
-------
Functional Description
Figure 11: Snow accumulation and melt processes
Once snow begins to accumulate on the ground, the snowpack accumulation and melt calculations take
place. Five sources of heat which influence the melting of the snowpack may be simulated. (When the
temperature index approach is used, the first three sources are subsumed under the degree-day factor.)
1. net radiation heat (RADHT), both longwave and shortwave
2. convection of sensible heat from the air (CONVHT)
3. latent heat transfer by condensation of moist air on the snowpack (CONDHT)
4. heat from rain, sensible heat from rain falling (RNSHT) and latent heat from rain freezing on the
snowpack
5. conduction of heat from the underlying ground to the snowpack (GMELTR)
Other heat exchange processes such as latent heat from evaporation are considered less significant and are
not simulated. If the energy balance option is turned on, the energy calculations for RADHT, CONVHT,
and CONDHT are performed by subroutine HEXCHR, and MOSTHT is the sum of these three heat
sources. If the degree-day option is used, MOSTHT is computed directly from the air temperature and
the degree-day factor in subroutine DEGDAY. Latent heat from rain freezing is considered in subroutine
WARMUP. RNSHT is computed in the parent subroutine SNOW. GMELTR is calculated in subroutine
GMELT, and subtracted from the pack separately.
For uniformity and accounting, energy values are calculated in terms of the water equivalent which they
could melt. It takes 202.4 calories per square cm on the surface to melt one inch water equivalent of snow
29
-------
HSPF Version 12
at 32 degrees F. All the sources of heat including RNSHT are considered to be positive (incoming to the
pack) or zero, except RADHT which can also be negative (leaving the pack).
Net incoming heat from the atmosphere (the sum of MOSTHT and RNSHT) is used to warm the
snowpack. The snowpack can be further warmed by the latent heat released upon rain freezing. Any
excess heat above that required to warm the snowpack to 32 degrees F is used to melt the pack. Likewise,
net loss of heat is used to cool the snowpack producing a negative heat storage. Furthermore, incoming
heat from the ground melts the snowpack from the bottom independent of the atmospheric heat sources
except that the rate depends on the temperature of the snowpack.
The figure below gives a schematic view of the moisture related processes modeled in section SNOW.
Precipitation may fall as rain or snow on the snowpack or the ground. Evaporation, when simulated, only
occurs from the frozen portion of the pack (PACKF). The frozen portion of the pack is composed of
snow and ice. The ice portion of PACKF is considered to be in the lower part of the snowpack, so it is
the first to melt when heat is conducted from the ground. Similarly, the snow portion of PACKF is the
first to melt when atmospheric heat increases. Melted PACKF and rain falling on the snowpack produce
the water portion of the total snowpack which may overflow the capacity of the pack. The water yield
and rain on the bare ground becomes input to module section PWATER or IWATER. These moisture
related processes as well as the heat exchange processes are discussed later in more detail.
Heat transfer from incoming rain (RNSHT) to the snowpack is calculated in the parent subroutine SNOW.
The following physically based equation is used:
30
-------
Functional Description
SNOWE \
evaporation /
from PACKF /
(PREC
precipitation
O
SNOWF
snowfall
on
PACKF
RAINF
rainfall
total snowpack
, y
PRAIN
rainfall
entering
PACKW
snow
portion
of
PACKF
PACKI
ice portion
of
PACKF
GMEL.TR
g found
heat melt
from
pack
(ice
\£*y
FREEZE
freezing
of
PACKW
to
PACKI
PACKW
liquid
water
GMELTR
ground
heat melt
from
pack
(ice
rainfall
on ground
WYIELD
water
yield
from
PACKW
PACKF frozen portion
Figure 12: Flow diagram of water movement, storages, and phase changes modeled in the SNOW section of
the PERLND and IMPLND Application Modules
31
-------
HSPF Version 12
RNSHT = (AIRTMP - 32.0)*RAINF/144.0 (2)
where:
AIRTMP = temperature of the air (degrees F)
RAINF = rainfall (inches)
144.0 = factor to convert to equivalent depth of melt
32.0 = freezing point (degrees F)
Other characteristics of the snowpack are also determined in the main subroutine SNOW. The fraction of
the land segment covered by the snowpack is estimated by merely dividing the depth of the snowpack by
a cover index (COVINX) which is a function of the parameter COVIND and the history of the pack as
explained in subroutine EFFPRC. The temperature of the snowpack is estimated by:
PAKTMP = 32.0 - NEGHTS/(0.00 695*PACKF) (3)
where:
PAKTMP = mean temperature of the snowpack (degrees F)
NEGHTS = negative heat storage (inches of water equivalent)
PACKF = frozen contents of the snowpack (inches of water equivalent)
0.00695 = physically based conversion factor
32
-------
Functional Description
Meteorological Conditions - METEOR
(subroutine METEOR)
Purpose
Subroutine METEOR estimates the effects of certain meteorological conditions on specific snow-related
processes by the use of empirical equations. It determines whether precipitation is falling as snow or rain.
The form of precipitation is critical to the reliable simulation of runoff and snowmelt. When snow is
falling, the density is calculated in order to estimate the depth of the new snowpack. The fraction of the
sky which is clear is also estimated for use in the radiation algorithms (if required), and the gage dewpoint
temperature is corrected if it is warmer than air temperature.
Method
If dewpoint is input, then it is corrected and used to adjust the critical temperature for snowfall. A gage
dewpoint higher than air temperature is not physically possible and will give erroneous results in the
calculation of snowpack evaporation. Therefore, dewpoint is set equal to the air temperature when this
situation occurs. Otherwise, the gage dewpoint is used.
The following expression is used to calculate hourly the effective air temperature below which snowfall
occurs:
SNOTMP = TSNOW + (AIRTMP - DEWTMP)*(0.12 + 0.008*AIRTMP) (4)
where:
SNOTMP = air temperature below which snowfall occurs (degrees F)
TSNOW = parameter (degrees F)
AIRTMP = air temperature (degrees F)
DEWTMP = dewpoint (degrees F)
SNOTMP is allowed to vary in this calculation by a maximum of one degree F from TSNOW. If
dewpoint is not input, then SNOTMP is always equal to TSNOW. When AIRTMP is equal to or greater
than SNOTMP, precipitation is assumed to be rain.
When snowfall occurs, its density is estimated as a function of air temperature according to:
RDNSN = RDCSN + (AIRTMP/100.0)**2 (5)
where:
RDNSN = density of new snowfall (at zero degrees F or greater)
relative to liquid water
RDCSN = parameter designating density of new snow at an air temperature
of zero degrees F and lower, relative to liquid water
RDNSN is used in subroutine EFFPRC to calculate the new depth of the snowpack resulting from the
addition of the snow. This and all other snow density terms are in water equivalent (inches) per depth of
the snowpack (inches).
33
-------
HSPF Version 12
When the energy balance option is selected, the fraction of the sky which is clear (SKYCLR) is needed
for the calculation of the longwave back radiation to the snowpack from the clouds (done in subroutine
HEXCHR). If cloud cover is input as a time series, then SKY CLR is computed directly from it.
Otherwise, SKY CLR is estimated from the time since the last precipitation event. In an interval during
which precipitation occurs, SKY CLR is set to the minimum value of 0.15. Between events, it is increased
each simulation time interval as follows:
SKYCLR = SKYCLR + (0.0004*DELT) (6)
where:
DELT = simulation time interval (min)
SKYCLR increases until either it reaches unity or precipitation causes it to be reset.
34
-------
Functional Description
Precipitation on the Pack - EFFPRC
(subroutine EFFPRC)
Purpose
The purpose of this subroutine is to add the falling snow to the pack, determine the amount of rain falling
on the snowpack, and adjust the snowpack dullness to take into account new snow.
Method
The amount of precipitation falling as snow or rain is determined in subroutine METEOR. Subroutine
EFFPRC accounts for the influence that snowfall and rain have on the land segment. The subroutine
begins by increasing the snowpack depth by the amount of snow falling on the pack divided by its
density.
The fraction of the land segment which is a covered by the snowpack (SNOCOV) is determined by re-
evaluating the index to areal coverage (COVINX). When the frozen contents of the pack (PACKF)
exceeds the value of the parameter describing the maximum PACKF required to insure complete areal
coverage by snow cover (COVIND), then COVINX is set equal to COVIND. Otherwise, COVINX is
equal to the largest previous value of PACKF. SNOCOV is PACKF/COVINX if PACKF < COVINX.
The amount of rain falling on the snowpack is that fraction of the precipitation which falls as rain
multiplied by the SNOCOV. Rain falling on the snowpack will either freeze, adding to the frozen portion
of the pack and produce heat used to warm the pack (see subroutine WARMUP), or it will increase the
liquid water content of the pack (see subroutine LIQUID). Any rain not falling on the pack is assumed to
land on bare ground.
Under the energy balance option, the albedo of the snowpack surface is used to compute the radiation heat
flux RADHT. When snowfall occurs, the index to the dullness of the snowpack (DULL) is decreased by
one thousand times the snowfall for that interval. However, if one thousand times the snowfall is greater
than the previous value for DULL, then DULL is set to zero to account for a new layer of perfectly
reflectable snow. Otherwise, when snowfall does not occur, DULL is increased by one index unit per
hour up to a maximum of 800. Since DULL is an empirical term used as an index, it has no physical
units. DULL is used to determine the albedo of the snowpack, which in turn is used in the shortwave
energy calculations in subroutine HEXCHR.
35
-------
HSPF Version 12
Compact the Pack - COMPAC
(subroutine COMPAC)
Purpose
The addition of new snow will reduce the density as well as increase the depth of the snowpack as in
subroutine EFFPRC. The pack will tend to compact with age until a maximum density is reached. The
purpose of subroutine COMPAC is to determine the rate of compaction and calculate the actual change in
the depth due to compaction.
Method
When the relative density is less than 55 percent, compaction is assumed to occur. The rate of
compaction is computed according to the empirical expression:
COMPCT = 1.0 - (0.00002*DELT60*PDEPTH*(0.55 - RDENPF)) (7)
where:
COMPCT = unit rate of compaction of the snowpack per interval
DELT60 = number of hours in an interval
PDEPTH = depth of the snowpack in inches of total snowpack
RDENPF = density of the pack relative to liquid water
The new value for PDEPTH is COMPCT times PDEPTH. PDEPTH is used to calculate the relative
density of the snowpack which affects the liquid water holding capacity as determined in subroutine
LIQUID.
36
-------
Functional Description
Evaporation from the Pack - SNOWEV
(subroutine SNOWEV)
Purpose
The SNOWEV subroutine estimates evaporation from the snowpack (sublimation) when the energy
balance method is being used.
Method
Evaporation from the snowpack will occur only when the vapor pressure of the air is less than that of the
snow surface, that is, only when the air vapor pressure is less than 6.108 mbar, which is the maximum
vapor pressure that the thin surface film of air over the snowpack can attain. When this condition is met
the evaporation is computed by the empirical relationship:
SNOWEP = SNOEVP*0.0002*WINMOV*(SATVAP - VAP)*SNOCOV (8)
where:
SNOWEP = potential rate of evaporation from the frozen part of the
snowpack (inches of water equivalent/interval)
SNOEVP = parameter used to adjust the calculation to field conditions
WINMOV = wind movement (miles/interval)
SATVAP = saturated vapor pressure of the air at the current air
temperature (mbar)
VAP = vapor pressure of the air at the current air temp (mbar)
SNOCOV = fraction of the land segment covered by the snowpack
The potential (SNOWEP) will be fulfilled if there is sufficient snowpack. Otherwise, only the remaining
pack will evaporate. For either case, evaporation occurs only from the frozen content of the snowpack
(PACKF). The effect of evaporation on the heat balance in the pack is considered negligible.
37
-------
HSPF Version 12
Estimate Heat Exchange Rates - HEXCHR
(subroutine HEXCHR)
Purpose
The purpose of this subroutine is to estimate the heat exchange from the atmosphere due to condensation,
convection, and radiation when using the energy balance method. All heat exchanges are calculated in
terms of equivalent depth of melted or frozen water.
Method of Determining Heat Supplied by Condensation
Transfer of latent heat of condensation can be important when warm moist air masses travel over the
snowpack. Condensation occurs when the air is moist enough to condense on the snowpack. That is,
when the vapor pressure of the air is greater than 6.108 mbar. This physical process is the opposite of
snow evaporation; the heat produced by it is calculated by another empirical relationship:
CONDHT = 8.59*(VAP - 6.108)*CCFACT*0.00026*WINMOV (9)
where:
CONDHT = condensation heat flux to the snowpack (inches of water
equivalent/interval)
VAP = vapor pressure of the air at the current air temp (mbar)
CCFACT = parameter used to correct melt values to field conditions
WINMOV = wind movement (miles/interval)
CONDHT can only be positive or zero, that is, incoming to the pack.
Method of Determining Heat Supplied by Convection
Heat supplied by turbulent exchange with the atmosphere can occur only when air temperatures are
greater than freezing. This convection of heat is calculated by the empirical expression:
CONVHT = (AIRTMP - 32.0)*(1.0 - 0.3*MELEV/10000.0)* (10)
CCFACT*0.0002 6*WINMOV
where:
CONVHT = convective heat flux to the snowpack (inches of water
equivalent/interval)
AIRTMP = air temperature (degrees F)
MELEV = mean elevation of the land segment above sea level (ft)
In the simulation, CONVHT also can only be positive or zero, that is, only incoming.
38
-------
Functional Description
Method of Determining Heat Supplied by Radiation
Heat supplied by radiation is determined by:
RADHT = (SHORT + LONG)/203.2 (11)
where:
RADHT = radiation heat flux to the snowpack (inches of
water equivalent/interval)
SHORT = net solar or shortwave radiation (langleys/interval)
LONG = net terrestrial or longwave radiation (langleys/interval)
The constant 203.2 is the number of langleys required to produce one inch of melt from snow at 32
degrees F. RADHT can be either positive or negative, that is, incoming or outgoing.
SHORT and LONG are calculated as follows. Solar radiation, a required time series, is modified by the
albedo and the effect of shading. The albedo or reflectivity of the snowpack is a function of the dullness
of the pack (see subroutine EFFPRC for a discussion of DULL) and the season. The equation for
calculating albedo (ALBEDO) for the 6 summer months is:
ALBEDO = 0.80 - 0.10*(DULL/24.0)**0.5 (12)
The corresponding equation for the winter months is:
ALBEDO = 0.85 - 0.07*(DULL/24.0)**0.5 (13)
ALBEDO is allowed a minimum value of 0.45 for summer and 0.60 for winter. The hemispheric location
of the land segment is taken into account for determining summer and winter in using the above equation.
This is done through the use of the latitude parameter which is positive for the northern hemisphere.
Once the albedo of the pack is found then solar radiation (SHORT) is modified according to the equation:
SHORT = SOLRAD*(1.0 - ALBEDO)*(1.0 - SHADE) (14)
where:
SOLRAD = solar radiation (langleys/interval)
SHADE = parameter indicating the fraction of the land segment which
is shaded
39
-------
HSPF Version 12
Unlike shortwave radiation which is more commonly measured, longwave radiation (LONG) is estimated
from theoretical consideration of the emitting properties of the snowpack and its environment. The
following equations are based on Stefan's law of black body radiation and are linear approximations of
curves in Plate 5-3, Figure 6 in Snow Hydrology (Corps of Engineers, 1956). They vary only by the
constants which depend on air temperature. For air temperatures above freezing:
LONG = SHADE*0.2 6*RELTMP + (1.0 - SHADE)*(0.2*RELTMP - 6.6) (15)
And for air temperatures at freezing and below:
LONG = SHADE*0.20*RELTMP + (1.0 - SHADE)*(0.17*RELTMP - 6.6) (16)
where:
RELTMP = air temperature minus 32 (degrees F)
6.6 = average back radiation lost from the snowpack in open areas
(langleys/hr)
Since the constants in these equations were originally based on hourly time steps, both calculated values
are multiplied by DELT60, the number of hours per interval, so that they correspond to the simulation
interval. In addition, LONG is multiplied by the fraction of clear sky (SKYCLR) when it is negative, to
account for back radiation from clouds.
40
-------
Functional Description
Temperature Index Calculations - DEGDAY
(subroutine DEGDAY)
Purpose
The purpose of this subroutine is to estimate the heat exchange from the atmosphere based on a
temperature index. The heat exchange is calculated in terms of equivalent depth of melted or frozen
water.
Method
The snowpack gains energy at a rate proportional to the amount that the air temperature is above a
specified base temperature (TBASE) (at or near freezing). Both TBASE and the constant of
proportionality KMELT are input parameters.
MOSTHT= KMELT * (AIRTMP - TBASE) (17)
where:
MOSTHT = the amount of potential melt due to atmospheric exchange
(in/ivl)
KMELT = degree-day factor (in/F.ivl)
AIRTMP = current air temperature (F)
TBASE = base temperature, above which melt occurs (F)
KMELT can be input on a monthly basis to reflect differences in average radiation and/or wind
movement that are not accounted for as a function of temperature.
41
-------
HSPF Version 12
Loss of Heat from Pack - COOLER
(subroutine COOLER)
Purpose
The purpose of this code is to cool the snowpack whenever it is warmer than the ambient air and thus
loses heat. This is accomplished by accumulating negative heat storage which increases the capacity of
the pack to later absorb heat without melting as simulated in subroutine WARMUP.
Method
In every interval where there is heat loss to the atmosphere and the temperature of the snowpack is greater
than the air temperature, the negative heat storage will increase; that is, the pack will cool. However,
there is a maximum negative heat storage. The maximum negative heat storage that can exist at any time
is found by assuming a linear temperature distribution from the air temperature which is considered to be
above the pack to 32 degrees at the bottom of the snowpack. This maximum negative heat storage is
calculated hourly as follows:
MNEGHS = 0.00695*(PACKF/2.0)*(-RELTMP) (18)
where:
MNEGHS = maximum negative heat storage (inches of water equivalent)
PACKF = water equivalent of the frozen contents of the snowpack
(inches)
RELTMP = air temperature above freezing (degrees F)
The accumulation of the negative heat storage is calculated hourly from the following empirical
relationship:
NEGHT = 0.0007*(PAKTMP - AIRTMP)*DELT60 (19)
where:
NEGHT = potential rate of cooling of the snowpack (inches of water
equivalent per interval)
PAKTMP = mean temperature of the snowpack (degrees F)
AIRTMP = air temperature (degrees F)
DELT60 = number of hours per interval
NEGHT is added to the negative heat storage (NEGHTS) every interval except when limited by
MNEGHS. NEGHTS is used in the parent subroutine SNOW to calculate the temperature of the
snowpack and in subroutine WARMUP to determine the extent that the pack must be warmed to reach 32
degrees F.
42
-------
Functional Description
Warm the Snowpack - WARMUP
(subroutine WARMUP)
Purpose
This subroutine warms the snowpack to as much as 32 degrees F when possible.
Method
When there is negative heat storage in the pack (see subroutine COOLER for a discussion of NEGHTS),
and there is net incoming energy as calculated in previous subroutines, then NEGHTS will decrease
resulting in a warmer snowpack and possible melt.
The calculations in this subroutine are merely accounting. They decrease NEGHTS to a minimum of zero
by subtracting the net incoming heat. If any negative heat storage remains, then the latent heat released
by the freezing of any incoming rain is added to the pack. Since NEGHTS and all other heat variables are
in units of inches of melt, the inches of rain falling on the pack and freezing is subtracted from NEGHTS
without any conversion.
43
-------
HSPF Version 12
Melt the Pack Using Remaining Heat - MELTER
(subroutine MELTER)
Purpose
MELTER simulates the actual melting of the pack with whatever incoming heat remains. Any heat which
was not used to heat the snowpack in subroutine WARMUP can now be used to melt the snowpack.
Method
This subroutine is also merely an accounting subroutine. The net incoming heat has already been
calculated in terms of water equivalents of melt. Hence, any remaining incoming heat is used directly to
melt the snowpack either partially or entirely depending on the size of the snowpack.
44
-------
Functional Description
Liquid Water in Pack - LIQUID
(subroutine LIQUID)
Purpose
Subroutine LIQUID first determines the liquid storage capacity of the snowpack. It then determines how
much liquid water is available to fill the storage capacity. Any liquid water above the capacity will leave
the snowpack unless it freezes (see subroutine ICING).
Method
The liquid water holding capacity of the snowpack can be at the maximum as specified by the parameter
MWATER, at zero, or somewhere in between depending on the density of the pack: the less dense the
snowpack the greater the holding capacity. The following relationships define the capacity:
for RDENPF > 0.91,
PACKWC = 0.0 (20)
for 0.6 < RDENPF < 0.91,
PACKWC = MWATER*(3.0 - 3.33*RDENPF (21)
for RDENPF < 0.61,
PACKWC = MWATER (22)
where:
PACKWC = liquid water holding capacity of the snowpack (in/in)
MWATER = parameter specifying the maximum liquid water content of
the snowpack (in/in)
RDENPF = density of the snowpack relative to liquid water
MWATER is a function of the mass of ice layers, the size, the shape, and spacing of snow crystals and the
degree of channelization and honeycombing of the snowpack.
Once PACKWC is calculated, it is compared to the available liquid water in the pack PWSUPY.
PWSUPY is calculated by summing any storage remaining at the start of the interval, any melt, and any
rain that fell on the pack which did not freeze. If PWSUPY is more than PACKWC, then water is yielded
to the land surface from the snowpack.
45
-------
HSPF Version 12
Occurrence of Ice in Pack - ICING
(subroutine ICING)
Purpose
The purpose of subroutine ICING is to simulate the possible freezing of water which would otherwise
leave the snowpack. This freezing in turn produces ice or frozen ground at the bottom of the snowpack.
In this subroutine, the ice can be considered to be at the bottom of the pack or frozen in the ground below
the snow portion of the pack thus extending the total pack into the soil. This subroutine may only be
applicable in certain areas; therefore, it is optional.
Method
The freezing of the water yield of the snowpack depends on the capacity of the environment to freeze it.
Every day at approximately 6 a.m. the capacity is reassessed. A new value is estimated in terms of inches
of melt by multiplying the Fahrenheit degrees of the air temperature below 32.0 by 0.01. This estimate is
compared with the freezing capacity if any which remains from the previous 24-hr period. If it is greater,
then the new estimated capacity replaces the old, else the old value remains as the potential. Any water
yield that occurs freezes and is added to the ice portion of the snowpack until the capacity is met. Any
subsequent water yield is released from the snowpack.
46
-------
Functional Description
Melt the Pack Using Heat from the Ground - GMELT
(subroutine GMELT)
Purpose
The purpose of the GMELT subroutine is to simulate the melt caused by heat conducted from the surface
underlying the snowpack. This ground heat melts the pack only from below. Therefore, melt from this
process is considered independent of other previously calculated heat influences except for an indirect
effect via the temperature of the snowpack. Unlike the other melt processes, ground heat melts the ice
portion of the snowpack first since ice is considered to be located at the lower depths of the pack.
Method
The potential rate of ground melt is calculated hourly as a function of snowpack temperature (PAKTMP)
and a lumped parameter (MGMELT). MGMELT is the maximum rate of melt in water equivalent caused
by heat from the ground at a PAKTMP of 32 degrees F. MGMELT would depend upon the thermal
conductivity of the soil and the normal depth of soil freezing. The potential ground melt is reduced below
MGMELT by 3 percent for each degree that PAKTMP is below 32 degrees F to a minimum of 19 percent
of MGMELT at 5 degrees F or lower. As long as a snowpack is present, ground melt occurs at this
potential rate.
47
-------
HSPF Version 12
Reset State variables When Snowpack Disappears - NOPACK
(subroutine NOPACK)
Purpose
This code resets the state variables (for example, SNOCOV) when the snowpack completely disappears.
Method
The frozen contents of the snowpack required for complete areal cover of snow (COVINX) is set to a
tenth of the maximum value (COVIND). All other variables are either set to zero or the "undefined"
value of -1.0E30.
48
-------
Functional Description
Water Budget Pervious - PWATER
(Section PWATER of Module PERLND)
Purpose
PWATER is used to calculate the components of the water budget, primarily to predict the total runoff
from a pervious area. PWATER is the key component of module PERLND; subsequent major sections of
PERLND (eg. SEDMNT) depend on the outputs of this section.
Background
The hydrologic processes that are modeled by PWATER are illustrated in Figure "Hydrologic cycle."
The algorithms used to simulate these land related processes are the product of over 15 years of research
and testing. They are based on the original research for the LANDS subprogram of the Stanford
Watershed Model IV (Crawford and Linsley, 1966). LANDS has been incorporated into many models
and used to successfully simulate the hydrologic responses of widely varying watersheds. The equations
used in module section PWATER are nearly identical to the ones in the current version of LANDS in the
PTR Model (Crawford and Donigian, 1973), HSP (Hydrocomp, 1976), and the ARM and NPS Models
(Donigian and Crawford, 1976 a,b). However, some changes have been made to LANDS to make the
algorithms internally more amenable to a range of calculation time steps. Also, many of the parameter
names have been changed to make them more descriptive, and some can be input on a monthly basis to
allow for seasonal variation.
Data Requirements and Manipulation
The number of time series required by module section PWATER depends on whether snow accumulation
and melt are considered. When such conditions are not considered, only potential evapotranspiration and
precipitation are required. However, when snow conditions are considered, air temperature, rainfall,
snow cover, water yield, and ice content of the snowpack are also required. Also, the evaporation data are
adjusted when snow is considered. The input evaporation values are reduced to account for the fraction of
the land segment covered by the snowpack (determined from the generated time series for snow cover),
with an allowance for the fraction of area covered by coniferous forest which, it is assumed, can transpire
through any snow cover. Furthermore, PET is reduced to zero when air temperature is below the
parameter PETMIN. If air temperature is below PETMAX but above PETMIN, PET will be reduced to
50% of the input value, unless the first adjustment already reduced it to less than this amount.
The estimated potential evapotranspiration (PET) is used to calculate actual ET in subroutine group
EVAPT.
Approach
Figures below represent the fluxes and storages simulated in module section PWATER. The time series
SUPY representing moisture supplied to the land segment includes rain, and when snow conditions are
considered, rain plus water from the snowpack. SUPY is then available for interception. Interception
storage is water retained by any storage above the overland flow plane. For pervious areas, interception
storage is mostly on vegetation. Any overflow from interception storage is added to the optionally
supplied time series of surface external lateral inflow to produce the total inflow into the surface detention
storage.
49
-------
HSPF Version 12
1 i I I I I I I I I I M I
Figure 13: Hydrologic cycle
Inflow to the surface detention storage is added to existing storage to make up the water available for
infiltration and runoff. Moisture which directly infiltrates moves to the lower zone and groundwater
storages. Other water may go to the upper zone storage, may be routed as runoff from surface detention
or interflow storage, or may stay on the overland flow plane, from which it runs off or infiltrates at a later
time.
The processes of infiltration and overland flow interact and occur simultaneously in nature. Surface
conditions such as heavy turf on mild slopes restrict the velocity of overland flow and reduce the total
quantity of runoff by allowing more time for infiltration. Increased soil moisture due to prolonged
infiltration will in time reduce the infiltration rate producing more overland flow. Surface detention will
modify flow. For example, high intensity rainfall is attenuated by storage and the maximum outflow rate
is reduced. The water in the surface detention may also later infiltrate reoccurring as interflow, or it can
be contained in upper zone storage.
Water infiltrating through the surface and percolating from the upper zone storage may become stored
within the lower zone storage, flow to active groundwater storage, or may be lost by deep percolation.
The water that reaches the lower zone is subject to evapotranspiration. Active groundwater eventually
reappears as baseflow, and may be subject to evapotranspiration, but deep percolation is considered lost
from the simulated system.
Lateral external inflows to interflow, upper zone, lower zone, and active groundwater storages are also
possible in section PWATER. One may wish to use this option if an upslope land segment is significantly
different to merit separating it from a downslope land segment and no channel exists between them.
Not only are flows important in the simulation of the water budget, but so are storages. As stated, soil
storage affects infiltration. The water holding capacity of the two soil storages, upper zone and lower
zone, in module section PERLND is defined in terms of nominal capacities. Nominal, rather than
absolute capacities, serve the purpose of smoothing any abrupt change that would occur if an absolute
capacity is reached. Such capacities permit a smooth transition in hydrologic performance as the water
content fluctuates.
50
-------
Functional Description
TAET
total actual
ET
CEPE
inter-
ception
evapo-
ration /
0^
SUPY
prccip or rain
+ snowpack
water yield
SURLI
external
lateral
surface
inflow
vy
CEPO
interception
outflow
SURI
surface
Inflow
SURS
surface
detention
storage
SURO
surface
outflow
Vy
IFWLI
externa
lateral
Inter-
flow
IF WO
inter-
flow
outflow
inter-
flow
input
from
surface
Figure 14: Flow diagram of water movement and storages modeled in the PWATER section of the PERLND
Application Module
51
-------
HSPF Version 12
<
O
LZET
lower
zone
EI
vy
«
1PERC
Iriflfcatfen 1
percolation tn j
iow*r zortM
LZI
lower
zone
Inflow
vy
O
IGWET
ground
water
ET
w.
LZS
lower zone
storage
AGWI
active
ground
water
.Inflow.
V/
mm
ground
watsr
outflow
IGWI
d«ep
percolation
A
AGWLI
external
lateral
ground
water
inflow
Figure 15: Flow diagram of water movement and storages modeled in the
52
-------
Functional Description
Storages also affect evapotranspiration loss. Evapotranspiration can be simulated from interception
storage, upper and lower zone storages, active groundwater storage, and directly from baseflow.
Storages and flows can also be instrumental in the transformation and movement of chemicals simulated
in the agri-chemical module sections. Soil moisture levels affect the adsorption and transformations of
pesticides and nutrients. Soil moisture contents may vary greatly over a land segment. Therefore, a more
detailed representation of the moisture contents and fluxes may be needed to simulate the transport and
reaction of agricultural chemicals.
The following subroutine descriptions explain the algorithms of the PWATER module section in more
detail. Further detail can be found in the reports cited above.
53
-------
HSPF Version 12
Interception - ICEPT
(subroutine ICEPT)
Purpose
The purpose of this code is to simulate the interception of moisture by vegetal or other ground cover.
Moisture is supplied by precipitation, or under snow conditions, it is supplied by the rain not falling on
the snowpack plus the water yielded by the snowpack. Also, irrigation water that is applied to the crop
canopy is subject to interception.
Method
The user may supply the interception capacity on a monthly basis to account for seasonal variations, or
may supply one value designating a fixed capacity. The interception capacity parameter can be used to
designate any retention of moisture which does not infiltrate or reach the overland flow plane. Typically
for pervious areas this capacity represents storage on grass blades, leaves, branches, trunks, and stems of
vegetation.
Moisture exceeding the interception capacity overflows the storage and is ready for either infiltration or
runoff as determined by subroutine group SURFAC. Water held in interception storage is removed by
evaporation; the amount is determined in subroutine EVICEP.
54
-------
Functional Description
Distribute Water Available for Infiltration and Runoff - SURFAC
(subroutine SURFAC)
Purpose
Subroutine SURFAC determines what happens to the moisture on the surface of the land. It may
infiltrate, go to the upper zone storage or interflow storage, remain in surface detention storage, or run off.
Method
The algorithms which simulate infiltration represent both the continuous variation of infiltration rate with
time as a function of soil moisture and the areal variation of infiltration over the land segment. The
equations representing the dependence of infiltration on soil moisture are based on the work of Philips
(1957) and are derived in detail in the previously cited reports.
The infiltration capacity, the maximum rate at which soil will accept infiltration, is a function of both the
fixed and variable characteristics of the watershed. Fixed characteristics include primarily soil
permeability and land slopes, while variables are soil surface conditions and soil moisture content. Fixed
and variable characteristics vary spatially over the land segment. A linear probability density function is
used to account for areal variation. Figure "Determination of infiltration and interflow inflow" represents
the infiltration/interflow/surface runoff distribution function of section PWATER. Careful attention to
this figure and the last figure in PWATER will facilitate understanding of subroutine SURFAC and the
subordinate subroutines DISPOS, DIVISN, UZINF, and PROUTE.
The infiltration distribution is focused around the two lines which separate the moisture available to the
land surface (MSUPY) into what infiltrates and what goes to interflow. A number of the variables that are
used to determine the location of lines I and II are calculated in subroutine SURFAC. They are calculated
by the following relationships:
IBAR = (INFILT/(LZS/LZSN)**INFEXP)*INFFAC (1)
IMAX = INFILD*IBAR (2)
IMIN = IBAR - (IMAX - IBAR) (3)
RATIO = INTFW*(2.0**(LZS/LZSN)) (4)
where:
IBAR = mean infiltration capacity over the land segment
(in/interval)
INFILT = infiltration parameter (in/interval)
LZS = lower zone storage (inches)
LZSN = parameter for lower zone nominal storage (inches)
INFEXP = exponent parameter greater than one
INFFAC = factor to account for frozen ground effects, if applicable
IMAX = maximum infiltration capacity (in/interval)
INFILD = parameter giving the ratio of maximum to mean infiltration
capacity over the land segment
IMIN = minimum infiltration capacity (in/interval)
RATIO = ratio of the ordinates of line II to line I
INTFW = interflow inflow parameter
55
-------
HSPF Version 12
m
£
c
<1>
£5
5
en
a>
MSUPY
IIMIN
IMIN
Una 11 (interflow +
1
infiltration capacity)
. \ =.
|/SA*
I
^ line 1 (ir,filtration capacity)
1
50
% of Area
UMAX -
3
O
(fi
IMAX o
S
m
m
5"
B
5
100
potential surface
detention/runoff
potential
interflow inflow
potential direct runoff
Figure 16: Determination of infiltration and interflow inflow
The parameter INTFW can be input on a monthly basis to allow for variation throughout the year.
The factor that reduces infiltration (and also upper zone percolation) to account for the freezing of the
ground surface (INFFAC) is calculated in one of two ways. In the first method, it is derived from the
water equivalent of ice in the snowpack according to the equation:
INFFAC = 1.0 - FZG*PACKI (5)
where:
FZG
= parameter indicating how much icing reduces infiltration
(/inches)
PACKI = water equivalent of ice in snowpack (inches)
In this method, INFFAC is subject to a minimum, supplied as the dimensionless parameter FZGL.
The second method determines INFFAC according to the soil temperature in the lower layer. If this
temperature is less than 0 degrees C, then INFFAC is set to the parameter FZGL; otherwise it is set to 1.0.
This method can only be used if section PSTEMP is active.
56
-------
Functional Description
Dispose of Moisture Supply - DISPOS
(subroutine DISPOS)
Purpose
Subroutine DISPOS determines what happens to the moisture supply (MSUPY) on the land segment.
Method
This subroutine calls subordinate routines DIVISN, UZINF, and PROUTE. DIVISN is called to
determine how much of MSUPY falls above and below line I in the figure in SURFAC. The quantity
under this line is considered to be infiltrated. The amount over the line but under the MSUPY line (the
entire shaded portion) is the potential direct runoff (PDRO), which is the combined increment to
interflow, and upper zone storage plus the quantities which will stay on the surface and run off. PDRO is
subdivided by line II. The ordinates of line II are found by multiplying the ordinates of line I by RATIO
(see subroutine SURFAC for definition). The quantity underneath both line II and the MSUPY line but
above line I is called potential interflow inflow. This consists of actual interflow plus an increment to
upper zone storage. Any amount above line II but below the MSUPY (potential surface detention/runoff)
is that portion of the moisture supply which stays on the surface and is available for overland flow
routing, plus a further increment to upper zone storage. The fractions of the potential interflow inflow
and potential surface detention/runoff which are combined to compose the upper zone inflow are
determined in subroutine UZINF.
57
-------
HSPF Version 12
Inflow to Upper Zone - UZINF
(subroutines UZINF 1 and UZINF2)
Purpose
The purpose of this code is to compute the inflow to the upper zone when there is some potential direct
runoff (PDRO). PDRO, which is determined in subroutine DISPOS, will either enter the upper zone
storage or be available for either interflow or overland flow. This subroutine determines what amount, if
any, will go to the upper zone storage.
Method
The fraction of the potential direct runoff which becomes inflow to the upper zone storage is a function of
the ratio (UZRAT) of the storage to the nominal capacity. The figure in PROUTE diagrams this
relationship. The equations used to define this curve follow:
FRAC = 1 - (UZRAT/2)*(1/(4 - UZRAT))**(3 - UZRAT) (7)
for UZRAT less than or equal to two. For UZRAT greater than two,
FRAC = (0.5/(UZRAT - 1))**(2*UZRAT - 3) (8)
where:
FRAC = fraction of PDRO retained by the upper zone storage
UZRAT = UZS/UZSN
Since UZS and FRAC are dynamically affected by the inflow process it becomes desirable when using
particularly large time steps to integrate over the interval to find the inflow to the upper zone. This is
done in subroutine UZINF 1. The solution is simplified by assuming that inflow to and outflow from the
upper zone are handled separately. Considering inflow, the following differential equation results:
d(UZS)/dt = (d(UZRAT)/dt)*UZSN = PDRO*FRAC (9)
Thus
d(UZRAT)/FRAC = (PDRO/UZSN)*dt (10)
Now taking the definite integral of both sides of the equation:
UZRATt2
( d(UZRAT)
INTGRL = ( = (PDRO/UZSN) (t2-tl) (11)
( FRAC
UZRATtl
where:
tl = time at start of interval
t2 = time at end of interval
The integral on the left side must be evaluated numerically. Subroutine UZINF 1 uses tabulated
corresponding values of INTGRL and UZRAT to evaluate it. This relationship, plus Equations 9 and 11,
enable one to find the change in UZRAT over the interval, and hence, the quantity of inflow.
58
-------
Functional Description
Subroutine UZINF2, which is an alternative to UZINF1, uses the algorithm used in the predecessor
models HSP, ARM and NPS. That is, Equations 7 and 8 are used directly to estimate the fraction of
PDRO retained by the upper zone. Only the value of UZRAT at the start of the simulation interval is
used; thus, no account is taken of the possible steady reduction in inflow to the upper zone within a single
time step, due to its being filled as shown in the following figure.
o
<
OC
1.00
0.80
0.60
0.40
0.20
0.00
0.0
1.0
2.0
3.0
UZRAT
Figure 17: Fraction of the potential direct runoff retained by the upper zone (FRAC) as a function of the
upper zone soil moisture ratio (UZRAT)
59
-------
HSPF Version 12
Surface Runoff - PROUTE
(subroutine PROUTE)
Purpose
The purpose of subroutine PROUTE is to determine how much potential surface detention runs off in one
simulation interval.
Method of Routing
Overland flow is treated as a turbulent flow process. It is simulated using the Chezy-Manning equation
and an empirical expression which relates outflow depth to detention storage. A more detailed
explanation and derivation can be found in the reports cited in the initial background discussion. The rate
of overland flow discharge is determined by the equations:
for SURSM < SURSE
SURO = DELT60*SRC*(SURSM*(1.0 + 0.6(SURSM/SURSE)**3)**1.67 (12)
for SURSM >= SURSE
SURO = DELT60*SRC*(SURSM*1.6)**1.67
where:
SURO = surface outflow (in/interval)
DELT60 = DELT/60.0 (hr/interval)
SRC = routing variable, described below
SURSM = mean surface detention storage over the time interval (in)
SURSE = equilibrium surface detention storage (inches) for current
supply rate
DELT60 makes the equations applicable to a range of time steps (DELT). The first equation represents
the case where the overland flow rate is increasing, and the second case where the surface is at
equilibrium or receding. Equilibrium surface detention storage is calculated by:
SURSE = DEC*SSUPR**0.6 (13)
where:
DEC = calculated routing variable, described below
SSUPR = rate of moisture supply to the overland flow surface
There are two optional ways of determining SSUPR and SURSM. One option - the same method used in
the predecessor models - HSP, ARM, and NPS - estimates SSUPR by subtracting the surface storage at
the start of the interval (SURS) from the potential surface detention (PSUR) which was determined in
subroutine DISPOS. The units of SSUPR are inches per interval. SURSM is estimated as the mean of
SURS and PSUR. The other option estimates SSUPR by the same method except that the result is
divided by DELT60 to obtain a value with units of inches per hour. SURSM is set equal to SURS. This
option is dimensionally consistent for any time step.
60
-------
Functional Description
The variables DEC and SRC are calculated daily in subroutine SURFAC, but their equations will be
given here since they pertain to routing. They are:
DEC = 0.00982*(NSUR*LSUR/SQRT(SLSUR))**0.6 (14)
SRC = 1020.0*(SQRT(SLSUR)/(NSUR*LSUR (15)
where:
NSUR = Manning's n for the overland flow plane
LSUR = length of the overland flow plane (ft)
SLSUR = slope of the overland flow plane (ft/ft)
NSUR can be input on a monthly basis to allow for variations in roughness of the overland flow plane
throughout the year.
61
-------
HSPF Version 12
Interflow - INTFLW
(subroutine INTFLW)
Purpose
Interflow can have an important influence on storm hydrographs particularly when vertical percolation is
retarded by a shallow, less permeable soil layer. Additions to the interflow component are retained in
storage or routed as outflow from the land segment. Inflows to the interflow component may occur from
the surface or from upslope external lateral flows. The purpose of this subroutine is to determine the
amount of interflow and to update the storage.
Method of Determining Interflow
The calculation of interflow outflow assumes a linear relationship to storage. Thus outflow is a function
of a recession parameter, inflow, and storage. Moisture that remains will occupy interflow storage.
Interflow discharge is calculated by:
IFWO = (IFWKl*INFLO) + (IFWK2*IFWS) (16)
where:
IFWO = interflow outflow (in/interval)
INFLO = inflow into interflow storage, including lateral inflow
(in/interval)
IFWS = interflow storage at the start of the interval (inches)
IFWK1 and IFWK2 are variables determined by:
IFWKl = 1.0 - (IFWK2/KIFW) (17)
IFWK2 = 1.0 - EXP(-KIFW) (18)
and
KIFW = -ALOG(IRC)*DELT60/24.0 (19)
where:
IRC = interflow recession parameter (per day)
DELT60 = number of hr per interval
24.0 = number of hours per day
EXP = exponential function
ALOG = natural logarithm function
IRC is the ratio of the present rate of interflow outflow to the value 24 hours earlier, if there was no
inflow. IRC can be input on a monthly basis to allow for variation in soil properties throughout the year.
62
-------
Functional Description
Upper Zone Behavior - UZONE
(subroutine UZONE)
Purpose
This subroutine and the subsidiary subroutine UZONES are used to calculate the water percolating from
the upper zone. Water not percolated remains in upper zone storage available for evapotranspiration in
subroutine ETUZON.
Method of Determining Percolation
The upper zone inflow calculated in DISPOS, plus any lateral inflow and/or irrigation application, is first
added to the upper zone storage at the start of the interval to obtain the total water available for
percolation from the upper zone.
Percolation only occurs when UZRAT minus LZRAT is greater than 0.01. When this happens,
percolation from the upper zone storage is calculated by the empirical expression:
PERC = 0.1*INFILT*INFFAC*UZSN*(UZRAT - LZRAT)**3 (20)
where:
PERC
INFILT
INFFAC
UZSN
UZRAT
LZRAT
percolation from the upper zone (in/interval)
infiltration parameter (in/interval)
factor to account for frozen ground, if any
parameter for upper zone nominal storage (inches)
ratio of upper zone storage to UZSN
ratio of lower zone storage to lower zone nominal storage
(LZSN)
The upper zone nominal capacity can be input on a monthly basis to allow for variations throughout the
year. The monthly values are interpolated to obtain daily values.
63
-------
HSPF Version 12
Lower Zone Behavior - LZONE
(subroutine LZONE)
Purpose
This subroutine determines the quantity of infiltrated and percolated water which enters the lower zone.
The infiltrated moisture supply is determined in subroutine DISPOS. The percolated moisture from the
upper zone is found in subroutine UZONE.
Method
The fraction of the lower zone inflow, which is the sum of direct infiltration, percolation, lower zone
lateral inflow, and irrigation application, that enters the lower zone storage (LZS) is based on the lower
zone storage ratio of LZS/LZSN where LZSN is the lower zone nominal capacity. The inflowing fraction
is determined empirically by:
LZFRAC = 1.0 - LZRAT*(1.0/(1.0 + INDX))**INDX (21)
when LZRAT is less than 1.0, and by
LZFRAC = (1.0/(1.0 + INDX))**INDX (22)
when LZRAT is greater than 1.0. INDX is defined by:
INDX = 1.5*ABS(LZRAT - 1.0) + 1.0 (23)
where:
LZFRAC = fraction of infiltration plus percolation plus lower zone
lateral inflow that enters LZS
LZRAT = LZS/LZSN
ABS = function for determining absolute value
These relationships are plotted in Figure "Fraction of infiltration plus percolation entering lower zone
storage" below in GWATER. The fraction of the moisture supply remaining after the surface, upper
zone, and lower zone components are subtracted is added to the groundwater storages.
64
-------
Functional Description
1.00
m
o'C 0)
.2 m m
2
tliiO
4= cm
EM m
o — o
= 8N
¦2 * a
** P s
OIL >
m m o
i_ m ¦
U. 3
0.80
0.60
0.40
0.20
0.00
0.5
1.0
1.5
2.0
2.5
LZRAT
Figure 18: Fraction of infiltration plus percolation entering lower zone storage
65
-------
HSPF Version 12
Groundwater Behavior - GWATER
(subroutine GWATER)
Purpose
The purpose of this subroutine is to determine the amount of the inflow to groundwater that is lost to deep
or inactive groundwater and to determine the amount of active groundwater outflow. These two fluxes
will in turn affect the active groundwater storage.
Method of Determining Groundwater Fluxes
The quantity of direct infiltration plus percolation from the upper zone which does not go to the lower
zone (determined in subroutine LZONE) will be inflow to either inactive or active groundwater. The
distribution to active and inactive groundwater is user designated by parameter DEEPFR. DEEPFR is
that fraction of the groundwater inflow which goes to inactive groundwater. The remaining portion of the
percolating water plus all lateral inflow and/or irrigation application make up the total inflow to the active
groundwater storage.
The outflow from active groundwater storage is based on a simplified model. It assumes that the
discharge of an aquifer is proportional to the product of the cross-sectional area and the energy gradient of
the flow. Further, a representative cross-sectional area of flow is assumed to be related to the groundwater
storage level at the start of the interval. The energy gradient is estimated as a basic gradient plus a
variable gradient that depends on past active groundwater accretion.
Thus, the groundwater outflow is estimated by:
AGWO = KGW*(1.0 + KVARY*GWVS)*AGWS (24)
where:
AGWO =
KGW
KVARY =
GWVS =
AGWS =
active groundwater outflow (in/interval)
groundwater outflow recession parameter (/interval)
parameter which can make active groundwater storage to
outflow relation nonlinear (/inches)
index to groundwater slope (inches)
active groundwater storage at the start of the interval(inches)
GWVS is increased each interval by the inflow to active groundwater but is also decreased by 3 percent
once a day. It is a measure of antecedent active groundwater inflow. KVARY is introduced to allow
variable groundwater recession rates. When KVARY is nonzero, a semilog plot of discharge versus time
is nonlinear. This parameter adds flexibility in groundwater outflow simulation which is useful in
simulating many watersheds.
The parameter KGW is calculated by the Run Interpreter using the relationship:
KGW = 1.0 - (AGWRC)**(DELT60/24.0) (25)
where:
AGWRC = daily recession constant of groundwater flow if KVARY
or GWVS = 0.0; i.e., the ratio of current groundwater
discharge to groundwater discharge 24-hr earlier
DELT60 = hr/interval
66
-------
Functional Description
Evapotranspiration - EVAPT
(subroutine EVAPT)
Purpose
The purpose of EVAPT and its subordinate subroutines is to simulate evaporation and evapotranspiration
fluxes from all zones of the pervious land segment. Since in most hydrologic regimes the volume of
water that leaves a watershed as evapotranspiration exceeds the total volume of streamflow, this is an
important aspect of the water budget.
Method of Determining Actual Evapotranspiration
There are two separate issues involved in estimating evapotranspiration (ET). First, potential ET must be
estimated. ET potential or demand is supplied as an input times series, typically using U.S. Weather
Bureau Class A pan records plus an adjustment factor. The data are further adjusted for cover in the
parent subroutine PWATER. Second, actual ET must be calculated, usually as a function of moisture
storages and the potential. The actual ET is estimated by trying to meet the demand from five sources in
the order described below. The sum of the ET from these five sources is the total actual
evapotranspiration from the land segment.
Subroutine ETBASE
The first source from which ET can be taken is the active groundwater outflow or baseflow. This
simulates effects such as ET from riparian vegetation in which groundwater is withdrawn as it enters the
stream. The user may specify by the parameter BASETP the fraction, if any, of the potential ET that can
be sought from the baseflow. That portion can only be fulfilled if outflow exists. Any remaining
potential not met by actual baseflow evaporation will try next to be satisfied in subroutine EVICEP.
Subroutine EVICEP
Remaining potential ET exerts its demand on the water in interception storage. Unlike baseflow, there is
no parameter regulating the rate of ET from interception storage. The demand will draw upon all of the
interception storage unless the demand is less than the storage. When the demand is greater than the
storage, the remaining demand will try to be satisfied in subroutine ETUZON.
Subroutine ETUZON
There are no special ET parameters for the upper zone, but rather ET is based on the moisture in storage
in relation to its nominal capacity. Actual evapotranspiration will occur from the upper zone storage at
the remaining potential demand if the ratio of UZS/UZSN, upper zone storage to nominal capacity, is
greater than 2.0. Otherwise the remaining potential ET demand on the upper zone storage is reduced; the
adjusted value depends on UZS/UZSN. Subroutine ETAGW will attempt to satisfy any remaining
demand.
Subroutine ETAGW
Like ET from baseflow, actual evapotranspiration from active groundwater is regulated by a parameter.
The parameter AGWETP is the fraction of the remaining potential ET that can be sought from the active
groundwater storage. That portion of the ET demand can be met only if there is enough active
groundwater storage to satisfy it. Any remaining potential will try to be met in subroutine ETLZON.
67
-------
HSPF Version 12
Subroutine ETLZON
The lower zone is the last storage from which ET is drawn. Evapotranspiration from the lower zone is
more involved than that from the other storages. ET from the lower zone depends upon vegetation
transpiration. Evapotranspiration opportunity will vary with the vegetation type, the depth of rooting,
density of the vegetation cover, and the stage of plant growth along with the moisture characteristics of
the soil zone. These influences on the ET opportunity are lumped into the LZETP parameter. Unlike the
other ET parameters LZETP can be input on a monthly basis to account for temporal changes in the above
characteristics.
If the LZETP parameter is at its maximum value of one, representing near complete areal coverage of
deep rooted vegetation, then the potential ET for the lower zone is equal to the demand that remains.
However, this is normally not the case. Usually vegetation type and/or rooting depths will vary over the
land segment. To simulate this, a linear probability density function for ET opportunity is assumed (see
Figure "Potential and actual evapotranspiration from the lower zone" below). This approach is similar to
that used to handle areal variations in infiltration/percolation capacity.
The variable RPARM, the index to maximum ET opportunity, is estimated by:
RPARM = (0.25/(1.0 - LZETP))*(LZS/LZSN)*DELT60/24.0 (26)
where:
RPARM = maximum ET opportunity (in/interval)
LZETP = lower zone ET parameter
LZS = current lower zone storage (inches)
LZSN = lower zone nominal storage parameter (inches)
DELT60 = hr/interval
The quantity of water lost by ET from the lower zone storage, when remaining potential ET (REMPET) is
less than RPARM, is given by the cross-hatched area of the figure below. When REMPET is more than
RPARM the lower zone ET is equal to the entire area under the triangle, RPARM/2.
ET from the lower zone storage is further reduced when LZETP is less than 0.5 by multiplying by
LZETP* 2.0. This is designed to account for the fraction of the land segment devoid of any vegetation
that can draw from the lower zone.
68
-------
Functional Description
.2 =
V ° —
0 — ffi
CL REMPET
J5
rac —
C(J«
1'*
"i
E
¦- i- o
¦E^.c
» >
q: uj
RPARM
w
m
_ <
3
«Sa
ffaTS
5! $"3
a - ^
~ o'
3
25
50
75
100
Percent of Area with Evapotrans pi ration
Opportunity Equal to or less than the
Indicated Value
Figure 19: Potential and actual evapotranspiration from the lower zone
69
-------
HSPF Version 12
Water Budget Pervious, High Water Table, Low Gradient
This section describes an optional method of simulating soil hydrology when the water table approaches
or rises above the ground surface (Hydrocomp and AQUA TERRA, 1996). This method, which is
applicable for wetlands and low gradient areas, is a modified version of the standard hydrologic method
in HSPF (i.e., the Stanford Watershed Model).
Soil Moisture Concepts
To represent the high water table/low gradient environment, it is necessary to keep track of the
groundwater levels (saturated zone elevation) and to model the interaction between the saturated zone and
the unsaturated zone. The interaction between the saturated and unsaturated zones corresponds to
transfers between the groundwater storage and the other storages. Determining when and how the rising
groundwater starts affecting the other storages requires being more specific about the location and
capacity of the storages.
The porosity of a soil is the volume of pore space as a fraction, or a percentage, of the total soil volume.
Porosity varies, with typical values for sand of about 40%, and higher values for silts and clays.
Water is stored in soil as adhesion water, cohesion water, and gravitational water. Adhesion water is
electrically bonded to soil particles and is immobile except at very high temperatures (in drying ovens).
Cohesion water is bonded in soil by capillary forces and weaker electrical forces. Cohesion water is
roughly equal to the "available water", the difference between the wilting point and field capacity.
Gravitational water will drain from soils in the unsaturated zone unless drainage is inhibited.
Gravitational water can be defined to be present in macropores (cohesion water is present in micropores).
For modeling purposes the total porosity is divided into porosity in micropores (PCW, cohesion water),
and porosity in macropores (PGW, gravitational water). The upper layer of the soil may be disturbed and
have a larger porosity in macropores (UPGW). The porosity of micropores is assumed to be the same
throughout the soil column. In PWATER, cohesion water is stored in the lower zone storage, while
gravitational water is stored in the upper zone and interflow storages.
The figure "Sketch of soil moisture in the unsaturated zone under high water table conditions" defines
these concepts. In this figure, Pew is the porosity of cohesion water and Pgw is the porosity of gravity
water.
The "groundwater level" is the elevation of the saturated zone above an arbitrary datum such as mean sea
level. The active groundwater storage is gravity water stored above the minimum channel or canal
elevation that is within or adjacent to the land.
An "influence depth" is also shown in this figure. The influence depth is the maximum depth where soil
moisture varies seasonally due to evapotranspiration. Soil moisture within the influence depth could be
defined as "hydrologically active".
Model Overview
Figure "Soil moisture storage concepts under high water table conditions" is the main definition sketch
for the model to simulate the high water table hydrology. It locates the PWATER storages in the
conceptual representation of the soil introduced in the first figure. It also summarizes some of the
variables and constants used in the model. The soil column is divided into three soil regions according to
two influence elevation lines: the lower and upper influence elevations.
70
-------
Functional Description
Land Surface
Influence Depth,
Lower Zone
Influence Depth,
Upper Zone and
Interflow Storage
Datum
Figure 20: Sketch of soil moisture in the unsaturated zone under high water table conditions
71
-------
HSPF Version 12
i mnw
PCW
SELV
(Eurfae# elevation)
UELV
(upper zone and
interflow influence
elevation)
LELV
{lower zone
influence elevation)
GWEL
(groundwater elevation)
BELV
(base elevation)
PGW
PCW
1.0
-H
Available Pore Space
REGION 3; (1—) PCW + (1 ¦ .. U^.+IFWS ) UPGW
2 LZSN 3 UZSN + IFWSC
REGION 2: (1- 123 ) PCW + PGW
2 LZSN'
REGION V. PCW + PGW
Figure 21: Soil moisture storage concepts under high water table conditions
72
-------
Functional Description
When the groundwater elevation is below the lower influence elevation, (Region 1 in the figure
immediately above), there is no interaction between the saturated and the unsaturated zones. The
algorithms operate in essentially the same way as the standard PWATER. Groundwater elevation in this
region is a function of the groundwater storage and the total porosity (macropores and micropores).
When the groundwater elevation reaches the lower influence elevation, (region 2), the groundwater
storage starts interacting with the lower zone storage. Rising groundwater that occupies micropores is
reassigned to the lower zone, according to the saturation level of the lower zone. Groundwater in this
region is assumed to occupy macropores and it is subject to evapotranspiration. As the groundwater rises
in this region it may start interacting with, and "drowning" the interflow storage, if this storage is large
enough. Groundwater elevation in this region is a function of groundwater storage and the porosity in
macropores.
When the groundwater elevation reaches the upper influence level, (region 3), the groundwater affects
upper zone behavior. Interflow storage is not "drowned" anymore in this region, but it is limited to a
maximum capacity. Groundwater storage shares macropores with the interflow storage and the upper
zone storage. Changes in groundwater storage that are not reassigned to the lower zone storage, are
distributed between upper zone, interflow and groundwater storage, according to their relative saturation
levels. Groundwater elevation in this region is a function of interflow, upper zone and groundwater
storages.
When the groundwater level reaches the surface, any additional water is assigned to surface detention
storage and the surface detention storage represents the depth of inundation over the land segment.
Evaporation from the surface storage takes place at the potential rate, after interception storage has been
exhausted. Surface runoff is only a function of surface detention storage.
Detailed Definition of Influence Levels and Storages
In each time step the behavior of the various storages and the interactions between them depend on the
current elevation of the groundwater (the current "region" in the second figure above). This section
explains the way in which the model determines the influence levels and associated groundwater storages
that define the soil regions. It also describes how groundwater elevation is calculated in the various
regions.
The three soil regions in the soil column are determined by the lower influence elevation (LELV) and the
upper influence elevation (UELV).
The lower influence elevation is the elevation above which the groundwater affects lower zone behavior
and, depending on the current interflow storage, it may also affect interflow behavior. The lower
influence elevation is defined in terms of the lower zone nominal storage as:
LELV = SELV - (2.5*LZSN)/PCW (27)
where:
LELV = lower zone influence level (in)
SELV = mean surface elevation (in)
LZSN = lower zone nominal storage (in)
PCW = porosity in micropores (-)
2.5 = factor derived from PWATER equations; this factor
is implemented as a model parameter (LELFAC) to
allow users to investigate its sensitivity
73
-------
HSPF Version 12
The total groundwater storage associated with a groundwater elevation equal to LELV is:
LLGWS = LELV*(PCW + PGW) (28)
where:
LLGWS = total groundwater storage below LELV (in)
PCW = porosity in micropores (-)
PGW = porosity in macropores (-)
Below LELV (Region 1 in the second figure above) there are no interactions between the saturated and
the unsaturated zones. The rising groundwater occupies the total porosity (macropores and micropores).
Groundwater elevation in this region is calculated as:
GWEL = TGWS/(PCW + PGW) (29)
where:
GWEL = groundwater elevation (in)
TGWS = total groundwater storage (in)
Above LELV (Region 2), the lower zone storage represents water stored in micropores. Consequently,
the portion of the rising water table that occupies the micropores is reassigned to the lower zone storage.
The groundwater storage is assumed to occupy the macropores. Groundwater elevation in this region is
calculated as:
GWEL = LELV + (TGWS - LLGWS)/PGW (30)
Interflow storage also occupies macropores. Interflow storage increases from the surface down. If it is
below the upper influence level, it will share macropores with the groundwater. The model assumes that
in this region the interflow path is drowned by the rising groundwater; if the rising groundwater storage
reaches the interflow storage, the excess interflow storage is transferred to groundwater storage.
The upper influence elevation is the elevation above which the groundwater affects upper zone behavior.
In this region (region 3 in the second figure above), upper zone and interflow share the macropores with
the groundwater storage. In the conceptual model upper zone storage is the portion of the water stored in
macropores which will not reach the channels, but will percolate, evaporate or transpire; interflow storage
is the portion of the water stored in macropores which will flow to the channels through a subsurface flow
path. The groundwater storage that enters this region will flow to the channels as base flow, or transpire,
if the potential evapotranspiration has not been met by the upper zone.
Groundwater that occupies micropores is reassigned to lower zone storage, as in the previous region. The
remaining changes in groundwater storage are reassigned between interflow storage, upper zone storage
and groundwater storage. In this region, the interflow path is not assumed to be drowned by the rising
groundwater. However the interflow storage is limited to a maximum, given by a new parameter, the
interflow storage capacity, IFWSC. This capacity represents the portion of macropores that will continue
to produce interflow into the channels when the saturated zone reaches the surface.
74
-------
Functional Description
The upper influence elevation is defined in terms of the upper zone nominal storage and the interflow
storage capacity:
UELV = SELV - (4.0*UZSN + IFWSC)/UPGW
131)
where:
UELV = upper zone and interflow influence level (in)
SELV = mean surface elevation (in)
UZSN = upper zone nominal storage (in).
IFWSC = interflow storage capacity (in)
UPGW = porosity in macropores in upper soil layer (-)
4.0 = factor derived from PWATER equations; this factor
is implemented as a model parameter (UELFAC) to
allow users to investigate its sensitivity
The total groundwater storage corresponding to a groundwater elevation of UELV is:
ULGWS = LLGWS + (UELV - LELV)*PGW (32)
where:
ULGWS = total groundwater storage below upper influence level (in)
LLGWS = total groundwater storage below lower influence level (in)
PGW = porosity in macropores (-)
The saturation level of macropores in the upper portion of the soil is a function of the upper zone storage,
the interflow storages and the groundwater storage above UELV. Therefore, groundwater elevation in
this region is calculated as:
GWEL = UELV + (UZS + IFWS + (TGWS - ULGWS))/UPGW (33)
where:
UPGW = porosity in macropores in the upper soil region (-)
It is important to notice that, even though the calculation of the groundwater elevation above the lower
influence level is based only on water stored in macropores, the water that occupies the micropores as the
water table rises is being accounted for through the transfers to lower zone storage.
When the groundwater elevation reaches the surface, any additions to groundwater storage are transferred
to surface detention storage, and the depth of water over the surface is given by the surface detention
storage.
Groundwater transfers to the lower zone, interflow and upper zone are based on the available pore space
in each region as defined in the second figure above.
75
-------
HSPF Version 12
Operation of the Algorithms
The hydrologic processes are modeled in essentially the same order as in PWATER. After the
groundwater is simulated, the algorithms compare the current groundwater storage with the value at the
beginning of the time interval. Changes in total groundwater storage are a consequence of percolation,
evapotranspiration and outflow. Depending on the current value of the total groundwater storage and the
current elevation of the water table, the calculated change in total groundwater storage is re-distributed
between the various storages affected by the saturated zone. The storages are updated accordingly and
the final groundwater storage (after the re-distribution has taken place) is used to determine the new
groundwater elevation.
The following sections describe the way in which the model represents the processes in each soil region.
Region 1: Groundwater Elevation Below Lower Zone Influence Level
When the groundwater elevation is below the lower influence elevation, there is no interaction between
the saturated and the unsaturated zones.
The PWATER algorithms operate in essentially the same way as before, with two exceptions:
- surface storage and surface runoff calculations; and
- active groundwater outflow calculation.
Surface Runoff and Surface Storage
The standard overland flow algorithms may not be appropriate to represent surface runoff in flat areas,
even when the groundwater is well below the surface. The hydraulics of surface flows is complex and is
not solely a function of local gradient and roughness. Additionally, water may pond on the surface and be
subject to evaporation. Ideas on how to calculate surface runoff and surface storage are discussed later.
Active Groundwater Outflow
The groundwater in these areas is not "perched" groundwater as assumed in the standard PWATER
algorithms. If the groundwater elevation is high enough, a portion of the groundwater storage may be
"active", i.e., it may provide base flow to nearby channels; the rest is "deep" or "inactive" groundwater.
However, it is necessary to account for the entire storage, to calculate the groundwater elevation in each
time step.
The algorithms that simulate groundwater storage are modified to represent deep (inactive) groundwater,
as well as perched (active) groundwater (groundwater that contributes to base flow). This was done by
introducing a new parameter, BELV (active groundwater base elevation parameter). Theoretically, this
parameter represents the water elevation in the surrounding channels. However, since water level in
channels is a variable that cannot be calculated within PWATER, BELV is approximated by the bottom
elevation or the mean water level in the channels.
The total groundwater storage below that base elevation is:
BGWS = BELV/(PCW + PGW) (34)
where:
BGWS = groundwater storage below which there is no groundwater
outflow (in)
76
-------
Functional Description
When the groundwater elevation is below BELV, there is no outflow from the groundwater storage
(AGWO = 0). When the groundwater elevation is above BELV, the groundwater outflow is a function of
the active groundwater storage, i.e., the storage above the base level (AGWS=TGWS-BGWS).
Region 2: Groundwater Elevation Between Lower Influence Level and Upper Influence Level.
In this region there are interactions between the saturated and the unsaturated zone, but the upper part of
the soil column has not been affected. The upper zone operates as usual. Interflow operates as usual as
long as the interflow storage remains above the groundwater elevation. The groundwater starts invading
the lower zone and changes in groundwater storage affect lower zone storage. Also, groundwater above
the lower zone influence level is subject to evapotranspiration.
Changes in Lower Zone Storage due to Changes in Groundwater Storage
Consider the situation when the water table is rising. In this region, part of the micropore porosity is
already occupied by water stored in the lower zone. Since the lower zone represents the micropores in
this region, the portion of rising groundwater that enters the micropores is actually increasing the lower
zone storage. The groundwater storage is assumed to occupy the macropores. Therefore the algorithms
re-distribute the original increase in groundwater storage between AGWS and LZS according to the level
of saturation of the lower zone:
DLZS = DAGWS*((1 - LZS/(2.5*LZSN))*PCW (35)
where:
DLZS = increase in lower zone storage (in)
DAGWS = original increase in active groundwater storage (in)
The increase in AGWS (and TGWS) calculated initially is reduced by DLZS:
DAGWS = DAGWS - DLZS (36)
DLZS represents the added storage in micropores above the lower zone influence level and below the
current groundwater elevation. However, when it is added to LZS, it is distributed throughout the entire
depth of the lower zone, increasing its saturation uniformly. This is a necessary approximation, in order
to avoid subdividing LZS into several storages as a function of depth below the surface.
This redistribution does not occur when the groundwater table is receding (when DAGWS < 0), because
water in micropores will not percolate by gravity. Water that entered the lower zone when the
groundwater elevation was rising can only leave as evapotranspiration.
Changes in Interflow due to Changes in Groundwater Storage
Interflow storage increases from the surface down. The interflow storage capacity, IFWSC, represents
the maximum space available for interflow in the upper layer of the soil. Increases in interflow storage
beyond IFWSC are assumed to occupy macropores in region 2 (between the lower and the upper
influence levels). There is only a limited volume in macropores in Region 2:
Volume of macropores in Region 2 = (UELV - LELV)*PGW = ULGWS - LLGWS (37)
where:
LLGWS = total groundwater storage below LELV (in)
ULGWS = total groundwater storage below UELV (in)
77
-------
HSPF Version 12
When the groundwater storage above LELV plus the interflow storage below UELV exceed the
macropore space in region 2, water is transferred from interflow storage to groundwater storage:
IF (IFWS - IFWSC) + (TGWS - LLGWS) > ULGWS - LLGWS THEN (38)
DIFWS = (IFWS - IFWSC) + (TGWS - LLGWS) - (ULGWS - LLGWS)
IFWS = IFWS - DIFWS
TGWS = TGWS + DIFWS
where:
DIFWS = Transfer from interflow storage to groundwater storage (in)
The model assumes that in this region the interflow path is drowned by the rising groundwater.
Evapotranspiration
Gravitational water above the lower zone influence level is subject to evapotranspiration. In fact, water in
macropores will be used up faster than water in micropores. To represent this effect, the way in which
PWATER calculates actual evapotranspiration has to be modified.
In the standard PWATER algorithms, evapotranspiration from the groundwater storage occurs only if the
parameter AGWETP is greater than zero. AGWETP represents the fraction of remaining potential
evapotranspiration that can be sought from groundwater. The algorithms try to satisfy remaining PET
from the groundwater storage before using the lower zone storage. This scheme may be valid if the water
table is below the lower influence level. However, if the water table is above the lower influence level,
additional evapotranspiration from water in macropores should occur. In this model, the algorithms that
calculate actual evapotranspiration are modified as follows:
If the groundwater level is below the lower influence level the algorithms operate as before (with the
possible addition of surface detention storage evaporation, as discussed later). However, given that the
TGWS also represents deep groundwater, a value of AGWETP greater than zero may not be appropriate.
If the groundwater level is above the lower influence level, evapotranspiration from the groundwater
storage is still a function of the AGWETP parameter. However, the fraction of remaining potential
evapotranspiration (after interception, surface detention and upper zone storages have been used) that can
be sought from the total groundwater storage is also proportional to the elevation of the water table above
the lower influence level. The equation is:
AGWET = REMPET*(AGWETP + ((1.0 - AGWETP)*(GWEL-LELV)/(SELV-LELV))) (39)
where:
AGWET = evapotranspiration from groundwater (in)
REMPET = remaining potential evapotranspiration (in).
AGWETP = active groundwater ET parameter (-)
GWEL = groundwater elevation (in)
SELV = surface elevation (in)
AGWET cannot exceed the groundwater storage above LELV:
AGWET = MIN(AGWET, (TGWS - LLGWS)) (40)
78
-------
Functional Description
When the groundwater elevation lies in Region 2 or 3, the potential evapotranspiration is applied to lower
zone storage before groundwater evaporation takes place.
Region 3: Groundwater Elevation Above Upper Influence Level and Below Surface Elevation
In this region the saturated zone affects the upper layers of the soil column. Upper zone and interflow
storage share the macropores with the groundwater storage. The interflow path is not assumed to be
drowned by the rising groundwater. However the interflow storage is limited to a maximum, the
interflow storage capacity, IFWSC. Interflow inflow from the surface is limited accordingly, and any
excess is added back to surface detention storage.
Changes in Upper Zone and Interflow Storages due to Changes in Groundwater Storage
Consider a rising water table. As before, in this region, part of the micropore porosity is occupied by
water in the lower zone storage. Groundwater that enters the micropores is represented as a transfer to the
lower zone storage and is calculated as described previously for Region 2. The remaining change in
groundwater storage is reassigned between interflow storage, upper zone storage and groundwater storage
according to the relative saturation levels as follows: The total contribution to interflow and upper zone is
inversely proportional to the combined saturation level of these two storages:
DUZIFS = DAGWS*(1 - (IFWS + UZS)/(4*UZSN + IFWSC)) (41)
where:
DUZIFS = combined addition to upper zone and interflow storage (in)
DAGWS = remaining change in groundwater storage after transfers to
LZS (in)
DUZIFS is distributed between upper zone and interflow according to the saturation level of the upper
zone and the maximum capacity of the interflow storage. In this model it is done as follows:
Determine addition to interflow storage:
DIFWS = DUZIFS*(1 - UZFRAC) (42)
where:
DIFWS = change in interflow storage (in)
UZFRAC = fraction of potential direct runoff captured by the
upper zone, as calculated by the UZINF routines of PWATER
If the addition to the interflow storage is such that the interflow storage exceeds its capacity, IFWSC, then
the interflow storage is limited to IFWSC, and DIFWS is reduced.
Determine change in upper zone storage:
DUZS = DUZIFS - DIFWS (43)
where:
DUZS = change in upper zone storage (in)
Notice that if the interflow storage is below its capacity, the addition to upper zone storage will be
proportional to UZFRAC. However, if the interflow storage is at capacity, the addition to upper zone
storage will be larger.
79
-------
HSPF Version 12
When the groundwater table is receding (DAGWS < 0), no water percolates from the lower zone (i.e.,
DLZS = 0). However, water stored in macropores can percolate down. Therefore, the redistribution of
water between groundwater storage, upper zone storage and interflow storage also takes place when the
water table is receding (DAGWS < 0). In that case, the distribution is proportional to the saturation
levels:
DUZIFS = DAGWS*(IFWS + UZS)/(4*UZSN + IFWSC) (44)
DIFWS = DUZIFS*(UZFRAC) (45)
The algorithms check to make sure that the storages do not become negative.
Inflow to Interflow and Surface Detention Storage
As mentioned, when the water table is close to the surface, the interflow storage cannot grow without
limit in response to inflow from the surface. The distribution of water available for infiltration and runoff
and the inflow to the upper zone are calculated as before. However, the calculated inflows to surface
detention storage and interflow storage are checked and, if necessary, redistributed to limit inflow into
interflow storage. If the new interflow storage exceeds its capacity, IFWSC, the interflow storage is
limited to IFWSC and the interflow inflow is reduced accordingly. The reduction in interflow inflow is
added back to the inflow to surface detention storage (PSUR). This requires a change in the order in
which processes are simulated in PWATER: interflow has to be simulated before surface runoff, in case
there are additions to PSUR.
Evapotranspiration
The existing evapotranspiration from upper zone represents water drawn from macropores in the upper
levels of the soil. Therefore, no further changes to the evapotranspiration procedures are considered
necessary when the groundwater level exceeds the upper influence level. Evapotranspiration from
groundwater storage continues to be calculated as a function of both the parameter AGWETP and the
elevation of the water table above the lower influence level, as described in the previous section.
Groundwater Elevation at the Surface.
When the water table reaches the surface, the groundwater storage interacts with the surface detention
storage. In this model, the groundwater elevation cannot exceed the surface elevation. Water depths over
the land surface are reflected by the depth of the surface detention storage.
Changes in Storages due to Changes in Groundwater:
The groundwater table reaches the surface when the total macropore space in the upper layer has been
saturated. In terms of storages, this occurs when:
IFWS + UZS + (TGWS - ULGWS) = 4*UZSN + IFWSC (46)
This condition does not guarantee that the upper zone and interflow storages will be completely full when
the water table reaches the surface. Similarly, there is no guarantee that the lower zone will be
completely saturated, even though transfers to the lower zone are made whenever there is an increase in
groundwater storage.
80
-------
Functional Description
While it may seem wrong to have the water table at the surface when there is still space available in some
of the storages, the algorithms tend to correct the problem automatically after a few time steps. While the
water table remains at the surface, more water continues to be added to the lower zone storage until it is
full. The additions to LZS, are calculated as described in the previous section.
In the case of interflow, upper zone and total groundwater, their combined storage cannot change.
However, the distribution changes: if UZS and IFWS were not full when the water reached the surface,
water is added to these storages until both are full, and the amount of groundwater storage over UELV is
decreased accordingly.
Any remaining changes are assigned to surface detention storage as follows:
After DLZS, DIFWS and DUZS have been subtracted:
IF DAGWS > 0 DSUS = DAGWS (47)
where:
DSUS = change in surface detention storage (in)
This interaction with the surface detention storage does not take place when the groundwater is receding,
(DAGWS < 0), because in the existing algorithms surface detention storage is already subject to
infiltration.
Evaporation from Surface Detention Storage.
In high water table environments, long term surface inundation may be common, except where it is
prevented by drainage works. During periods of inundation water can evaporate from the surface at the
potential rate. To simulate this environment, it is necessary to allow evaporation from the surface
detention storage. In this model, the surface detention storage is the second source from which PET can
be met (after interception storage); water will be drawn from this source until the potential evaporation
rate is met or until the storage is empty.
Evaporation from the surface detention storage is active even when the water table is well below the
surface. Given the low land gradients, water can pond on the surface and remain there long enough to be
subject to evaporation.
81
-------
HSPF Version 12
Surface Runoff Simulation
In the standard PWATER algorithms, surface runoff is dependent on the characteristics of an "overland
flow plane" on the land surface. The length, slope, and roughness of this overland flow plane are model
parameters.
Surface runoff in a high water table/low gradient environment is complex. When the land surface is
inundated, flow will respond to the differences in the elevation of the water surface. Water surface
elevations can be altered by local thermal storms. Flows are dependent on the stage in nearby canals,
pumping into and out of feeder canals and shallow groundwater, and gate settings in levees.
Two additional methods are available for computing surface outflow in this model. The first one consists
of a power function of the following form:
surface runoff = a * (surface storage)**b,
where a and b are parameters and a = (1-SRRC), a Surface Recession Constant similar to IRC, but
evaluated on an hourly basis instead of daily.
SURO = (1 - SRRC*DELT60)*SURS**SREXP (48)
where:
SURO = Surface Outflow (in/interval)
SURS = Surface Detention Storage (in)
SRRC = Hourly recession constant
SREXP = Surface runoff exponent (-)
DELT60 = Hours per interval
Since surface outflow may not always be easily related to the physical characteristics of the land surface,
the second option is based on a user-defined function that is provided in tabular form. In this algorithm,
the outflow, expressed as a "fraction of the current depth leaving the surface per time interval", is
specified in the FTABLES block as a function of the current depth of surface detention storage.
82
-------
Functional Description
Irrigation
The irrigation module is an addition to PWATER which has three distinct functions:
1. Calculate gross irrigation demand for a PERLND based on one of three optional methods:
a) Input time series defined by user.
b) Crop irrigation demand based on the allowable water depletion in root zone.
c) Scheduled applications with rates defined by user.
2. Obtain the water needed for irrigation from one or more of three possible sources, subject to limitation
by the amount of water available:
a) Import from outside basin, including groundwater withdrawals from deep aquifers which are not
hydraulically connected to the water table.
b) Shallow groundwater storage (TGWS) of the same PERLND that is being irrigated.
c) A stream reach (RCHRES) in the basin.
3. Apply irrigation water to any of four soil zones, the interception storage of the crop canopy, or any
combination of the five.
Irrigation Demand
There are three distinct options for specifying gross irrigation demand. The user inputs a flag to specify
the desired option. Demand is measured in inches.
1. Time series - A time series of gross irrigation demand is developed by the user and stored in the
WDM or DSS file. During the run, this time series is input to the irrigation module by including a
line in the EXT SOURCES block that transfers the data to the PWATER time series IRRDEM.
2. Crop irrigation demand - This option is based on the AFSIRS model (Smajstrla, 1990) which
computes net root zone water requirements from a simplified root zone water balance and crop
water-use coefficients. The gross requirement is then calculated using an assumed irrigation
efficiency based on the type of watering system. In the HSPF implementation, the water balance is
computed by the existing PWATER methods first, and then the irrigation requirements are
calculated based on the AFSIRS algorithm. See below for a more detailed description of this
method.
3. Schedule - This option requires the user to specify a date and time, duration, and hourly rate for
each irrigation application. If the year is input as zero, then the application will occur each year of
the simulation. These annual applications may not cross a year boundary (e.g., date
0/12/31/18:00, duration 16 hours). The maximum number of specified applications allowed per
PERLND in a simulation to 20 per PERLND for the entire span of the run. Annual applications
count as only one toward this limit, regardless of how many years they are applied.
83
-------
HSPF Version 12
Irrigation Source
There are three possible sources of water to meet the irrigation demand: imports from outside the basin,
local shallow groundwater, and any RCHRES in the run. All three may be used for a specific PERLND,
and priorities are input for each of the three possible sources for water. If the demand is greater than the
supply for the first-priority source, the second-priority source is used, etc. If more than one source is
given the same priority, then fractions are used to specify how much is taken from each source as long as
there is sufficient supply. A zero priority indicates that the source is not used. If the supply in all selected
sources is not enough to meet demand, the deficit or shortfall is computed.
1. Import - This is the simplest option. All of the demand is met, and no withdrawals need to be
modeled.
2. Groundwater - In this option, water is drawn from the total groundwater storage (TGWS) of the
same PERLND that receives the irrigation application. If the demand is greater than TGWS, only
the available storage will be withdrawn.
If the PWATER parameter KVARY is active so that some of the groundwater is considered to be
in "wedge" storage (GWVS), then withdrawals will be removed from this wedge storage first.
If the High Water Table module is not operating, TGWS is equal to the active groundwater
storage (AGWS). Since AGWS is usually considered to be small (on the order of a few inches),
the amount of water available from this source may be very limited
When the High Water Table algorithms are being used, an adequate range between the base
elevation BELV and the groundwater datum GWDATM will result in a potentially large reservoir
of groundwater, even when the water table is too low to contribute to baseflow.
3. RCHRES - In this option, water is drawn from an active RCHRES, which may be either upstream
or downstream of the PERLND. The user must specify the PERLND area, so that depth units for
irrigation demand can be converted to total volume for withdrawal from the reach. This area factor
must match the total area for the PERLND that is specified in the SCHEMATIC block in order to
maintain the overall water balance in the basin.
In the RCHRES input, the user specifies that one of the five possible exits for the reach is reserved as the
irrigation withdrawal exit. Water that is withdrawn from the RCHRES by any PERLND is removed via
this exit prior to the calculation of precipitation, evaporation, or streamflow routing. The parameter
IRMINV specifies a minimum volume below which the irrigation exit can not draw. This can be used to
prevent problems in the RCHRES water quality sections during low flows, and/or to represent the
minimum diversion outlet stage (invert elevation).
There are two irrigation-related output time series for the HYDR section. RIRDEM is the total amount of
irrigation water demanded from a RCHRES per time step. RIRSHT is the shortage, i.e., the difference
between the demand and the actual withdrawal. The total actual withdrawals are available for output in
the appropriate member of the existing exit-specific output time series OVOL. The printed output also
contains the variable RIRWDL, which is equivalent to OVOL for the irrigation exit.
A given RCHRES may be drawn on by as many PERLNDs in the run as desired. If the total demand
from a RCHRES made from all PERLNDs exceeds the available storage (VOL - IRMINV), only the
available storage will be withdrawn. This water is allocated to the PERLNDs in the order they are found
in the OPN SEQUENCE block, beginning immediately after the RCHRES in question.
84
-------
Functional Description
Irrigation Application
The application amount may be divided into five separate fluxes based on the soil zone receiving the
application: 1) water sprayed from above the plants, and is therefore subject to interception by the crop
canopy; 2) water applied directly to the soil surface; 3) water applied to the upper soil zone via buried
systems; 4) water likewise applied to the lower soil zone; and 5) water entering directly into the local
groundwater, such as seepage irrigation. Input fractions are used to specify this division. These five
fractions of application are tracked separately as output fluxes, along with the total application.
If subirrigation is being used (IROPFG=l), then the application fractions are used only for the portion of
demand which is intended to raise the root zone water content. SUBDEM, which is the portion of the
irrigation demand which is intended to raise the water table, is automatically added to the groundwater
regardless of the fractions.
Detailed Description of Crop Root Zone Irrigation Requirements Algorithm
This method, based on the AFSIRS model, computes irrigation needs based on the water stored in the root
zone of the soil. The actual storage in the soil down to the crop root depth is compared against the
available water capacity (AWC). When the storage above the wilting point is reduced to a specified
fraction of AWC (called the allowable water depletion), the net irrigation requirement is set to the amount
needed to restore the entire root zone to field capacity. Finally, the gross irrigation requirement is
computed from the net requirement based on a user-specified efficiency factor.
The key parameters are the soil-specific field capacity (FLDCAP) and wilting point (WILTP), the crop
root depth (CRDEP), the allowable water depletion (IRAWD), and the irrigation efficiency (IREFF). The
field capacity and wilting point are used to determine the available water capacity. The irrigated crop root
depth is used along with AWC to calculate the root zone water storage capacity (RZWSC). The
allowable water depletion is the fraction of RZWSC that can be depleted without reducing crop yield.
The root depth and allowable water deficiency for annual crops may be constant, or vary monthly, or may
vary according to four crop growth stages, with the durations specified as fractions of the total irrigation
season. Up to three crop seasons per year may be specified, in order to simulate crop rotations.
The PWATER section computes the water storage in each of four soil layers or zones, i.e., surface, upper,
lower, and groundwater. These storages are related to the root zone storage via the crop root depth and
the depths of the soil zones, which must be specified by the user. Once the hydrology is computed in
PWATER, the irrigation demand is computed as follows:
The root zone capacity and storage are computed first. The available water capacity (AWC) is:
AWC = FLDCAP - WILTP (50)
The root zone water storage capacity RZWSC varies with crop root depth CRDEP.
RZWSC = AWC*CRDEP + WILTP (51)
The actual root zone water storage (RZWS) is computed from the water storages in each soil zone. Since
the surface layer is generally considered to be extremely shallow (on the order of 1 cm), the root zone
should always extend at least down into the upper soil zone. The details of the RZWS calculation depend
on whether the High Water Table algorithms are in use.
85
-------
HSPF Version 12
In the normal (non-High Water Table) case, the irrigation module looks at the soil layer depths directly.
If the root zone extends only into the upper soil zone, then RZWS is the sum of the surface storage
(SURS) plus the portion of the upper zone storage (UZS) and interflow storage (IFWS) within the root
depth:
RZWS = SURS + (UZS + IFWS)*((CRDEP - SOILD(1))/SOILD(2)) (52)
where SOILD(l) and SOILD(2) are the depths of the surface and upper soil zones. The ratio in
parentheses therefore represents the fraction of the upper zone which lies within CRDEP of the surface.
For example, if the crop root depth on a given day is 6 cm, the surface depth is 1 cm, and the upper zone
depth is 10 cm, then the root zone water storage is the sum of the surface storage plus one half of the
upper zone storage (i.e., (6-l)/10 = 0.5).
Likewise, if the root zone extends into the lower soil zone, then the entire UZS and IFWS are included in
RZWS, as well as the portion of the lower zone storage (LZS) within the root depth:
RZWS = SURS + UZS + IFWS +
LZS*((CRDEP - SOILD(1)) - SOILD(2))/SOILD(3)) (53)
where SOILD(3) is the lower zone soil depth. In both cases, the vertical distribution of the water storage
in each soil zone is assumed to be uniform.
If the High Water Table algorithms are not being used, all of the groundwater is assumed to lie at the
bottom of the active groundwater zone, since it drains by gravity instead of being held in tension by
capillary forces. Therefore, the groundwater is assumed to lie below the root zone unless the root depth
extends all the way to the bottom of the zone.
When the High Water Table algorithms are active, then the computation of RZWS is based on the Upper
and Lower Influence Elevations. First, the elevation of the bottom of the root zone CRDELV is
computed as
CRDELV = SELV - CRDEP (54)
If CRDELV is below UELV, then all of UZS and IFWS are included in RZWS. If CRDELV is above
UELV, then the fraction of UZS plus IFWS that is available in the root zone is
CRDEP/(SELV - UELV)
Likewise, if CRDELV is below LELV, then all of LZS is included in RZWS, while if it is above LELV,
the fraction of LZS that lies in the root zone is:
CRDEP/(SELV - LELV)
86
-------
Functional Description
If the groundwater level rises up into the root zone, then it has already "drowned out" some of these
storages, and the remaining portions lie closer to the surface. In this case, both of the above fractions
become:
CRDEP/(SELV - GWEL)
and all of the groundwater above CRDELV is also added to RZWS.
The irrigation demand is calculated by comparing the RZWS to the minimum storage above the wilting
point which is needed to maintain crop yield (MINWS). First, MINWS is computed using the allowable
water deficiency (AWD), which is applied only to the portion of the root zone capacity RZWSC which is
above the wilting point.
MINWS = (RZWSC - CRDEP*WILTP)*(1.0 - AWD) + CRDEP*WILTP (55)
If RZWS is greater than or equal to MINWS, then no irrigation occurs. Otherwise the net irrigation
requirement (NIR) is:
NIR = ARZI*CRDEP*FLDCAP - RZWS (56)
Finally, the gross irrigation requirement (IRRDEM) is calculated using the efficiency (IREFF):
IRRDEM = NIR/IREFF (57)
The user may specify that the subirrigation method is being used by turning on the flag IROPFG. In this
case, in addition to the demand to the root zone (normally applied directly to the lower zone), water may
be needed to raise the water table. In this method, it is assumed that the water table must be close to the
bottom of the root zone, so that capillary rise can supply water to the root zone. The maximum distance
between the root zone and the water table is input by the user as the parameter CAPRIS. If the
groundwater elevation is below this level, an additional irrigation demand SUBDEM is computed to raise
the water table to the bottom of the root zone. This portion of the demand is automatically applied
directly to the local groundwater, regardless of the application fractions specified in the array IRRTGT. If
subirrigation is used, the irrigation sources should generally not include the local groundwater because of
the likelihood of the algorithm simply cycling large amounts of withdrawals and applications from the
same storage as it unsuccessfully attempts to raise the water table.
87
-------
HSPF Version 12
Production and Removal of Sediment - SEDMNT
(Section SEDMNT of Module PERLND)
Purpose
Module section SEDMNT simulates the production and removal of sediment from a pervious land
segment. Sediment can be considered to be inorganic, organic, or both; the definition is up to the user.
Sediment from the land surface is one of the most common pollutants of waters from urban, agricultural,
and forested lands. It muddies waters, covers fish eggs, and limits the capacity of reservoirs. Nutrients
and toxic chemicals are carried by it.
Approach
The equations used to produce and remove sediment are based on the predecessor models ARM and NPS
(Donigian and Crawford, 1976 a,b). The algorithms representing land surface erosion in these models
were derived from a sediment model developed by Negev (1967) and influenced by Meyer and
Wischmeier (1969) and Onstad and Foster (1975). The supporting management practice factor which has
been added to the soil detachment by rainfall equation was based on the "P" factor in the Universal Soil
Loss Equation (Wischmeier and Smith, 1965). It was introduced in order to better evaluate agricultural
conservation practices. The equation that represents scouring of the matrix soil (which was not included
in ARM or NPS) was derived from Negev's method for simulating gully erosion.
Figure "Erosion processes" shows the detachment, attachment, and removal involved in the erosion
processes on the pervious land surface, while Figure "Flow diagram for SEDMNT section of PERLND
Application Module" schematically represents the fluxes and storages used to simulate these processes.
Two of the sediment fluxes, SLSED and NVSI, are added directly to the detached sediment storage
variable DETS in the parent routine SEDMNT while the other fluxes are computed in subordinate
routines. SLSED represents external lateral input from an upslope land segment. It is a time series which
the user may optionally specify. NVSI is a parameter that represents any net external additions or
removals of sediment caused by human activities or wind.
Removal of sediment by water is simulated as washoff of detached sediment in storage (WSSD) and
scour of matrix soil (SCRSD). The washoff process involves two parts: the detachment/attachment of
sediment from/to the soil matrix and the transport of this sediment. Detachment (DET) occurs by rainfall.
Attachment occurs only on days without rainfall; the rate of attachment is specified by parameter AFFIX.
Transport of detached sediment is by overland flow. The scouring of the matrix soil includes both pick-
up and transport by overland flow combined into one process.
88
-------
HSPF Version 12
SLSED
lateral
input of
sediment
to
diirfarp
NVSI
net vertical
sediment
input
DETS
detached
sediment
storage
AFFIX \
sediment \
attachment j
WSSD
wash off
of
detached
sediment
by water
(DET
detachment
of soil by
rainfall
O
SOSED
total
removal
of soil &
sedimeni
from sur-
face by
soil matrix
(assumed to
have
unlimited
storage)
/N
SCRSD
scour of
matrix
soil by
water
Figure 23: Flow diagram for SEDMNT section of PERLND Application Module
Module section SEDMNT has two options for simulating washoff of detached sediment and scour of soil.
One uses subroutine SOSED 1 which is identical to the method used in the ARM and the NPS Models.
However, some equations used in this method are dimensionally nonhomogeneous, and were designed for
15- and 5-min intervals. The results obtained are probably highly dependent on the simulation time step.
The other option uses subroutine SOSED2, which is dimensionally homogeneous and is, generally less
dependent on the time step.
90
-------
Functional Description
Detach Soil By Rainfall - DETACH
(subroutine DETACH)
Purpose
The purpose of DETACH is to simulate the splash detachment of the soil matrix caused by impact of rain.
Method of Detaching Soil by Rainfall
Kinetic energy from rain falling on the soil detaches particles which are then available to be transported
by overland flow. The equation that simulates detachment is:
DET = DELT60*(1.0 - CR)*SMPF*KRER*(RAIN/DELT60)**JRER (1)
where:
DET = sediment detached from the soil matrix by rainfall
(tons/ac/interval)
DELT60 = number of hours/interval
CR = fraction of the land covered by snow and other cover
SMPF = supporting management practice factor
KRER = detachment coefficient dependent on soil properties
RAIN = rainfall (in/interval)
JRER = detachment exponent dependent on soil properties
The variable CR is the sum of the fraction of the area covered by the snowpack (SNOCOV), if any, and
the fraction that is covered by anything else but snow (COVER). SNOCOV is computed by section
SNOW. COVER is a parameter which for pervious areas will typically be the fraction of the area covered
by vegetation and mulch. It can be input on a monthly basis.
91
-------
HSPF Version 12
Remove by Surface Flow - SOSED1
(subroutine SOSED1)
Purpose
Simulate the washoff of the detached sediment and the scouring of the soil matrix.
Method
When simulating the washoff of detached sediment, the transport capacity of the overland flow is
estimated and compared to the amount of detached sediment available. The transport capacity is
calculated by the equation:
STCAP = DELT60*KSER*((SURS + SURO)/DELT60)**JSER (2)
where:
STCAP = capacity for removing detached sediment (tons/ac/interval)
DELT60 = hr/interval
KSER = coefficient for transport of detached sediment
SURS = surface water storage (inches)
SURO = surface outflow of water (in/interval)
JSER = exponent for transport of detached sediment
When STCAP is greater than the amount of detached sediment in storage, washoff is calculated by:
WSSD = DETS*SURO/(SURS + SURO) (3)
If the storage is sufficient to fulfill the transport capacity, then the following relationship is used:
WSSD = STCAP*SURO/(SURS + SURO) (4)
where:
WSSD = washoff of detached sediment (tons/ac/interval)
DETS = detached sediment storage (tons/ac)
WSSD is then subtracted from DETS.
Transport and detachment of soil particles from the soil matrix is simulated with the following equation:
SCRSD = SURO/(SURS + SURO)*DELT60*KGER*((SURS + SURO)/DELT60)**JGER (5)
where:
SCRSD = scour of matrix soil (tons/ac/interval)
KGER = coefficient for scour of the matrix soil
JGER = exponent for scour of the matrix soil
The sum of the two fluxes, WSSD and SCRSD, represents the total sediment outflow from the land
segment.
Subroutine SOSED1 differs from SOSED2 in that it uses the dimensionally nonhomogeneous term
(SURS + SURO)/DELT60 in the above equations, while SOSED2 uses the homogeneous term
SURO/DELT60.
92
-------
Functional Description
Remove by Surface Flow - SOSED2
(subroutine SOSED2)
Purpose
The purpose of this subroutine is the same as SOSED1 (above). It only differs in method.
Method of Determining Removal
This method of determining sediment removal makes use of the dimensionally homogeneous term
SURO/DELT60 instead of (SURO+SURS)/DELT60.
The capacity of the overland flow to transport detached sediment is determined in this subroutine by:
STCAP = DELT60*KSER*(SURO/DELT60)**JSER (6)
When STCAP is more than the amount of detached sediment in storage, the flow washes off all of the
detached sediment storage (DETS). However, when STCAP is less than the amount of detached sediment
in storage, the situation is transport limiting, so WSSD is equal to STCAP.
Direct detachment and transport of the soil matrix by scouring (e.g., gullying) is simulated with the
equation:
SCRSD = DELT60*KGER*(SURO/DELT60)**JGER (7)
Definitions of the above terms can be found in the previous section (i.e., description of subroutine
SOSED1). The coefficients and exponents will have different values than in subroutine SOSED1 because
they modify different variables.
93
-------
HSPF Version 12
Re-attachment of Detached Sediment - ATTACH
(subroutine ATTACH)
Purpose
Subroutine ATTACH simulates the re-attachment of detached sediment (DETS) on the surface (soil
compaction).
Method
Attachment to the soil matrix is simulated by merely reducing DETS. Since the soil matrix is considered
to be unlimited, no addition to the soil matrix is necessary when this occurs. DETS is diminished at the
start of each day that follows a day with no precipitation by multiplying it by (1.0 - AFFIX), where
AFFIX is a parameter. This represents a first-order rate of reduction of the detached soil storage.
94
-------
Functional Description
Soil Temperatures - PSTEMP
(Section PSTEMP of Module PERLND)
Purpose
PSTEMP simulates soil temperatures for the surface, upper, and lower/groundwater layers of a land
segment for use in module section PWTGAS and the agri-chemical sections. Good estimates of soil
temperatures are particularly important for simulating first-order transformations in the agri-chemical
sections.
Method
The two methods used for estimating soil temperatures are based on the regression equation approach in
the ARM Model (Donigian, et al., 1977) and the smoothing factor approach used in HSP QUALITY
(Hydrocomp, 1977) to simulate the temperatures of subsurface flows.
Simulation of soil temperatures is done by layers which correspond to those specified in the agri-chemical
sections. The surface layer is the portion of the land segment that affects overland flow water quality
characteristics. The subsurface layers are upper, lower, and groundwater. The upper layer affects
interflow quality characteristics while the lower layer is a transition zone to groundwater. The
temperature of the groundwater layer affects groundwater quality transformations and outflow
characteristics. Lower layer and groundwater temperatures are considered approximately equal; a single
value is estimated for both layers.
Surface layer soil temperatures are estimated by the following regression equation:
SLTMP = ASLT + BSLT*AIRTC (1)
where:
SLTMP = surface layer temperature (degrees C)
ASLT = Y-intercept
BSLT = slope
AIRTC = air temperature (degrees C)
Temperatures of the other layers are simulated by one of two methods. If TSOPFG is set equal to 1 in the
User's Control Input, the upper layer soil temperature is estimated by a regression equation as a function
of air temperature (similar to equation above), and the lower layer/groundwater layer temperature is
specified by a parameter which can vary monthly. This method is similar to that used in the ARM Model
except that ARM relates the upper layer temperature to the computed soil surface temperature instead of
directly to air temperature.
If TSOPFG is set equal to zero, both the upper layer and the lower layer/ groundwater layer temperatures
are computed by using a mean departure from air temperature plus a smoothing factor. The same basic
equation is used with separate state variables and parameters for each layer:
95
-------
HSPF Version 12
TMP = TMPS + SMO*(AIRTCS + TDIF - TMPS) (2)
where:
TMP = layer temperature at the end of the current interval
(degrees C)
SMO = smoothing factor (parameter)
AIRTCS = air temperature at the start of the current interval
(degrees C)
TDIF = parameter which specifies the difference between the mean
air temperature and the mean temperature of the soil layer
(degrees C)
TMPS = layer temperature at the start of the current interval
(degrees C)
If TSOPFG is set to 2, then the method is identical to the above, except that the lower layer/groundwater
layer temperature is estimated from the upper layer temperature (ULTMP), instead of directly from the air
temperature.
The values of the parameters for any of the layer computations can be linearly interpolated from monthly
input values to obtain daily variations throughout the year. If this variation is not desired, the user may
supply yearly (constant) values.
96
-------
Functional Description
Water Temperature and Dissolved Gas Concentrations - PWTGAS
(Section PWTGAS of Module PERLND)
Purpose
PWTGAS estimates water temperature and concentrations of dissolved oxygen and carbon dioxide in
surface, interflow, and groundwater outflows from a land segment.
Method
The temperature of each outflow is considered to be the same as the soil temperature of the layer from
which the flow originates, except that water temperature can not be less than freezing. Soil temperatures
must either be computed in module section PSTEMP or supplied directly as an input time series. The
temperature of the surface outflow is equal to the surface layer soil temperature, the temperature of
interflow to the upper layer soil temperature, and the temperature of the active groundwater outflow
equals the lower layer and groundwater layer soil temperature.
The dissolved oxygen and carbon dioxide concentrations of the overland flow are assumed to be at
saturation and are calculated as direct functions of water temperature. PWTGAS uses the following
empirical nonlinear equation to relate dissolved oxygen at saturation to water temperature (Committee on
Sanitary Engineering Research, 1960):
SODOX = (14.652 + SOTMP*(-0.41022 +
SOTMP*(0.007991 - 0.000077 77 4*SOTMP) ))*ELEVGC (1)
where:
SODOX = concentration of dissolved oxygen in surface outflow (mg/1)
SOTMP = surface outflow temperature (degrees C)
ELEVGC = correction factor for elevation above sea level
(ELEVGC is calculated by the Run Interpreter dependent upon
mean elevation of the segment)
The empirical equation for dissolved carbon dioxide concentration of the overland flow (Harnard and
Davis, 1943) is:
SOC02 = (10** (2385.73/ABSTMP - 14.0184 + 0.0152642*ABSTMP))*
0.000316*ELEVGC*12000.0 (2)
where:
SOC02 = concentration of dissolved carbon dioxide in surface outflow
(mg C/l)
ABSTMP = temperature of surface outflow (degrees K)
The concentrations of dissolved oxygen and carbon dioxide in the interflow and the active groundwater
flow cannot be assumed to be at saturation. Values for these concentrations are provided by the user.
They may be specified as constant values or 12 monthly values. If monthly values are provided, daily
variation in values will automatically be obtained by linear interpolation between the monthly values.
97
-------
HSPF Version 12
Lateral inflows
If lateral inflows are being modeled, then the lateral inflow concentrations are used to modify the outflow
concentrations according to the following equation:
OCONC = LIFAC*LICONC + (1.0 - LIFAC)*CONC (3)
where:
OCONC = effective outflow concentration
LIFAC = lateral inflow weighting factor for soil laye
LICONC = lateral inflow concentration
CONC = outflow concentration computed from other algorithms
and parameters
This algorithm is used for the following: heat and dissolved gases in PERLND PWTGAS and IMPLND
IWTGAS; QUALSDs in PERLND PQUAL and IMPLND IQUAL; and QUALIFs and QUALGWs in
PERLND PQUAL. Temperatures and sediment potency factors are treated in the same manner as
concentrations.
LIFAC is a dimensionless input parameter in Table-type LAT-FACTOR in PWTGAS and LAT-
FACTOR in IWTGAS. Separate factors are given for sediment-, surface-, interflow-, and baseflow-
associated constituents
98
-------
Functional Description
Quality Constituents Using Simple Relationships - PQUAL
(Section PQUAL of Module PERLND)
Purpose
The PQUAL module section simulates water quality constituents or pollutants in the outflows from a
pervious land segment using simple relationships with water and/or sediment yield. Any constituent can
be simulated by this module section. The user supplies the name, units and parameter values appropriate
to each of the constituents that are needed in the simulation. However, more detailed methods of
simulating sediment, heat, dissolved oxygen, dissolved carbon dioxide, nitrogen, phosphorus, soluble
tracers, and pesticide removal from a pervious land segment are available, in other module sections.
Approach
The basic algorithms used to simulate quality constituents are a synthesis of those used in the NPS Model
(Donigian and Crawford, 1976b) and HSP QUALITY (Hydrocomp, 1977). However, some options and
combinations are unique to HSPF.
Figure "Flow diagram for PQUAL section of the PERLND Application Module" shows schematically the
fluxes and storages represented in module section PQUAL. The occurrence of a water quality constituent
in both surface and subsurface outflow can be simulated. The behavior of a constituent in surface outflow
is considered more complex and dynamic than the behavior in subsurface flow. A constituent on the
surface can be affected greatly by adhesion to the soil and by temperature, light, wind, atmospheric
deposition, and direct human influences. Section PQUAL is able to represent these processes in a general
fashion. It allows quantities in the surface outflow to be simulated by two methods. One approach is to
simulate the constituent by association with sediment removal. The other approach is to simulate it using
atmospheric deposition and/or basic accumulation and depletion rates together with depletion by washoff;
that is, constituent outflow from the surface is a function of the water flow and the constituent in storage.
A combination of the two methods may be used in which the individual outfluxes are added to obtain the
total surface outflow. These approaches will be discussed further in the descriptions of the corresponding
subroutines. Concentrations of quality constituents in the subsurface flows of interflow and active
groundwater are specified by the user. The concentration may be linearly interpolated to obtain daily
values from input monthly values.
The user has the option of simulating the constituents by any combination of these surface and subsurface
outflow pathways. The outflux from the combination of the pathways simulated will be the total outflow
from the land segment. In addition, the user is able to select the units to be associated with the fluxes.
These options provide considerable flexibility. For example, a user may wish to simulate coliforms in
units of organisms/ac by association with sediment in the surface runoff and use a concentration in the
groundwater which varies seasonally. Or a user may want to simulate total dissolved salts in pounds per
acre by direct association with overland flow and a constant concentration in interflow and groundwater
flow.
99
-------
HSPF Version 12
Removal
toy claanlttft,
¦ decay & wind
^Acc umulat on^
SOQO
Slora## of
GOALem
surface for
dirvct w«»h-of1
qual moans cftr*iny tummimmm
Willi a#'
el OUAL
assoc.
w*th
jetaclied
WASHQS
7^
QUtlOM
Of
Auh.
SOQUAL
rfflOAL
\ y
IOQUAL
wkti
SOQS
AOQUAL
POQUAL
V^
Figure 24: Flow diagram for PQUAL section of the PERLND Application Module
PQUAL allows the user to simulate up to 10 quality constituents at a time. Each of the 10 constituents
may be defined as one or a combination of the following types: QUALSD, QUALOF, QUALIF, and/or
QUALGW. If a constituent is considered to be associated with sediment, it is called a QUALSD. The
corresponding terms for constituents associated with overland flow, interflow, and groundwater flow are
QUALOF, QUALIF, and QUALGW, respectively. Note that only a QUALOF may receive atmospheric
deposition, since it is the only type to maintain a storage. However, no more than seven of any one of the
constituent types (QUALSD, QUALOF, QUALIF, or QUALGW) may be simulated in one operation.
The program uses a set of flag pointers to keep track of these associations. For example, QSDFP(3) = 0
means that the third constituent is not associated with sediment, whereas QSDFP(6) = 4 means that the
sixth constituent is the fourth sediment associated constituent (QUALSD). Similar flag pointer arrays are
used to indicate whether or not a quality constituent is a QUALOF, QUALIF, or QUALGW.
100
-------
Functional Description
Remove by Association with Sediment - QUALSD
(subroutine QUALSD)
Purpose
QUALSD simulates the removal of a quality constituent from a pervious land surface by association with
the sediment removal determined in module section SEDMNT.
Method
This approach assumes that the particular quality constituent removed from the land surface is in
proportion to the sediment removal. The relation is specified with user-input "potency factors." Potency
factors indicate the constituent strength relative to the sediment removed from the surface. Various
quality constituents such as iron, lead, and strongly adsorbed toxicants are actually attached to the
sediment being removed from the land surface. Some other pollutants such as ammonia, organics,
pathogens, and BOD may not be extensively adsorbed, but can be considered highly correlated to
sediment yield.
For each quality constituent associated with sediment, the user supplies separate potency factors for
association with washed off and scoured sediment (WSSD and SCRSD). Typically, the washoff potency
factor would be larger than the scour potency factor because washed off sediment is usually finer than the
scoured material and thus has a higher adsorption capacity. Organic nitrogen would be a common
example of such a constituent. The user is also able to supply monthly potency factors for constituents
that vary somewhat consistently during the year. For instance, constituents that are associated with spring
and fall fertilization may require such monthly input values.
Removal of the sediment associated constituent by detached sediment washoff is simulated by:
WASHQS = WSSD*POTFW (1)
where:
WASHQS = flux of quality constituent associated with
detached sediment washoff (quantity/ac per interval)
WSSD = washoff of detached sediment (tons/ac per interval)
POTFW = washoff potency factor (quantity/ton)
If lateral inflow of a QUALSD is considered, then the inflow potency factor SLIQSP, which is input as a
time series, and the current washoff potency factor POTFW are combined in a weighted average using the
input parameter SDLFAC. The modified effective potency factor is used in place of POTFW. (See lateral
inflows for a description of the weighting method.)
Removal of constituents by scouring of the soil matrix is similar:
SCRQS = SCRSD*POTFS
where:
SCRQS = flux of quality constituent associated with scouring
of the matrix soil (quantity/ac per interval)
SCRSD = scour of matrix soil (tons/ac per interval)
POTFS = scour potency factor (quantity/ton)
101
-------
HSPF Version 12
WASHQS and SCRQS are combined to give the total sediment associated flux of the constituent from the
land segment, SOQS.
The unit "quantity" refers to mass units (pounds or tons in the English system) or some other quantity,
such as number of organisms for coliforms. The unit is user-specified.
102
-------
Functional Description
Accumulate and Remove by a Constant Unit Rate and by Overland Flow - QUALOF
(subroutine QUALOF)
Purpose
QUALOF simulates the accumulation of a quality constituent on the pervious land surface and its
removal by a constant unit rate and by overland flow.
Method
This subroutine differs from the others in module section PQUAL in that the storage of the quality
constituent on the land surface is simulated. The constituent can be accumulated and removed by
processes which are independent of storm events such as cleaning, decay, and wind erosion and
deposition, or it can be washed off by overland flow. The accumulation and removal rates can have
monthly values to account for seasonal fluctuations. A pollution indicator such as fecal coliform from
range land is an example of a constituent with accumulation and removal rates which may need to vary
throughout the year. The concentration of the coliform in the surface runoff may fluctuate with the
seasonal grazing density, and the weather.
The constituent may, alternatively or additionally, receive atmospheric deposition. Atmospheric
deposition inputs can be specified in two possible ways depending on the form of the available data. If
the deposition is in the form of a flux (mass per area per time), then it is considered dry deposition. If the
deposition is in the form of a concentration in rainfall, then it is considered wet deposition, and the
program automatically combines it with the input rainfall time series to compute the resulting flux. Either
type of deposition data can be input as a time series, which covers the entire simulation period, or as a set
of monthly values that is used for each year of the simulation. The specific atmospheric deposition time
series are documented in the EXTNL table of the Time Series Catalog for PERLND, and are specified in
the EXT SOURCES block of the UCI. The monthly values are input in the MONTH-DATA block.
If atmospheric deposition data are input to the model, the storage of qual is updated as follows:
SQO = SQO + ADFX + PREC*ADCN (3)
where:
SQO = storage of available quality constituent on the surface
(mass/area)
ADFX = dry or total atmospheric deposition flux (mass/area per
interval)
PREC = precipitation depth
ADCN = concentration for wet atmospheric deposition (mass/volume)
If there is lateral inflow of QUALOF, then it is added directly to SQO.
When there is surface outflow and some quality constituent is in storage, washoff is simulated using the
commonly used relationship:
SOQO = SQO*(1.0 - EXP(-SURO*WSFAC)) (4)
103
-------
HSPF Version 12
where:
SOQO = washoff of the quality constituent from the land
surface (quantity/ac per interval)
SQO = storage of available quality constituent on the surface
(quantity/ac)
SURO = surface outflow of water (in/interval)
WSFAC = susceptibility of the quality constituent to washoff (/in)
EXP = exponential function
If QS0FG=1, then the storage is updated once a day to account for accumulation and removal which
occurs independent of runoff by the equation:
SQO = ACQOP + SQOS*(1.0 - REMQOP) (5)
where:
ACQOP = accumulation rate of the constituent (quantity/ac per day)
SQOS = SQO at the start of the interval
REMQOP = unit removal rate of the stored constituent (per day)
If QSOFG is 2, then accumulation and removal occur every interval, and the removal rate is applied to
atmospheric deposition and lateral inflows, as well as the accumulation rate.
The removal rate is recomputed every interval as:
REMOV= REMQOP + INTOT/(ACQOP/REMQOP) (5a)
where:
INTOT = total of atmospheric deposition and lateral inflow
REMOV is capped at 1.0, and then the storage is updated as:
SQO= ACQOP*(DELT60/24.0)+ SQO*(1.0-REMOV)**(DELT60/24.0) (5b)
where:
DELT60 = number of hours per interval
The Run Interpreter computes REMQOP and WSFAC for this subroutine according to:
REMQOP = ACQOP/SQOLIM (6)
where:
SQOLIM = asymptotic limit for SQO as time approaches infinity
(quantity/ac), if no washoff occurs
and
WSFAC = 2.30/WSQOP (7)
where:
WSQOP = rate of surface runoff that results in 90 percent washoff in
one hour (in/hr)
Since the unit removal rate of the stored constituent (REMQOP) is computed from two other parameters,
it does not have to be supplied by the user.
104
-------
Functional Description
Association with Interflow Outflow - QUALIF
(subroutine QUALIF)
Purpose
QUALIF is designed to permit the user to simulate the occurrence of a constituent in interflow.
Method
The user specifies a concentration for each constituent which is a QUALIF. Optionally, one can specify
12 monthly values, to account for seasonal variation. In this case, the system interpolates a new value
each day.
If a lateral inflow concentration is input, then the effective outflow concentration is a weighted average of
the computed value and the lateral inflow using the input parameter ILIFAC. (See lateral inflows for a
description of the averaging method.)
105
-------
HSPF Version 12
Association with Active Groundwater Outflow - QUALGW
(subroutine QUALGW)
Purpose
QUALGW is designed to permit the user to simulate the occurrence of a constituent in groundwater
outflow.
Method
The method is identical to that for QUALIF, except that ALIFAC is used as the lateral inflow weighting
factor.
106
-------
Functional Description
Introduction to the Agri-chemical Sections
(MSTLAY, PEST, NITR, PHOS, TRACER)
The introduction of agricultural chemicals into streams, lakes, and groundwater from agricultural land
may be detrimental. For example, persistent fat soluble pesticides, such as DDT, have been known to
concentrate in the fatty tissue of animals causing toxic effects. Nitrogen and phosphorus are essential
plant nutrients which when introduced into certain surface waters will increase productivity. This may or
may not be desirable depending upon management objectives. Significant productivity results in algal
blooms, but some increase in productivity will increase fish production. Drinking water containing high
nitrate concentrations may cause methemoglobinemia in small children.
Pesticide, nitrogen, and phosphorus compounds are important to agricultural production, but prediction of
their removal from the field is necessary for wise management of both land and water resources. HSPF
can be used to predict such outflows. The agri-chemical sections of the PERLND module of HSPF
simulate detailed nutrient and pesticide processes, both biological and chemical, and the movement of any
nonreactive tracer in a land segment. These chemicals can also be simulated in module section PQUAL,
but in a simplified manner. The dynamic and continuous processes that affect the storages and outflow of
pesticides and nutrients from fertilized fields should often be simulated in detail to fully analyze
agricultural runoff. If the situation does not require full representation of these processes, or if sufficient
data are not available, the PQUAL subroutines can be used.
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, which covers the entire
simulation period, or as a set of monthly values that is used for each year of the simulation. The specific
atmospheric deposition time series are documented in the EXTNL table of the Time Series Catalog for
module PERLND, and are specified in the EXT SOURCES block of the UCI. The monthly values are
input in the MONTH-DATA block.
An additional use of the atmospheric deposition time series is specifying inputs of agricultural chemicals
and fertilizers instead of changing soil storages in the SPEC-ACTIONS block. For this purpose,
deposition to the upper soil layer in addition to the surface soil layer has been provided for in sections
NITR, PHOS, and TRACER. (Section PEST has time series only for the surface layer, since pesticides
are not normally incorporated into the soil as are fertilizers.) Depending on the complexity of the
agricultural practices being modeled, the user should decide whether the SPEC-ACTIONS block or the
time series is simpler to construct.
The basic algorithms in the agri-chemical sections of HSPF were originally developed for use on
agricultural lands, but can be used on other pervious areas where pesticides and plant nutrients occur, for
example, orchards, nursery land, parks, golf courses, and forests. All pervious land contains nitrogen and
phosphorus in the soil; it is possible to use this module to simulate the behavior of agricultural chemicals
in any such area.
107
-------
HSPF Version 12
Comparison of HSPF and Predecessor Models
The methods used to simulate pesticide processes in the agri-chemical sections were developed originally
for the Pesticide Transport and Runoff (PTR) Model (Crawford and Donigian, 1973), then expanded to
include nutrients in the Agricultural Runoff Management (ARM) Model (Donigian and Crawford, 1976)
and tested and modified in ARM Version II (Donigian, et al., 1977). In HSPF the ARM Version II
algorithms were implemented with some additional options. For more detail on the basic methods, the
reader should refer to the cited reports.
The differences between HSPF and ARM Model Version II should, however, be discussed. The biggest
difference is the availability of new options to simulate soil nutrient and pesticide adsorption and
desorption. Ammonium and phosphate adsorption/desorption in HSPF can be accomplished by using
Freundlich isotherms as well as first-order kinetics. Pesticides can be adsorbed and desorbed by the two
Freundlich methods used in the ARM Model or first-order kinetics. In addition, the pesticide parameter
values are now input for each separate soil layer instead of applying one parameter set to the complete
soil profile. HSPF also allows the user to simulate more than one pesticide in a run, while the ARM
Model is limited to one. In addition to the percolation factors which can still be used to retard any solute
leaching from the upper layer and lower layer, a multiplication factor has been introduced that can reduce
leaching from the surface layer. Also, in HSPF, nitrogen and phosphorus chemical and biochemical
transformations can be simulated at different time steps to save computation time. Plant uptake of
ammonium is also available in HSPF.
Units
The fluxes and storages of chemicals modeled in these module sections are in mass per area units. The
user must supply the input in appropriate units; kg/ha for the Metric system, and lb/ac for the English
system. Internally, most of the code does not differentiate between the unit systems. Fluxes are
determined by either proportionality constants, fractions of chemicals in storage, or unitless
concentrations. First-order kinetics makes use of proportionality constants for determining reaction
fluxes. Chemicals are transported based on the fractions of that compound in storage. Freundlich
adsorption/desorption is based on ppm concentrations.
Module Sections
There are five agri-chemical module sections. They are shown in the structure chart of PERLND. Module
section MSTLAY manipulates water storages and fluxes calculated in module section PWATER. This
section must be run before the following sections can be run, since it supplies them with data for
simulating the storage and movement of solutes. Module section PEST simulates pesticide behavior
while NITR and PHOS simulate the plant nutrients of nitrogen and phosphorus. Simulation of a non-
reactive, non-adsorbing solute is accomplished in module section TRACER.
108
-------
Functional Description
Moisture Content of Soil Layers - MSTLAY
(Section MSTLAY of Module PERLND)
Purpose
This module section estimates the storages of moisture in the four soil layers with which the agricultural
chemical sections deal and the fluxes of moisture between the storages. MSTLAY is required because the
moisture storages and fluxes computed by module section PWATER can not be directly used to simulate
solute transport through the soil. For example, in PWATER, some moisture which infiltrates can reach
the groundwater in a single time step. While this phenomenon does not have any serious impact in
simulating the hydrologic response of a land segment, it does seriously affect the simulation of solute
transport.
Thus, MSTLAY takes the fluxes and storages computed in PWATER and adapts them to fit the
storage/flow path picture in the figure below. The revised storages, in inches of water, are also expressed
in mass/area units (that is, lb/ac or kg/ha) for use in the adsorption/desorption calculations.
Method
The figure below schematically diagrams the moisture storages and fluxes used in subroutine MSTLAY.
Note that the fluxes are represented in terms of both quantity (e.g., IFWI, in inches/interval) and as a
fraction of the contributing storage (e.g., FII, as a fraction of UMST/interval). The reader should also
refer to Figure "Flow diagram of water movement and storages modeled in the PWATER section of the
PERLND Application Module" in module section PWATER when studying this diagram and the
following discussion.
For the agri-chemical sections, the moisture storages (the variables ending in MST) are calculated by the
general equation:
MST = WSTOR + WFLUX (1)
The variable WSTOR is the related storage calculated in module section PWATER. For example, in the
calculation of the lower layer moisture storage (LMST), WSTOR is the lower zone storage (LZS). The
variable WFLUX generally corresponds to the flux of moisture through the soil layer. For the
computation of LMST, WFLUX is the sum of water percolating from the lower zone to the inactive
(IGWI) and active groundwater (AGWI) as determined in section PWATER. Note that these equations
are dimensionally non-homogeneous, because storages (inches) and fluxes (inches/interval) are added
together. Thus, the results given are likely to be highly dependent on the simulation time step. The ARM
Model, from which the equations come, uses a time step of 5 minutes. Caution should be exercised if the
agricultural chemical sections (including MSTLAY) are run with any other time step.
The upper layer has been subdivided into two storages, principal and transitory. The transitory
(interflow) storage is used to transport chemicals from the upper layer to interflow outflow. The
chemicals in the transitory storage do not undergo any reactions. However, reactions do occur in the
principal storage.
109
-------
HSPF Version 12
Surface
Layer
wj
CD
X
<8
-I
O
a
o
Upper
Layer
SDOWN >
| percolating
moisture J
FSO
FSP
UMST
upper layer
principal
storage
FVVI
moisture
going
to
ransitoiy
^storage^
Fll
ISMST
upper layer
transitory
(interflow)
storage
IFWO
inter-
flow
Ollt-
FIO
UDOWN \
percolating
moisture J
contains the identifier for
the solute fluxes which
are expressed as fraction
of contributing storages
FAO
7"\
7VGWO
active
ground
water
fluxes
Figure 25: Flow diagram showing transport of moisture and solutes as estimated in the MSTLAY section of
the PERLND Application Module
110
-------
Functional Description
The fluxes shown are the same as those in Figure "Flow diagram of water movement and storages
modeled in the PWATER section of the PERLND Application Module" in module section PWATER
with the exceptions of SDOWN and UDOWN. SDOWN encompasses all the water that moves
downward from the surface layer storage. It is the combination of the water infiltrating from the surface
detention storage directly to the lower zone (INFIL), the inflow to the upper zone (UZI), and the water
flowing into interflow storage (IFWI). UDOWN is all the water percolating through the upper layer. It is
INFIL plus the percolation from the upper zone storage to the lower zone storage (PERC).
Each fractional solute flux is the appropriate moisture flux divided by the contributing storage. For
example, the fraction of chemical in solution that is transported overland from the surface layer storage
(FSO) is the surface moisture outflow (SURO) divided by the surface layer moisture storage (SMST).
The above estimates are based on the assumption that the concentration of the solute being transported is
the same as that in storage. They also assume uniform flow through the layers and continuous mixing of
the solutes. However, these assumptions may need to be revised or implemented differently for some of
the transport. Past testing has shown that the above method leads to excessive leaching of solutes
(Donigian, et al., 1977). Factors that retard solute leaching were added in the ARM Model Version II to
remedy this problem. For the surface layer, the percolation factor (SLMPF) affects the solute fraction
percolating (FSP) by the relationship:
FSP = SLMPF*SDOWN/SMST (2)
The variables SDOWN and SMST are defined in the figure above. FSP will typically be between 0 and 1.
For the upper or lower layer percolating fraction (FUP, FLDP, or FLP), the retardation factor only has an
influence when the ratio of the respective zone storage to the nominal storage times the factor
(ZS/(ZSN*LPF)) is less than one. The relationship under this condition is:
F = (ZS/(ZSN*LPF))*(PFLUX/MST) (3)
where:
F
layer solute percolating fraction
zone moisture storage, either UZS or LZS
zone nominal moisture storage, either UZSN or LZSN
factor which retards solute leaching for the layer,
either ULPF or LLPF
percolation flux, either UDOWN, IGWI, or AGWI
layer moisture storage, either UMST or LMST
ZS
ZSN
LPF
PFLUX
MST
111
-------
HSPF Version 12
Pesticide Behavior - PEST
(Section PEST of Module PERLND)
Purpose
Because of the complexity of pesticide behavior on the land, simulation of the processes frequently
requires considerable detail. Pesticide applications vary in amount and time during the year. Various
pesticides adsorb and degrade differently. Some, like paraquat, attach themselves strongly to the soil,
thereby appearing in low concentrations in water but in high concentrations on soil particles. Others, like
atrazine, undergo complex interactions with the soil and are found in higher concentrations in the runoff
water than on the eroded sediment.
Section PEST models pesticide behavior by simulating the processes of degradation and adsorption as
well as transport. The pesticides are simulated in the soil and runoff in three forms: dissolved, adsorbed,
and crystallized. These phases in the soil affect the forms and amounts in the runoff.
Method
Pesticides are simulated by using the time series generated by other PERLND module sections to
transport and influence the adsorption and degradation processes. Pesticides move with water flow or by
association with the sediment. They also may be adsorbed to the soil in varying degree as a function of
the chemical characteristics of the toxicant and the exchange capacity of the soil layer. Pesticide
degradation occurs to varying degrees depending upon the susceptibility of the compound to volatilization
and breakdown by light, heat, microorganisms and chemical processes. The subroutines in module
section PEST consider these transport and reaction processes.
All the subroutines described in this module section except NONSV and DEGRAS are accessed by other
agri-chemical module sections because many of the basic transport and reaction processes are similar.
The subroutines are described here because they are physically located in this subroutine group.
Subroutine AGRGET is first to be called. This subroutine has no computing function; it obtains any
required time series (that are not already available) from the INPAD.
Inputs of pesticide to the surface soil layer may be simulated using either or both of two methods: 1) as
changes to storage variables in the SPEC-ACTIONS block or 2) as atmospheric deposition. However,
atmospheric deposition affects only the surface layer, so if a pesticide is incorporated into the upper soil
layer, Special Actions must be used.
Lateral inflows from upslope land segments may also be specified in the NETWORK or SCHEMATIC
and MASS-LINK blocks. These fluxes are added to the appropriate soil storage at the beginning of the
interval. (Refer to the Time Series Catalog for PERLND for more information.)
Atmospheric deposition inputs of pesticide can be specified in two possible ways depending on the form
of the available data. If the deposition is in the form of a flux (mass per area per time), then it is
considered dry deposition. If the deposition is in the form of a concentration in rainfall, then it is
considered wet deposition, and the program automatically combines it with the input rainfall time series
to compute the resulting flux. Either type of deposition data can be input as time series, which cover the
entire simulation period, or as a set of monthly values that is used for each year of the simulation. The
specific pesticide atmospheric deposition time series are documented in the EXTNL table of the Time
Series Catalog for PERLND, and are specified in the EXT SOURCES block of the UCI. The monthly
values are input in the MONTH-DATA block.
112
-------
Functional Description
If atmospheric deposition data are input to the model, the surface storage is updated for each of the three
forms of each pesticide using the formula:
SPS = SPS + ADFX + PREC*ADCN (1)
where:
SPS = storage of pesticide form on the surface (mass/area)
ADFX = dry or total atmospheric deposition flux (mass/area per
interval)
PREC = precipitation depth
ADCN = concentration for wet atmospheric deposition (mass/volume)
Subroutine SDFRAC determines the fraction of the surface layer soil that has eroded. The amount eroded
is the total sediment removed by scour and washoff as determined in module section SEDMNT. The
mass of soil in the surface layer is a parameter value which does not vary even when material is removed.
The chemical which is associated with the sediment is assumed to be removed from the surface layer
storage in the same proportion that the layer has eroded. Chemical removal is simulated in subroutine
SEDMOV. A sediment associated chemical is one that may be attached to the eroding soil or one which
may move with the soil. With pesticides the adsorbed form will be attached to the soil particle, while the
crystalline form will move with the soil particle being eroded, but will not be attached to it. Both forms
are removed from their respective surface layer storages in proportion to the fraction of the surface soil
layer removed by overland flow.
Subroutines TOPMOV and SUBMOV perform a function similar to SEDMOV except they move the
solutes. Chemicals in solution move to and from the storages according to the fractions calculated in
section MSTLAY. The figure below schematically illustrates the fluxes and storages used in these
subroutines. The fractions (variables beginning with the letter "F") of the storages are used to compute
the solute fluxes. The equations used to compute the solute transport fluxes from the fractions and
storages are given in the figure. Subroutine TOPMOV performs the calculations of the fluxes and the
resulting changes in storage for the topsoil layers (surface and upper), while SUBMOV performs them for
the subsurface layers (lower and active groundwater).
Biological and chemical reactions are performed on the pesticides (and other chemicals) in each layer
storage. Chemicals in the upper layer principal storage undergo reactions while those in the transitory
(interflow) storage do not. The upper layer transitory storage is a temporary storage of chemicals on their
way to interflow outflow. Subroutine PSTRXN is called to perform reactions on the pesticide in each
layer.
113
-------
Functional Description
Reactions on Pesticides - PSTRXN
(subroutine PSTRXN)
Purpose
This code simulates the degradation and adsorption/de sorption of pesticides. This subroutine is called for
each of the four soil layers and each pesticide.
Method of Reacting Pesticides
The user has the option of adsorbing/desorbing the pesticide by one of three methods. The first method is
by first-order kinetics. This method assumes that the pesticide adsorbs and desorbs at a rate based on the
amount in soil solution and on the amount on the soil particle. It makes use of a proportionality constant
and is independent of the concentration. The second method uses a single value Freundlich isotherm.
This method makes use of a single adsorption/desorption curve for determining the concentration on the
soil and in solution. The third method uses multiple curves based on a varying Freundlich K value.
Further details of these methods can be found in the discussion of the individual subroutines that follows
and in documentation of the ARM Model (Donigian and Crawford, 1976; Donigian, et al., 1977).
Degradation is performed once a day in each of the four layers that contain pesticide. The amount
degraded is determined simply by multiplying a decay rate parameter specified for each soil layer by each
of the three forms (adsorbed, solution, and crystalline) of pesticide in storage. The degraded amounts are
then subtracted from their respective storages. This method of simulating degradation lumps complex
processes in a simple parameter.
115
-------
HSPF Version 12
First-Order Kinetics - FIRORD
(subroutine FIRORD)
Purpose
The purpose of this subroutine is to calculate the adsorption and desorption reaction fluxes of chemicals
using temperature dependent first-order kinetics. These fluxes are calculated every simulation interval
when the subroutine is called by section PEST, but they are determined only at the designated chemical
reaction frequency when called by sections NITR and PHOS.
Method
The calculation of adsorption and desorption reaction fluxes by first-order kinetics for soil layer
temperatures less than 35 degrees C takes the form:
DES = CMAD*KDS*THKDS** (TMP - 35.0) (1)
ADS = CMSU*KAD*THKAD**(TMP - 35.0) (2)
where:
DES = current desorption flux of chemical (mass/area per interval)
CMAD = storage of adsorbed chemical (mass/area)
KDS = first-order desorption rate parameter (per interval)
THKDS = temperature correction parameter for desorption
TMP = soil layer temperature (degrees C)
ADS = current adsorption flux of chemical (mass/area per interval)
CMSU = storage of chemical in solution (mass/area)
KAD = first-order adsorption rate parameter (per interval)
THKAD = temperature correction parameter for adsorption
THKDS and THKAD are typically about 1.06
All of the variables except the temperature coefficients may vary with the layer of the soil being
simulated. The soil temperatures are time series which may be input (e.g., using field data) or simulated
in module section PSTEMP. The temperature correction of the reaction rate parameter is based on the
Arrhenius equation. At temperatures of 35 degrees C or above, no correction is made. When the
temperature is at 0 degrees C or below or the soil layer is dry, no adsorption and desorption occurs.
The storage of the solution chemical is updated every simulation interval in the calling subroutine, that is,
in PSTRXN, NITRXN, or PHORXN, by adding DES minus ADS. Likewise, the storage of the adsorbed
chemical is updated there also by adding ADS minus DES. An adjustment is made in the calling
subroutine if any of the fluxes would cause a storage to go negative. When this happens a warning
message is produced and fluxes are adjusted so that no storage goes negative. This usually occurs when
large time steps are used in conjunction with large KAD and KDS values.
116
-------
Functional Description
Single Value Freundlich Method - SV
(subroutine SV)
Purpose
Subroutine SV calculates the adsorption and desorption and the resulting new storages of a chemical
using the single value Freundlich method.
Method
The Freundlich isotherm methods, unlike first-order kinetics, assume instantaneous equilibrium. That is,
no matter how much chemical is added to a particular phase, equilibrium is assumed to be established
between the solution and adsorbed phase of the chemical. These methods also assume that for any given
amount of chemical in the soil, the equilibrium distribution of the chemical between the soil solution and
soil particles can be found from an isotherm. Figure "Freundlich isotherm calculations" below illustrates
such an isotherm.
Three phases of the chemical are actually possible; crystalline, adsorbed, and solution. The crystalline
form is assumed to occur only when the soil layer is dry, or when there is more chemical in the layer than
the combined capacity to adsorb and hold in solution. When the soil is dry, all the chemical is considered
to be crystalline salt. When there is more total chemical in the soil layer than the soil adsorption sites can
contain and more than that saturated in solution, then the chemical content which exceeds these capacities
is considered to be crystalline salt. Module section PEST considers crystalline phase storage, but module
sections NITR and PHOS do not. Instead, any crystalline phosphate or ammonium predicted by an
isotherm is added to the adsorbed phase storage.
The adsorbed and solution phases of the chemical are determined in this subroutine by the standard
Freundlich equation as plotted by curve 1 below. When the amount of chemical is less than the capacity
of the soil particle lattice to permanently bind the chemical (XFIX), then all the material is consider fixed.
All the fixed chemical is contained in the adsorbed phase of the layer storage. Otherwise, the Freundlich
equation for curve 1 is used to determine the partitioning of the chemical into the adsorbed and solution
phases:
X = KF1*C**(l/Nl) + XFIX (3)
where:
X
= chemical adsorbed on soil (ppm of soil)
KF1
= single value Freundlich K coefficient
C
= equilibrium chemical concentration in solution (ppm of
solution)
N1
= single value Freundlich exponent
XFIX
= chemical which is permanently fixed (ppm of soil)
The above equation is solved in subroutine ITER by an iteration technique. The parameters used in the
computation can differ for each layer of the soil.
117
-------
Functional Description
Non-single Value Freundlich Method - NONSV
(subroutine NONSV)
Purpose
The purpose of this subroutine is to calculate the adsorption/desorption of a chemical by the nonsingle
value Freundlich method. The single value Freundlich method was found to inadequately represent the
division of some pesticides between the soil particle and solution phases, so this method was developed as
an option in the ARM Model (Donigian and Crawford, 1976). This routine is only available for use by
the PEST module section.
Method
The approach in this code uses the same algorithms and solution technique as subroutine SV for
determining curve 1 in Figure "Freundlich isotherm calculations" above. However, curve 1 is used solely
for adsorption. That is, only when the concentration of the adsorbed chemical is increasing. When
desorption occurs a new curve (curve 2) is used:
X = KF2*C**(1/N2) + XFIX (4)
KF2 = (KF1/XDIF)**(N1/N2) * XDIF (5)
where:
KF2 =
N2
XDIF =
XJCT =
nonsingle value Freundlich coefficient
nonsingle value Freundlich exponent parameter
XJCT - XFIX
the adsorbed concentration where curve 1 joins curve 2
(i.e., where desorption started)
as shown in Figure "Freundlich isotherm calculations" above
(ppm of soil)
The other variables are as defined for subroutine SV.
Once curve 2 is used, both desorption and adsorption follow it until the adsorbed concentration is less
than or equal to XFIX or until it reaches XJCT. Then, adsorption will again take place following curve 1
until desorption reoccurs, following a newly calculated curve 2. The solution of the Freundlich equations
for curves 1 and 2 utilizes the same iteration technique described in subroutine SV (subroutine ITER).
119
-------
HSPF Version 12
Nitrogen Behavior - NITR
(section NITR of module PERLND)
Purpose
NITR, like section PEST, simulates the behavior of chemicals in the soil profile of a land segment.
Section NITR handles the nitrogen species of nitrate, ammonia, and organic nitrogen. This involves
simulating nitrogen transport and soil reactions. Nitrogen, like phosphorus, may be a limiting nutrient in
the eutrophication process in lakes and streams. Nitrates in high concentrations may also pose a health
hazard.
Method
Nitrogen species are transported by the same methods used for the pesticide forms. The subroutines that
are called to transport nitrogen are located in and described with the PEST module section. Adsorbed
ammonium and two forms of particulate organic nitrogen (labile and refractory) are removed from the
surface layer storage by association with sediment. These processes are handled by subroutines SDFRAC
and SEDMOV. Nitrate, ammonium, and two forms of dissolved organic nitrogen (labile and refractory)
in the soil water are transported using the subroutines TOPMOV and SUBMOV. Nitrogen reactions are
simulated separately for each of the soil layers. The methods are described below, in the discussion of
subroutine NITRXN, and are shown schematically in Figure "Flow diagram for nitrogen reactions"
below.
Inputs of Nitrogen to the Soil
Natural and agricultural inputs of nitrogen to the surface and upper soil layers can be simulated using
either or both of two methods: 1) as changes to storage variables in the SPEC-ACTIONS block, or 2) as
atmospheric deposition inputs. Atmospheric deposition inputs are implemented for three species: nitrate,
ammonium, and particulate labile organic nitrogen.
Lateral inflows from upslope land segments may also be specified in the NETWORK or SCHEMATIC
and MASS-LINK blocks. These fluxes are added to the appropriate soil storage at the beginning of the
interval. (Refer to the Time Series Catalog for PERLND for more information.)
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, which covers the entire
simulation period, or as a set of monthly values that is used for each year of the simulation. The specific
atmospheric deposition time series are documented in the EXTNL table of the Time Series Catalog for
PERLND, and are specified in the EXT SOURCES block of the UCI. The monthly values are input in
the MONTH-DATA block.
120
-------
Functional Description
' return of abov* ground plant N and litter W
occurs to surface and upper zones only
Figure 28: Flow diagram for nitrogen reactions
If atmospheric deposition data are input to the model, the soil storage is updated for each of the three
species of nitrogen in each soil layer (surface and upper) using the general formula:
NSTOR = NSTOR + ADFX + PREC*ADCN (1)
where:
NSTOR = storage of nitrogen species in the soil layer (mass/area)
ADFX = dry or total atmospheric deposition flux (mass/area per
interval)
PREC = precipitation (depth per interval)
ADCN = concentration of nitrogen species in rainfall (mass/volume)
121
-------
HSPF Version 12
Reactions on Nitrogen Forms - NITRXN
(subroutine NITRXN)
Purpose
The purpose of NITRXN is to simulate soil nitrogen transformations. This includes plant uptake of
nitrate and ammonium, return of plant nitrogen to organic nitrogen, denitrification or reduction of nitrate-
nitrite, immobilization of nitrate-nitrite and ammonium, mineralization of organic nitrogen, fixation of
atmospheric nitrogen, volatilization of ammonium, adsorption/desorption of ammonium, and partitioning
of two types of organic nitrogen between solution and particulate forms.
Method of Nitrogen Transformations
Adsorption/desorption of ammonium
Nitrogen reactions can be divided between those that are chemical in nature and those that are a
combination of chemical and biological reactions. The adsorption and desorption of ammonium is a
chemical process. The user has the option of simulating ammonium adsorption and desorption by first-
order kinetics with subroutine FIRORD or by the Freundlich isotherm method with subroutine SV. These
subroutines are described in the PEST module section.
The user has the option of specifying how often the adsorption and desorption rates are calculated. When
adsorption/desorption is simulated by the Freundlich method, the solution and adsorbed storages of
ammonium are determined instantaneously at the specified frequency of reaction. However, when the
first-order method is used, the temperature-corrected reaction fluxes (Figure "Flow diagram for nitrogen
reactions" above) are recomputed intermittently, but the storages are updated every simulation interval.
Organic Nitrogen Partitioning
Organic nitrogen is assumed to exist in the following four forms in each soil layer.
Particulate labile
Solution labile
Particulate refractory
Solution refractory
The particulate labile species is the default form of organic N in the model; if default values of organic N-
related sorption parameters and reaction rates are used, only this form will exist. This species is formed
by immobilization of nitrate and ammonia, and is converted back to ammonia by mineralization in the
soil. It also is transported on the surface by association with sediment. However, if the user inputs non-
zero values of the relevant parameters, it can undergo conversion by first-order rate to the particulate
refractory form, and it can also desorb to the solution labile form. The particulate refractory species can
also desorb to the solution refractory form. The two solution species are available for transport with
surface runoff and within the soil profile, and the particulate refractory form can be transported on the
surface with sediment.
122
-------
Functional Description
The organic nitrogen partitioning reactions (sorption-desorption) are described by equilibrium isotherms
as shown in the following equations:
KLON = PLON/SLON (2)
KRON = PRON/SRON
where:
KLON and KRON = partition coefficients for the labile and refractory
organic nitrogen, respectively (-)
PLON = particulate labile organic N (lb N/ac or kg N/ha)
SLON = solution labile organic N (lb N/ac or kg N/ha)
PRON = particulate refractory organic N (lb N/ac or kg N/ha)
SRON = solution refractory organic N (lb N/ac or kg N/ha)
The four organic nitrogen forms and their assorted reactions are illustrated in Figure "Flow diagram for
nitrogen reactions" above. Note that the storages and transformations in this figure are generally repeated
in each soil layer except for the aboveground plant N and the litter compartments.
Note that the three new organic nitrogen state variables described above are always present in the NITR
module, i.e., they are not optional. However, in order to make the program compatible with previous
versions, the default inputs result in the three new forms maintaining zero concentrations; therefore, there
should be no impact on the simulation results of existing applications when using the current version of
the program.
Other Nitrogen Transformations
The other reactions are a combination of biological and chemical transformations. All of these reactions
can be modeled using first-order kinetics; optional algorithms can be used for plant uptake of N and
immobilization of organic N. The optimum first-order kinetic rate parameter is corrected for soil
temperatures below 35 degrees C by the generalized equation:
KK = K*TH**(TMP - 35.0) (3)
where:
KK = temperature-corrected first-order reaction rate (/interval)
K = optimum first-order reaction rate at 35 degrees C (/interval)
TH = temperature correction coefficient for reaction (typically
about 1.06)
TMP = soil layer temperature (degrees C)
When temperatures are greater than 35 degrees C, the rate is considered optimum, that is, KK is set equal
to K. When the temperature of the soil layer is below 4 degrees C or the layer is dry, no biochemical
transformations occur.
The corrected reaction rate parameters are determined every biochemical reaction interval and multiplied
by the respective storages as shown in Figure "Flow diagram for nitrogen reactions" to obtain the reaction
fluxes. Plant uptake can vary monthly and can be distributed between nitrate and ammonium by the
parameters N03UTF and NH4UTF. These parameters are intended to designate the fraction of plant
uptake from each species of N; the sum of N03UTF and NH4UTF should be 1.0.
123
-------
HSPF Version 12
The biochemical reaction rate fluxes that are shown in Figure "Flow diagram for nitrogen reactions" are
coupled, that is, added to and subtracted from the storages simultaneously. The coupling of the fluxes is
efficient in use of computer time, but has a tendency to produce unrealistic negative storages when large
reaction intervals and large reaction rates are used jointly. A method is used which modifies the reaction
fluxes so that they do not produce negative storages. A warning message is issued when this modification
occurs.
Immobilization of nitrate and ammonia (conversion to particulate labile organic N) can be simulated
using either first-order kinetics as described above, or a saturation kinetics (Michaelis-Menten) method.
The saturation kinetics option is intended primarily for forests, and is activated when NUPTFG = 2 or -2.
Details of this option are presented below, under the description of plant uptake optional methods.
Ammonia Volatilization
Ammonia volatilization is included as an optional (AMVOFG = 1) first-order reaction in order to allow
large concentrations of ammonia in the soil, resulting from animal waste and fertilizer applications, to be
attenuated by losses to the atmosphere. The original formulation by Reddy et al., (1979) included
adjustment for variable soil cation exchange capacity (CEC) and wind speed, and it could be "turned off
after seven days. In HSPF, it is assumed that: (1) the CEC factor can be incorporated into the first-order
rate constant by the user, and (2) the wind (air flow) is always high enough to result in maximum loss;
Reddy's original method reduced the volatilization rate only when wind speed was less than 1.4 km/day.
Downward adjustment of the rate, after an initial period of high losses, requires use of the Special Actions
capability.
The temperature correction for volatilization of ammonia is slightly different than the standard method
used for the other reactions. The reference temperature is user-specified, instead of 35 degrees C, since
rates in the literature are often given at a temperature of 20 degrees C. Also, instead of attaining a
maximum value at the reference temperature, the volatilization rate is adjusted upwards when the soil
temperature exceeds the reference temperature.
Plant nitrogen
The user can select between two optional scenarios for simulating plant nitrogen. If ALPNFG = 0, plant
N is simulated in each of the four standard soil layers (i.e., surface, upper, lower, and active groundwater).
If ALPNFG = 1, plant N is also simulated in above-ground and litter compartments, in addition to the
standard below-ground layers. Plant N simulation involves uptake of ammonium and nitrate by the plant,
and "return" of plant N to organic N in the soil. Above-ground plant N returns to the litter compartment,
and litter plant N returns to the particulate organic N compartments in the surface and upper soil layers.
These return reactions from above-ground plant N to litter and from litter to surface/upper organic N are
simulated using first-order kinetics. No other reactions affect these nitrogen storages except for plant
uptake to the above-ground compartment.
Return of plant N to particulate organic N is divided into labile and refractory fractions. By using default
values of the return parameters, all plant return becomes labile organic N.
Optional Methods for Modeling Plant Uptake of Nitrogen
There are three optional methods for simulating plant uptake, including the default, first-order method
described above. These options are selected using the input flag NUPTFG.
124
-------
Functional Description
The second method for simulating plant uptake is a yield-based algorithm (NUPTFG =1). This approach
is a modification of the algorithm used in the Nitrate Leaching and Economic Analysis Package (NLEAP
model) (Shaffer et al., 1991). It is designed to be less sensitive to soil nutrient levels and nutrient
application rates than the first-order rate approach (NUPTFG = 0); thus, it allows crop needs to be
satisfied, subject to nutrient and moisture availability, without being calculated as a direct function of the
soil nutrient level. This approach allows a better representation of nutrient management practices, since
uptake levels will not change dramatically with changes in application rates.
In this method, a total annual target, NUPTGT, is specified by the user, and is then divided into monthly
targets during the crop growing season; the target is further divided into the four soil layers. The monthly
target for each soil layer is calculated as:
MONTGT= NUPTGT* NUPTFM(MON)* NUPTM(MON)* CRPFRC(MON,ICROP) (4)
where:
MONTGT= monthly plant uptake target for current crop
(lb N/ac or kg N/ha)
NUPTGT= total annual uptake target (lb N/ac or kg N/ha)
NUPTFM= monthly fraction of total annual uptake target (-)
NUPTM = soil layer fraction of monthly uptake target (-)
CRPFRC= fraction of monthly uptake target for current crop (-)
MON = current month
ICROP = index for current crop
Note that CRPFRC is 1.0 unless the month contains parts of two or more crop seasons, in which case the
monthly uptake target is divided among the crops according to the number of days of the month
belonging to each season.
Planting and harvesting dates can be specified for up to three separate crops during the year. Plant uptake
is assumed to occur only during a growing season, defined as the time period between planting and
harvest. When portions of two growing seasons are contained within one month, the total monthly target
is divided between the two crops in proportion to the number of days in each season in that month. The
daily target is calculated by starting at zero at the beginning of a crop season and using a trapezoidal rule
to solve for monthly boundaries; linear interpolation is used to solve for daily values between the monthly
boundaries, and between a monthly boundary and a planting or harvest date.
Yield-based plant uptake only occurs when the soil moisture is above the wilting point, which is specified
by the user for each soil layer. No temperature rate adjustment is performed, but all uptake is stopped
when soil temperature is below 4 degrees C. If the uptake target is not met during a given interval,
whether from nutrient, temperature, or moisture stress, then an uptake deficit is accumulated, and applied
to the next interval's target. When uptake later becomes possible, the program will attempt to make up
the deficit by taking up nitrogen at a rate higher than the normal daily target, up to a user-specified
maximum defined as a multiple of the target rate. The deficit is tracked for each soil layer, and is reset to
zero at harvest, i.e., it does not carry over from one crop season to the next.
When using the yield-based plant uptake option, it is also possible to represent leguminous plants (e.g.,
soybeans) that fix nitrogen from the atmosphere. The algorithm is designed to allow N fixation only to
make up any shortfall in soil nitrogen, i.e., fixation is only allowed if the available soil nitrogen (nitrate
and solution ammonium) is insufficient to satisfy the target uptake. The maximum daily nitrogen fixation
rate is subject to the same limits as the uptake under deficit conditions noted above.
125
-------
HSPF Version 12
The third option for simulating plant uptake is to use a Michaelis-Menten or saturation kinetics method.
This algorithm is included in HSPF primarily for simulating forest areas, and whenever it is selected, the
same method is also used to simulate immobilization of ammonium and nitrate. The saturation kinetics
method is activated for both uptake and immobilization by setting NUPTFG to 2 or -2.
The user specifies a maximum rate and a half-saturation constant for each of the four processes (uptake of
nitrate and ammonia, and immobilization of nitrate and ammonia). The input maximum rates can vary
monthly. The corresponding reaction fluxes are computed using the general equation:
FLUX = KK * CONC / (CS + CONC) (5)
where:
FLUX = amount of flux (mg/l/interval)
KK = temperature corrected maximum rate (mg/l/interval)
CONC = concentration of nitrogen species in soil layer (mg/1)
CS = half-saturation constant (mg/1)
The flux is then converted to units of mass per interval.
Regardless of the option used to simulate plant uptake, if the above-ground and litter compartments are
being simulated, then the user can specify the fraction of uptake from each layer that goes to the above-
ground plant N storage. The remainder is assumed to become plant N within that soil layer.
126
-------
Functional Description
Phosphorous Behavior - PHOS
(Section PHOS of Module PERLND)
Purpose
Module section PHOS simulates the behavior of phosphorus in a pervious land segment. This involves
modeling the transport, plant uptake, adsorption/desorption, immobilization, and mineralization of the
various forms of phosphorus. Because phosphorus is readily tied to soil and sediment, it is usually scarce
in streams and lakes. In fact, in many cases it is the limiting nutrient in the eutrophication process.
Because of its scarcity, accurate simulation is particularly important.
The method used to transport and react phosphorus is the same as that used for nitrogen in module section
NITR. The subroutines used to transport phosphorus are described in module section PEST. Organic
phosphorus and adsorbed phosphate are removed with sediment by calling subroutine SEDMOV.
Phosphate in solution is transported in the moving water using subroutines TOPMOV and SUBMOV.
Phosphorus reactions are simulated in the soil by subroutine PHORXN.
Inputs of phosphorus to the surface and upper soil layers, natural or agricultural, can be simulated using
either or both of two methods: 1) as changes to storage variables in the SPEC-ACTIONS block, or 2) as
atmospheric deposition.
Lateral inflows from upslope land segments may also be specified in the NETWORK or SCHEMATIC
and MASS-LINK blocks. These fluxes are added to the appropriate soil storage at the beginning of the
interval. (Refer to the Time Series Catalog for PERLND for more information.)
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, which covers the entire
simulation period, or as a set of monthly values that is used for each year of the simulation. The specific
atmospheric deposition time series are documented in the EXTNL table of the Time Series Catalog for
PERLND, and are specified in the EXT SOURCES block. The monthly values are input in the MONTH-
DATA block.
If atmospheric deposition data are input to the model, the soil storage is updated for each of the two
species of phosphorus for both affected soil layers using the formula:
P = P + ADFX + PREC*ADCN (1)
Method
where:
P
storage of phosphorus species in the soil layer (mass/area)
dry or total atmospheric deposition flux (mass/area per
interval)
precipitation depth
concentration for wet atmospheric deposition (mass/volume)
AD FX
PREC
ADCN
127
-------
HSPF Version 12
In subroutine PHORXN, phosphate is adsorbed and desorbed by either first-order kinetics or by the
Freundlich method. The mechanics of these methods are described in module section PEST. As with the
simulation of ammonium adsorption/desorption, the frequency of this chemical reaction for phosphate can
also be specified. Unlike ammonium, typically phosphate includes a large portion which is not attached
to the soil particle but is combined with cations. This is because phosphate is much less soluble with the
ions found in soils than ammonium.
Other reactions performed by subroutine PHORXN include mineralization, immobilization, and plant
uptake. These are accomplished using temperature dependent, first-order kinetics; the same method used
for the nitrogen reactions. As for nitrogen, a yield-based plant uptake option is available for phosphorus
and is activated with PUPTFG = 1. The saturation-kinetics option for uptake and immobilization,
however, is not available for phosphorus. The only other difference between nitrogen and phosphorus
plant uptake is that only solution phosphate can be taken up by the plant and no fixation process is
modeled. The general description of these processes is in module section NITR. Figure "Flow diagram
for phosphorus reactions" below shows the parameters and equations used to calculate the reaction fluxes
for phosphorus. Reactions are simulated for each of the four soil layers using separate parameter sets for
each layer. As with nitrogen, the biochemical phosphate reaction fluxes of mineralization,
immobilization, and plant uptake can be determined at an interval less frequent than the basic simulation
interval.
Figure 29: Flow diagram for phosphorus reactions
128
-------
Functional Description
Movement of a Tracer - TRACER
(Section TRACER of Module PERLND)
Purpose
The purpose of this code is to simulate the movement of any nonreactive tracer (conservative) in a
pervious land segment. Chloride, bromide, and dyes are commonly used tracers which can be simulated
by section TRACER. Also, total dissolved salts could possibly be modeled by this section. Typically,
this code is applied to chloride to calibrate solute movement through the soil profile. This involves
adjustment of the percolation retardation factors (see section MSTLAY) until good agreement with
observed chloride concentrations has been obtained. Once these factors have been calibrated, they are
used to simulate the transport of other solutes, such as nitrate.
Method of Simulating Tracer Transport
Tracer simulation uses the agri-chemical solute transport subroutines TOPMOV and SUBMOV which are
described in section PEST. No reactions are modeled.
Inputs of the tracer substance to the surface and upper soil layers can be simulated using either or both of
two methods: 1) as changes to storage variables in the SPEC-ACTIONS block, or 2) as atmospheric
deposition.
Lateral inflows from upslope land segments may also be specified in the NETWORK or SCHEMATIC
and MASS-LINK blocks. These fluxes are added to the appropriate soil storage at the beginning of the
interval. (Refer to the Time Series Catalog for PERLND for more information.)
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, which covers the entire
simulation period, or as a set of monthly values that is used for each year of the simulation. The specific
atmospheric deposition time series are documented in the EXTNL table of the Time Series Catalog for
PERLND, and are specified in the EXT SOURCES block of the UCI. The monthly values are input in
the MONTH-DATA block.
If atmospheric deposition data are input to the model, then the soil storage of tracer is updated for both
affected soil layers using the formula:
T = T + ADFX + PREC*ADCN (1)
where:
T
storage of tracer in the soil layer (mass/area)
dry or total atmospheric deposition flux (mass/area per
interval)
precipitation depth
concentration for wet atmospheric deposition (mass/volume)
AD FX
PREC
ADCN
129
-------
HSPF Version 12
Impervious Land Segment - IMPLND
(Module IMPLND)
In an impervious land segment, little or no infiltration occurs. However, land surface processes do occur
as illustrated in Figure "Impervious land segment processes" below. Snow may accumulate and melt, and
water may be stored or may evaporate. Various water quality constituents accumulate and are removed.
Water, solids, and various pollutants flow from the segments by moving laterally to a downslope segment
or to a stream or lake.
The sections of IMPLND and their functions are given in the structure chart shown in Figure "Structure
chart for IMPLND Module" below. They are executed from left to right. Many of them are similar to the
corresponding sections in the PERLND module. In fact, since sections SNOW and ATEMP perform
functions that can be applied to pervious or impervious segments, they are shared by both modules.
IWATER is analogous to PWATER in module PERLND; SOLIDS is analogous to SEDMNT; IWTGAS
is analogous to PWTGAS; and IQUAL is analogous to PQUAL. However, the IMPLND sections are less
complex, since they contain no infiltration function and consequently no subsurface flows.
When segmenting a watershed, the area of impervious land segments represented by IMPLND should be
the "effective" impervious area, or EIA, rather than the total or mapped impervious area of the watershed
of interest. EIA is that portion of the total impervious area that is directly connected to the drainage
system, (e.g., storm drains, streams, rivers, lakes), including rooftops that drain directly to driveways or
storm drains. Impervious runoff that drains first to pervious areas can infiltrate, and should not be
included in the impervious simulation. In most watersheds, the EIA is less than the total impervious area,
especially in less dense residential areas. Conversely, in highly urbanized areas, the EIA and total
impervious areas are often very similar.
130
-------
Functional Description
fen
°[
0
co^
on
BCM
Runoff, Solids, Water
Quality Constituents
Figure 30: Impervious land segment processes
131
-------
HSPF Version 12
1MPLND
on a segment!
of imperviousI
4.2(2)
ATCM_p| ^ j_ SNOW | ^
IWATER
(See tnodtJe
- PERLHD)
I
I
I
_1
(See module
| PERLND)
SOLIDS
for imperviou
land segment
4.2(1 }.2
fWTGAS
4.2(2). 3
\4.2(2).3
4 2(2)4
4.2(2). 5
14.2(2 >.4
Figure 31: Structure chart for IMPLND Module
132
-------
Functional Description
Water Budget Impervious - IWATER
(Section IWATER of Module IMPLND)
Purpose
Section IWATER simulates the retention, routing, and evaporation of water from an impervious land
segment.
Method
Section IWATER is similar to section PWATER of the PERLND module. However, IWATER is simpler
because there is no infiltration and consequently no subsurface processes. IWATER is composed of the
parent subroutine plus three subordinate subroutines: RETN, IROUTE, and EVRETN. RETN is
analogous to ICEPT, IROUTE is analogous to PROUTE, and EVRETN is analogous to EVICEP in
module section PWATER. The time series requirements are the same as for section PWATER.
Figure "Hydrologic Processes" schematically represents the fluxes and storages simulated in module
section IWATER. Moisture (SUPY) is supplied by precipitation, or under snow conditions, it is supplied
by the rain falling on areas with no snowpack plus the water yielded by the snowpack. This moisture is
available for retention; subroutine RETN performs the retention functions. Lateral surface inflow
(SURLI) may also be retained if the user so specifies by setting the flag parameter RTLIFG=1.
Otherwise, retention inflow (RETI) equals SUPY. Moisture exceeding the retention capacity overflows
the storage and is available for runoff.
133
-------
HSPF Version 12
\
SUPY
precipitation
or
rain+snowpack 1
water yield
SURLI
Lateral
surface
inflow
RETI X
Retention j
Inflow J
Path depends
on value of
RTLIFG
RETS
Impervious
retention
storage
;n
RETO
Retention .
outflow J
SURI
Surface
detention
inflow
A
J
Impervious
evaporation
SURS
Surface
detention
storage
SURO
Surface
out-
flow
W
Figure 32: Hydrologic Processes
134
-------
Functional Description
The retention capacity, defined by the parameter RETSC, can be used to designate any retention of
moisture which does not reach the overland flow plane. RETSC may be used to represent roof top
catchments, asphalt wetting, urban vegetation, improper drainage, or any other containment of water that
will never flow from the land segment. The user may supply the retention capacity on a monthly basis to
account for seasonal variations, or may supply one value designating a fixed capacity.
Water held in retention storage is removed by evaporation (IMPEV). The amount evaporated is
determined in subroutine EVRETN. Potential evaporation is an input time series.
Retention outflow (RETO) is combined with any lateral inflow when RTLIFG=0 producing the total
inflow to the detention storage (SURI). Water remaining in the detention storage plus any inflow is
considered the moisture supply. The moisture supply is routed from the land surface in subroutine
IROUTE.
135
-------
HSPF Version 12
How Much Moisture Runs Off - IROUTE
(subroutine IROUTE)
Purpose
The purpose of subroutine IROUTE is to determine how much of the moisture supply runs off the
impervious surface in one simulation interval.
Method of Routing
A method similar to that used in module PERLND PROUTE is employed to route overland flow.
136
-------
Functional Description
Accumulation and Removal of Solids - SOLIDS
(Section SOLIDS of Module IMPLND)
Purpose
Module section SOLIDS simulates the accumulation and removal of solids by runoff and other means
from the impervious land segment. The solids outflow may be used in section IQUAL to simulate quality
constituents associated with particulates.
Method
The equations used in this section are based on those in the NPS Model (Donigian and Crawford, 1976b).
Lateral input of solids by water flow is a user designated option. Washoff of solids may be simulated by
one of two ways. One subroutine is similar to the method used in the NPS Model. However, this method
is dimensionally nonhomogeneous. That is, a flux and a storage are added making the result time-step
dependent. This technique was designed for 15-minute time-steps. The other subroutine is dimensionally
homogenous, since only a flux term is used in the equation.
The accumulation and removal of solids which occurs independently of runoff (e.g., by atmospheric
fallout, street cleaning) is handled in subroutine ACCUM.
137
-------
HSPF Version 12
Washoff Solids - SOSLD1
(subroutine SOSLD1)
Purpose
Subroutines SOSLD1 and SOSLD2 perform the same task, but by different methods. They simulate the
washoff of solids from an impervious land segment.
Method
When simulating the washoff of solids, the transport capacity of the overland flow is estimated and
compared to the amount of solids available. The transport capacity is calculated by the equation:
STCAP = DELT60*KEIM*((SURS + SURO)/DELT60)**JEIM (1)
where:
ST CAP
DELT60
KEIM
SURS
SURO
JEIM
capacity for removing solids (tons/ac per interval)
hours per interval
coefficient for transport of solids
surface water storage (inches)
surface outflow of water (in/interval)
exponent for transport of solids
Removal
| by cleaning,
wind, etc.
SLSLD
Lateral
input
of
solids
/:
r A i-v
ACCSDP
Accumulation)
V
SOSLD
wash-
off
of
solids
yy
Figure 33: Flow diagram of the SOLIDS section of the IMPLND Application Module
138
-------
Functional Description
When STCAP is greater than the amount of solids in storage, washoff is calculated by:
SOSLD = SLDS*SURO/(SURS + SURO) (2)
If the storage is sufficient to fulfill the transport capacity, then the following relationship is used:
SOSLD = STCAP*SURO/(SURS + SURO) (3)
where:
SOSLD = washoff of solids (tons/ac per interval)
SLDS = solids storage (tons/ac)
SOSLD is then subtracted from SLDS.
Subroutine SOSLD 1 differs from SOSLD2 in that it uses the dimensionally nonhomogeneous term
(SURS + SURO)/DELT60 in the above equations, while SOSLD2 uses the homogeneous term
SURO/DELT60.
139
-------
HSPF Version 12
Washoff Solids - SOSLD2
(subroutine SOSLD2)
Purpose
The purpose of this subroutine is the same as SOSLD1. It only differs in method.
Method of Determining Removal
Unlike subroutine SOSLD1, this method of determining sediment removal makes use of the
dimensionally homogeneous term SURO/DELT60 instead of (SURO+SURS)/DELT60 in the following
equation.
STCAP = DELT60*KEIM*(SURO/DELT60)**JEIM (4)
When STCAP is more than the amount of solids in storage, the flow washes off all of the solids storage
(SLDS). However, when STCAP is less than the amount of solids in storage, the situation is transport
limiting, so SOSLD is equal to STCAP.
140
-------
Functional Description
Accumulate and Remove Solids Independently of Runoff - ACCUM
(subroutine ACCUM)
Purpose
Subroutine ACCUM simulates the accumulation and removal of solids independently of runoff; for
example, atmospheric fallout and street cleaning.
Method
The storage is updated once a day, on those days when precipitation did not occur during the previous
day, using the equation:
SLDS = ACCSDP + SLDSS*(1.0 - REMSDP) (5)
where:
ACCSDP = accumulation rate of the solids storage (tons/ac per day)
SLDS = solids in storage at end of day (tons/ac)
SLDSS = solids in storage at start of day (tons/ac)
REMSDP = unit removal rate of solids in storage
(i.e., fraction removed per day)
ACCSDP and REMSDP may be input on a monthly basis to account for seasonal variations.
Note: if no runoff occurs, Equation 5 will cause the solids storage to asymptotically approach a limiting
value. The limit, found by setting SLDS and SLDSS to the same value (SLDSL), is:
SLDSL = ACCSDP/REMSDP (6)
141
-------
HSPF Version 12
Water Temperature and Dissolved Gas Concentrations - IWTGAS
(Section IWTGAS of Module IMPLND)
Purpose
IWTGAS estimates the water temperature and concentrations of dissolved oxygen and carbon dioxide in
the outflow from the impervious land segment.
Method
Outflow temperature is estimated by the following regression equation:
SOTMP = AWTF + BWTF*AIRTC (1)
where:
SOTMP = impervious surface runoff temperature (degrees C)
AWTF = Y-intercept
BWTF = slope
AIRTC = air temperature (degrees C)
The parameters AWTF and BWTF may be input on a monthly basis. When snowmelt contributes to the
outflow, SOTMP is set equal to 0.5.
The dissolved oxygen and carbon dioxide concentrations of the overland flow are assumed to be at
saturation and are calculated as direct functions of water temperature. IWTGAS uses the following
empirical nonlinear equation to relate dissolved oxygen at saturation to water temperature (Committee on
Sanitary Engineering Research, 1960):
SODOX = (14.652 + SOTMP*(-0.41022 +
SOTMP*(0.007991 - 0.000077774*SOTMP) ))*ELEVGC (2)
where:
SODOX = concentration of dissolved oxygen in surface outflow (mg/1)
SOTMP = surface outflow temperature (degrees C)
ELEVGC = correction factor for elevation above sea level
(ELEVGC is a function of the mean elevation of the segment)
The empirical equation for dissolved carbon dioxide concentration of the overland flow (Harnard and
Davis, 1943) is:
SOC02 = (10**(2385.73/ABSTMP - 14.0184 + 0.0152642*ABSTMP))
*0.000316*ELEVGC*12000.0 (3)
where:
SOC02 = concentration of dissolved C02 in surface outflow (mg C/l)
ABSTMP = absolute temperature of surface outflow (degrees K)
If lateral inflow temperature and/or gas concentrations are input, then the effective outflow values are
weighted averages of the computed value and the lateral inflow, using the appropriate weighting factor for
the soil layer. (Refer to lateral inflows for a description of the averaging method.)
142
-------
Functional Description
Washoff of Quality Constituents Using Simple Relationships - IQUAL
(Section IQUAL of Module IMPLND)
Purpose
The IQUAL module section simulates water quality constituents or pollutants in the outflows from an
impervious land segment using simple relationships with water yield and/or solids. Any constituent can
be simulated by this module section. The user supplies the name, units and parameter values appropriate
to each of the constituents that are needed in the simulation. Note that more detailed methods of
simulating solids, heat, dissolved oxygen, and dissolved carbon dioxide removal from the impervious
land segment are available in other sections of IMPLND.
Approach
The basic algorithms used to simulate quality constituents are a synthesis of those used in the NPS Model
(Donigian and Crawford, 1976b) and HSP QUALITY (Hydrocomp, 1977). However, some options and
combinations are unique to HSPF.
Figure "Flow diagram for IQUAL section of IMPLND Application Module" below shows schematically
the fluxes and storages represented in module section IQUAL. A quality constituent may be simulated by
two methods. One approach is to simulate the constituent by association with solids removal. The other
approach is to simulate it by using atmospheric deposition and/or basic accumulation and depletion rates
together with depletion by washoff; that is, constituent outflow from the surface is a function of the water
flow and the constituent in storage. A combination of the two methods may be used in which the
individual fluxes are added to obtain the total surface outflow. These approaches are discussed further in
the descriptions of the corresponding subroutines.
IQUAL allows the user to simulate up to 10 quality constituents at a time. If a constituent is considered
to be associated with solids, it is called a QUALSD. The corresponding term for constituents associated
directly with overland flow is QUALOF. Each of the 10 constituents may be defined as either a
QUALSD or a QUALOF or both. Note that only a QUALOF may receive atmospheric deposition, since
it is the only type to maintain a storage. However, no more than seven of any one of the constituent types
(QUALSD or QUALOF) may be simulated in one operation. The program uses a set of flags to keep
track of these associations. For example, QSDFP(3)=0 means that the third constituent is not associated
with solids, whereas QSDFP(6)=4 means that the sixth constituent is the fourth solids associated
constituent (QUALSD). Similar flag arrays are used to indicate whether or not a quality constituent is a
QUALOF.
143
-------
HSPF Version 12
Removal
by cleaning
^ decay, wind,
etc.
f
^Accumulation!
SQO
Storage of QUAL
on surface for
direct washoff
by overland flow
Storage of
QUAL
associated
with
solids
SOQO
Direct
washoff
of QUAL
by over-
land
\flow/
SOQS
washoff
of QUAL
assoc.
with
solids
~
O
SOQUAL
Total
washoff
outflow
Figure 34: Flow diagram for IQUAL section of IMPLND Application Module
144
-------
Functional Description
Remove by Association with Solids - WASHSD
(subroutine WASHSD)
Purpose
WASHSD simulates the removal of a quality constituent from the impervious land surface by association
with the solids removal determined in section SOLIDS.
Method
This approach assumes that the particular quality constituent removed from the land surface is in
proportion to the solids removal. The relation is specified by user-input "potency factors." Potency
factors indicate the constituent strength relative to the solids removal from the surface. For each quality
constituent associated with solids, the user supplies separate potency factors. The user is also able to
supply monthly potency factors for constituents that vary somewhat consistently throughout the year.
Removal of the solids associated constituent by solids washoff is simulated by:
SOQS = SOSLD*POTFW (1)
where:
SOQS = flux of constituent associated with solids washoff
(quantity/ac per interval)
SOSLD = washoff of detached solids (tons/ac per interval)
POTFW = washoff potency factor (quantity/ton)
If lateral inflow of a QUALSD is considered, then the inflow potency factor SLIQSP, which is input as a
time series, and the current washoff potency factor POTFW, are combined as a weighted average using
the input parameter SDLFAC. The modified effective potency factor is used in place of POTFW. (Refer
to section lateral inflows for a description of the weighting method.)
The unit "quantity" refers to mass units (pounds or tons in the English system) or some other quantity,
such as number of organisms for coliforms. The user specifies the units of "quantity."
145
-------
HSPF Version 12
Accumulate and Remove by Constant Unit Rate and Overland Flow - WASHOF
(subroutine WASHOF)
Purpose
WASHOF simulates the accumulation of a quality constituent on the impervious land surface and its
removal by a constant unit rate and by overland flow.
Method
This subroutine differs from subroutine WASHSD in that the storage of the quality constituent is
simulated. The stored constituent can be accumulated and removed by processes which are independent
of storm events, such as cleaning, decay, and wind deposition, and it is washed off by overland flow. The
accumulation and removal rates can have monthly values to account for seasonal fluctuations. The
constituent may, alternatively or additionally, receive atmospheric deposition and/or lateral inflows from
upslope land segments.
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If it is in the form of a concentration in rainfall, then it is considered wet deposition, and
HSPF automatically combines it with the input rainfall time series to compute the resulting flux. Either
type of deposition data can be input as a time series, which covers the entire simulation period, or as a set
of monthly values that is used for each year of the simulation. The atmospheric deposition time series are
documented in the EXTNL table of the Time Series Catalog for IMPLND, and are input in the EXT
SOURCES block. The monthly values are input in the MONTH-DATA block.
If atmospheric deposition data are input, the surface storage is updated:
SQO = SQO + ADFX + PREC*ADCN (2)
where:
SQO = storage of available quality constituent on the surface
(mass/area)
ADFX = dry or total atmospheric deposition flux (mass/area per
interval)
PREC = precipitation depth
ADCN = concentration for wet atmospheric deposition (mass/volume)
When there is surface outflow and some quality constituent is in storage, then washoff is simulated using
the commonly used relationship:
SOQO = SQO*(1.0 - EXP(-SURO*WSFAC)) (3)
where:
SOQO = washoff of the quality constituent from the land
surface (quantity/ac per interval)
SQO = storage of the quality constituent on the surface
(quantity/ac)
SURO = surface outflow of water (in/interval)
WSFAC = susceptibility of the quality constituent to washoff (/inch)
EXP = exponential function
146
-------
Functional Description
If QSOFG=l, then the storage is updated once a day to account for accumulation and removal which
occurs independent of runoff by the equation:
SQO = ACQOP + SQOS*(1.0 - REMQOP) (4)
where:
ACQOP = accumulation rate of the constituent (quantity/ac per day)
SQOS = SQO at the start of the interval
REMQOP = unit removal rate of the stored constituent (per day)
If QSOFG is 2, then accumulation and removal occur every interval, and the removal rate is applied to
atmospheric deposition and lateral inflows, as well as the accumulation rate.
The removal rate is recomputed every interval as:
REMOV= REMQOP+ INTOT/(ACQOP/REMQOP) (4a)
where:
INTOT = total of atmospheric deposition and lateral inflow
REMOV is capped at 1.0, and then the storage is updated as:
SQO= ACQOP*(DELT60/24.0)+ SQO*(1.0-REMOV)**(DELT60/24.0) (4b)
where:
DELT60 = number of hours per interval
The Run Interpreter computes REMQOP and WSFAC for this subroutine according to:
REMQOP = ACQOP/SQOLIM (5)
where:
SQOLIM = asymptotic limit for SQO as time approaches infinity,
if no washoff occurs (quantity/ac),
and
WSFAC = 2.30/WSQOP (6)
where:
WSQOP = rate of surface runoff that results in 90% washoff in 1 hour
(in/hr)
Since the unit removal rate (REMQOP) is computed from two other parameters, it is not supplied directly
by the user.
147
-------
HSPF Version 12
Free-flowing Reach or Mixed Reservoir - RCHRES
(Module RCHRES)
This module simulates the processes which occur in a single reach of open or closed channel or a
completely mixed lake. For convenience, such a processing unit is referred to as a RCHRES throughout
this documentation. In keeping with the assumption of complete mixing, the RCHRES consists of a
single zone situated between two nodes, which are the extremities of the RCHRES.
Flow through a RCHRES is assumed to be unidirectional. The inflow and outflow of materials through a
RCHRES are illustrated in Figure "Flow of materials through a RCHRES" below. Water and other
constituents which arrive from other RCHRES's and local sources enter the RCHRES through a single
gate (INFLO). Outflows may leave the RCHRES through one of several gates or exits (OFLO). A
RCHRES can have up to five OFLO exits. Precipitation, evaporation, and other fluxes also influence the
processes which occur in the RCHRES, but do not pass through the exits.
The ten major subdivisions of the RCHRES module and their functions are shown in Figure "Structure
chart for RCHRES Module" below. RPTOT, RBAROT, and RPRINT perform the storage and printout
of results from the other module sections of RCHRES (HYDR through RQUAL). Within a module
section, simulation of physical processes (longitudinal advection, sinking, benthal release) is always
performed before simulation of biochemical processes.
The user specifies which module sections are active. If any "quality" sections (CONS through RQUAL)
are active, section ADCALC must also be active; it computes certain quantities needed to simulate
advection of the quality constituents. Besides fulfilling this requirement, the user must ensure that all the
time series required by the active sections are available, either as supplied input time series or as data
computed by another module section. For example, if RQUAL is active, the water temperature must be
supplied, either as an input time series or by activating section HTRCH which will compute it.
Water Rights Categories
The HYDR section of RCHRES allows the optional simulation of water "categories", which are used to
facilitate the modeling of water rights or ownership. If this option is turned on (by including the
CATEGORY block in the UCI), each RCHRES in the run keeps track of the user-defined categories of all
inflows, storages, and outflows, as well as precipitation and evaporation fluxes. Up to 100 categories can
be specified in the CATEGORY block. Details of this option are provided in the discussion of HYDR
below, and the CATEGORY block documentation. Also, refer to the description of HYDR inputs.
148
-------
Functional Description
OateOFUH
Figure 35: Flow of materials through a RCHRES
149
-------
HSPF Version 12
Figure 36: Structure chart for RCHRES Module
150
-------
Functional Description
Sinking of Suspended Material - SINK
(subroutine SINK)
Purpose
SINK calculates the quantity of material settling out of a RCHRES and determines the resultant change in
concentration of the material within the RCHRES.
Method
The portion of material settling out of a RCHRES during an interval is calculated by the equation:
SNKOUT = CONC*(KSET/AVDEPE) (1)
where:
SNKOUT = fraction of material which settles out (reduction of
concentration/interval)
CONC = concentration of material before deposition
KSET = sinking rate (ft/interval) (dependent upon RCHRES
characteristics and type of material)
AVDEPE = average depth of water (feet)
In any interval in which KSET is greater than AVDEPE, all the material in the RCHRES sinks out of the
water.
The mass of material sinking out of the RCHRES is calculated as:
SNKMAT = SNKOUT*VOL (2)
where:
SNKMAT = mass of material that settles out during the interval
(mass.ft3/l/interval or mass,m3/l/interval)
VOL = volume of water in RCHRES (ft3 or m3)
151
-------
HSPF Version 12
Hydraulic Behavior - HYDR
(Section HYDR of Module RCHRES)
Purpose
The purpose of this code is to simulate the hydraulic processes occurring in a reach or a mixed reservoir
(RCHRES). The final goal of the process may be to route floods, study reservoir behavior, or analyze
constituents dissolved in the water.
Schematic View of Fluxes and Storage
Figure "Flow diagram for the HYDR Section of the RCHRES Application Module" below shows the
principal state variable (stored volume) and fluxes with which this part of HSPF deals.
All water entering the RCHRES from surface and subsurface sources arrives through "gate" INFLO; this
quantity is called IVOL. The user indicates the time series which enter this gate in the EXT SOURCES
or NETWORK Block in the User's Control Input (UCI). If no time series are specified, the system
assumes the RCHRES has zero inflow.
The volume of water which leaves the RCHRES during a simulation time interval, through gate
OFLO(N), is called OVOL(N). The total outflow is ROVOL.
The input of water from precipitation falling directly on the water surface and the loss of water by
evaporation from the surface can also be considered. The user activates these options by supplying the
time series PREC and/or POTEV in the User's Control Input (External Sources block). These time series
are in units of depth/interval. The code multiplies these quantities by the current surface area of the
RCHRES to obtain volumes of input or output. If either time series is absent from the UCI it is assumed
that the option is inactive and the corresponding flux is zero.
The basic equation is that of continuity:
VOL - VOLS = IVOL + PRSUPY - VOLEV - ROVOL (1)
where:
VOL = volume at the end of the interval
VOLS = volume at the start of the interval
This can be written as:
VOL = VOLT - ROVOL (2)
where:
VOLT = IVOL + PRSUPY - VOLEV + VOLS
The principal task of this subroutine is to estimate ROVOL and, hence, the volume at the end of the
interval (VOL).
152
-------
Functional Description
precipitation
on RCHRES
surface
A
y
fVOL
Inflow
VOLEV
Evaporation
VOL
Vblumfl of water
in RCHRES
DVOL(1J
out-
flow
mm•
8*111
v s
N
OVOL
(N EXITS)
Mlt-
iow
thru"
•xit
ROVOL
Total
out-
flow
v y
MEXITS
Figure 37: Flow diagram for the HYDR Section of the RCHRES Application Module
Calculation of Outflows and VOL
If water is available, it is assumed that the total volume of water leaving a RCHRES in an interval is:
ROVOL = (KS*ROS + COKS*ROD)*DELTS (3)
where:
KS
COKS
ROS
ROD
DELTS
weighting factor (0 <= KS <= 0.99)
1.0 - KS (complement of KS)
total rate of outflow from the RCHRES at the start of the
interval
total rate of demanded outflow for the end of the interval
simulation interval in seconds
That is, the mean rate of outflow is assumed to be a weighted mean of the rates at the start and end of the
interval. The weighting factor KS is supplied either by the user or by default. Care should be exercised
in selecting a value because, as KS increases from 0.0 to 1.0, there is an increasing risk that the
computation of outflow rates will become unstable. Theoretically, a value of 0.5 gives the most accurate
results, provided oscillations do not occur. The default value of 0.0 has zero risk, but gives less accurate
results. Users are advised to be very careful if a nonzero value is used; users should not select a value
greater than 0.5.
153
-------
HSPF Version 12
Combination of Equations 2 and 3 yields:
VOL = VOLT - (KS*ROS + COKS*ROD)*DELTS (4)
There are two unknown values in this equation: VOL and ROD. Thus, a second relation is required to
solve the problem. To provide this function, it is assumed that outflow demands for the individual exits
are of the form:
OD(1) = fl(VOL,t)
OD(2) = f2(VOL,t)
OD(NEXITS) = fNEXITS(VOL,t) (5)
That is, the outflow demand for each exit is a function of volume or time or a combination. This topic is
discussed in greater detail in DEMAND. It follows that the total outflow demand is of similar form:
ROD = funct(VOL,t) (6)
At a given time in the simulation, t is known and the above functions reduce to:
OD(N) = fN(VOL)
ROD = funct(VOL)
Equation 8 provides the second relation required to solve the problem.
Equations 4, 7, and 8 are shown in Figure "Graphical representation of the equations used to compute
outflow rates and volume" below. The point of intersection of Equations 4 and 8 gives the values RO,
VOL, and hence 0(1), 0(2), etc.
where:
RO = total rate of outflow from the RCHRES at the end of the interval
0(N) = rate of outflow through exit N at the end of the interval
In HSPF, it is assumed that each outflow demand can be represented by one or both of the following
types of components:
1. Component = function(VOL). This is most useful in simulating RCHRES's where there is no control
over the flow or where gate settings are only a function of water level. This component is supplied to the
program in the form of an FTABLE.
2. Component = function(time). This is most useful for handling demands for municipal, industrial, or
agricultural use. The function may be cyclic (for example, annual cycle) or general (for example, annual
cycle superimposed on an increasing trend). The user must supply this component in the form of an input
time series.
If a user indicates that both types of component are present in an outflow demand, then the user must also
specify how they are to be combined to get the demand. HSPF allows the following options:
1. OD(N) = Min [fN(VOL),gN(t)]. This is useful in cases such as the following:
154
-------
Functional Description
Suppose a water user has an optimum demand which may be expressed as a function of time (gN(t));
however, his pump has a limited capacity to deliver water. This capacity is a function of the water level
in the RCHRES from which the pump is drawing the water. Thus, it can be expressed as a function of the
volume in the RCHRES (fN(VOL)). Then, his actual demand for water will be the minimum of the two
functions. Note that gN(t) is an input time series (OUTDGT). See the Time Series Catalog.
2. OD(N) = Max [fN(VOL),gN(t)]
3. OD(N) = fN(VOL) + gN(t)
If one or more outflow demands have an fN(VOL) component (part A of Figure "Graphical
representation of the equations used to compute outflow rates and volume"), subroutine ROUTE is called
to solve the routing equations. In this case, the evaluation of the outflow demands and the solution of the
equations can be quite complicated.
If there is no fN(VOL) component in any demand, the process is much simpler (part B of the figure).
Subroutine NOROUT is called in this case.
Irrigation Withdrawals from a RCHRES
One of the options for the PWATER irrigation module in PERLND is to withdraw water from a
RCHRES. Because of the way that the PERLND and RCHRES operations must be linked, the
withdrawals must be handled separately from the normal routing operations.
Irrigation withdrawal demands are made directly by the PERLND operations. No time series
connections, such as OUTDGT, are necessary.
When irrigation withdrawals from the RCHRES are occurring, HSPF runs each operation in the OPN
SEQUENCE block in order, time step by time step. All of the irrigation withdrawal demands made of a
RCHRES from the PERLND operations in a given time step are summed up, and when the RCHRES is
run, these withdrawals are subtracted from the initial storage VOLS. The initial outflow rates ROS and
OS are recalculated as if the previous RCHRES time step had already removed the irrigation withdrawal.
The inflow, precipitation, evaporation, and routing then occur normally.
The irrigation module will not attempt to withdraw more water than is present in the RCHRES at the end
of the last time step. The user may also specify a non-zero minimum volume IRMINV, below which the
PERLNDs are not permitted to draw irrigation water from the reach.
One exit of the RCHRES is designated by the parameter IREXIT as the irrigation withdrawal exit. This
exit may not have any other fN(VOL) or gN(t) demands, i.e., ODFVFG and ODGTFG must both be zero.
This means that if the stream reach has a normal downstream outflow, then the RCHRES must have at
least two exits.
RIRDEM is the total amount of water demanded from a RCHRES per time step. RIRSHT is the shortage,
i.e., the difference between the demand and the actual withdrawal. The total actual withdrawals
RCHWDL are equal to the outflow from the irrigation exit (i.e., OVOL(IREXIT)).
155
-------
HSPF Version 12
OOI1I 1 00(21 / ODffl /
Outflow and Outflow D*m»nd Outflow and Outflow Dmmmnd
(A) |B|
Figure 38: Graphical representation of the equations used to compute outflow rates and volume
Inflow
Lined
Cluwmel
^Outflow
A) Typical much and mumzi mmrvoir
Col
1 2 3 4 5 1 7
I
iHIH s
& £ 5 C t ~ 2
0 0 0 0 0 0 0
1.5 1 I ij A 11 0
10 15 80 12 18 10 0
50 1002500 12 * 20 20
RCHTAB
B) function table used to specify geometry
and hydraulic propartins of a RCMFtES
Figure 39: Typical RCHRES configurations and the method used to represent geometric and hydraulic
properties
156
-------
Functional Description
Representing the Geometry and Hydraulic Properties of a RCHRES
HSPF makes no assumptions regarding the shape of a RCHRES. It does not require that the cross-section
be trapezoidal or even that the shape be prismoidal. This is one reason why both free flowing reaches and
reservoirs can be handled by the same application module. Both of the shapes shown in part A of Figure
"Typical RCHRES configurations and the method used to represent geometric and hydraulic properties"
above are acceptable. However, HSPF does assume that:
1. There is a fixed relation between depth (at the deepest point in the RCHRES), surface area, and
volume.
2. For any outflow demand with an fN(VOL) component, the functional relation is constant in time
(with the exception discussed in DEMAND).
These assumptions rule out cases where the flow reverses direction or where one RCHRES influences
another upstream of it in a time-dependent way. No account is taken of momentum. The routing
technique falls in the class known as "storage routing" or "kinematic wave" methods.
The user specifies the properties of a RCHRES in a table called RCHTAB (part B of Figure "Typical
RCHRES configurations and the method used to represent geometric and hydraulic properties" above). It
has columns for the depth, surface area, volume, and volume dependent functions (fN(VOL)). Each row
contains values appropriate to a specified water surface elevation. The system obtains intermediate
values by interpolation. Thus, the number of rows in RCHTAB depends on the size of the cross section
and the desired resolution. The table is either included in the User's Control Input (in the function tables
(FTABLES) block) or it may be stored in a Watershed Data Management (WDM) file. A subsidiary,
stand-alone program can be used to generate this table for RCHRES's with simple properties (for
prismoidal channels with uniform flow, use Manning's equation).
Auxiliary Variables
Besides calculating outflow rates and the volume in a RCHRES, HSPF can compute the values of some
auxiliary state variables:
1. If AUX1 FG= 1, DEP, STAGE, SAREA, AVDEP, TWID, and HRAD are computed, where: DEP
is the depth at the deepest point; STAGE is the water stage at a related point; SAREA is the
surface area of water in the RCHRES; AVDEP is the average depth (volume/surface area); TWID
is the top width (surface area/length); HRAD is the hydraulic radius.
2. If AUX2FG=1, AVSECT and AVVEL are computed, where: AVSECT is the average cross
section (volume/length); AVVEL is the average velocity (discharge/AVSECT).
3. If AUX3FG=1, USTAR and TAU are computed, where: USTAR is the bed shear velocity; TAU
is the bed shear stress.
Note that these are point-valued time series; that is, they apply at the boundaries (start or end) of
simulation time intervals.
The user specifies whether AUX1FG, AUX2FG, and AUX3FG are ON or OFF. If certain constituents
are being simulated, one or more of these flags might be required to be ON. For example, simulation of
oxygen (group OXRX) requires that both AUX1FG and AUX2FG be ON. AUX3FG must be ON if
sediment is simulated (group SEDTRN).
157
-------
HSPF Version 12
Outflows Using Hydraulic Routing - ROUTE
(subroutine ROUTE)
Purpose
ROUTE computes the rates and volumes of outflow from a RCHRES and the new volume in cases where
at least one outflow demand has an fN(VOL) component.
Method
The problem is to solve simultaneously Equations 4 and 8. The cases which arise are shown graphically
in Figure "Graphical representation of the work performed by subroutine ROUTE" below. Equations 7
and 8 are represented by a series of straight line segments. The breakpoints in the lines correspond to a
row of entries in RCHTAB (the FTABLE). A segment of Equation 8 can be represented by the equation:
(VOL - VI)/(ROD - ROD1) = (V2 - Vl)/(ROD2 - ROD1) (9)
where VI,V2 are volumes specified in adjacent rows of RCHTAB, for the lower and upper extremities of
the straight-line segment, respectively. ROD1 and ROD2 are the corresponding total outflow demands.
The first step is to find the intercept of Equation 4 on the volume axis:
VOLINT = VOLT - KS*ROS*DELTS (10)
If VOLINT is less than zero, the equations cannot be solved (case 3). Equation 4 will give a negative
value for VOL, even if ROD is zero. Physically, this means that we started the interval with too little
water to satisfy the projected outflow demand, even if the outflow rate at the end of the interval is zero.
Accordingly, the code does the following:
VOL = 0.0
RO =0.0
O (*) =0.0
ROVOL = VOLT
If VOLINT is greater than or equal to zero, the outflow rate at the end of the interval will be nonzero
(case 1 or 2). To determine the case:
1. The intercept of Equation 4 on the Volume axis is found:
OINT = VOLINT/(DELTS*COKS) (11)
2. The maximum outflow demand for which the volume is still zero (RODZ) is found.
If OINT is greater than RODZ, Equations 4 and 8 can be solved (case 1). The solution involves searching
for the segment of Equation 8 which contains the point of intersection of the graphs, and finding the
coordinates of the point (RO,VOL). This is done by subroutine SOLVE.
158
-------
HSPF Version 12
Find Outflow Demands Corresponding to Row in RCHTAB - DEMAND
(subroutine DEMAND)
Purpose
DEMAND finds the individual and total outflow demands which apply at the end of the present interval
for a specified level (row) in RCHTAB.
General Method
The approach is to determine the outflow demand for each active exit and accumulate them to find the
total demand.
Evaluating the Demand for Exit N
The outflow demand for an individual exit consists of one or both of two components. Their presence or
absence is indicated by two flags:
Component Flag
fN(VOL) ODFVFG(N)
gN(t) ODGTFG(N)
Finding the fN(VOL) Component
If ODFVFG(N) is zero, there is no fN(VOL) component.
If ODFVFG(N) is greater than zero, there is a fN(VOL) component. The value of the flag is the column
number in RCHTAB containing the value to be used to find the component:
column = ODFVFG(N)
ODFV = fN(VOL) = (column value)*CONVF (12)
where CONVF is a conversion factor which can vary throughout the year. It is supplied by the user in the
RCHRES Block of the User's Control Input. It can be used to incorporate effects into the simulation of,
for example, seasonal variation in channel roughness.
If ODFVFG(N) is less than zero, there is an fN(VOL) component, but the function fN is time varying. In
this case the determination of the component is less direct. The absolute value of ODFVFG(N), say I,
gives the element number of a vector COLIND() which contains a user-supplied time series. The values
in this time series indicate which pair of columns in RCHTAB are used to interpolate fN(VOL). For
example, if COLIND(I) = 4.6 for a given time step, then the value is interpolated between those in
columns 4 and 5:
ODFV = fN(VOL) = (column4 value) +
0.6*[(column5 value) - (column4 value)]*CONVF (13)
160
-------
Functional Description
If the user has selected this option, the time series COLIND(I) must be supplied in the EXT SOURCES
Block of the UCI.
This method of outflow demand specification is useful where a set of rule curves (fN(VOL)) are specified
for releases from a reservoir, and it is necessary to move from one curve to another (gradually or
suddenly) as time progresses in the simulation.
Finding the gN(t) Component
If ODGTFG(N) is zero, there is no gN(t) component. If ODGTFG(N) is greater than zero, there is a gN(t)
component. The value of this flag is the element number of vector OUTDGT() which contains the
required time series:
FG2 = ODGTFG(N)
ODGT = gN(t) = OUTDGT(FG2) (14)
Combining the fN(VOL) and gN(t) Components
If an outflow demand has both of the components described above, the system expects the user to indicate
Min [fN(V
Max [fN (V
fN(VOL) + gN(t) (15)
1.
OD
(N)
2.
OD
(N)
3 .
OD
(N)
use
in
t gN
(t
t gN
(t
(t)
161
-------
HSPF Version 12
Solve Routing Equations - SOLVE
(subroutine SOLVE)
Purpose
SOLVE finds the point where Equations 4 and 8 intersect (case 1 in Figure "Graphical representation of
the work performed by subroutine ROUTE" above).
General Approach
The general idea is to select a segment of Equation 8, and determine the point of intersection with
Equation 4. If this point lies outside the selected segment, the code will select the adjacent segment (in
the direction in which the point of intersection lies) and repeat the process. This continues until the point
lies within the segment under consideration. To minimize searching, the segment in which the point of
intersection was last located is used to start the process.
Solving the Simultaneous Linear Equations
Equations 4 and 9 can be written as:
Al*VOL+ Bl*ROD = CI
A2*VOL+ B2*ROD = C2
116)
117)
These equations can be solved by evaluating the determinants:
DET =
A1 B1
A2 B2
DETV =
CI B1
C2 B2
DETO =
A1 CI
A2 C2
118)
In the code of this subroutine:
FACTAl = A1 = 1.0/(COKS*DELTS) (19)
FACTA2 = A2 = ROD1 - ROD2 (20)
FACTB1 = B1 = 1.0 (21)
FACTB2 = B2 = V2 - VI (22)
FACTC1 = CI = OINT (23)
FACTC2 = C2 = (V2*RODl) - (Vl*ROD2) (24)
By substituting Equations 19 through 24 in Equation 18, the determinants are evaluated as:
DET = FACTA1*FACTB2 - FACTA2 (25)
DETV = OINT*FACTB2 - FACTC2 (26)
DETO = FAC TA1* FAC TC 2 - FACTA2 *OINT (27)
The coordinates of the point of intersection are:
VOL = DETV/DET (28)
RO = DETO/DET (29)
162
-------
Functional Description
Outflows Without Using Hydraulic Routing - NOROUT
(subroutine NOROUT)
Purpose
NOROUT is used to compute the rates and volumes of outflow from a RCHRES and the new volume in
cases where no outflow demand has an fN(VOL) component; that is, where all outflow demands are
functions of time only.
Method
Equations 4 and 8 are illustrated for this situation in Figure "Graphical representation of the work
performed by subroutine NOROUT" below. The solution procedure is similar to that used in subroutine
ROUTE, except that: because no outflow demands depend on volume, no table look-up and interpolation
is required to evaluate them, and the simultaneous solution of Equations 4 and 8 is easier.
The intercept of Equation 4 on the volume axis is found, as before, using Equation 10. If VOLINT is less
than 0.0, there is no solution (case 3). The code takes similar action to that taken by subroutine ROUTE
for this case.
If VOLINT is greater than or equal to 0.0, the solution is either case 1 or case 2, as before. In either case,
the first step is to evaluate the outflow demands:
FG = ODGTFG(N)
OD(N) = OUTDGT(FG) (30)
ROD = OD(1) + ... OD(NEXITS) (31)
The intercept of Equation 4 on the volume axis (OINT) is found using Equation 11. If OINT is greater
than ROD, Equations 4 and 8 can be solved (case 1):
RO = ROD
O(*) = OD ( *) (32)
And from Equations 4 and 10,
VOL = VOLINT - COKS*RO*DELTS (33)
If OINT is less than or equal to ROD, Equations 4 and 8 cannot be solved (case 2). The physical meaning
and the action taken by the code are identical to that described for subroutine ROUTE.
163
-------
Functional Description
Values of Auxiliary State Variables - AUXIL
(subroutine AUXIL)
Purpose
AUXIL is used to compute the depth, stage, surface area, average depth, top width, and hydraulic radius
corresponding to a given volume of water in a RCHRES.
Method of Computing Depth
The basic problem is to interpolate a depth value between those given for discrete values of volume in
RCHTAB. This raises the question of how the interpolation should be performed; for example, linear or
quadratic. Whatever method is used, it should be consistent with the fact that volume is the integral of
surface area with respect to depth.
Most RCHRES's are long and relatively narrow (Figure "Illustration of quantities involved in calculation
of depth" below). To perform interpolation, it is assumed that surface area varies linearly with depth
between neighboring levels (rows) in RCHTAB:
SAREA = SA1 + (SA2 - SA1)*RDEP (34)
where SAREA is the surface area at depth DEP; SA1, SA2 are the tabulated values of surface area
immediately above and below SAREA; RDEP is the relative depth (DEP-DEP1)/(DEP2-DEP1); DEP1,
DEP2 are the tabulated values of depth immediately above and below DEP.
By integrating the above equation with respect to depth and equating the result to volume:
(A*RDEP**2) + (B*RDEP) + C = 0.0 (35)
where:
A = SA2 - SA1
B = 2.0*SA1
C = -(VOL - VOL1)/(VOL2 - VOLl)*(B + A)
Equation 35 provides a means of interpolating depth, given volume. There is a quadratic relation between
RDEP and VOL. The equation can be solved for RDEP analytically, but, in HSPF, Newton's method of
successive approximations is used because it is generally faster in execution:
1. Calculation starts with an estimate of RDEP: RDEP1 = 0.5
2. The function FRDEP = (A*RDEP1**2) + (B*RDEP1) + C is evaluated
3. The derivative DFRDEP = 2.0*A*RDEP1 + B is evaluated
4. Anew value RDEP2 = RDEP1 - FRDEP/DFRDEP is calculated
5. Steps 2-4 are repeated with RDEP1 = RDEP2 until the change in RDEP is small
165
-------
HSPF Version 12
Stage might to the
water level at this
point relative to
som* fixed datum
OEP2
.SA2, VOL2 apply
attMsJepth
SA1, VOL1 apply
at this depth
Figure 42: Illustration of quantities involved in calculation of depth
The depth is found using:
DEP = DEP1 + RDEP2*(DEP2 - DEP1)
Computation of Other State Variables
STAGE is the name for any quantity which differs from DEP by a constant:
STAGE = DEP + STCOR
I 36)
I 37 )
where:
STCOR = the difference, supplied by the user
Surface area is computed using a formula based on Equation 34:
SAREA = SA1 + A*RDEP2
: 38)
Average depth is computed as:
AVDEP = VOL/SAREA
: 39)
The mean top width is found using:
TWID = SAREA/LEN
: 40)
where:
LEN = length of the RCHRES, supplied by the user
The hydraulic radius is calculated as a function of average water depth (AVDEP) and mean top width
(TWID):
HRAD = (AVDEP*TWID)/(2.*AVDEP + TWID)
: 4i)
166
-------
Functional Description
Bed Shear Stress and Shear Velocity - SHEAR
(subroutine SHEAR)
Purpose
SHEAR is used to compute the bed shear velocity and shear stress, based on the mean particle size of bed
sediment and the hydraulic properties of the RCHRES (i.e., average water depth, average velocity,
hydraulic radius, and slope).
The method of calculating shear velocity and shear stress depends on whether the RCHRES is a lake or a
river. If the RCHRES is a lake (LKFG=1), shear velocity is computed using Equation 8.49 from
"Hydraulics of Sediment Transport", by W. H. Graf:
USTAR = AWEL/(17 . 66 + (ALOGIO (AVDEP/ ( 96 . 5*DB50 ) ) ) *2 . 3/AKAPPA) (42)
where:
USTAR = shear velocity (ft/s or m/s)
AWEL = average flow velocity (ft/s or m/s)
AVDEP = average water depth (ft or m)
DB50 = median diameter of bed material (ft or m)
AKAPPA = Karman constant (AKAPPA = 0.4)
The shear stress (TAU) on a lake bed is calculated as:
TAU = GAM*(USTAR**2)/GRAV (43)
where:
TAU = bed shear stress (lb/ft2 or kg/m2)
GAM = unit weight, or density, of water (62.4 lb/ft3 or 1000 kg/m3)
GRAY = acceleration due to gravity (32.2 ft/sec2 or 9.81 m/sec2)
If the RCHRES being simulated is a stream or river, both shear velocity and shear stress are determined
as functions of the slope and hydraulic radius of the reach:
USTAR = SQRT(GRAV*SLOPE*HRAD) (44)
where:
SLOPE = slope of the RCHRES (-)
HRAD = hydraulic radius (ft or m)
and
TAU = SLOPE*GAM*HRAD (45)
where:
TAU = stream bed shear stress (lb/ft2 or kg/m2)
167
-------
HSPF Version 12
Water Rights Categories
Categories can be used to facilitate the modeling of water rights in a RCHRES. If categories are being
simulated (NCAT > 0) in the CATEGORY block), each RCHRES in the run keeps track of the categories
of all inflows, storages, and outflows, as well as precipitation and evaporation fluxes. Up to 100
categories may be specified in the CATEGORY block.
The storage of each category of water in a RCHRES is called CVOL(C). The inflows of each category
are CIVOL(C). The category outflows from exit gate OFLO(N) are called COVOL(C,N), and the total
outflow of each category is CROVOL(C). These quantities are illustrated in Figure "Flow diagram for
water categories in the HYDR Section of the RCHRES Application Module" below.
The initial storage of water in a RCHRES may be assigned to a single category, or fractions of the storage
can be assigned to specified categories. The default is to divide the storage equally among all active
categories.
All water entering a RCHRES must be assigned a category. The inflow to each category is input as time
series CIVOL, and IVOL is computed as the sum.
By default, precipitation is divided proportionally among all categories present in a RCHRES according
to their current storage fraction CFRAC(C), which is calculated as CVOL(C) divided by VOL.
Optionally, it may be assigned to either a single category or to several categories by user-defined
fractions.
Assigning evaporation losses to categories is somewhat more complicated. By default, evaporation is
taken from all categories proportionally based on CFRAC. If a single category is specified, evaporation is
taken from that category as long as sufficient water is present. For more complex situations, a priority
may be assigned to each of several categories. Multiple categories may be given the same priority, and
losses may be divided among them by either user-specified fractions or by CFRAC (the default). When
all specified categories are exhausted, any remaining loss is distributed among the other categories by
CFRAC.
fN(VOL) outflows are calculated from the FTABLE normally. Most free-flowing reaches will use the
default algorithm, which is to pass all categories downstream unchanged, i.e., according to CFRAC. For
more complex situations, categories can be assigned in the same way as for evaporation, with separate
priorities and categories specified for each exit.
Time-dependent demands (gN(t) releases) are handled differently. The time series OUTDGT is replaced
by COTDGT, which is an array specifying the demand from each category for each exit. If there is not
enough water in a category to satisfy the demand, the release is cut back, and the storage of that category
is reduced to zero. Water is not "borrowed" from other categories to make up the flow. Any deficit in the
demand is accumulated throughout the run in the time series CDFVOL. If a category is drawn from more
than one exit, a priority may be established for each demand. The priority may be specified as either a
real number or a date, such as an ownership date.
168
-------
Functional Description
PRSUPY
VOLEV
CIVOL(AA)
CIVOL(ZZ)
Category
inflows
CVOMAA)
CVOL(ZZ)
Category
Storages
* COVOL(AA.I)
- COVOL(AA.2)
- COVOL(AA,6>_
-COVOL(ZZ,1)~
•* COVOL(ZZ,2)
¦* COVOL{ZZ,5)
CROVOLfAA)
¦ ¦ ¦
Category
Outflows
by exit
• CROVOL(ZZ)
Total
Category
Outflows
Figure 43: Flow diagram for water categories in the HYDR Section of the RCHRES Application Module
If an exit uses FUNCT to combine fN(VOL) and gN(t) demands, then OUTDGT is calculated as the sum
of COTDGT for that exit, and the combining function is applied normally.
COVOL is then the result of the actual releases of gN(t) demands COTDGT and the apportionment of
fN(VOL) flows by category. The outflow rate is called CO(C,N). The total category outflow volume and
rate are CROVOL and CRO, respectively.
169
-------
HSPF Version 12
Prepare to Simulate Advection of Fully Entrained Constituents - ADCALC
(Section ADCALC of Module RCHRES)
Purpose
ADCALC calculates values for variables which are necessary to simulate longitudinal advection of
dissolved or entrained constituents. These variables are dependent upon the volume and outflow values
calculated in the hydraulics section (HYDR).
Approach
The outflow of an entrained constituent is a weighted mean of two quantities: one is an estimate based on
conditions at the start of the time step, the other reflects conditions at the end of the time step. The
weighting factors are called JS and COJS (complement of JS), respectively. The values of the weighting
coefficients depend on (1) the relative volume of stored water in the RCHRES compared to the volume
leaving in a single time step and (2) the uniformity of the velocity across a cross-section of the RCHRES.
In order to represent these factors, two variables are defined: RAT and CRRAT. RAT is the ratio of
RCHRES volume at the start of the interval to the outflow volume based on the outflow rate at the start of
the interval:
RAT = VOLS/(ROS*DELTS) (1)
where:
VOLS = volume of water at the start of interval (ft3 or m3)
ROS = outflow rate at start of interval (ft3/s or m3/s)
DELTS = number of seconds in interval
The parameter CRRAT is defined as the ratio of maximum velocity to mean velocity in the RCHRES
cross-section under typical flow conditions. CRRAT must always have a value of 1.0 or greater. A value
of 1.0 corresponds to a totally uniform velocity (plug flow) across the RCHRES.
Determination of JS and COJS
If the value of RAT is greater than that of CRRAT, it is assumed that all outflow over a given time
interval was contained in the RCHRES at the start of the interval, and the mean rate of outflow of material
is entirely dependent upon the rate of outflow at the start of the interval (JS = 1.0). If the value of RAT is
less than CRRAT, it is assumed that part of the water in the outflow entered the RCHRES as inflow
during the same interval; in this case, the concentration of inflowing material will affect the outflow
concentration in the same interval, and JS will have a value less than 1.0. The relationship of RAT,
CRRAT, and JS is illustrated in Figure "Determination of weighting factors for advection calculations"
below. COJS is (1.0 - JS).
Another way to interpret the relationship of these variables is that no inflowing material is present in the
outflow in the same interval if the outflow volume is less than (VOLS/CRRAT).
Calculation of Components of Outflow Volume
Components of outflow volume based on conditions at the start of the interval (SROVOL) and the end of
the interval (EROVOL) are calculated as:
170
-------
Functional Description
1.0
JS
0.0
CRRAT
RAT
Figure 44: Determination of weighting factors for advection calculations
SROVOL = JS*ROS*DELTS
EROVOL = COJS*RO*DELTS
where:
SROVOL = outflow volume component based on start of interval
(ft3/interval or m3/interval)
EROVOL = outflow volume component based on end of interval
(ft3/interval or m3/interval)
ROS = outflow rate at start of interval (ft3/s or m3/s)
RO = outflow rate at end of interval (ft3/s or m3/s)
DELTS = number of seconds in interval
Likewise, if there is more than one exit gate for the RCHRES, the corresponding outflow components for
each unit, based on conditions at the start and end of each interval, are calculated as:
SOVOL(N) = JS*OS(N)*DELTS (3)
EOVOL(N) = C0JS*0(N)*DELTS
where:
SOVOL(N)
outflow volume component based on start of interval for
exit gate N (ft3/interval or m3/interval)
EOVOL(N) = outflow volume component based on end of interval for
exit gate N (ft3/interval or m3/interval)
OS(N) = outflow rate at start of interval for exit gate N(ft3/s or m3/s)
O(N) = outflow rate at end of interval for exit gate N (ft3/s or m3/s)
DELTS = number of seconds in interval
It should be noted that SROVOL, EROVOL, SOVOL(N), and EOVOL(N) are not actual outflows from
the RCHRES, but instead are components of outflow based on conditions at the start or end of the
interval. These variables are used in subroutine ADVECT to estimate the advection of constituents.
171
-------
HSPF Version 12
Conservative Constituents - CONS
(Section CONS of Module RCHRES)
Purpose
CONS simulates constituents which, for all practical purposes, do not decay with time or leave the
RCHRES by any mechanism other than advection. Examples include: total dissolved solids, chlorides,
and pesticides and herbicides which decay very slowly. Figure "Flow diagram for conservative
constituents in the CONS section of the RCHRES Application Module" below illustrates the fluxes of
conservative material that are modeled in CONS.
Method
Subroutine CONS performs three functions. First, a value for inflow of material (INCON) is obtained
and converted to internal units. The inflow is the sum of inputs from upstream reaches, tributary land
areas, and atmospheric deposition:
INCON = ICON + SAREA*ADFX + SAREA* PREC *ADCN (1)
where:
INCON = total input to reach (mass/interval)
ICON = input from upstream reaches and tributary land(mass/interval)
SAREA = surface area of reach (area)
ADFX = dry or total atmospheric deposition flux (mass/area per interval)
PREC = precipitation (depth)
ADCN = concentration for wet atmospheric deposition in mass/volume
The atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, or as a set of monthly values.
The atmospheric deposition time series are documented in the EXTNL table of the Time Series Catalog
for RCHRES, and are specified in the EXT SOURCES block of the UCI. Monthly values are input in
the MONTH-DATA block.
After computing inflows, CONS calls subroutine ADVECT to perform longitudinal advection of this
material and the material already contained in the RCHRES. Finally, CONS calculates the mass of
material remaining in the RCHRES after advection; this value, RCON, is necessary for the mass balance
checks on conservatives and is calculated as:
RCON = CON*VOL (2)
where:
RCON = mass of material in RCHRES after advection
CON = concentration of conservative after advection
VOL = volume of water in RCHRES at end of interval (ft3 or m3)
172
-------
Functional Description
ICON (N)
Figure 45: Flow diagram for conservative constituents in the CONS section of the RCHRES Application
Module
Additional Requirements
HSPF allows a maximum of ten conservative constituents. The user selects the units for each constituent;
thus, different conservative constituents may have different units. However, in order to provide this
flexibility, additional input is required. For each constituent the following information must be provided
in the User's Control Input:
1. CONID: the name of the constituent (up to 20 characters long)
2. QTYID: this string (up to 8 characters) contains the units used to describe the quantity of
constituent entering or leaving the RCHRES, or the total quantity of material stored in it.
Examples of possible units for QTYID are 'kg' for kilograms or 'lbs' for pounds
3. CONCID: the concentration units for each conservative (up to 8 characters long); examples are
'mg/1' or 'lbs/ft3'
4. CONV: conversion factor from QTYID/VOL to desired concentration units: CONC =
CONV*(QTY/VOL) (in English system, VOL is expressed in ft3) (in metric system, VOL is
expressed in m3) For example, if:
CONCID is mg/1
QTYID is kg
VOL is in m3
then CONV = 1000.0
173
-------
HSPF Version 12
Advection of Constituent Totally Entrained in Water - ADVECT
(subroutine ADVECT)
Purpose
ADVECT computes the concentration of material in a RCHRES and the quantities of material that leave
the RCHRES due to longitudinal advection through active exits. ADVECT is a generalized subroutine,
and is called by each module section which simulates constituents which undergo normal longitudinal
advection.
Assumptions
Two assumptions are made in the solution technique for normal advection:
1. Each constituent advected by calling subroutine ADVECT is uniformly dispersed throughout the
waters of the RCHRES.
2. Each constituent is completely entrained by the flow; that is, the material moves at the same
horizontal velocity as the water.
Method
The equation of continuity may be written as:
IMAT - ROMAT = (CONC*VOL) - (CONCS*VOLS) (3)
where:
IMAT = inflow of material over the interval
ROMAT = total outflow of material over the interval
CONCS = concentration at the start of the interval
CONC = concentration at the end of the interval
VOLS = volume of water stored in the RCHRES at the start of the interval
VOL = volume of water stored in the RCHRES at the end of the interval
The other basic equation states that the total outflow of material over the time interval is a weighted mean
of two estimates; one based on conditions at the start of the interval, the other on ending conditions:
ROMAT = ((JS*ROS*CONCS) + (COJS*RO*CONC))*DELTS (4)
where:
JS = weighting factor
COJS = 1.0 - JS
ROS = rates of outflow at the start of the interval (m3/s or ft3/s)
RO = rates of outflow at the end of the interval (m3/s or ft3/s)
DELTS = length of interval (seconds)
Using Equations (2) in ADCALC, Equation (4) can be written:
ROMAT = (SROVOL*CONCS) + (EROVOL*CONC) (5)
174
-------
Functional Description
where SROVOL and EROVOL are as defined earlier.
By combining Equations (3) and (5) we can solve for CONC:
CONC = (IMAT + CONCS*(VOLS - SROVOL))/(VOL + EROVOL) (6)
The total amount of material leaving the RCHRES during the interval is calculated from equation (5).
If there is more than one active exit from the RCHRES, the amount of material leaving through each exit
is calculated as:
OMAT = SOVOL*CONCS + EOVOL*CONC (7)
where:
OMAT = amount of material leaving RCHRES through individual exit
SOVOL = outflow volume component for individual exit based on start
of interval
EOVOL = outflow volume component for individual exit based on end
of interval
(SOVOL and EOVOL are defined in ADCALC)
If the RCHRES goes dry during the interval, the concentration at the end of the interval is undefined. The
total amount of material leaving the RCHRES is:
ROMAT = IMAT + (CONCS*VOLS) (8)
If there is more than one active exit from the RCHRES, the amount of material leaving through each exit
from a RCHRES which has gone dry during the interval is calculated as:
OMAT = (SOVOL/SROVOL)*ROMAT (9)
The units in the preceding equations are:
VOLS,VOL m3 or ft3 (call these vol-units)
SROVOL,etc vol-units/interval
CONCS,CONC user defined (call these conc-units)
IMAT,ROMAT,etc conc-units * vol-units/interval
175
-------
HSPF Version 12
Heat Exchange and Water Temperature - HTRCH
(Section HTRCH of Module RCHRES)
Purpose
The purpose of this code is to simulate the processes which determine the water temperature in a reach or
mixed reservoir. Water temperature is one of the most fundamental indices used to determine the nature
of an aquatic environment. Most processes of functional importance to an environment are affected by
temperature. For example, the saturation level of dissolved oxygen varies inversely with temperature.
The decay of reduced organic matter, and hence oxygen demand caused by the decay, increases with
increasing temperature. Some form of temperature dependence is present in nearly all processes. The
prevalence of individual phytoplankton and zooplankton species is often temperature dependent.
Required Time Series
Five time series of meteorological data are required to simulate the temperature balance within a
RCHRES. These are:
1. solar radiation in langleys/interval
2. cloud cover expressed as tenths
3. air temperature in degrees F (English) or degrees C (Metric)
4. dewpoint temperature in degrees F (English) or degrees C (Metric)
5. wind speed in miles/interval (English) or km/interval (Metric)
Note that solar radiation data are usually available as daily totals. The user must generally convert these
data to hourly or two hourly values before using them in HSPF. If the standard HSPF disaggregation rule
were used, a daily value would be divided into equal increments for each interval of the day; this would
not account for the rising and setting of the sun. A similar kind of preprocessing needs to be done if daily
max/min air temperatures are used.
Schematic View of Fluxes and Storages
Figure "Flow diagram for HTRCH section of the RCHRES Application Module" below illustrates the
fluxes involved in this module section. There are no significant internal sources or sinks of temperature
within a RCHRES. Changes in heat content are due only to transport processes across the RCHRES
boundaries. Module section HTRCH considers three major processes: heat transfer by advection, heat
transfer across the air-water interface, and optionally, heat transfer across the water-sediment (bed)
interface. The processes of diffusion and dispersion are not considered in HSPF.
Heat transfer by advection is simulated by treating water temperature as a thermal concentration. This
enables the use of subroutine ADVECT, a standard subroutine which calculates advective transport of
constituents totally entrained in the moving water.
176
-------
Functional Description
QSR
'» \
from solar A
^ radiation J
IHEAT
\/
1 r v
i ^ ^ ^
OF
f Sain \
f through I
\nracjpttailoiiy
OB
f Mux due X
I to longwave >
y radiation J
f
*lo«
1 r ir
OH
Flu* due
lo conducUor
eonwcionj
Qfc
/Losidue
^gyapo ration J
Flux due
to bed
conduction j
OHEAT(N)
outflow
thru
•wit
Bale
vV
ROHEAT
Figure 46: Flow diagram for HTRCH section of the RCHRES Application Module
Heat is transported across the air-water interface by a number of mechanisms, and each must be evaluated
individually. The net transport across the air-water interface is the sum of the individual effects.
Mechanisms which can increase the heat content of the water are absorption of solar radiation, absorption
of longwave radiation, and conduction-convection. Mechanisms which decrease the heat content are
emission of longwave radiation, conduction-convection, and evaporation.
Shortwave Solar Radiation
The shortwave radiation absorbed by a RCHRES is approximated by the following equation:
QSR = 0.97*CFSAEX*SOLRAD*10.0 (1)
where:
QSR = shortwave radiation (kcal/m2/interval)
0.97 = fraction of incident radiation which is assumed absorbed
(3 percent is assumed reflected)
CFSAEX = ratio of radiation incident to water surface to radiation
incident to gage where data were collected. This factor
also accounts for shading of the water body, e.g., by trees
SOLRAD = solar radiation (langleys/interval)
10.0 = conversion factor from langleys to kcal/m2
177
-------
HSPF Version 12
Longwave Radiation
All terrestrial surfaces, as well as the atmosphere, emit longwave radiation. The rate at which each source
emits longwave radiation is dependent upon its temperature. The longwave radiation exchange between
the atmosphere and the RCHRES is estimated using the formula:
QB = SIGMA.*((TWKELV**4) - KATRAD*(10**-6)*CLDFAC*(TAKELV**6))*DELT60 (2)
where:
QB = net transport of longwave radiation (kcal/m2/interval)
SIGMA = Stephan-Boltzman constant multiplied by 0.97 to account
for emissivity of water
TWKELV = water temperature (degrees Kelvin)
KATRAD = atmospheric longwave radiation coefficient with a typical
value of 9.0
CLDFAC = 1.0 + ( . 0017*C**2)
TAKELV = air temperature corrected for elevation difference (deg K)
C = cloud cover, expressed as tenths (range = 0 - 10)
DELT60 = DELT(minutes) divided by 60
Both atmospheric radiation to the water body and back radiation from the water body to the atmosphere
are considered in this equation. QB is positive for transport of energy from the water body to the
atmosphere.
Conduction-Convection
Conductive-convective transport of heat is caused by temperature differences between the air and water.
Heat is transported from the warmer medium to the cooler medium; heat can therefore enter or leave a
water body, depending upon its temperature relative to air temperature. HSPF assumes that the heat
transport is proportional to the temperature difference between the two media. The equation used is:
QH = CFPRES*(KCOND*10**-4)*WIND*(TW - AIRTMP) (3)
where:
QH = conductive-convective heat transport (kcal/m2/interval)
CFPRES = pressure correction factor (dependent on elevation)
KCOND = conductive-convective heat transport coefficient
(typically in the range 1 - 20)
WIND = wind speed (m/interval)
TW = water temperature (deg C)
AIRTMP = air temperature (deg C)
QH is positive for heat transfer from the water to the air.
178
-------
Functional Description
Evaporative Heat Loss
Evaporative heat transport occurs when water evaporates from the water surface. The amount of heat lost
depends on the latent heat of vaporization for water and on the quantity of water evaporated. For
purposes of water temperature simulation, HSPF uses the following equation to calculate the amount of
water evaporated:
EVAP = (KEVAP*10**-9)*WIND*(VPRESW - VPRESA) (4)
where:
EVAP = quantity of water evaporated (m/interval)
KEVAP = evaporation coefficient with typical values of 1 - 5
WIND = wind movement 2 m above the water surface (m/interval)
VPRESW = saturation vapor pressure at the water surface (mbar)
VPRESA = vapor pressure of air above water surface (mbar)
The heat removed by evaporation is then calculated:
QE = HFACT*EVAP
where:
QE = heat loss due to evaporation (kcal/m2/interval)
HFACT = heat loss conversion factor (latent heat of vaporization
multiplied by density of water)
Heat Content of Precipitation
In module section HYDR, an option exists to include the input of water from precipitation falling directly
on the water surface. If this option is activated, it is necessary to assign a temperature to the water added
to the RCHRES in this manner. HSPF assumes that precipitation has the same temperature as the water
surface on which it falls.
Bed conduction
Heat movement between water and bed sediment contributes significantly to the diurnal variation of water
temperature, especially in shallow streams and rivers. Simulation of bed conduction is optional. Also, the
user may select from three alternative methods to represent this process.
Method 1:
If BEDFLG = 1, streambed conduction is computed as a function of the difference in temperature
between the water-streambed interface (temperature = water temperature) and the streambed at an
equilibrium ground temperature at some depth below the bed. The equation is:
QBED = KMUD * (TGRND - TW) (6)
where:
QBED = heat flux from ground to water (kcal/m2/interval)
TGRND = equilibrium ground temperature (C)
TW = water temperature (C)
KMUD = water-ground heat conduction coefficient (kcal/m2/C/interval)
179
-------
HSPF Version 12
KMUD can be estimated as the thermal conductivity of the streambed material divided by the depth
(below the water-sediment interface) where equilibrium temperature is assumed to occur.
Method 2:
If BEDFLG = 2, bed conduction is based on the method of Caupp et al. (1994). The method is an
extension of Method 1 to include a finite sediment or mud layer (consisting of water-saturated sediment)
overlying the ground, which is at an equilibrium temperature. Heat fluxes between the ground and
sediment and between the sediment and water are computed, as well as sediment and water temperatures.
The algorithm, which includes a differencing scheme for updating the sediment temperature, is described
below:
The heat transfer between the ground and sediment is computed as follows:
QGRMUD = KGRND*(TGRND - TMUD) (7)
where:
QGRMUD = heat transfer from ground to sediment layer (kcal/m2/interval)
KGRND = ground-sediment heat conduction coefficient
(kcal/m2/C/interval); (default value = 1.419)
TGRND = equilibrium ground temperature (C)
TMUD = sediment temperature (C)
This heat transfer is used to update the sediment temperature as follows:
TMUD = TMUD + QGRMUD/CPR/MUDDEP
where:
CPR = heat capacity of sediment (1000 kcal/m3/C)
(CPR is assumed to be the heat capacity of water)
MUDDEP = depth of sediment layer (m)
Finally, the new sediment temperature is used to compute the heat transfer between the sediment and
water column:
QBED = KMUD*(TMUD - TW) (9)
where:
QBED = heat flux from sediment to water (kcal/m2/hr)
KMUD = water-sediment heat conduction coefficient (kcal/m2/C/hr)
TW = water temperature (C)
Method 3:
If BEDFLG = 3, the bed conduction computation is based on the method proposed by Jobson (1977,
1979) in which the advection-dispersion equation for heat is solved analytically. Jobson's solution
reduces the bed conduction to a convergent series consisting of the product of the following quantities:
1. Temperature change (deg C) of the water over a specific period (TSTOP intervals) prior to the
current time interval. (DELTT)
2. Heat flux per degree C between the bed and water (over the TSTOP time period). The units are
kcal/m2/C/interval. (DELH)
180
-------
Functional Description
Assuming time intervals of one hour, the equation is:
QBED = ((1=1,TSTOP) [DELH(I) * DELTT(I)] (10)
where:
((1=1,TSTOP)= summation over the past TSTOP hours
DELH(I) = heat flux from bed to water at current interval resulting
from a 1.0 degree C temperature increase at hour I
(kcal/m2/C/hr)
DELTT(I) = temperature change over hour I
Therefore, at each time step, the total bed conduction flux is the summation, over TSTOP, of the product
of these two arrays. As implemented in HSPF, the temperature change at the current time step is
computed twice. The first computation includes all heat flux components except bed conduction; then the
resulting temperature change is used to compute the bed conduction flux, which is used to compute the
final water temperature change.
Values of DELH and TSTOP can be developed from Jobson's equations; these inputs are computed as a
function of the thickness and thermal properties of the bed. Note: The input values of DELH depend
upon the simulation time step (i.e., the units are kcal/m2/C/interval). Also, DELH values are negative.
Net heat exchange
The net heat exchange at the water surface is represented as:
QT = QSR - QB - QH - QE + QP + QBED (11)
where:
QT =
QSR =
QB =
QH =
QE =
QP =
QBED=
net heat exchange in kcal/m2/interval
net heat transport from incident shortwave radiation
net heat transport from longwave radiation
heat transport from conduction-convection
heat transport from evaporation
heat content of precipitation
net heat exchange with bed
Calculation of Water Temperature
Of the five heat transport mechanisms across the air-water interface, three are significant and dependent
upon water temperature. In order to obtain a stable solution for water temperature, these three terms (QB,
QH, QE) are evaluated for the temperature at both the start and end of the interval, and the average of the
two values is taken (trapezoidal approximation). For this purpose, the unknown ending temperature is
approximated by performing a Taylor series expansion about the starting temperature, and ignoring
nonlinear terms. This formulation leads to the following equation for the change in water temperature
over the interval:
DELTTW = CVQT*QT/(1.0 + SPD*CVQT) (12)
where:
DELTTW = change in water temperature (deg C)
CVQT = conversion factor to convert total heat exchange expressed
in kcal/m2/interval to deg C/interval (volume dependent)
181
-------
HSPF Version 12
QT = net heat exchange in kcal/m2/interval (with terms evaluated
at starting temperature)
SPD = sum of partial derivatives of QB, QH, and QE with respect to
water temperature
The heat exchange calculations do not give realistic results when the water body becomes excessively
shallow. Consequently, heat transport processes are not considered if the average depth of water in the
RCHRES falls below 2 inches. When this happens, the water temperature is set equal to the air
temperature.
182
-------
Functional Description
Air Temperature Elevation Difference - RATEMP
(subroutine RATEMP)
Purpose
The purpose of this code is to correct air temperature for any elevation difference between the RCHRES
and the temperature gage.
Approach
The lapse rate for air temperature is dependent upon whether or not precipitation occurs during the time
interval. If precipitation does occur, a wet lapse rate of 1.94E-3 degrees C/ft is assumed. Otherwise, a dry
lapse rate which is a function of the time of day is used. A table of 24 hourly dry lapse rates is built into
HSPF. The corrected air temperature is:
AIRTMP = GATMP - LAPS*ELDAT (13)
where:
AIRTMP = corrected air temperature (deg C)
GATMP = air temperature at gage
LAPS = lapse rate (degrees C/ft)
ELDAT = elevation difference between mean RCHRES elevation and gage
elevation (feet) (ELDAT is positive if the mean RCHRES
elevation is greater than the gage elevation)
183
-------
HSPF Version 12
Behavior of Inorganic Sediment - SEDTRN
(Section SEDTRN of Module RCHRES)
Purpose
The purpose of this code is to simulate the transport, deposition, and scour of inorganic sediment in free-
flowing reaches and mixed reservoirs. The modeling of sediment in channels may be needed for analysis
of such problems as:
1. Structural instability of bridge piers or water intakes caused by scouring.
2. Reduction of reservoir capacity and clogging of irrigation canals and navigable waterways due to
deposition.
3. Reduction of light available to aquatic organisms caused by suspended sediment.
4. Transport of adsorbed pollutants such as fertilizers, herbicides, and pesticides.
Schematic View of Fluxes and Storages
Figure "Flow diagram of inorganic sediment fractions in the SEDTRN section of the RCHRES
Application Module" below shows the principal state variables and fluxes with which module section
SEDTRN deals.
Both the migration characteristics and the adsorptive capacities of sediment vary significantly with
particle size. Consequently, HSPF divides the inorganic sediment load into three components (sand, silt,
and clay), each with its own properties. Parametric information required for cohesive sediments (silt and
clay) include:
1. particle diameter - D
2. particle settling velocity in still water - W
3. particle density - RHO
4. critical shear stress for deposition - TAUCD
5. critical shear stress for scour - TAUCS
6. erodibility coefficient - M
Parameter values required for noncohesive, or sand, particles depend on the method used to compute
sandload (alternate methods are described in the functional description of subroutines SANDLD,
TOFFAL, and COLBY). If the Toffaleti method is used, values must be defined for median bed sediment
diameter (DB50) and particle settling velocity (W). The Colby method requires a value for DB50, and
the power function method requires both a coefficient (KSAND) for the power function and an exponent
(EXPSND).
The same material fluxes are modeled for all three fractions of sediment. Only the methodology used to
determine fluxes between suspended storage and bed storage differ.
184
-------
Functional Description
ISED
INFLOW
to
IftCHRES
Figure 47: Flow diagram of inorganic sediment fractions in the SEDTRN section of the RCHRES Application
Module
HSPF assumes that scour or deposition of inorganic sediment does not affect the hydraulic properties of
the channel. Furthermore, it is assumed that sand, silt, and clay deposit in different areas of the RCHRES
bed; consequently, the deposition or scour of each material is not linked to the other fractions (i.e.,
"armoring" is not modeled). Longitudinal movement of bed sediments is not modeled.
The details of the transport, deposition, and scour techniques are outlined in the functional descriptions of
the lower level routines of the SEDTRN module section. Following these calculations, the depth of
sediment in the RCHRES bed is determined in order to warn the user whenever the deposited sediment
exceeds a pre-specified level. First, the volume occupied by each fraction of bed sediment is calculated:
VOLSED(J) = RSED(J+3)/RHO(J)*1.0E0 6 (1)
where:
VOLSED(J)
RSED(J+3)
RHO(J)
= volume occupied by bed sediment of fraction J (m3 or ft3)
= bed storage of sediment fraction J (mg.m3/l or mg.ft3/l)
= particle density of fraction J (gm/cm3)
185
-------
HSPF Version 12
The volumes of the three fractions of bed sediment are summed, and the total bed volume is adjusted to
account for the fraction of the volume which is void of sediment (i.e., the porosity):
VOLSEDA = VOLSED/(1.0 - POR) (2)
where:
VOLSEDA = volume of bed adjusted to account for volume occupied
by materials other than sediment
VOLSED = volume of sediment contained in the bed (sand + silt + clay)
POR = porosity of bed sediment (ratio of pore volume to total volume)
Finally, the depth of bed sediment is calculated for use as an indicator of excessive deposition:
BEDDEP = VOLSEDA/(LEN*BEDWID) (3)
where:
BEDDEP = depth of bed (m or ft)
VOLSEDA = volume of bed (m3 or ft3)
LEN = length of RCHRES (m or ft)
BEDWID = effective width of bed for calculation of bed thickness
(an input parameter expressed in m or ft)
If the calculated value for BEDDEP exceeds a user specified value, a warning message is printed to alert
the user to potential modeling problems.
The PERLND module of HSPF simulates removal of total inorganic sediment due to washoff from the
land surface and erosion from gullies. Therefore, the user must divide this total sediment into the three
components (sand, silt, and clay) so that this material can be routed through the channel system in the
RCHRES module.
186
-------
Functional Description
Cohesive Sediments - COHESV
(subroutine COHESV)
Purpose
COHESV simulates the deposition, scour, and transport processes of cohesive sediments (silt and clay).
Method
The modeling effort consists of two steps. First, subroutine ADVECT is called to perform advective
transport (see ADVECT). Then subroutine BDEXCH is called, and deposition or scour is calculated
based on the bed shear stress and the Krone and Partheniades equations, (see BDEXCH).
187
-------
HSPF Version 12
Exchange with Bed - BDEXCH
(subroutine BDEXCH)
Purpose
BDEXCH simulates the deposition and scour of cohesive sediment fractions (silt and clay).
Approach
Exchange of cohesive sediments with the bed is dependent upon the shear stress exerted upon the bed
surface. The shear stress within the RCHRES is calculated in subroutine SHEAR of the HYDR section.
Whenever shear stress (TAU) in the RCHRES is less than the user-supplied critical shear stress for
deposition (TAUCD), deposition occurs; whenever shear stress is greater than the user-supplied critical
shear stress for scour (TAUCS), scouring of cohesive bed sediments occurs. The rate of deposition for a
particular fraction of cohesive sediment is based on a simplification of Krone's (1962) equation to the
following form:
D = W*CONC*(1.0 - TAU/TAUCD) (4)
where:
D = rate at which sediment fraction settles out of suspension
(mass/len2.ivl)
W = settling velocity for cohesive sediment fraction (len/ivl)
CONC = concentration of suspended sediment fraction (mass/len3)
TAU = shear stress (lb/ft2 or kg/m2)
TAUCD = critical shear stress for deposition (lb/ft2 or kg/m2)
The rate of change of suspended sediment fraction concentration in the RCHRES due to deposition can be
expressed as:
d(CONC)/dt = -(D/AVDEPM) (5)
where:
AVDEPM = average depth of water in RCHRES (m)
By substituting the expression for deposition rate (D) from Equation 4, the following equation is
obtained:
d(CONC)/dt = -(W*CONC/AVDEPM)*(1 - TAU/TAUCD) (6)
By integrating and rearranging this equation, a solution may be obtained for the concentration of
suspended sediment lost to deposition during a simulation interval (DEPCONC):
188
-------
Functional Description
DEPCONC = CONC*(1.0 - EXP((-W/AVDEPM)*(1.0 - TAU/TAUCD)) (7)
where:
CONC = concentration of suspended sediment at start of interval (mg/1)
W = settling velocity for sediment fraction (m/ivl)
AVDEPM = average depth of water in RCHRES in meters (calculated in HYDR)
TAU = shear stress (lb/ft2 or kg/m2)
TAUCD = critical shear stress for deposition (lb/ft2 or kg/m2)
The user must supply values for settling velocity (W) and critical shear stress for deposition (TAUCD) for
each fraction of cohesive sediment (silt and clay).
Following the calculation of DEPCONC, the storage of sediment in suspension and in the bed is updated:
SUSP = SUSP - (DEPCONC*VOL) (8)
BED = BED + (DEPCONC*VOL) (9)
where:
SUSP = suspended storage of sediment fraction (mg.ft3/l or mg.m3/l)
BED = storage of sediment fraction in bed (mg.ft3/l or mg.m3/l)
VOL = volume of water in RCHRES (ft3 or m3)
The rate of resuspension, or scour, of cohesive sediments from the bed is derived from a modified form of
Partheniades'(1962) equation:
S = M*(TAU/TAUCS - 1.0) (10)
where:
S = rate at which sediment is scoured from the bed (mass/len2.ivl)
M = erodibility coefficient for the sediment fraction (kg/m2.ivl)
TAUCS = critical shear stress for scour (lbs/ft2 or kg/m2)
The rate of change of suspended sediment fraction concentration in the RCHRES due to scour can be
expressed as:
d(CONC)/dt = S/AVDEPM (11)
By substituting the expression for scour rate (S) from Equation 10 the following equation is obtained:
d(CONC)/dt = (M/AVDEPM)*(TAU/TAUCS - 1.0) (12)
By integrating and rearranging this equation, a solution may be obtained for the concentration of
suspended sediment added to suspension by scour during a simulation interval (SCRCONC):
SCRCONC = M/AVDEPM*1000*(TAU/TAUCS - 1.0) (13)
where:
M = erodibility coefficient (kg/m2.ivl)
AVDEPM = average depth of water (m)
1000 = conversion from kg/m3 to mg/1
189
-------
HSPF Version 12
The user is required to supply values for the erodibility coefficient (M) and critical shear stress for scour
(TAUCS) for each fraction of cohesive sediment (silt and clay) which is modeled.
Following the calculation of SCRCONC, the storage of sediment in suspension and in the bed is updated:
BED = BED - (SCRCONC*VOL) (14)
SUSP = SUSP + (SCRCONC*VOL) (15)
If the amount of scour calculated is greater than available storage in the bed, the bed scour is set equal to
the bed storage, and the bed storage is set equal to zero. Since the value specified for TAUCS should be
greater than that for TAUCD, only one process (deposition or scour) occurs during each simulation
interval.
190
-------
Functional Description
Behavior of Sand, Gravel - SANDLD
(subroutine SANDLD)
Purpose
SANDLD simulates the deposition, scour, and transport processes of the sand fraction of inorganic
sediment.
Method
Erosion and deposition of sand, or noncohesive sediment, is affected by the amount of sediment the flow
is capable of carrying. If the amount of sand being transported is less than the flow can carry for the
hydrodynamic conditions of the RCHRES, sand will be scoured from the bed. This occurs until the actual
sand transport rate becomes equal to the carrying capacity of the flow or until the available bed sand is all
scoured. Conversely, deposition occurs if the sand transport rate exceeds the flow's capacity to carry
sand.
Subroutine SANDLD allows the user to calculate sand transport capacity for a RCHRES by any one of
three methods. Depending on the value of SANDFG specified in the User's Control Input, either the
Toffaleti equation (SANDFG=1), the Colby method (SANDFG=2), or an input power function of velocity
(SANDFG=3) is used. If sand transport capacity is calculated using the Toffaleti or Colby methods, the
potential sandload concentration is determined by the following conversion:
PSAND = (GSI*TWIDE*10.5)/ROM (16)
where:
PSAND = potential sandload (mg/1)
GSI = sand transport capacity (tons/day/ft of width)
(calculated in COLBY or TOFFAL)
TWIDE = width of RCHRES (ft)
10.5 = conversion factor
ROM = total rate of outflow of water from the RCHRES (m3/sec)
If carrying capacity is a power function of velocity, PSAND is calculated as:
PSAND = KSAND*AWELE**EXPSND (17)
where:
KSAND = coefficient in the sandload suspension equation (input parameter)
EXPSND = exponent in sandload suspension equation (input parameter)
AWELE = average velocity (ft/sec)
The potential outflow of sand during the interval is:
PROSND = (SANDS*SROVOL) + (PSAND*EROVOL) (18)
where:
PROSND = potential sand outflow
SANDS = concentration of sand at start of interval (mg/1)
SROVOL and EROVOL are as defined in ADCALC
The potential scour from, or deposition to, the bed storage is found using the continuity equation:
191
-------
HSPF Version 12
PSCOUR = (VOL*PSAND) - (VOLS*SANDS) + PROSND - ISAND
119)
where:
PSCOUR
VOL
VOLS
ISAND
potential scour (+) or deposition (-)
volume of water in RCHRES at the end of the interval (ft3 or m3)
volume of water in RCHRES at the start of interval (ft3 or m3)
total inflow of sand into RCHRES during interval
The terms in Equations 18 and 19 have the units of concentration. The potential scour is compared to the
amount of sand material on the bottom surface available for resuspension. If scour demand is less than
available bottom sands, the demand is satisfied in full, and the bed storage is adjusted accordingly. The
new suspended concentration is PSAND. If the potential scour cannot be satisfied by bed storage, all of
the available bed sand is suspended, and bed storage is exhausted. The concentration of suspended
sandload is calculated as:
SAND = (ISAND + SCOUR + SANDS*(VOLS - SROVOL))/(VOL + EROVOL)
(20)
where:
SAND
SCOUR
SANDS
concentration of sand at end of interval
sand scoured from, or deposited to, the bottom
concentration of sand at start of interval
The total amount of sand leaving the RCHRES during the interval is:
ROSAND = SROVOL*SANDS + EROVOL*SAND
(21)
If a RCHRES goes dry during an interval, or if there is no outflow from the RCHRES, all the sand in
suspension at the beginning of the interval is assumed to settle out, and the bed storage is correspondingly
increased.
192
-------
Functional Description
Sand Transport Capacity Using Toffaleti's Method - TOFFAL
(subroutine TOFFAL)
Purpose
TOFFAL uses Toffaleti's method to calculate the capacity of the RCHRES flow to transport sand.
In Toffaleti's methodology, the actual stream for which the sand discharge is to be calculated is assumed
to be equivalent to a two-dimensional stream of width equal to that of the real stream and of depth equal
to the hydraulic radius of the real stream (FHRAD).
For the purposes of calculation, the depth, FHRAD, of the hypothetical stream is divided into four zones
shown in Figure "Toffaleti's velocity, concentration, and sediment discharge relations" below. These are:
(1) the bed zone of relative thickness Y/FHRAD = 2*FDIAM/FHRAD; (2) the lower zone extending
Y/FHRAD = 2*FDIAM/FHRAD to Y/FHRAD = 1/11.24; (3) the middle zone extending from Y/FHRAD
= 1/11.24 to Y/FHRAD = 1/2.5; and (4) the upper zone extending from Y/FHRAD = 1/2.5 to the surface.
(FDIAM is the median bed sediment diameter). The velocity profile is represented by the power relation:
Method
from
U = (1 + CNV)*V*(Y/FHRAD)**CNV
(22)
where:
U
V
flow velocity at distance Y above the bed (ft/sec)
mean stream velocity (ft/sec)
exponent derived empirically as a function of water
temperature (0.1198 + 0.00048*TMPR)
water temperature (degrees F)
CNV
TMPR
193
-------
HSPF Version 12
1.0
Concentration relations Sediment discharge
(Eq. Ate.) (symbo!)(Eq. No}
£ 1/25
Q
a
•3
§
1/11.24
2*FDIAM
FHRAD Vfe/oc/ty.
u
ynff+CNVl^frtMRAQ)
**cm
Upper
Zone
\ CI=CU*(Y/FHRAD)**(1.5*ZI)
\ (23)
GSU (30)
I Middle
J Zone
¦<* — P-j
\ CI=CM*(Y/FHRAD)**(-ZI)
\ (24)
01 \
GSM (29)
/ Lower
/ Zone
\ CI=C LrfWFH RAD)"
\ <25)
GSL (28) and (31)
Bed Zone
(33)
^CD
VjiOD
Concentration.
CI
Figure 48: Toffaleti's velocity, concentration, and sediment discharge relations
The concentration distribution of sand is given by a power relation for each of the three upper zones; i.e.,
by Equations 23-25 in the figure above. The exponent, ZI, in Equations 23-25 is given by:
ZI = (VSET*V)/(CZ*FHRAD*SLOPE)
(26)
where:
VSET
SLOPE
CZ
settling velocity for sand (ft/s)
slope of RCHRES (ft/ft)
empirical factor derived as a function of water
temperature (260.67 - 0.667*TMPR)
Expressions for the sand transport capacity of the lower (GSL), middle (GSM), and upper (GSU) zones
are obtained by substituting U from Equation 22 and the appropriate value for sand particle concentration
(CI) for each zone into the following equation and integrating between the vertical limits of the zone:
GSI = INT [LLI to ULI] (CI*Udy)
(27)
where:
GSI
INT
ULI
LLI
CI
sand transport capacity for zone I
integral of function in ( ) over limits in [
depth Y at upper limit of zone I
depth Y at lower limit of zone I
concentration of sand in zone I
194
-------
Functional Description
The resulting equations for sand transport capacity in the three zones are:
GSL = CMI*(((HRAD/11.24)**(1.0 + CNV - 0.758*ZI) -
(2*FDIAM)**(1.0 + CNV - 0.756*ZI))/(1.0 + CNV - 0.756*ZI)) (28)
GSM = CMI*(((HRAD/11.24)**(0,244*ZI)*((HRAD/2.5)**(1.0 + CNV - ZI) -
(HRAD/11.24)**(1.0 + CNV - ZI)))/(1.0 + CNV - ZI)) (29)
GSU = CMI*(((HRAD/11.24)**(0.244*ZI)*(HRAD/2.5)**(0.5*ZI)*
(HRAD**(1.0 + CNV - 1.5*ZI) - (HRAD/2.5)**(1.0 + CNV - 1.5*ZI))
(1.0 + CNV - 1 . 5*ZI) ) (30)
in which
CMI = 43,2*CLI*(1.0 + CNV)*V*HRAD**(0.758*ZI - CNV) (31)
A value for CLI, the concentration of sand in the lower zone, can be obtained by setting the expression for
GSL in Equation 28 equal to the following empirical expression and solving for CLI:
GSL = 0.6/((TT*AC*K4/V**2)**(1.67)*DIAM/0.00058)**(1.67)) (32)
where:
GSL = sand transport capacity
TT = empirical factor derived as a function of water
temperature (1.10* (0.051 + 0.00009*TMPR))
AC = empirical factor derived as a function of the kinematic
viscosity of water (VIS) and shear velocity based on
shear stress due to sand grain roughness (USTAR)
K4 = empirical factor derived as a function of AC, slope
of the RCHRES (SLOPE), and particle diameter for which
65% by weight of sediment is finer (D65).
V = mean stream velocity (ft/sec)
FDIAM = median bed sediment diameter (ft)
Values for factors AC and K4 are given in figures below. The dimensions of AC are such that GSL is
expressed in tons per day per foot of width. Consequently, when CLI is evaluated and substituted back
into Equations 28-30 the resulting units of sand transport capacity for all three zones are tons per day per
foot of width.
Prior to calculation of sand transport capacity for the zones, Equation 25 is solved to be sure that the value
for concentration at Y=2*FDIAM does not exceed 100 lbs/ft3. If it does, the concentration at this depth
is set equal to 100 lbs/ft3 and an adjusted value of CLI is calculated and used in Equations 28-30. The
transport capacity of the final zone, the bed zone, is also determined using the adjusted value of CLI and
the following equation:
GSB = CMI*(2*FDIAM)**(1.0 + CNV - 0.758*ZI) (33)
The total sand transport capacity (GSI) for the RCHRES is the sum of the transport capacities for the four
zones:
GSI = GSB + GSL + GSM + GSU (34)
195
-------
HSPF Version 12
Sand Transport Capacity Using Colby's Method - COLBY
(subroutine COLBY)
Purpose
COLBY calculates the capacity of the RCHRES to transport sand based on the median bed sediment
diameter (DB50), average stream velocity (V), hydraulic radius (HRAD), fine sediment load
concentration (FSL), and water temperature (TEMPR).
Method
The solution technique used in this subroutine is based on empirical relationships developed from the
figures below. In general terms, the solution consists of three operations:
1. Obtain one value for sediment transport capacity from a matrix of values by interpolation. The
dimensions of the matrix (G) are 4x8x6 and correspond to ranges of hydraulic radius, velocity,
and mean diameter of bed sediment, respectively. Since Colby's curves were developed on a log-
log scale, it is necessary to perform a series of three linear interpolations of logarithmic values to
derive the value for sediment transport appropriate for the hydraulic parameters in the RCHRES.
This value (GTUC) is not corrected for the effects of fine sediment concentration or water
temperature.
2. Correct sand transport capacity value to account for water temperature in RCHRES. A multiplier
is obtained from a matrix of values by interpolation. The dimensions of the matrix (T) are 7x4
and correspond to ranges of water temperature and hydraulic radius, respectively. A linear
interpolation of logarithmic values is performed to derive the appropriate temperature correction
factor. Generally speaking sand transport capacity, measured in tons per day per foot of stream
width, decreases with increasing stream width (see Figure "Colby's correction factors" below).
3. Correct sand transport capacity value to account for fine sediment load in RCHRES. A multiplier
is obtained from a matrix of values by interpolation. The dimensions of the matrix (F) are 5x9
and correspond to ranges of fine sediment load concentration and hydraulic radius, respectively.
Again, a linear interpolation of logarithmic values is performed to derive the appropriate
correction factor. Sand transport capacity increases with increasing fine sediment load and with
increasing stream width (Figure "Colby's correction factors" below). It should be noted,
however, that the correction factor is not large for typical stream conditions. For example, the
multiplier corresponding to a fine sediment load of 10,000 ppm (with hydraulic radius of 1 foot)
is 1.17.
198
-------
Functional Description
10,000
MEAN VELOCITY, IN FEET PER SECOND
Figure 50: Colby's relationship for discharge of sands in terms of mean velocity for six median sizes of bed
sands, four depths of flow, and water temperature of 60 F
199
-------
HSPF Version 12
o.i 1 10 100 0.1 1
DEPTH, IN FEET MEDIAN DIAMETER OF BED MATERIAL,
IN MILLIMETERS
Figure 51: Colby's correction factors for effect of water temperature, concentration of fine sediment, and
sediment size; applied to uncorrected discharge of sand given by above graph
The following additional comments are important to understanding and using the COLBY subroutine:
1. Fine sediment load is defined as the sum of suspended silt and clay.
2. If the value for median bed sediment diameter, hydraulic radius, or average velocity for the
RCHRES for a given simulation interval falls outside the range of values considered in Colby's
graphs, a solution for sand transport capacity cannot be obtained by the Colby method. In this
case, an error message is printed which specifies which parameter is out of range, and subroutine
TOFFAL is automatically called to obtain a solution using the Toffaleti method.
Acceptable ranges of parameter values for the Colby method are:
(a) median bed sediment diameter 0.1-0.8 mm
(b) hydraulic radius 0.1-100 ft
(c) average velocity 1.0-10.0 ft/s
2. Both the Colby and Toffaleti formulations equate depth of flow to hydraulic radius. This
approximation is best for wide rivers. Subroutines COLBY and TOFFAL were obtained and
modified from Battelle Northwest Laboratories' SERATRA model (Onishi and Wise, 1979). In
this model, the depth of flow values in the above figures are equated to hydraulic radius values,
and the HSPF version of COLBY has done the same. To the best of our knowledge the accuracy
of this approximation for narrow streams has not been documented.
200
-------
Functional Description
Generalized Quality Constituent - GQUAL
(Module Section GQUAL)
Purpose
The purpose of this code is to enable the model user to simulate the behavior of a generalized constituent.
The constituent which is modeled may be present in the RCHRES only in a dissolved state, or it may also
be sediment-associated. If the generalized quality constituent, which will be called a "qual" throughout
this discussion, is not associated with sediment, module section GQUAL only considers the following
processes:
1. Advection of dissolved material
2. Decay processes. One or more of the following can be modeled:
a. hydrolysis
b. oxidation by free radical oxygen
c. photolysis
d. volatilization
e. biodegradation
f. generalized first-order decay
3. Production of one generalized quality constituent as a result of decay of another generalized
quality constituent by any of the listed decay processes except volatilization. This capability is
included to allow for situations in which the decay products of a chemical are of primary interest
to the user.
The following additional processes are considered if the generalized quality constituent being modeled is
sediment-associated:
4. Advection of adsorbed suspended material
5. Deposition and scour of adsorbed material with sediment
6. Decay of suspended and bed material
7. Adsorption/desorption between dissolved and sediment-associated phase.
Schematic View of Fluxes and Storage
The figure below illustrates the fluxes and storages modeled in section GQUAL. Note that the arrows
indicating fluxes from each of the sediment fraction storages are not all labeled. For instance, although
deposition and scour transfer materials between the suspended storage and bed storage of all three
sediment fractions (sand, silt, clay), only the flux arrow for deposition/scour of clay is labeled.
Deposition/scour flux arrows for sand and silt are left unlabeled so that the flow diagram does not become
overly cluttered and incomprehensible. The same convention is used for the other fluxes contained in the
flow diagram (i.e., an unlabeled flux arrow indicates that a flux of the same nature as a parallel labeled
flux occurs).
201
-------
HSPF Version 12
Figure 52: Flow diagram for generalized quality constituent in the GQUAL section of the RCHRES
Application Module
202
-------
Functional Description
Approach
The first portion of GQUAL evaluates the nature of the data which will be used for the GQUAL
simulation. Since it is anticipated that some users of section GQUAL will be using this section
independently of many of the other sections of the RCHRES application module, a variety of data types
are allowed. In particular, most data required for simulation of individual decay processes can be
supplied in the form of a single constant, 12 monthly constants, a time series value from the INPAD, or in
cases where the data value is calculated in another active section of RCHRES, the last computed value
may be used. Data types which may be obtained from any one of these sources include:
1. water temperature
2. pH (for hydrolysis)
3. free radical oxygen (for oxidation)
4. total suspended sediment (for photolysis)
5. phytoplankton (for photolysis)
6. cloud cover (for photolysis)
7. wind (for volatilization from lakes)
GQUAL utilizes six routines to perform the simulation of a generalized quality constituent. These six
routines and their functions are:
1. OXREA: compute oxygen reaeration rate (used to simulate volatilization)
2. ADVECT: simulate advection of dissolved material
3. DDECAY: simulate decay of dissolved material
4. ADVQAL: advect sediment-associated material
5. ADECAY: simulate decay of qual adsorbed to suspended and bed sediment
6. ADSDES: simulate exchange of materials due to adsorption and desorption
Details on the methods used by these routines are provided in subsections of this section and in functional
descriptions of CONS and RQUAL, OXRX.
Before ADVECT is called, GQUAL sums the inputs of dissolved qual from upstream reaches, tributary
land areas, and atmospheric deposition:
INDQAL = IDQAL + SAREA*ADFX + SAREA* PREC *ADCN (1)
where:
INDQAL = total input of dissolved qual to reach
IDQAL = input of dissolved qual from upstream reaches and tributary land
SAREA = surface area of reach
ADFX = dry or total atmospheric deposition flux in mass/area per interval
PREC = precipitation depth
ADCN = concentration for wet atmospheric deposition in mass/volume
203
-------
HSPF Version 12
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, which covers the entire
simulation period, or as a set of monthly values that is used for each year of the simulation. The specific
atmospheric deposition time series are documented in the EXTNL table of the Time Series Catalog for
RCHRES, and are specified in the EXT SOURCES block of the UCI. The monthly values are input in
the MONTH-DATA block.
GQUAL is also responsible for the calculation of increases in qual resulting from decay of a "parent"
chemical. The program is designed so that a user may specify that a "daughter" chemical is produced by
any or all of the six decay processes (except volatilization) which degrade a parent qual. However,
certain restrictions are placed on the daughter/parent relationship. Simulation of up to three generalized
quality constituents is allowed. Qual #2 may be produced by decay of qual #1. Qual #3 may be produced
by decay of qual #1 and/or qual #2. Other relationships are not allowed. The user should sequence
quality constituents accordingly. The amount of daughter qual produced by decay of a parent by a
particular decay process is computed as:
PDQAL(I) = DDQAL(K,J)*C(I,J,K) (2)
where:
PDQAL(I) = amount of daughter qual I produced by decay of parent qual J
through process K (concu/1)*(ft3/ivl) or (concu/1)*(m3/ivl)
DDQAL(K,J) = amount of parent material decayed by process K
expressed in same units as PDQAL(I)
C(I,J,K) = amount of qual I produced per unit of qual J
degraded by process K in units of concu I/concu J
After the amount of decay resulting from all active decay processes and the amount of input of qual
produced by decay of parent qual(s) have been calculated, the new dissolved concentration of a qual is
computed as:
DQAL (I) = DQAL (I) + (PDQAL(I) - DDQAL(7,1) )/VOL (3)
where:
DQAL(I)
PDQAL(I)
DDQAL(7,1)
VOL
= concentration of dissolved qual I
= amount of qual I produced by decay of parent qual(s)
= total amount of qual I degraded by the decay processes
= volume of water in the RCHRES
Additional Requirements
HSPF allows a maximum of 3 general quality constituents. The user selects the units for each
constituent; thus, different constituents may have different units. For example, the user may simulate
fecal and total coliforms expressed in organisms per ml and a pesticide expressed in milligrams per liter
in the same simulation. In order to provide this flexibility, additional input is required. For each
constituent the following information must be provided in the User's Control Input:
204
-------
Functional Description
GQID: the name of the constituent (up to 20 characters long)
QTYID: this string (up to 8 characters) contains the units used to
describe the quantity of constituent entering or leaving the
RCHRES, and the total quantity of material stored in it.
Examples of possible units for QTYID are 'Morg' for millions
of organisms or 'lbs' for pounds
CONCID: the concentration units for each decay constituent (up to 4
characters long); examples are '#' or 'mg'. It is implied
that these units are "per liter".
CONV: conversion factor from QTYID/VOL to desired concentration
units: CONC = CONV*(QTY/VOL) (in English system, VOL is
expressed in ft**3; in metric system, VOL is expressed in m**3)
For example, if:
CONCID is mg/1,
QTYID is kg, and
VOL is m3,
then CONV = 1000.
205
-------
HSPF Version 12
Decay of Dissolved Material - DDECAY
(subroutine DDECAY)
Purpose
DDECAY simulates the degradation of generalized quality constituents by chemical and/or biological
means. Six processes are considered:
1. hydrolysis
2. oxidation by free radical oxygen
3. photolysis
4. volatilization
5. biodegradation
6. generalized first-order decay
Discussion
HSPF includes detailed degradation methods only for the dissolved state of the quality constituent (qual);
decay of qual material in the adsorbed state is handled by a lumped first-order decay function in
subroutine ADECAY. Formulations of the degradation processes are based on studies conducted by
Smith et al. (1977, 1980), Zepp and Cline (1977), Falco et al. (1976), and Mill et al. (1980). Most
formulations are similar to those included in the SERATRA model (Onishi and Wise, 1979). All
degradation processes modeled in DDECAY contain a temperature correction factor.
Methods
Hydrolysis
Hydrolysis is defined as any reaction that takes place in water, without the aid of light or microorganisms,
in which a compound is transformed to a different compound as a result of reaction with water. The rate
of change of dissolved qual concentration due to hydrolysis is sensitive to changes in pH and water
temperature. In HSPF, the equation presented by Smith et al. (1977) is modified to include a temperature
correction factor and rewritten as:
KHYD = (KA*10.0 * *(-PHVAL) + KB*10.0**(PHVAL - 14.0) + KN)*
THHYD**TW20 (5)
where:
KROX = oxidation rate constant for qual adjusted for free
radical oxygen concentration and water temperature
KOX = base oxidation rate coefficient for qual
ROC = free radical oxygen concentration (moles/1 (M))
THOX = temperature correction parameter for oxidation
TW20 = TW (water temperature in degrees C) - 20.0
206
-------
Functional Description
The oxidation rate coefficient (KOX) for a qual is determined from laboratory tests. Mill et al. (1980)
cites two groups of oxidants which are likely to be important in natural waters: alkylperoxy radicals and
singlet molecular oxygen. The overall free radical oxygen concentration can be specified by the user as a
constant value, twelve monthly values, or a time series.
Photolysis
Photochemical transformation of chemicals can occur when energy in the form of light is absorbed by a
molecule, placing it in an excited state from which reaction can occur. Direct photolysis of chemicals
occurs when the chemical molecule itself absorbs light and undergoes reaction from its excited state.
Indirect photolysis occurs when another chemical species, called a sensitizer, absorbs light and the
sensitizer transfers energy from its excited state to another chemical, which then undergoes reaction.
There are many types of photochemical reactions, including oxidation, reduction, hydrolysis, substitution,
and rearrangement. In practice it is possible to measure the rate constant for photochemical reaction or a
reaction quantum yield without knowing the types of reactions which are occurring (Mill et al., 1980).
The formulation of photolysis developed for HSPF is intended to measure the net degradation of a
generalized quality constituent which results from photochemical reactions.
The basic equation for rate of loss of a qual in dilute solution in an environmental water body due to
absorbance of light of wavelength lambda is given by:
KPHOL = ((PHI*INLITL)/DEP)*FSLAM*FQLAM (6)
where:
KPHOL =
PHI
INLITL =
DEP
FSLAM =
FQLAM =
rate of loss of qual due to photolysis by light of wavelength lambda
reaction quantum yield for photolysis of qual (moles/einstein)
incident light intensity of wavelength lambda (einsteins/cm2.day)
depth of water
fraction of light absorbed by the system
fraction of absorbed light that is absorbed by qual
The solution technique outlined by Mill and implemented in HSPF uses seasonal day-averaged, 24-hour
light intensity values (LLAM) for 18 wavelength intervals from 300 nm to 800 nm. In order to use these
values, the relationship between the light intensity variable (INLITL) in Equation 6 and the tabulated
values for LLAM must be defined. The relationship derived by Mill for relatively clear water or shallow
depths can be written as:
INLITL = LLAM/2.3*BETA (7)
where:
BETA = LLIT/DEP
LLIT = path length of light through water
DEP = depth of water
Further, the effects of cloud cover on light intensity are introduced by adding factor CLDLAM:
INLITL = (LLAM/2.3*BETA)*CLDLAM (8)
where:
CLDLAM = fraction of total light intensity of wavelength
lambda which is not absorbed or scattered by clouds
207
-------
HSPF Version 12
CLDLAM is calculated as:
CLDLAM = (10.0 - CC*KCLDL)/10.0
where:
CC = cloud cover in tenths
KCLDL = efficiency of cloud cover in intercepting light
of wavelength lambda, a user supplied parameter (default
value 0.0)
By substitution of Equation 8 into Equation 6, the general equation for the photolysis rate of a qual due to
absorbance of light of wavelength lambda can be expressed as:
KPHOL = ((PHI*LLAM*CLDLAM)/2.3*BETA*DEP)*FSLAM*FQLAM (10)
The general mathematical expression for the fraction of light absorbed by the water system (FSLAM) is:
FSLAM = 1.0 - 10**(-KLAM*LLIT) (11)
The exponential coefficient, KLAM, in this equation has two components for laboratory conditions:
KLAM = ALPHL + EPSLAM*C (12)
where:
ALPHL = base absorbance term for light of wavelength lambda
for the system (/cm)
EPSLAM = absorbance term for light of wavelength lambda
absorbed by qual (1/mole.cm)
C = concentration of qual (moles/1)
For environmental systems, the effects of light absorbance by suspended sediment and phytoplankton are
introduced to the formulation, and KLAM is expanded to:
KLAM = ALPHL + EPSLAM*C + GAMLAM*SED + DELLAM* PHYTO (13)
where:
GAMLAM = absorbance term for light absorbed by suspended sediment
(1/mg/cm)
SED = total suspended sediment (mg/1)
DELLAM = absorbance term for light absorbed by phytoplankton (1/mg/cm)
PHYTO = phytoplankton concentration (mg/1)
Because the concentration of qual is assumed small, the fraction of total absorbance of light in the water
system resulting from absorbance by the qual is assumed negligible, and the term (EPSLAM*C) is
dropped from Equation 13. By substituting the modified value of KLAM into Equation 10, setting LLIT =
BETA*DEP (from Equation 7), and assuming that BETA =1.2 (Mill et al., 1980), the final form of the
expression for FSLAM is obtained:
FSLAM = 1.0 - 10**(-1.2*KLAM*DEP) (14)
208
-------
Functional Description
The remaining term of the general equation for photolysis (Equation 10) which must be evaluated is
FQLAM, the fraction of total absorbed light that is absorbed by the qual. This term is evaluated as:
FQLAM = (EPSLAM*C)/KLAM (15)
Equation 10 can be rewritten as:
PHOFXL = ((PHI*LLAM*CLDLAM)/2.3*BETA*DEP)*
(1.0 - 10**(-1.2*KLAM*DEP))*(EPSLAM*C/KLAM) (16)
To obtain the rate of loss of qual due to photolysis from absorption of light of all wavelength intervals,
Equation 16 must be summed over LLAM:
KPHO = (PHI/(2,76*DEP))*(SUM [1 to 18] ((LLAM*
CLDLAM*EPSLAM/KLAM)*(1.0 - EXP(-2.7 6*KLAM*DEP) ) (17)
The equation for the degradation rate due to photolysis used in HSPF is further complicated by correction
factors for surface shading and water temperature. The final rearranged and expanded formulation is:
KPHO = (CF*DELT60/24.)*PHI*(SUM [1 to 18] ((LLAM*CLDLAM/2.76*
KLAM*DEP)*(1.0 - EXP(-2.7 6*KLAM*DEP) )*EPSLAM) )*THPHO**TW2 0 (18)
where:
SUM = summation of function in ( ) over limits in [ ]
CF = factor accounting for surface shading
DELT60/24 = conversion from day to interval
THPHO = temperature correction parameter for photolysis
TW20 = TW (water temperature in degrees C) - 20.0
For simulation intervals of less than 24 hours, photolysis is assumed to occur only between 6:00 AM and
6:00 PM during approximate daylight hours. In order to obtain a solution which is reasonably consistent
with the input seasonal, day-averaged, 24-hour light intensity values, the daily light intensity is assumed
to be uniformly distributed over the 12 hours from 6:00 AM to 6:00 PM. Consequently, calculated
photolysis rates are doubled during daylight hours and set equal to zero for non-daylight hours. It should
be noted that five look-up tables for solar intensity values (LLAM) are incorporated into HSPF. Tables
below show the values for seasonal day-averaged, 24 hour light intensity at 10, 20, 30, 40, and 50
degrees latitude. The Run Interpreter checks the input latitude for the study area and selects the
appropriate table from which to extract values. Additional input required to simulate photolysis in
subroutine DDECAY include:
1. Molar absorption coefficients for each of the 18 wavelengths
2. Reaction quantum yield for qual (PHI)
3. Temperature correction parameter for photolysis (THPHO)
4. 18 values for base absorbance term for water system (ALPHL)
5. 18 values for absorbance for light absorbed by suspended sediment (GAMLAM)
6. 18 values for absorbance for light absorbed by phytoplankton (DELLAM)
7. Cloud cover values. Either a time series or 12 monthly values may be supplied.
8. Total suspended sediment values. Either a time series or 12 monthly values.
9. Phytoplankton values. Either a time series or 12 monthly.
209
-------
HSPF Version 12
Solar Intensity Values for Latitude 50 N
Wavelength, Solar Intensity, milli-einsteins/cm2/day
Nanometers Spring Summer Fall Winter
300
3.71E-5
7 . 88E-6
1.52E-4
4.00E-7
303.75
7.10E-4
1.75E-3
2.25E-4
1.57E-5
308.75
3.55E-3
6.53E-3
1.29E-3
1.78E-4
313.75
7.30E-3
1.63E-2
4.39E-3
1.20E-3
318.75
1.84E-3
2.67E-2
8.64E-3
2.93E-3
323. 1
1.96E-2
2.77E-2
9.20E-3
3.68E-3
340
2.66E-1
3.43E-1
1.24E-1
6.29E-2
370
3.48E-1
4.44E-1
1.66E-1
8.21E-2
400
7.24E-1
9.04E-1
3.65E-1
1.96E-1
430
1. 02
1.26
5.17E-1
2.75E-1
460
1.29
1. 60
6.60E-1
3.51E-1
470
1.32
1. 63
6.80E-1
3.55E-1
536.25
2 . 34
2 . 90
1.22
6.30E-1
587 . 5
2 .40
3. 04
1.25
6.40E-1
637 . 5
2 . 44
CO
o
o
CO
6.90E-1
687 . 5
2 . 50
CO
M
O
1.34
7.10E-1
750
2 . 50
2 . 90
CO
7.10E-1
800
2 . 30
2 . 90
1.24
6.90E-1
212
-------
Functional Description
Volatilization
Volatilization of a chemical that is dissolved in water is defined as the transport of the chemical from the
water to the atmosphere. The concentration of the chemical in water decreases even though a
transformation does not occur. Thus, volatilization is not a degradation process in the strict sense, since
the chemical which leaves a water body by volatilization is not biologically or chemically degraded.
Current evidence suggests that volatilization is likely to be the major aquatic fate of low molecular
weight, nonpolar compounds that are not rapidly biodegraded or chemically transformed. Volatilization
rates of higher molecular weight compounds can also be significant under certain conditions (Smith,
1980).
In HSPF, the volatilization rate of a qual is tied to the oxygen reaeration coefficient:
KVOL = KOREA*C FGAS (19)
where:
KVOL = rate of loss of qual from water due to volatilization
KOREA = oxygen reaeration coefficient calculated by subroutine OXREA
CFGAS = ratio of volatilization rate of qual to oxygen reaeration
rate, an input parameter.
The value for input parameter CFGAS can be determined as the ratio of the molecular diameter of oxygen
to the molecular diameter of the qual.
Biodegradation
Biodegradation is one of the most important processes for transformation of chemical compounds when
they enter natural environments. Many organic chemicals are used by living cells for carbon and energy
sources. Microorganisms metabolize a wide variety of organic compounds, including many man-made
chemicals (Chou, 1980). The rate of biodegradation of a dissolved qual is expressed as a function of the
concentration of biomass which degrades the qual (BIO) and water temperature:
KBIO = KBMASS*BIO*(THBIO**TW20) (20)
where:
KBIO = biodegradation rate constant for qual adjusted for
biomass concentration and water temperature
BIOCON = base biodegradation rate coefficient for qual
BIO = concentration of biomass that is involved in qual degradation
THBIO = temperature correction parameter for biodegradation
TW20 = TW (water temperature in degrees C) - 20.0
Biomass data may be supplied as a constant, 12 monthly values, or a time series. HSPF allows for the
fact that a different population of microorganisms can be involved in the biodegradation of each different
generalized quality constituent by requiring the user to specify a unique set of biomass data for each
constituent which is simulated.
213
-------
HSPF Version 12
Generalized First-order Decay
Generalized first-order decay of dissolved qual may be simulated in addition to, or instead of, the
individual decay processes outlined above. The equation used to calculate rate of decay is:
KGEN = KGEND*THGEN**TW20 (21)
where:
KGEN = generalized first-order decay rate for a qual
corrected for temperature
KGEND = base first-order decay rate for a qual
THGEN = temperature correction parameter for first-order decay
After decay rates for all of the processes which are active for a qual have been calculated, they are
summed to determine a total decay rate. At this point the total loss of qual material resulting from decay
is evaluated:
DDQALT = DQAL*(1.0 - EXP(-KTOTD))*VOL (22)
where:
DDQALT = loss of qual due to all forms of degradation,
expressed in (concu/1)*(ft3/ivl) or (concu/1)*(m3/ivl)
DQAL = concentration of dissolved qual (concu/1)
KTOTD = total decay rate of qual per interval
VOL = volume of water in the RCHRES
Finally, to determine the amount of material degraded by each individual process, a linear proration is
performed based on the total decay of material:
DDQAL(I) = (K(I)/KTOTD)*DDQALT (23)
where:
DDQAL(I)
K (I)
= loss of qual due to decay by process I, expressed
in (concu/1)*(ft3/ivl) or (concu/1)*(m3/ivl)
= decay rate due to process I (/ivl)
214
-------
Functional Description
Advection of Material on Sediment - ADVQAL
(subroutine ADVQAL)
Purpose
ADVQAL simulates the advective processes for the quality constituent attached to one sediment size
fraction. Processes handled in this subroutine include:
1. Inflow to the RCHRES of qual attached to suspended sediment.
2. Migration of qual from suspension in the water to the bed as a result of deposition of the sediment
to which the qual is adsorbed.
3. Migration of qual from the bed into suspension in the water as a result of scour of the bed
sediments to which the qual is adsorbed.
4. Outflow from the RCHRES of qual attached to suspended sediment.
Method
The movement of adsorbed qual is completely determined by the movement of the sediment to which it is
attached. All fluxes of adsorbed qual are expressed as the product of the flux of a sediment fraction
(sand, silt, or clay) and the concentration of qual associated with that fraction (expressed in concu per mg
of sediment). Likewise, storages of adsorbed qual are expressed as the product of the sediment fraction
storage and the associated concentration of qual. A simplified flow diagram of sediment and associated
qual fluxes and storages is provided in the figure below to facilitate the following discussion. Note that
ADVQAL is designed to operate on one sediment fraction and one qual each time it is called by GQUAL.
215
-------
HSPF Version 12
I
Sediment 1 QUAL
I
I
Figure 53: Simplified flow diagram for important fluxes and storages of sediment and associated qual used in
subroutine ADVQAL
If the sediment simulation in module section SEDTRN indicates that scour of bed storage of a sediment
fraction occurs, the following actions are taken in ADVQAL:
1. Bed storage of adsorbed qual is updated.
2. Flux of qual from bed to suspension (DSQAL) is set equal to the bed storage of the qual
(RBQAL) if the entire bed storage of the sediment fraction is scoured.
3. If only part of the bed storage of the sediment fraction is scoured, the flux of qual from bed to
suspension is calculated as:
DSQAL = BQAL*DEPSCR (24)
where:
DSQAL = amount of qual scoured from bed and added to suspension
expressed in (concu/1)*(ft3/ivl) or (concu/1)*(m3/ivl)
BQAL = concentration of qual on bed sediment fraction
under consideration in concu/mg sediment
DEPSCR = amount of sediment fraction which is scoured from
the bed expressed in mg.ft3/l.ivl or mg.m3/l.ivl
216
-------
Functional Description
4. Concentration of adsorbed qual in suspension is updated to account for scour:
SQAL = (ISQAL + RSQALS - DSQAL)/(RSED + ROSED) (25)
where:
SQAL = concentration of adsorbed qual in suspension
expressed as concu/mg suspended sediment fraction
ISQAL = inflow of qual to the RCHRES as a result of inflowing sediment
fraction, expressed as (concu/1)*(ft3/ivl) or (concu/1)*(m3/ivl)
RSQALS = storage of qual on suspended sediment fraction
expressed in (concu/1)*ft3 or (concu/1)*m3
RSED = amount of sediment fraction in suspension at end of interval
expressed in mg.ft3/l or mg.m3/l
ROSED = amount of sediment fraction contained in outflow from the RCHRES
during the interval expressed in mg.ft3/l.ivl or mg.m3/l.ivl
5. Amount of qual leaving the RCHRES as outflow is determined as:
ROSQAL = ROSED*SQAL (26)
If the sediment simulation in module section SEDTRN indicates that deposition of suspended sediment
occurs, ADVQAL performs the following operations:
1. Concentration of qual on total suspended sediment fraction (inflow + suspended storage) for the
RCHRES is calculated:
SQAL = (ISQAL + RSQALS)/(RSED + DEPSCR + ROSED) (27)
2. Amount of qual leaving the RCHRES due to outflow of sediment fraction is determined:
ROSQAL = ROSED*SQAL (28)
3. Amount of qual leaving suspension due to deposition of the sediment to which it is adsorbed is
found by:
DSQAL = DEPSCR*SQAL (29)
4. The concentration of qual on sediment in suspension is set equal to zero if the suspended storage
of sediment is zero.
5. The concentration of qual on bed sediment is set equal to zero if the storage of bed sediment at
the end of the interval is zero.
6. If there is bed sediment at the end of the interval, the bed storage of qual associated with the
sediment fraction is calculated as:
RBQAL = DSQAL + RBQALS (30)
217
-------
HSPF Version 12
7. The concentration of qual on bed sediment is determined:
BQAL = RBQAL/BSED (31)
where:
BSED = storage of sediment fraction (sand, silt, or clay)
in the bed, expressed as mg.ft3/l or mg.m3/l
The final operation which ADVQAL performs is the computation of outflow of adsorbed qual through
individual exits (when more than one exit is specified). The algorithm is:
OSQAL (I) = ROSQAL*OSED(I)/ROSED (32)
where:
OSQAL (I) = outflow of adsorbed qual through exit gate I
ROSQAL = total outflow of adsorbed qual from RCHRES
OSED(I) = outflow of sediment fraction through exit gate I
218
-------
Functional Description
Decay of Adsorbed Material - ADECAY
(subroutine ADECAY)
Purpose
ADECAY is a generalized subroutine which calculates the amount of decay experienced by a generalized
quality constituent (qual) adsorbed to inorganic sediment. This subroutine is called twice (once for decay
on suspended sediment and once for decay on bed sediment) for each generalized quality constituent
which is sediment-associated. (The user specifies that a qual is sediment-associated by setting
QALFG(7)=1 for the qual in the User's Control Input.) HSPF assumes that the decay rate of a particular
adsorbed qual is the same for all fractions of sediment (sand, silt, and clay), but may be different for
suspended sediment than it is for bed sediment.
Necessary information which must be supplied to the subroutine includes:
1. ADDCPM(l) - decay rate for qual on sediment being considered (suspended or bed)
2. ADDCPM(2) - temperature correction coefficient for decay
3. RSED(l-3) - the storage of each sediment fraction expressed in mg.ft3/l or mg.m3/l (for either
suspended or bed sediment)
4. SQAL(l-3) - the concentration of qual associated with the 3 fractions of sediment (concu/mg)
First, the temperature-adjusted decay rate is calculated:
DK = ADDCPM(1)*ADDCPM(2)**TW20 (33)
TW20 = TW (water temperature) - 20.0 in degrees C.
Next, the fraction of adsorbed qual which decays during the simulation interval (FACT) is calculated
using the general form for first-order decay:
The concentration of qual decayed from each sediment fraction (DCONC) is determined, and the
concentration of qual associated with each fraction is updated:
Method
where:
FACT = 1.0 - EXP(-DK)
(34)
DCONC = SQAL(I)* FACT
(35)
SQAL(I) = SQAL(I) - DCONC
(36)
219
-------
HSPF Version 12
Finally, the mass of qual decayed from each sediment fraction is calculated:
SQDEC(I) = DCONC*RSED(I) (37)
where:
SQDEC(I) = amount of qual decayed from sediment fraction I expressed
in (concu/1)*(ft3/ivl) or (concu/1)*(m3/ivl)
DCONC = concentration of qual decayed from sediment fraction
(concu/mg)
RSED(I) = storage of sediment fraction I (mg.ft3/l or mg.m3/l)
220
-------
Functional Description
Adsorption/Desorption of a Generalized Quality Constituent - ADSDES
(subroutine ADSDES)
Purpose
ADSDES simulates the exchange of a generalized quality constituent (qual) between the dissolved state
and adsorbed state. Kinetic equilibrium between dissolved state and six adsorption sites is modeled:
suspended sand, silt, and clay, and bed sand, silt, and clay.
Method
The basic equation (Onishi and Wise, 1979) for the transfer of a chemical between the dissolved state and
an adsorbed state on sediment type J is:
-d(RSEDJ*SQALJ)/dt + RSEDJ*KJT*(KDJ*DQAL - SQALJ) = 0 (38)
where:
RSEDJ = total quantity of sediment type J in the RCHRES
(mg.ft3/l or mg.m3/l)
SQALJ = concentration of qual on sediment type J (concu/mg)
DQAL = concentration of dissolved qual (concu/1)
KDJ = distribution coefficient between dissolved state and sediment type
J (liters/mg) (adsorbed concentration/dissolved concentration)
KJT = temperature corrected transfer rate between dissolved
state and sediment type J
Thus, adsorption of a qual by sediment or desorption from sediment is assumed to occur toward an
equilibrium condition with transfer rate KJT if the particulate qual concentration differs from its
equilibrium value. Equation 38 is actually 6 equations (one for each sediment type J) with 7 unknowns
(DQAL and 6 values of SQALJ). The necessary seventh equation is that of conservation of material. The
following relation gives the total quantity of qual in the RCHRES, both before and after exchange due to
adsorption/de sorption:
SUM [1 to 6](RSEDJ*SQALJ) + VOL*DQAL = TOT (39)
where:
VOL = volume of water in the RCHRES
To solve numerically, Equation 38 is expressed in finite difference form:
-RSEDJ*(SQALJ - SQALJO) + RSEDJ*KJT*KDJ*DQAL*DELT
- RSEDJ*KJT*SQALJ*DELT = 0 (40)
where:
SQALJ = concentration of qual on sediment type J at end of
simulation interval (subsequent to adsorption/desorption)
SQALJO = concentration of qual on sediment type J at start of interval
DELT = simulation time step
221
-------
HSPF Version 12
The product of the transfer rate for sediment type J and the simulation time step is calculated (AKJ =
KJT*DELT), and the resulting value is substituted into Equations 39 and 40. Two forms of Equation 39
are written. Equation 41 expresses conservation of material at the beginning of the simulation interval and
Equation 42 expresses conservation of material at the end of the interval:
- SUM [1 to 6] ((RSEDJ*SQALJO) - VOL*DQALO) = -TOT (41)
- SUM [1 to 6] ((RSEDJ*SQALJ) - VOL*DQAL ) = -TOT (42)
Equation 40 is rewritten as:
RSEDJ((1.0 + AKJ)/(AKJ*KDJ))*SQALJ - RSEDJ*DQAL =
(RSEDJ*SQALJO)/(AKJ*KDJ) (43)
Equations 42 and 43 can be written in matrix form and solved for unknowns SQALJ and DQAL using
standard procedures such as Gaussian elimination or the Crout reduction. The solutions are:
DQAL = (TOT - SUM [1 to 6]
(VOL + SUM [1 to 6]
(RSEDJ*CJ)/AJJ)/
(RSEDJ/AJJ))
SQALJ = (CJ/AJJ) + (DQAL/AJJ)
144)
145)
where:
DQAL = concentration of dissolved qual after adsorption/desorption
SQALJ = concentration of qual on sediment type J after adsorption/desorption
AJJ = (1 + AKJ)/(AKJ*KDJ)
CJ = (SQALJO/AKJ*KDJ)
By combining Equations 41 and 44, TOT can be eliminated, and a final solution for DQAL can be
obtained:
DQAL = (VOL*DQALO + SUM [1 to 6] (SQALJO - CJ/AJJ)*RSEDJ))/
(VOL + SUM [1 to 6] (RSEDJ/AJJ)) (46)
In subroutine ADSDES, the following variables are used to facilitate the evaluation of Equations 45 and
46:
AINVJ = 1.0/AJ J = (AKJ*KDJ)/(1.0 + AKJ) (47)
CAINVJ = CJ/AJJ = (SQALJO/(1.0 + AKJ)) (48)
222
-------
Functional Description
Constituents Involved in Biochemical Transformations - RQUAL
(Section RQUAL of Module RCHRES)
RQUAL is the parent routine to the four subroutine groups which simulate constituents involved in
biochemical transformations. Within module section RQUAL the following constituents may be
simulated:
dissolved oxygen
biochemical oxygen demand
ammonia
nitrite
nitrate
orthophosphorus
phytoplankton
benthic algae
zooplankton
dead refractory organic nitrogen
dead refractory organic phosphorus
dead refractory organic carbon
total inorganic carbon
pH
carbon dioxide
Four additional quantities are estimated from simulation of these constituents. These quantities are total
organic nitrogen, total organic phosphorus, total organic carbon, and potential biochemical oxygen
demand. The definition of these quantities is determined by their method of calculation:
TORN = ORN + CVBN*(ZOO + PHYTO + BOD/CVBO) (1)
TORP = ORP + CVBP*(ZOO + PHYTO + BOD/CVBO) (2)
TORC = ORC + CVBC*(ZOO + PHYTO + BOD/CVBO) (3)
POTBOD = BOD + CVNRBO*(ZOO + PHYTO) (4)
where:
TORN
TORP
TORC
POTBOD
ORN
ORP
ORC
BOD
CVBN
CVBP
CVBC
total organic nitrogen (mg N/1)
total organic phosphorus (mg P/l)
total organic carbon (mg C/l)
potential BOD (mg 0/1)
dead refractory organic nitrogen (mg N/1)
dead refractory organic phosphorus (mg P/l)
dead refractory organic carbon (mg C/l)
biochemical oxygen demand from dead nonrefractory organic
materials (mg 0/1)
conversion from mg
conversion from mg
conversion from mg
biomass to mg nitrogen
biomass to mg phosphorus
biomass to mg carbon
223
-------
HSPF Version 12
CVNRBO = conversion from mg biomass to mg biochemical oxygen demand
(with allowance for non-refractory fraction)
CVBO = conversion from mg biomass to mg oxygen
ZOO = zooplankton (mg biomass/1)
PHYTO = phytoplankton (mg biomass/1)
Subroutine RQUAL performs two tasks. First, RQUAL is responsible for calling the four groups which
simulate the constituents listed above. These four groups and their functions are:
1. OXRX: simulate primary dissolved oxygen and biochemical oxygen demand balances
2. NUTRX: determine inorganic nitrogen and phosphorus balances
3. PLANK: simulate plankton populations and associated reactions
4. PHCARB: simulate pH and inorganic carbon species
The four groups are listed in their order of execution, and the execution of a group is dependent upon the
execution of the groups listed above it. For example, group PHCARB cannot be activated unless OXRX,
NUTRX, and PLANK are active. On the other hand, the reactions in OXRX can be performed without
the reactions contained in the other three groups.
The other function of RQUAL is to determine the values for variables which are used jointly by the four
subroutine groups. The following variables are evaluated:
1. AVVELE: the average velocity of water in the RCHRES (ft/s)
2. AVDEPE: the average depth of water in the RCHRES (ft)
3. DEPCOR: conversion factor from square meters to liters (used for changing areal quantities from
the benthal surface to equivalent volumetric values based on the depth of water in the RCHRES)
4. SCRFAC: scouring factor to be used for calculation of benthal release rates of inorganic
nitrogen, orthophosphorus, carbon dioxide, and biochemical oxygen demand
SCRFAC has one of two values depending on the average velocity (AVVELE) of the water in the
RCHRES. AVVELE is compared to the value of parameter SCRVEL, the user-specified velocity at and
above which scouring occurs. If AVVELE is less than the value of parameter SCRVEL, then SCRFAC is
set equal to 1.0, and there is no increase of benthal release rates due to scouring. If AVVELE is greater
than SCRVEL, SCRFAC is set equal to the value of parameter SCRMUL, which is a constant
multiplication factor applied directly to the release rates to account for scouring by rapidly moving water.
224
-------
Functional Description
Primary DO and BOD Balances - OXRX
(Subroutine Group OXRX of Module RCHRES)
Purpose
The purpose of this section is to simulate the primary processes which determine the dissolved oxygen
concentration in a reach or mixed reservoir. Dissolved oxygen concentration is generally viewed as an
indicator of the overall well-being of streams or lakes and their associated ecological systems. In
relatively unpolluted waters, sources and sinks of oxygen are in approximate balance, and the
concentration remains close to saturation. By contrast, in a stream receiving untreated waste waters, the
natural balance is upset, bacteria predominate, and a significant depression of dissolved oxygen results
(O'Connor and DiToro, 1970).
Schematic View of Fluxes and Storages
The figures below illustrate the fluxes and storages modeled in this subroutine group. In order to account
for temporal variations in oxygen balance, state variables for both dissolved oxygen and biochemical
oxygen demand must be maintained. The state variable DOX represents the oxygen dissolved in water
and immediately available to satisfy the oxygen requirements of the system. The BOD state variable
represents the total quantity of oxygen required to satisfy the first-stage (carbonaceous) biochemical
oxygen demand of dead nonrefractory organic materials in the water.
Subroutine OXRX considers the following processes in determining oxygen balance:
1. longitudinal advection of DOX and BOD
2. sinking of BOD material
3. benthal oxygen demand
4. benthal release of BOD material
5. reaeration
6. oxygen depletion due to decay of BOD materials
Additional sources and sinks of DOX and BOD are simulated in other sections of the RCHRES module.
If module section NUTRX is active, the effects of nitrification on dissolved oxygen and denitrification on
BOD balance can be considered. If module section PLANK is active, the dissolved oxygen balance can
be adjusted to account for photosynthetic and respiratory activity by phytoplankton and/or benthic algae
and respiration by zooplankton. Adjustments to the BOD state variable in section PLANK include
increments due to death of plankton and nonrefractory organic excretion by zooplankton.
225
-------
HSPF Version 12
IDOX
NFLOW
to
RCHRES
OOOX(N)
Outflow
torn
RCHRES
through
exit I
v y ^
Benthal \
oxygen j
demand y
BENOO
RODOX
Sum of
out-
flows
from
RCHRES
V J
KOREA "(SATDO-DOX)
Figure 54: Flow diagram for dissolved oxygen in the OXRX subroutine group of the RCHRES Application
Module
ROBOD
Fluxes shown in
parentheses (}
are considered
only if the
related quantity
is simulated
Figure 55: Flow diagram for biochemical oxygen demand in the OXRX subroutine group of the RCHRES
Application Module
226
-------
Functional Description
OXRX uses five subroutines to simulate dissolved oxygen and biochemical oxygen demand. Advection
of DOX and BOD is performed by ADVECT. Sinking of BOD material is carried out by SINK. OXBEN
calculates benthal oxygen demand and benthal release of BOD materials. The oxygen reaeration
coefficient is determined by utilizing OXREA, and BOD decay calculations are performed in BODDEC.
Since subroutine OXREA may also be called by module section GQUAL to obtain the oxygen reaeration
coefficient (KOREA) for calculation of volatilization rates for generalized quality constituents, the
change in dissolved oxygen concentration in water due to reaeration is calculated in OXRX rather than
OXREA. The equation for reaeration is:
DOX = DOXS + KOREA*(SATDO - DOXS) (1)
where:
DOX = dissolved oxygen concentration after reaeration (mg/1)
DOXS = dissolved oxygen concentration at start of interval (mg/1)
KOREA = reaeration coefficient calculated in OXREA
SATDO = saturated concentration of dissolved oxygen (mg/1)
The saturation concentration of dissolved oxygen is computed at prevalent atmospheric conditions by the
equation:
SATDO = (14.652 + TW*(-0.41022 + TW*(0.007991 - 0.7777E-4*TW)))*
CFPRES (2)
where:
SATDO = saturated concentration of dissolved oxygen (mg/1)
TW = water temperature (deg C)
CFPRES = ratio of site pressure to sea level pressure
(CFPRES is calculated by the Run Interpreter dependent upon
mean elevation of RCHRES)
227
-------
HSPF Version 12
Benthal Oxygen Demand and Benthal Release of BOD - OXBEN
(subroutine OXBEN)
Purpose
OXBEN accounts for two possible demands exerted on available oxygen by the benthos. These two
demands are categorized as benthal oxygen demand and benthal release of BOD materials. Benthal
oxygen demand results from materials in the bottom muds which require oxygen for stabilization. This
process results in a direct loss of oxygen from the RCHRES. The second demand on oxygen caused by
the release and suspension of BOD materials is a less direct form of oxygen demand. This process
increases the pool of BOD present in the RCHRES and exerts a demand on the dissolved oxygen
concentration at a rate determined by the BOD decomposition kinetics.
Benthal Oxygen Demand
The user approximates the oxygen demand of the bottom muds at 20 degrees Celsius by assigning a value
to BENOD for each RCHRES. The effects of temperature and dissolved oxygen concentration on
realized benthal demand are determined by the following equation:
BENOX = BENOD*(TCBEN**TW20)*(1.0 - Exp(-EXPOD*DOX)) (3)
where:
BENOX = amount of oxygen demand exerted by benthal muds (mg/m2/interval)
BENOD = reach dependent benthal oxygen demand at 2 0 degrees C
(mg/m2/interval)
TCBEN = temperature correction factor for benthal oxygen demand
TW20 = water temperature - 20.0 (deg C)
EXPOD = exponential factor to benthal oxygen demand function
(default value = 1.22)
DOX = dissolved oxygen concentration (mg/1)
The first portion of the above equation adjusts the demand at 20 degrees Celsius to a demand at any
temperature. The second portion of the equation indicates that low concentrations of dissolved oxygen
suppress realized oxygen demand. For example, 91 percent of BENOD may be realized at a dissolved
oxygen concentration of 2 mg/1, 70 percent at 1 mg/1, and none if the waters are anoxic.
After the value of BENOX has been calculated, the dissolved oxygen state variable is updated:
DOX = DOX - BENOX*DEPCOR (4)
where:
DEPCOR = factor which converts
depth of water in the
(DEPCOR is calculated
from mg/m2 to mg/1, based on the average
RCHRES during the simulation interval
in subroutine RQUAL)
228
-------
Functional Description
Benthal Release of BOD
Bottom releases of BOD are a function of scouring potential and dissolved oxygen concentration. The
equation used to calculate BOD release is:
RELBOD = (BRBOD(l) + BRBOD(2)*Exp(-EXPREL*DOX))*SCRFAC (5)
where:
RELBOD
BRBOD(1)
BRBOD(2)
EXPREL
DOX
SCRFAC
= BOD released by bottom muds (mg/m2 per interval)
= base release rate of BOD materials (aerobic conditions)
(mg/m2/interval)
= increment to bottom release rate due to decreasing
dissolved oxygen concentration
= exponential factor to BOD benthal release function
(default value = 2.82)
= dissolved oxygen concentration (mg/1)
= scouring factor dependent on average velocity of water
(SCRFAC is calculated in subroutine RQUAL)
The above equation accounts for the fact that benthal releases are minimal during conditions of low
velocity and ample dissolved oxygen. Under these conditions a thin layer of hardened, oxidized material
typically retards further release of materials from the benthos. However, anaerobic conditions or
increased velocity of overlying water disrupts this layer, and release rates of BOD and other materials are
increased. Solution of Equation 5 indicates that 6 percent of the incremental release rate (BRBOD(2))
occurs when 1 mg/1 of dissolved oxygen is present, 75 percent occurs when 0.1 mg/1 is present, and the
entire increment occurs under anoxic conditions.
229
-------
HSPF Version 12
Oxygen Reaeration Coefficient - OXREA
(subroutine OXREA)
Purpose
Various methods have been used to calculate atmospheric reaeration coefficients, and experience has
shown that the most effective method of calculation in any given situation depends upon the prevalent
hydraulic characteristics of the system (Covar, 1976). Based upon user instructions, subroutine OXREA
calculates oxygen reaeration by using one of four built-in solution techniques.
Approach
The general equation for reaeration is:
DOX = DOXS + KOREA*(SATDO - DOXS) ( 6)
where:
DOX = dissolved oxygen concentration after reaeration (mg/1)
KOREA = reaeration coefficient (greater than zero and less than one)
SATDO = oxygen saturation level for given water temperature (mg/1)
DOXS = dissolved oxygen concentration at start of interval (mg/1)
Lake Reaeration
In a lake or reservoir, calculation of reaeration is dependent upon surface area, volume, and wind speed.
The wind speed factor is determined using the following empirical relationship:
WINDF = WINDSP*("0.46 + 0.136*WINDSP) (7)
where:
WINDF = wind speed factor in lake reaeration calculation
WINDSP = wind speed (m/sec)
For low wind speeds, less than 6.0 m/s, WINDF is set to 2.0. The reaeration coefficient for lakes is
calculated as:
KOREA = (.0328 08 *WINDF*CFOREA/AVDEPE)*DELT60 (8)
where:
CFOREA = correction factor to reaeration coefficient for lakes; for lakes
with poor circulation characteristics, CFOREA may be less than
1.0, and lakes with exceptional circulation characteristics may
justify a value greater than 1.0
AVDEPE = average depth of water in RCHRES during interval (ft)
DELT60 = conversion from hourly time interval to simulation interval
230
-------
Functional Description
Stream Reaeration
One of three approaches to calculating stream reaeration may be used:
1. Energy dissipation method (Tsivoglou-Wallace, 1972). Oxygen reaeration is calculated based
upon energy dissipation principles:
KOREA = REAKT*(DELTHE/FLOTIM)*(TCGINV**(TW - 20.))*DELTS (9)
where:
REAKT = escape coefficient with a typical value between
0.054/ft and 0.110/ft.
DELTHE = drop in energy line along length of RCHRES (ft)
FLOTIM = time of flow through RCHRES (seconds)
TCGINV = temperature correction coefficient for gas invasion rate
with a default value of 1.047
DELTS = conversion factor from units of /second to units of /interval
DELTHE, the drop in elevation over the length of the RCHRES, is supplied by the user. REAKT, the
escape coefficient, referred to in Tsivoglou's work, is also supplied by the user. The value for FLOTIM
is calculated by dividing the length of the RCHRES by the average velocity for the simulation interval.
Tsivoglou's method of calculation is activated by setting the reaeration method flag (REAMFG) to 1.
2. Covar's method of determining reaeration (Covar, 1976). Reaeration is calculated as a power
function of hydraulic depth and velocity. The general equation is:
KOREA = REAK* (AWELE**EXPREV) * (AVDEPE**EXPRED)
*(TCGINV**(TW - 20.))*DELT60 (10)
where:
KOREA = reaeration coefficient (per interval)
REAK = empirical constant for reaeration equation (/hour)
AWELE = average velocity of water (ft/s)
EXPREV = exponent to velocity function
AVDEPE = average water depth (ft)
EXPRED = exponent to depth function
TCGINV = temperature correction coefficient for reaeration
defaulted to 1.047
DELT60 = conversion factor from units of per hour to units of per interval
Depending on current depth and velocity, one of three sets of values for REAK, EXPREV, and EXPRED
is used. Each set corresponds to an empirical formula which has proven accurate for a particular set of
hydraulic conditions. The three formulas and their associated hydraulic conditions and coefficients are:
1. Owen's formula (Owen et al., 1964). This formula is used for depths of less than 2 ft. For
this formula, REAK = 0.906, EXPREV = 0.67, and EXPRED = -1.85.
2. Churchill's formula (1962). This formula is used for high velocity situations in depths of
greater than 2 ft. For this formula, REAK = 0.484, EXPREV = 0.969, and EXPRED = -
1.673.
3. O'Connor-Dobbins formula (1958). This formula is used for lower velocity situations in
depths of greater than 2 ft. The coefficient values are: REAK = 0.538, EXPREV = 0.5, and
EXPRED = -1.5.
231
-------
HSPF Version 12
This method of calculation of reaeration is activated by setting the reaeration method flag (REAMFG) to
2.
3. Users may select their own power function of hydraulic depth and velocity for use under all
conditions of depth and velocity. In this case, the user supplies values for REAK, EXPREV, and
EXPRED. This option is selected by setting the reaeration method flag (REAMFG) to 3.
Reaeration may be modeled as a constant process for any given temperature. In this case, the user must
supply a value for REAK, and a value of zero for both EXPREV and EXPRED. Note that subroutine
OXREA requires input values for REAK, EXPREV, and EXPRED only if REAMFG is 3.
232
-------
Functional Description
BOD Decay - BODDEC
(subroutine BODDEC)
Purpose
Subroutine BODDEC adjusts the dissolved oxygen concentration of the water to account for the oxygen
consumed by microorganisms as they break down complex materials to simpler and more stable products
Only carbonaceous BOD is considered in this subroutine. The BOD decay process is assumed to follow
first-order kinetics and is represented by:
BODOX = (KBOD20*(TCBOD**(TW - 20.)))*BOD (11)
where:
BODOX = quantity of oxygen required to satisfy BOD decay
(mg/1 per interval)
KBOD20 = BOD decay rate at 20 degrees C (/interval)
TCBOD = temperature correction coefficient, defaulted to 1.07 5
TW = water temperature (degrees C)
BOD = BOD concentration (mg/1)
If there is not sufficient dissolved oxygen available to satisfy the entire demand exerted by BOD decay,
only the fraction which can be satisfied is subtracted from the BOD state variable, and the DOX variable
is set to zero.
233
-------
HSPF Version 12
Primary Inorganic Nitrogen and Phosphorus Balances - NUTRX
(Subroutine Group NUTRX of Module RCHRES)
Purpose
This section simulates the primary processes which determine the balance of inorganic nitrogen and
phosphorus in natural waters. When modeling the water quality of an aquatic system, consideration of
both nitrogen and phosphorus is essential. Nitrogen, in its various forms, can deplete dissolved oxygen
levels in receiving waters, stimulate aquatic growth, exhibit toxicity toward aquatic life, or present a
public health hazard (EPA, 1975). Phosphorus is vital in the operation of energy transfer systems in
biota, and in many cases is the growth limiting factor for algal communities. Consequently, it is
necessary to model phosphorus in any study concerned with eutrophication processes.
Schematic View of Fluxes and Storages
The figures below illustrate the fluxes and storages of four constituents which are introduced into the
RCHRES modeling system in subroutine group NUTRX. In addition to these constituents, the state
variables for dissolved oxygen and BOD are also updated. If subroutine group NUTRX is active
(NUTFG = 1), nitrate will automatically be simulated; the user must specify whether or not nitrite, total
ammonia, and/or orthophosphorus are to be simulated in addition to nitrate by assigning appropriate
values to N02FG, TAMFG, and P04FG in the User's Control Input. In addition, if ammonia or
orthophosphorus is simulated, the user may specify whether to simulate the adsorbed (particulate) forms
of ammonia and orthophosphorus. If either adsorbed nutrient is simulated, Section SEDTRN must be
active to provide the inorganic sediment (sand, silt, and clay) concentrations and fluxes. If all possible
constituents are simulated, subroutine NUTRX considers the following processes:
1. longitudinal advection of dissolved N03, N02, NH3, and P04
2. benthal release of inorganic nitrogen (NH3) and P04 (if BENRFG = 1)
3. ammonia ionization (NH3/NH4+ equilibrium)
4. ammonia vaporization (if AMVFG =1)
5. nitrification of NH3 and N02
6. denitrification ofN03 (if DENFG = 1)
7. ammonification due to degradation of BOD materials
8. adsorption/desorption of NH3 and P04 to inorganic sediment in the water column (if ADNHFG
= 1 or ADPOFG= 1)
9. deposition/scour and longitudinal advection of adsorbed NH3 and P04 (if ADNHFG = 1 or
ADPOFG = 1)
Additional sources and sinks of N03, NH3, and P04 are simulated in the PLANK section of this module.
If section PLANK is active, the state variables for these three constituents can be adjusted to account for
nutrient uptake by phytoplankton and/or benthic algae, and for respiration and inorganic excretion by
zooplankton.
234
-------
Functional Description
Inflow
to
RCHRES
Scour/
deposition
Out-
flow
thru
exit
N
NH3/NH4
Adsorbed
Algae uptake
Zoopl. resj
and death
Total
out-
flow
from
RCHRES
Total
out-
flow
from
RCHRES
Total
out-
flow
from
RCHRES
Total
out-
flow
from
RCHRES
vy
Figure 56: Flow diagram for inorganic nitrogen in the NUTRX subroutine group of the RCHRES
Application Module
235
-------
HSPF Version 12
Inflow
to
RCHRES
Scour/
deposition
Out-
flow
thru
exit
Total
out-
flow
from
RCHRES
Phyto. uptake
Inflow
to
RCHRES
Adsorption
Desorption
Out-
flow
thru
exit
N
Total
out-
flow
from
RCHRES
Zoopl. resp._
and death
Benthal
Release
Bersthic algae
uptake
BOD Decay
Figure 57: Flow diagram for ortho-phosphate in the NUTRX subroutine group of the RCHRES Application
Module
NUTRX utilizes nine principal routines to simulate inorganic nitrogen and phosphorus. Advection of
dissolved N03, N02, NH3, and P04 is performed by ADVECT. BENTH determines the amount of
inorganic nitrogen and phosphorus which is released to the overlying waters from the benthos. The
nitrification and denitrification processes are simulated by NITRIF and DENIT, respectively.
Adsorption/desorption of NH3 and P04 is computed by ADDSNU, and the advection and
deposition/scour of the adsorbed forms are simulated in ADVNUT. The ammonia ionization and
volatilization calculations are performed in AMMION and NH3VOL, respectively. Finally, the
production of inorganic nitrogen and phosphorus resulting from decay of BOD materials is simulated by
DECBAL.
236
-------
Functional Description
Before ADVECT is called, NUTRX sums the inputs of dissolved N03, NH3, and P04 from upstream
reaches, tributary land areas, and atmospheric deposition (deposition of N02 is not considered):
INNUT = INUT + SAREA*ADFX + SAREA* PREC *ADCN
where:
INNUT
INUT
SAREA
AD FX
PREC
ADCN
= total input of dissolved nutrient to reach
= input of dissolved nutrient from upstream reaches
and tributary land
= surface area of reach
= dry or total atmospheric deposition flux in mass/area
per interval
= precipitation depth
= concentration for wet atmospheric deposition in mass/volume
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, which covers the entire
simulation period, or as a set of monthly values that is used for each year of the simulation. The specific
atmospheric deposition time series are documented in the EXTNL table of the Time Series Catalog for
RCHRES, and are specified in the EXT SOURCES block of the UCI. Monthly values are input in the
MONTH-DATA block.
237
-------
HSPF Version 12
Benthal Release of Constituents - BENTH
(subroutine BENTH)
Purpose
This subroutine checks to see whether present water conditions are aerobic or anaerobic, calculates
benthal release for a constituent based on this check, and updates the concentration of the constituent.
Approach
The equation used to calculate release is:
RELEAS = BRCON(I)*SCRFAC*DEPCOR (2)
where:
RELEAS
BRCON(I) =
SCRFAC
DEPCOR
amount of constituent released (mg/1 per interval)
benthal release rate (BRTAM or BRP04) for constituent
(mg/m2 per interval)
scouring factor, dependent on average velocity of
the water (SCRFAC is computed in RQUAL)
conversion factor from mg/m2 to mg/1 (computed in RQUAL)
The dissolved oxygen concentration below which anaerobic conditions are considered to exist is
determined by the input parameter ANAER. Two release rates are required for each of the constituents:
one for aerobic conditions and one for anaerobic conditions. Typically, the aerobic release rate is less
than the anaerobic rate, because a layer of oxidized materials forms on the benthal surface during aerobic
periods, and this layer retards the release rate of additional benthal materials. BRCON(l) is the aerobic
release rate and BRCON(2) is the anaerobic rate. The choice of which release rate is used is determined
by comparing the current value of DOX to ANAER.
If ammonia is simulated, the inorganic nitrogen release from the benthos is assumed to be in the form of
ammonia, and the NH3 (TAM) state variable is updated. If ammonia is not simulated, benthal release of
inorganic nitrogen is assumed to not occur. If orthophosphate is simulated, an additional call is made to
BENTH to account for release of P04.
Simulation of benthal release processes is activated by assigning a value of one to BENRFG in the User's
Control Input for RQUAL.
238
-------
Functional Description
Nitrification - NITRIF
(subroutine NITRIF)
Purpose
NITRIF simulates the oxidation of ammonium and nitrite by chemoautotrophic bacteria. This oxidation
provides energy for bacteria much the same way that sunlight provides energy for photosynthetic algae.
The Nitrosomonas genera are responsible for conversion of ammonium to nitrite, and Nitrobacter perform
oxidation of nitrite to nitrate. Oxidation of inorganic nitrogen is dependent upon a suitable supply of
dissolved oxygen; NITRIF does not simulate nitrification if the DO concentration is below 2 mg/1.
Method
The rate of nitrification is represented by a first order equation in which nitrification is directly
proportional to the quantity of reactant present, either ammonia or nitrite. The equation used to calculate
the amount of NH3 oxidized to N02 is:
TAMNIT = KTAM2 0*(TCNIT**(TW - 20.))*TAM (3)
where:
TAMNIT = amount of NH3 oxidation (mg N/1 per interval)
KTAM20 = ammonia oxidation rate coefficient at 20 degrees C (/interval)
TCNIT = temperature correction coefficient, defaulted to 1.07
TW = water temperature (degrees C)
TAM = total ammonia concentration (mg N/1)
Similarly, if nitrite is simulated, the amount of nitrite oxidized to nitrate is determined by the equation:
N02NIT = KNO220 * (TCNIT**(TW - 20.)) * N02 (4)
where:
N02NIT = amount of N02 oxidation (mg N/l/interval
KNO220 = N02 oxidation rate coefficient at 20 degrees C (/interval)
N02 = nitrite concentration (mg N/1)
The amount of oxygen used during nitrification is 3.43 mg oxygen per mg NH3-N oxidized to N02-N,
and 1.14 mg oxygen per mg N02-N oxidized to N03-N. In the RCHRES module, these figures are
adjusted to 3.22 mg and 1.11 mg, respectively, to account for the effects of carbon dioxide fixation by
bacteria (Wezerak and Gannon, 1968). Thus, the oxygen demand due to nitrification is evaluated as:
DODEMD = 3.22 * TAMNIT + 1.11 * N02NIT (5)
where:
DODEMD = loss of dissolved oxygen from the RCHRES due to
nitrification (mg 0/1 per interval)
If the value of DODEMD is greater than available dissolved oxygen, the amounts of oxidation from NH3
to N02 and from N02 to N03 are proportionally reduced, so that the state variable DOX maintains a
non-negative value. If nitrite is not simulated, the calculated amount of oxidized ammonia is assumed to
be fully oxidized to nitrate.
239
-------
HSPF Version 12
Denitrification - DENIT
(subroutine DENIT)
Purpose
DENIT simulates the reduction of nitrate by facultative anaerobic bacteria such as Pseudomonas,
Micrococcus, and Bacillus. These bacteria can use N03 for respiration in the same manner that oxygen is
used under aerobic conditions. Facultative organisms use oxygen until the environment becomes nearly
or totally anaerobic, and then switch over to N03 as their oxygen source. In HSPF, the end product of
denitrification is assumed to be nitrogen gas.
Denitrification does not occur in the RCHRES module unless the dissolved oxygen concentration is
below a user-specified threshold value (DENOXT). If that situation occurs, denitrification is assumed to
be a first-order process based on the N03 concentration. The amount of denitrification for the interval is
calculated by the following equation:
Approach
DENN03 = KNO320 * (TCDEN**(TW-20)) * N03
(6)
where:
TCDEN
NO 3
DENN03
KNO320
amount of N03 denitrified (mg N/1 per interval)
N03 denitrification rate coefficient at 20 degrees C
(/interval)
temperature correction coefficient for denitrification
nitrate concentration (mg N/1)
240
-------
Functional Description
Adsorption/Desorption of Ammonia and Orthophosphorus - ADDSNU
(subroutine ADDSNU)
Purpose
This subroutine simulates the exchange of nutrient (ammonium and orthophosphorus) between the
dissolved state and adsorption on suspended sediment. The sorbents considered are suspended sand, silt,
and clay, which are simulated in section SEDTRN. The adsorption/desorption process is not simulated in
bed sediments.
Approach
The adsorption/desorption for each sediment fraction is represented with an equilibrium, linear isotherm,
i.e., a standard Kd approach, which is described as follows:
SNUT(J) = DNUT * ADPM(J) (7)
where:
SNUT(J) = equilibrium concentration of adsorbed nutrient on sediment
fraction J (mg/kg)
DNUT = the equilibrium concentration of dissolved nutrient (mg/1)
ADPM(J) = adsorption parameter (or Kd) for sediment fraction J (1/kg)
This expression for SNUT(J) is substituted into the following mass balance expression for total nutrient in
the reach:
NUM = DNUT*VOL + SUM[SNUT(J)*RSED(J)]
= total nutrient in reach J=l,3 (8)
where:
NUM = variable used to represent total nutrient mass in the reach (mg)
VOL = volume of reach (1)
RSED(J) = mass of sediment fraction J in suspension (kg)
After substituting, rearranging, and solving for DNUT, the following expression is obtained:
NUM
DNUT = (9
VOL + SUM[RSED(J)*ADPM(J)]
J=l, 3
In the above equation, the value of NUM is obtained from a "non-equilibrium" version of Equation 8 in
which temporary DNUT and SNUT values include the effects of other processes such as advection,
scour/deposition, nitrification, etc, that have occurred during the interval. Therefore, the overall
procedure involves performing all processes that affect the nutrient concentrations, and then partitioning
(equilibrating) the total mass of nutrient among the four phases, i.e., dissolved phase and three sediment
fractions.
Note, the units listed for some variables in the preceding discussion are simplified from the internally-
used HSPF units.
241
-------
HSPF Version 12
Advection and Deposition/Scour of Adsorbed Ammonia and Orthophosphorus - ADVNUT
(subroutine ADVNUT)
Purpose
ADVNUT simulates the advective processes for a nutrient (NH3 or P04) attached to one sediment size
fraction. Processes handled in this routine include:
1. Inflow to the RCHRES of nutrient attached to suspended sediment.
2. Migration of nutrient from suspension in the water to the bed as a result of deposition of the
sediment to which the nutrient is adsorbed.
3. Migration of nutrient from the bed into suspension in the water as a result of scour of the bed
sediments to which the nutrient is adsorbed.
4. Outflow from the RCHRES of nutrient attached to suspended sediment.
Method
The movement of adsorbed nutrient is completely determined by the movement of the sediment to which
it is attached. All fluxes of adsorbed nutrient are expressed as the product of the flux of a sediment
fraction (sand, silt, or clay) and the concentration of nutrient associated with that fraction (expressed in
mg per kg of sediment). Likewise, storages of adsorbed nutrient are expressed as the product of the
sediment fraction storage and the associated concentration of nutrient. Note that the nutrient storage in
the bed is essentially infinite. Nutrients that deposit to the bed are assumed to be lost from the RCHRES,
and scoured sediment is assumed to have a constant (user-specified) adsorbed nutrient concentration; thus
the scoured nutrient flux is limited only by the storage of sediment in the bed. A simplified flow diagram
of sediment and associated nutrient fluxes and storages is provided in Figure 4.2(3).7.2-3 to facilitate the
following discussion. ADVNUT is designed to operate on one sediment fraction and one nutrient each
time it is called by subroutine NUTRX.
If the sediment simulation in module section SEDTRN indicates that scour of bed storage of a sediment
fraction occurs, the following actions are taken in ADVNUT:
1. The flux of nutrient from bed to suspension is calculated as:
DSNUT = BNUT*DEPSCR (10)
where:
DSNUT = amount of nutrient scoured from bed and added to suspension
(mg/1)*(ft3/ivl) or (mg/1)*(m3/ivl)
BNUT = constant concentration of nutrient on bed sediment fraction
under consideration (mg/mg sediment)
DEPSCR = amount of sediment fraction which is scoured from
the bed (mg.ft3/l.ivl or mg.m3/l.ivl)
2. The concentration of adsorbed nutrient in suspension is updated to account for scour:
SNUT = (ISNUT + RSNUTS - DSNUT)/(RSED + ROSED) (11)
242
-------
Functional Description
where:
SNUT = concentration of adsorbed nutrient in suspension
(mg/mg suspended sediment)
ISNUT = inflow of nutrient to the RCHRES as a result of inflowing
sediment fraction ((mg/1)*(ft3/ivl) or (mg/1)*(m3/ivl))
RSNUTS = storage of nutrient on suspended sediment fraction
((mg/l)*ft3 or (mg/l)*m3)
RSED = amount of sediment fraction in suspension
at end of interval (mg.ft3/l or mg.m3/l)
ROSED = amount of sediment fraction contained in outflow from the RCHRES
during the interval (mg.ft3/l.ivl or mg.m3/l.ivl)
3. The concentration of nutrient on bed sediment is set equal to zero if the storage of bed sediment at
the end of the interval is zero.
4. Amount of nutrient leaving the RCHRES as outflow is determined as:
ROSNUT = ROSED*SNUT (12)
If the sediment simulation in module section SEDTRN indicates that deposition of suspended sediment
occurs, ADVNUT performs the following operations:
1. Concentration of nutrient on total suspended sediment fraction (inflow + suspended storage) for
the RCHRES is calculated:
SNUT = (ISNUT + RSNUTS)/(RSED + DEPSCR + ROSED) (13)
2. Amount of nutrient leaving the RCHRES due to outflow of sediment fraction is determined:
ROSNUT = ROSED*SNUT (14)
3. Amount of nutrient leaving suspension due to deposition of the sediment to which it is adsorbed
is found by:
DSNUT = DEPSCR*SNUT (15)
4. The concentration of nutrient on sediment in suspension is set equal to zero if the suspended
storage of sediment is zero.
The final operation which ADVNUT performs is the computation of outflow of adsorbed nutrient through
individual exits (when more than one exit is specified). The algorithm is:
OSNUT(I) = ROSNUT*OSED(I)/ROSED (16)
where:
OSNUT(I) = outflow of adsorbed nutrient through exit gate I
ROSNUT = total outflow of adsorbed nutrient from RCHRES
OSED(I) = outflow of sediment fraction through exit gate I
243
-------
HSPF Version 12
Ionization of Ammonia to Ammonium - AMMION
(subroutine AMMION)
Approach
The total dissolved ammonia state variable (TAM) consists of two forms, NH4+ and NH3. The ionized
form is dominant at typical pH's and temperatures found in nature; however, the un-ionized form is toxic
to aquatic species at fairly low concentrations, and may be significant at some extreme environmental
pH's. Therefore, while the process formulations in HSPF are based on the total ammonia, the un-ionized
form is computed and output.
The fraction (FRAC) of total ammonia that is present as un-ionized ammonia is calculated as:
10**pH
FRAC = (17)
10**pH + RATIO
where:
RATIO = ratio of ionization products for water (kw) and ammonia (kb)
RATIO is computed using an empirical relationship based on pH and temperature as described by Loehr
etal. (1973):
RATIO = -3.39753 loge(0.02409 TW) 10**9 (18)
The pH used in Equation 17 may be obtained from Section PHCARB (if it is active) or specified by the
user in the form of a constant value, 12 monthly values, or an input time series.
244
-------
Functional Description
Ammonia Volatilization - NH3VOL
(subroutine NH3VOL)
Approach
The amount of total ammonia lost from the RCHRES due to ammonia volatilization is calculated by a
standard two-layer model of mass transfer across the air-water interface; this is based on Henry's Law and
the flux of mass through the water and air films. The inverse of the overall mass transfer coefficient is
given by the following expression:
1 1 8.21x10-5 * TWKELV
= KRINV = + (19)
KR NH3KL HCNH3 * NH3KG
where:
KR
KRINV
NH3KL
NH3KG
HCNH3
8.21E-5
TWKELV
overall mass transfer coefficient (cm/hr)
inverse of coefficient (hr/cm)
liquid film mass transfer coefficient (cm/hr)
gas film mass transfer coefficient (cm/hr)
Henry's Law Constant for ammonia (atm-m3/mole)
the ideal gas constant (atm-m3/K/mole)
water temperature (degrees K)
Computation of the liquid-film coefficient is based on correlation with the reaeration rate (i.e., the rate of
transfer of oxygen gas across the interface). The proportionality constant is a function of the ratio of the
molecular weights. Therefore, the liquid-film coefficient is given by:
NH3KL = [KOREA * AVDEPM * 100/DELT60] * [1.878**(EXPNVL/2.)] (20)
where:
KOREA
AVDEPM
100
DELT60
1.878
EXPNVL
the oxygen reaeration rate (per interval)
average depth of the reach (m)
conversion from meters to centimeters
conversion from units of per interval to units of per hour
ratio of molecular weight of oxygen (32) to ammonia (17)
user-specified exponential factor
Note that in the first part of the above equation, KOREA is being converted to the same units as NH3KL,
i.e., cm/hr.
In a similar manner to the liquid-film coefficient, the gas-film coefficient is computed from the water
evaporation rate which is primarily driven by the wind. The gas film coefficient is computed as:
NH3KG = 700. * WINDSP * 1.057**(EXPNVG/2.) (21)
where:
700 = an empirical constant relating the wind speed in m/s and the
evaporation rate in cm/hr
WINDSP = wind speed (m/s)
1.057 = ratio of water molecular weight to that of ammonia
EXPNVG = user-specified exponential factor
245
-------
HSPF Version 12
The Henry's constant for ammonia (HCNH3) is interpolated from a table of values based on temperature
and pH.
The reach-specific, first-order rate constant for volatilization is computed by:
KNVOL = KR * DELT60/(AVDEPM * 100) (22)
where:
KNVOL = first-order rate constant for volatilization (/interval)
100 = conversion from units of 1/cm to 1/m
Finally, the volatilization loss is computed as:
NH3VLT = KNVOL * TAM (23)
where:
NH3VLT = volatilization loss during the interval (mg N/1)
TAM = concentration of total ammonia (mg N/1)
Simulation of ammonia volatilization is activated by setting AMVFG equal to one in the User's Control
Input. Of course, total ammonia simulation must also be activated by setting TAMFG equal to 1.
246
-------
Functional Description
Materials Balance for Transformation from Organic to Inorganic - DECBAL
(subroutine DECBAL)
Purpose
DECBAL adjusts the inorganic nitrogen and orthophosphorus state variables to account for
decomposition of organic materials.
Method
In subroutine NUTRX the total BOD decay for the time interval is used to compute the corresponding
amounts of inorganic nitrogen and orthophosphorus produced by the decay are determined as:
DECNIT = BODOX*CVON (24)
DECP04 = BODOX*CVOP (25)
where:
BODOX = total BOD decay (mg 0/1 per interval)
CVON = stoichiometric conversion factor from mg oxygen to mg nitrogen
CVOP = stoichiometric conversion factor from mg oxygen to mg phosphorus
The values for DECNIT and DECP04 are passed to subroutine DECBAL. If ammonia is simulated, the
value of DECNIT is added to the NH3 (TAM) state variable; if not, DECNIT is added to the N03 state
variable. If orthophosphorus is simulated, the value of DECP04 is added to the P04 state variable.
247
-------
HSPF Version 12
Plankton Populations and Associated Reactions - PLANK
(Subroutine Group PLANK of Module RCHRES)
Purpose
PLANK simulates phytoplankton, zooplankton, and/or benthic algae.
Schematic View of Fluxes and Storages
The figures below illustrate the fluxes and storages of the six constituents which are introduced into the
RCHRES modeling system in subroutine PLANK. In addition to these constituents, the state variables
for dissolved oxygen, biochemical oxygen demand, nitrate, total ammonia, and orthophosphorus are also
updated. If subroutine group PLANK is active (PLKFG = 1), dead refractory organics will automatically
be simulated. The state variables for these organics are ORN (dead refractory organic nitrogen), ORP
(dead refractory organic phosphorus), and ORC (dead refractory organic carbon). The user must specify
whether or not phytoplankton, zooplankton, and/or benthic algae are simulated by assigning appropriate
values to PHYFG, ZOOFG, and BALFG in the User's Control Input. The state variable PHYTO
represents the free floating photosynthetic algae, ZOO represents the zooplankton which feed on PHYTO,
and BENAL is the state variable for algae attached to the benthal surface.
Subroutine group PLANK is a large and complex code segment. It uses twelve subroutines to perform
simulation of the three types of plankton. Longitudinal advection of PHYTO and ZOO is performed by
ADVPLK, a special advection routine for plankton. ORN, ORP, and ORC are advected by ADVECT.
The sinking of PHYTO, ORN, ORP, and ORC is performed by subroutine SINK. The user controls the
sinking rate of these constituents by assigning values to parameters PHYSET and REFSET in the User's
Control Input. PHYSET is the rate of phytoplankton settling, and REFSET is the settling rate for all three
of the dead refractory organic constituents. Advection and sinking are performed every interval.
Before ADVECT is called, PLANK sums the inputs of ORN, ORP, and ORC from upstream reaches,
tributary land areas, and atmospheric deposition:
INORG = IORG + SAREA*ADFX + SAREA* PREC *ADCN (1)
where:
INORG = total input of organic to reach
IORG = input of organic from upstream reaches and tributary land
SAREA = surface area of reach
ADFX = dry or total atmospheric deposition flux in mass/area per interval
PREC = precipitation depth
ADCN = concentration for wet atmospheric deposition in mass/volume
248
-------
Functional Description
IPHYTO
NFLOW
to
RCHRES
GROPHY*CVPB
(Net growth\
(growth )
respiration)J
DTHPHY*CVPB
(
V
Death
lOPHYT(N)
Outflow
from
RCHRES
through
exit N
SNKPHY
Sinking
A
J
ZEAT
^Zoo plankton 1
\oredatioo
ROPHYT
Sum of
out-
flows
from
RCHRES
~ ~
Figure 58: Flow diagram for phytoplankton in the PLANK section of the RCHRES Application Module
IREF
INFLOW
to
RCHRES
J
PHYREF
Phyto- \
plankton ]
death y
Sinking
BALREF
f Benthic
. algae
death
m
Dead
refractory
organ ics
storage
SNKOUT
~\
J
Outflow
from
RCHRES
throjgh
•sit B
v./
ROREF
ZREF
A
V
Zoo plankton^
death and
excretion
Figure 59: Flow diagram for dead refractory organics in the PLANK section of the RCHRES Application
Module
249
-------
HSPF Version 12
IZOO
INFLOW
to
I1CHRES
ZOGR
Growth
j
ZRES
^Respiration
Outflow
from
RCHRES
through
txitN
r
v
ZDTH
Death
ROZOO
Sum of
out-
flows
from
RCHRES
Figure 60: Flow diagram for zooplankton in the PLANK section of the RCHRES Application Module
(GRQBAL*CVFB)/DEFCQR
Net growth\
(growth-
respiration)J
(DTH B AL*C VP B)/D EPCO R
Death
V
(VOL/AVDEPE)
* BENAL
Storage
Figure 61: Flow diagram for benthic algae in the PLANK section of the RCHRES Application Module
250
-------
Functional Description
Atmospheric deposition inputs can be specified in two possible ways depending on the form of the
available data. If the deposition is in the form of a flux (mass per area per time), then it is considered dry
deposition. If the deposition is in the form of a concentration in rainfall, then it is considered wet
deposition, and the program automatically combines it with the input rainfall time series to compute the
resulting flux. Either type of deposition data can be input as a time series, which covers the entire
simulation period, or as a set of monthly values that is used for each year of the simulation. The specific
atmospheric deposition time series for NUTRX are documented in the EXTNL table of the Time Series
Catalog for RCHRES, and are specified in the EXT SOURCES block of the UCI. The monthly values
are input in the MONTH-DATA block.
The remainder of the processes modeled in PLANK are only performed when the average depth of water
in the RCHRES is at least 2 inches. Experience has shown that the algorithms used to represent these
processes are not accurate for excessively shallow waters. If 2 inches or more of water is present in the
RCHRES, PLANK performs a series of operations which are necessary to determine the availability of
light to support algal growth. First the light intensity at the RCHRES surface is calculated by the
following equation:
INLIT = 0.97*CFSAEX*SOLRAD/DELT (2)
where:
INLIT
0. 97
CFSAEX
SOLRAD
DELT
light intensity immediately below water surface (langleys/min)
correction factor for surface reflection (assume 3 percent)
input parameter that specifies the ratio of radiation at
water surface to gage radiation values. This factor also
accounts for shading of the water body, e.g., by trees and
streambanks
solar radiation (langleys/interval)
conversion from units of per interval to per minute
After the light intensity at the water surface has been calculated, PLANK determines the factors which
diminish the intensity of light as it passes through the water. In addition to the natural extinction due to
passage through water, extinction may result from interference caused by suspended sediment or
phytoplankton. If SDLTFG is assigned a value of one, the contribution of total suspended sediment to
light extinction is calculated as:
EXTSED = LITSED*SSEDT (3)
where:
EXTSED = increment to base extinction coefficient due to total
suspended sediment (/ft)
LITSED = multiplication factor to total suspended sediment conc.
(supplied in User's Control Input)
SSEDT = total suspended sediment (sand + silt + clay) (mg/1)
251
-------
HSPF Version 12
The contribution of suspended phytoplankton to light extinction is determined by the empirical
relationship:
EXTCLA = 0.00452*PHYCLA (4)
where:
EXTCLA = increment to base extinction coefficient due to phytoplankton (/ft)
0.00452 = multiplication factor to phytoplankton chlorophyll a concentration
PHYCLA = phytoplankton concentration (micromoles/1 of chlorophyll a)
After values for INLIT, EXTSED, and EXTCLA have been calculated, PLANK calls subroutine LITRCH
to determine the light correction factor to algal growth and the amount of light available to phytoplankton
and benthic algae. Once these calculations have been completed, PLANK checks a series of flags to
determine which types of plankton are to be simulated. If PHYFG is assigned a value of one, simulation
of phytoplankton is performed. Zooplankton are simulated if ZOOFG is given a value of one.
Zooplankton simulation can be performed only if the phytoplankton section is active. Finally, a value of
one for BALFG activates benthic algae simulation.
252
-------
Functional Description
Advect Plankton - ADVPLK
(subroutine ADVPLK)
Purpose
ADVPLK performs the advection of phytoplankton and zooplankton. The normal advection method
(subroutine ADVECT) used in the RCHRES module assumes that each constituent concentration is
uniform throughout the RCHRES. This assumption is not valid for plankton. Both phytoplankton and
zooplankton locate their breeding grounds near the channel boundaries. Since the water near the
boundaries moves downstream much more slowly than the mean water velocity, the plankton populations
have a much longer residence time in the RCHRES than would be indicated by the mean flowtime. The
geographical extent of the plankton breeding grounds is inversely related to the flow rate. At low flows,
large areas of slow moving waters which are suitable for breeding exist along the channel boundaries. As
flowrates increase, more and more of these areas are subject to flushing. The special advection routine is
critical to plankton simulation, because the only source of plankton is within the reach network. Thus an
upstream RCHRES with no plankton inflows can maintain a significant plankton population only if the
growth rate of plankton exceeds the rate at which plankton are advected out of the RCHRES. Since
biological growth rates are typically much slower than "normal" advection rates, few free-flowing
RCHRES's could maintain a plankton population without the use of the special advection routine.
Method
The figure below illustrates the relationships used to perform plankton
advection.
OREF
OFLO (ff/sec)
Figure 62: Relationship of parameters for special advection of plankton
253
-------
HSPF Version 12
ADVPLK assumes that a certain concentration of plankton (STAY) is not subject to advection, but any
excess of organisms will be advected in the normal way. A small population (SEED) of plankton are
never subject to advection, even during the periods of greatest flow. The maximum concentration of
plankton which is not subject to advection (MXSTAY) occurs during low flow conditions. Each
simulation interval ADVPLK calculates STAY based on the values of these two parameters and OREF.
OREF is the outflow rate at which STAY has a value midway between SEED and MXSTAY. First, the
average flow rate through the RCHRES for the interval is calculated:
OFLO = (SROVOL + EROVOL)/DELTS (5)
where:
OFLO = average flow rate (ft3/s or m3/s)
DELTS = number of seconds per interval
SROVOL and EROVOL are as defined in ADCALC
The concentration of plankton which is not subject to advection is then determined:
STAY = (MXSTAY - SEED)*(2.0**(-OFLO/OREF)) + SEED (6)
where:
STAY = plankton concentration not advected (mg/1)
MXSTAY = maximum concentration not subject to advection
SEED = concentration of plankton never subject to advection
OREF = outflow rate at which STAY has a value midway between
SEED and MXSTAY (ft3/s or m3/s)
The amount of plankton not subject to advection is converted to units of mass (MSTAY) by multiplying
STAY by the volume in the RCHRES at the start of the interval (VOLS). The concentration of plankton
which is advected is:
PLNKAD = PLANK - STAY (7)
ADVPLK calls subroutine ADVECT to perform longitudinal advection of the quantity PLNKAD. The
updated value of PLNKAD is then added to the amount of plankton which did not undergo advection to
determine the concentration of plankton in the RCHRES at the end of the interval:
PLANK = PLNKAD + MSTAY/VOL (8)
where:
PLANK = concentration of plankton at end of interval
PLNKAD = concentration of advected plankton which remain in RCHRES
MSTAY = mass of plankton not advected
VOL = volume in RCHRES at end of interval
If the concentration of plankton in the RCHRES at the start of the interval is less than the value assigned
to SEED, advection of plankton is not performed in the RCHRES, and the value of PLANK at the end of
the interval is calculated as:
PLANK = (MSTAY + IPLANK)/VOL (9)
where:
IPLANK = mass of plankton which enters RCHRES during interval
254
-------
Functional Description
Light-related Information for Algal Simulation - LITRCH
(subroutine LITRCH)
Purpose
Subroutine LITRCH determines the light correction factor to algal growth and the amount of light
available to phytoplankton and benthic algae.
Method
The overall light extinction factor for the interval is obtained by adding EXTSED and EXTCLA to the
base extinction coefficient (EXTB). The value of EXTB is assumed constant for a particular RCHRES
and must be assigned in the User's Control Input. The resulting sum (EXTCO) is used to calculate the
euphotic depth, which is the distance below the surface of the water body at which 1 percent of the light
incident on the surface is still available:
EUDEP = 4.60517/EXTCO (10)
where:
EUDEP = euphotic depth (ft)
EXTCO = total light extinction coefficient (/ft)
HSPF assumes that growth of algae occurs only in the euphotic zone (that is, the water above euphotic
depth). When EUDEP has been calculated, it is possible to assign a value to CFLIT, the light correction
factor to algal growth. A value of 1.0 is assigned to CFLIT if the calculated euphotic zone includes all the
water of the RCHRES. CFLIT = EUDEP/AVDEPE, if the euphotic depth is less than the average depth
of water (AVDEPE). CFLIT is used in subroutine ALGRO, to adjust the computed rate of algal growth.
Finally, the amount of light available to phytoplankton and benthic algae is calculated. The equation used
to calculate the amount of light available to phytoplankton assumes that all phytoplankton are at mid-
depth in the RCHRES or the middle of the euphotic zone, whichever is closer to the surface:
PHYLIT = INLIT*Exp(-EXTCO*(.5*Min(EUDEP,AVDEPE))) (11)
where:
PHYLIT
INLIT
EXTCO
AVDEPE
Exp
Min
light available to phytoplankton (langleys/min)
light available at water surface (langleys/min)
light extinction coefficient (/ft)
average depth of water in the RCHRES (ft)
Fortran exponential function
Fortran minimum function
The equation used to calculate the amount of light available to benthic algae assumes that all benthic
algae are at AVDEPE below the surface of the RCHRES:
BALLIT = INLIT*Exp(-EXTCO*AVDEPE) (12)
255
-------
HSPF Version 12
Phytoplankton - PHYRX
(subroutine PHYRX)
Purpose
PHYRX simulates the algae which float in the water of a RCHRES. Because these organisms use energy
from light to produce organic matter, they are called primary producers and are considered the first
trophic level in the aquatic ecosystem. The biological activity of the ecosystem depends upon the rate of
primary production by these photosynthetic organisms. The activities of the phytoplankton are in turn
affected by the physical environment. Through the process of photosynthesis, phytoplankton consume
carbon dioxide and release oxygen back into the water. At the same time, algal respiration consumes
oxygen and releases carbon dioxide. Phytoplankton reduce the concentration of nutrients in the water by
consuming phosphates, nitrate, and ammonia. Through assimilation these nutrients are transformed into
organic materials which serve as a food source for higher trophic levels. A portion of the organic matter
that is not used for food decomposes, which further affects the oxygen and nutrient levels in the water.
Where the phytoplankton population has grown excessively, much of the available oxygen supply of the
water may be depleted by decomposition of dead algae and respiration. In this situation, phytoplankton
place a serious stress upon the system.
Approach
To describe quantitatively the dynamic behavior of phytoplankton populations, a number of assumptions
must be made. PHYRX treats the entire phytoplankton population as if it were one species, and the mean
behavior of the population is described through a series of generalized mathematical formulations. While
such an approach obscures the behavior of individual species, the overall effect of the phytoplankton
population on the water quality can be modeled with reasonable accuracy.
The HSPF system assumes that biomass of all types (phytoplankton, zooplankton, benthic algae, dead
organic materials) has a consistent chemical composition. The user specifies the biomass composition by
indicating the carbon:nitrogen: phosphorus ratio and the percent-by-weight carbon. This is done by
assigning values to the following parameters:
1. CVBPC: number of moles of carbon per mole of phosphorus in biomass (default = 106)
2. CVBPN: number of moles of nitrogen per mole of phosphorus in biomass (default =16)
3. BPCNTC: percentage of biomass weight which is carbon (default = 49)
The algorithms used in PHYRX and its subroutines require that the phytoplankton population be
expressed in units of micromoles of phosphorus per liter. PHYRX converts the value for state variable
PHYTO in milligrams biomass per liter into micromoles phosphorus per liter and assigns this value to the
internal state variable STC (standing crop).
PHYRX uses five routines to simulate phytoplankton. ALGRO computes unit growth and respiration
rates and determines the growth limiting factor for the phytoplankton. If the amount of growth exceeds
the amount of respiration for the interval, GROCHK adjusts growth to account for nutrient limitations.
PHYDTH calculates the amount of death occurring during the interval. State variables ORN, ORP, ORC,
and BOD are updated by ORGBAL to account for materials resulting from phytoplankton death. Finally,
NUTRUP adjusts the values for P04, N03, and TAM (total ammonia) to account for uptake of nutrients
by phytoplankton. In addition to these updates, the dissolved oxygen state variable is adjusted in PHYRX
to account for the net effect of phytoplankton photosynthesis and respiration:
256
-------
Functional Description
DOX = DOX + (CVPB*CVBO*GROPHY) (13)
where:
CVPB = conversion factor from micromoles phosphorus to mg biomass
CVBO = conversion factor from mg biomass to mg oxygen
GROPHY = net growth of phytoplankton
(micromoles phosphorus/1 per interval)
After all the operations in PHYRX and its subroutines have been performed, the value of STC is
converted back into units of milligrams biomass per liter and becomes the updated value of PHYTO.
257
-------
HSPF Version 12
Unit Growth and Respiration Rates for Algae - ALGRO
(subroutine ALGRO)
Purpose
ALGRO calculates the unit growth rate of algae based on light, temperature, and nutrients. Each time
step, ALGRO determines the rate limiting factor for growth, and passes a label which identifies the
limiting factor to the subroutines responsible for printed output. The labels and their meanings are as
follows:
'LIT' Growth is light limited.
'NON' Insufficient nutrients are available to support growth.
'TEM' Water temperature does not allow algal growth.
'NIT' Growth is limited by availability of inorganic nitrogen.
'P04' Growth is limited by availability of orthophosphorus.
'NONE' There is no limiting factor to cause less than maximal growth.
'WAT' Insufficient water is available to support growth.
ALGRO is also responsible for calculating the unit respiration rate for algae. This routine is used in the
simulation of both phytoplankton and benthic algae.
Approach
ALGRO performs a series of initial checks to determine whether or not conditions are suitable for growth
during the interval. If the light intensity for the interval is less than 0.001 langleys/min, insufficient light
is available for growth, and growth is not calculated. Likewise, if the concentration of either inorganic
nitrogen or orthophosphorus is less than 0.001 mg/1, no growth occurs. If these checks indicate that
conditions are suitable for growth, ALGRO next determines the effects of water temperature on the
growth potential.
Temperature Control
The user specifies the temperature preferences of the algae by assigning values to three parameters:
TALGRL, TALGRM, and TALGRH. If the water temperature is less than the value assigned to
TALGRL or greater than the value assigned to TALGRH, no growth occurs. For water temperatures
between TALGRL and TALGRH, a correction factor to maximum growth rate (MALGR) is calculated.
This correction factor increases in value linearly from 0.0 at TALGRL to 1.0 at TALGRM. Thus,
TALGRM specifies the minimum temperature at which growth can occur at a maximum rate. ALGRO
assumes that there is no temperature retardation of maximum growth rate for temperatures between
TALGRM and TALGRH. The temperature corrected maximum growth rate is:
MA.LGRT = MALGR*TCMALG (14)
where:
MA.LGRT = temperature corrected maximum algal growth rate (/interval)
MALGR = maximum unit growth rate for algae
TCMA.LG = temperature correction to growth
(TCMA.LG ranges between 0 and 1)
258
-------
Functional Description
Once the temperature correction to potential growth rate has been made, ALGRO uses Monod growth
kinetics with respect to orthophosphorus, inorganic nitrogen, and light intensity to determine the actual
growth rate. The procedure taken in ALGRO is to consider each possible limiting factor separately to
determine which one causes the smallest algal growth rate during each simulation interval. This method
does not preclude that interactions between factors affect the actual growth rate; in cases where it has
been established that there is such an interaction, as in the uptake of phosphate, the phenomena are
included in the model. If none of the factors considered is limiting, growth will be maximal and
temperature dependent.
Phosphorus Limited Growth
Algae are dependent upon uptake of orthophosphorus to provide the continual supply of phosphorus
necessary for ordinary cellular metabolism and reproductive processes. In phosphorus-limited situations,
the resultant growth rate has been shown to be dependent not only on the concentration of phosphate ions,
but on nitrate concentration as well (DiToro, et al., 1970). The phosphorus limited growth rate is
determined by:
GROP = MALGRT*P04*N03/((P04 + CMMP)*(N03 + CMMNP)) (15)
where:
GROP
MA.LGRT =
P04
N03
CMMP
CMMNP =
unit growth rate based on phosphorus limitation (/interval)
temperature corrected maximum algal growth rate
orthophosphorus concentration (mg P/l)
nitrate concentration (mg N/1)
orthophosphorus Michaelis-Menten constant for phosphorus
limited growth (mg P/l) (CMMP is defaulted to 0.015 mg P/l)
nitrate Michaelis-Menten constant for phosphorus limited
growth (mg N/1) (CMMNP is defaulted to 0.0284 mg N/1)
Nitrogen Limited Growth
Nitrogen is essential to algae for assimilation of proteins and enzymes. In the form of nitrate, nitrogen
serves as the essential hydrogen acceptor in the metabolic pathways which enable organisms to grow.
ALGRO allows for two different sources of inorganic nitrogen. If ammonia is being simulated and a
value of one is assigned to the nitrogen source flag (NSFG), both ammonia and nitrate are used by algae
to satisfy their nitrogen requirements. Otherwise, only nitrate is considered in the kinetics formulations.
High ratios of ammonia to nitrate have been found to retard algal growth. If a value of one is assigned to
the ammonia retardation flag (AMRFG), this phenomenon is simulated by the equation:
MA.LGN = MA.LGRT - 0.757*TAM + 0.051*N03 (16)
where:
MA.LGN = maximum unit growth rate corrected for ammonia retardation
(/interval)
MA.LGRT = temperature corrected maximum unit growth rate
Nitrogen limitation on growth is calculated by the equation:
GRON = MALGN*MMN/(MMN + CMMN) (17)
259
-------
HSPF Version 12
where:
GRON = unit growth rate based on nitrogen limitation (per interval)
MA.LGN = maximum unit growth rate (MA.LGN has the same value
as MALGRT if AMRFG is set to zero)
MMN = total pool of inorganic nitrogen considered available
for growth
CMMN = Michaelis-Menten constant for nitrogen limited growth
(mg N/1) (CMMN is defaulted to 0.045 mg N/1)
Light Limited Growth
The equation used to determine the limitation on growth rate imposed by light intensity was derived by
Dugdale and Macisaac (1971) based on uptake rates of inorganic nitrogen under varying light intensities:
GROL = MALGRT*LIGHT/(CMMLT + LIGHT) (18)
where:
GROL = unit growth rate based on light limitation (/interval)
MALGRT = temperature corrected maximum unit growth rate (/interval)
LIGHT = light intensity available to algae in RCHRES (langleys/min)
CMMLT = Michaelis-Menten constant for light limited growth
(langleys/min) (CMMLT is defaulted to 0.033 langleys/min)
Algal Respiration
Algal respiration is dependent upon water temperature and is calculated by the equation:
RES = ALR20*(TW/20.) (19)
where:
RES = unit algal respiration rate (/interval)
ALR20 = unit respiration rate at 20 degrees C
TW = water temperature (deg C)
260
-------
Functional Description
Nutrients Required for Computed Growth - GROCHK
(subroutine GROCHK)
GROCHK assures that a minimum concentration of 0.001 mg/1 of each nutrient remains in the RCHRES
waters after growth occurs. If this condition is not satisfied, the computed growth rate is adjusted
accordingly. Orthophosphorus and inorganic nitrogen are always considered as nutrients. If pH is
simulated (PHFG = 1), the user may specify that carbon dioxide concentration also be considered as a
limiting nutrient by setting the value of DECFG equal to zero.
261
-------
HSPF Version 12
Phytoplankton Death - PHYDTH
(subroutine PHYDTH)
Purpose
PHYDTH calculates algal death each interval by using one of two unit death rates specified in the User's
Control Input. ALDL, the low unit death rate, is used when environmental conditions encourage
sustained life. In situations where nutrients are scarce or the phytoplankton population becomes
excessive, ALDH, the high algal death rate, is used.
The high algal death rate, which has a default value of 0.01/hr, is used if any one of three conditions
exists:
1. the concentration of P04 is less than the value of parameter PALDH
2. the concentration of inorganic nitrogen is less than the value of parameter NALDH
3. the concentration of phytoplankton is greater than the value of parameter CLALDH
Regardless of whether these tests indicate that ALDH or ALDL should be used, an additional increment
to death occurs if anaerobic conditions prevail during the interval. The increment to death rate due to
anaerobic conditions is determined by the value of parameter OXALD. The amount of phytoplankton
death which occurs during the interval is calculated as:
DTHPHY = ALD*STC (20)
Method
where:
DTHPHY
ALD
STC
amount of phytoplankton death (micromoles P/l per interval)
unit algal death rate determined by environmental conditions
(/interval)
concentration of phytoplankton (micromoles P/l)
262
-------
Functional Description
Materials Balance for Transformation from Living to Dead Organic - ORGBAL
(subroutine ORGBAL)
Purpose
ORGBAL increments the concentrations of dead organics to account for plankton death. Plankton death
may either be algal death, zooplankton death, or phytoplankton ingested by zooplankton but not
assimilated. In each case in which ORGBAL is called, the increments to ORP, ORN, ORC, and BOD are
calculated in the subroutine which makes the call and passed on to ORGBAL. ORGBAL is merely a
service program which performs the additions to these state variables.
263
-------
HSPF Version 12
Materials Balance for Transformation from Inorganic to Organic - NUTRUP
(subroutine NUTRUP)
Purpose
NUTRUP adjusts the concentrations of inorganic chemicals to account for net growth of algae. Net
growth may be either positive or negative depending on the relative magnitude of growth and respiration.
The state variables which are updated by NUTRUP include P04, N03, TAM, and C02.
Method
The adjustments to P04 and C02 are straightforward. The P04 state variable is always updated; the C02
state variable is only updated if pH is simulated (PHFG = 1) and carbon dioxide is considered as a
limiting nutrient (DECFG = 0). Adjustment of the inorganic nitrogen state variables is more complex. If
ammonia is not specified as a source of inorganic nitrogen for growth (NSFG = 0), only the N03 state
variable is updated to account for net growth. If ammonia is considered a nutrient (NSFG = 1), negative
net growth is accounted for by adding the total flux of nitrogen to the TAM state variable. If net growth
is positive, a portion of the nitrogen flux is subtracted from both the N03 and TAM state variables. The
relative proportions of N03 and TAM are governed by the value of parameter ALNPR, which is the
fraction of nitrogen requirements for growth which are preferably satisfied by nitrate.
264
-------
Functional Description
Zooplankton - ZORX
(subroutine ZORX)
Purpose
ZORX simulates the growth and death of zooplankton, and the resultant changes in the biochemical
balance of the RCHRES. Zooplankton play an important role in determining the water quality of rivers
and lakes. By feeding on the algal, bacterial, and detrital mass, they are a natural regulator in the aquatic
environment. At the same time zooplankton are a source of food material for higher trophic levels such
as fish. Through excretion, zooplankton provide nutrients for phytoplankton growth. HSPF is only
concerned with those zooplankton which feed on phytoplankton, although in reality zooplankton may be
herbivores, omnivores, or carnivores.
Schematic View of Fluxes and Storages
Figure "Flow diagram for zooplankton in the PLANK section of the RCHRES Application Module" in
PLANK illustrates the fluxes and storage of zooplankton modeled in ZORX. In addition to zooplankton,
the state variables for dissolved oxygen, biochemical oxygen demand, total ammonia, nitrate,
orthophosphate, and refractory organics are also updated. Subroutine ZORX considers the following
processes:
1. filtering and ingestion of phytoplankton by zooplankton
2. assimilation of ingested materials to form new zooplankton biomass
3. zooplankton respiration
4. inorganic and organic zooplankton excretion
5. zooplankton death
Filtering and Ingestion
The amount of phytoplankton ingested per milligram zooplankton is calculated by the equation:
ZOEAT = ZFIL20*(TCZFIL**(TW - 20.))*PHYTO (21)
where:
ZOEAT =
ZFIL20 =
TCZFIL =
TW
PHYTO =
unit ingestion rate (mg phyto/mg zoo per interval)
zooplankton filtering rate at 20 degrees C
(liters filtered/mg zoo per interval)
temperature correction coefficient for filtering
water temperature (deg C)
phytoplankton concentration (mg phyto/1)
The filtering rate is dependent upon water temperature and phytoplankton concentration. Rates for most
biological activities double for every 10 degrees Centrigrade increase in temperature. The filtering rate
meets this criterion if the default value of 1.17 is used for the temperature correction coefficient TCZFIL.
265
-------
HSPF Version 12
When the phytoplankton biomass is below a critical concentration, the unit filtering rate will be maximal
and constant. As the phytoplankton biomass increases above the critical concentration, the limiting rate is
dependent on ingestive and digestive capabilities, and not on the concentration of the food source. Under
these conditions, the filtering rate decreases proportionally such that the algal biomass ingested remains
constant at the value of the parameter MZOEAT, which is defaulted to 0.055 mg phytoplankton/mg
zooplankton per hour. The code simulates this by reducing ZOEAT to MZOEAT, if Equation 21 gives a
value greater than MZOEAT. HSPF assumes that the filtering activities of zooplankton are 100 percent
efficient; that is, the zooplankton ingest all of the food which is contained in the water which they filter.
The total amount of phytoplankton ingested by the zooplankton is calculated as:
ZEAT = ZOEAT*ZOO (22)
where:
ZEAT = ingested phytoplankton (mg biomass/1 per interval)
ZOEAT = unit ingestion rate
ZOO = zooplankton concentration (mg biomass/1)
ZORX checks that the calculated amount of ingestion does not reduce the phytoplankton population to
less than 0.0025 micromoles of phosphorus per liter; if it does, the ingestion rate is adjusted to maintain a
phytoplankton concentration at this level.
Assimilation
Assimilation is the process by which ingested phytoplankton are converted to new zooplankton mass.
The process of assimilation is never 100 percent efficient in biological systems. Unassimilated food is
excreted as organic and inorganic waste products. Zooplankton assimilation efficiency is dependent upon
quality and concentration of food. High quality food is assimilated at high efficiency, whereas low
quality food is mostly excreted as waste resulting in low assimilation efficiency. The relationship
between food concentration and assimilation efficiency is more complex. If the concentration of
available food and the filtering rate of an organism are such that the organism ingests more food than can
be readily used for growth and metabolism, the organism's assimilation efficiency decreases. The model
represents the effect of food quality and concentration on assimilation as shown in Figure "Zooplankton
assimilation efficiency" below.
The quality of the zooplankton food is assigned in the User's Control Input by the parameter ZFOOD.
Three qualities of food are allowed. From these, one type must be chosen to represent the overall food
source available to the zooplankton:
1 = high quality food
ZFOOD = 2 = medium quality
3 = low quality
Depending on the value assigned to ZFOOD, the assimilation efficiency ZEFF is calculated by one of the
following equations:
266
-------
Functional Description
1.0
5k 0-8
u
e
01
u
0-6
ui C-
C pj
o Uj
"«N
-2 0.4
m
m
%
0.2
0.0
Subroutine Group PLANK
ZFOOD=1
ZFOOD=2
ZFOOD=3
0
10
Food Concentration, mg/f
Figure 63: Zooplankton assimilation efficiency
IF ZFOOD = 1 THEN ZEFF = -0.06*PHYTO + 1.03
IF ZEFF >0.99 THEN ZEFF =0.99
(23)
IF ZFOOD = 2 THEN ZEFF = -0.03*PHYTO + 0.47
IF ZEFF < 0.20 THEN ZEFF = 0.20
IF ZFOOD = 3 THEN ZEFF = -0.013*PHYTO + 0.17
IF ZEFF < 0.03 THEN ZEFF =0.03
These equations are extrapolations from research on Daphnia (Schindler, 1968). The corrections to ZEFF
set reasonable upper or lower limits on efficiency for assimilating each type of food. The mass of
ingested phytoplankton assimilated by zooplankton is calculated as:
ZOGR = ZEFF*ZEAT (24)
where:
ZOGR = zooplankton growth (mg biomass/1 per interval)
ZEFF = assimilation efficiency (dimensionless)
ZEAT = ingested phytoplankton (mg biomass/1 per interval)
267
-------
HSPF Version 12
Respiration
Respiration is the biochemical process by which organic molecules are broken down, resulting in a
release of energy which is essential for cellular and organismal activities. The oxidized molecules may
either be carbohydrates and fats stored within the organism or food passing through the organism's
digestive system. In either case, the end result of respiration is a decrease in zooplankton mass and a
subsequent release of inorganic nutrients. The equation governing zooplankton respiration is:
ZRES = ZRES20*(TCZRES**(TW - 20.))*ZOO (25)
where:
ZRES = zooplankton biomass respired (mg zoo/1 per interval)
ZRES20 = respiration rate at 20 degrees C (default= 0.0015/hr)
TCZRES = temperature correction factor for respiration (default = 1.07)
ZOO = zooplankton (mg biomass/1)
Excretion Products
Excretion is the ingested food which is not assimilated by the zooplankton. These waste products contain
both refractory and nonrefractory materials. The amount of refractory organic excretion is calculated as:
ZREFEX = REFR*ZEXMAS (26)
where:
ZREFEX = refractory organic material excreted by zooplankton
(mg refractory biomass/1 per interval)
ZEXMAS = total mass of zooplankton excretion
(ZEXMAS is the difference between ZEAT and ZOGR)
REFR = fraction of biomass which is refractory
(REFR is the complement of parameter NONREF)
The nonrefractory portion of the excretion is released to the water in the form of inorganic nutrients and
undegraded BOD materials. The relative abundance of the materials is dependent upon the unit ingestion
rate of the zooplankton (ZOEAT). At higher ingestion rates, a larger fraction of the nonrefractory
excretion is not decomposed and is released as BOD materials. In the model, the parameter ZEXDEL is
the fraction of nonrefractory excretion which is immediately decomposed and released to the water as
inorganic nutrients when the unit ingestion rate of the zooplankton is maximal. If the unit ingestion rate
is less than maximal, the model assumes that all the nonrefractory excretion is released to the water as
inorganic nutrients. Thus, the amount of excretion released as inorganic materials is:
ZINGEX = ZEXDEC*(ZEXMAS - ZREFEX) (27)
where:
ZINGEX = amount of biomass decomposed to inorganic excretion
(mg biomass/1 per interval)
ZEXDEC = fraction of nonrefractory inorganic excretion
(ZEXDEC = 1 for ZOEAT <= MZOEAT and ZEXDEC = ZEXDEL for
ZOEAT > MZOEAT. Value of ZOEAT is that given by equation
20, i.e., prior to adjustment.)
268
-------
Functional Description
The remaining portion of the excretion is considered to be BOD materials, and is calculated as:
ZNRFEX = ZEXMA.S - ZREFEX - ZINGEX (28)
where:
ZNRFEX = amount of biomass released as nonrefractory organic
excretion (mg biomass/1 per interval)
Death
Zooplankton death is the termination of all ingestion, assimilation, respiration, and excretion activities.
After death, zooplankton contribute both refractory and nonrefractory materials to the system. Under
aerobic conditions, the mass rate of zooplankton death is determined by multiplying the natural
zooplankton death rate, ZD, by the zooplankton concentration. If anaerobic conditions exist, an increase
in zooplankton death rate is modeled by adding the value of the anaerobic death rate parameter, OXZD, to
ZD. The default value of ZD is 0.0001/hr and that of OXZD is 0.03/hr.
Materials Balance for Related Constituents
Research has shown that 1.10 mg of oxygen are consumed for every gram of zooplankton mass which is
respired (Richman, 1958). The DOX state variable is reduced accordingly in ZORX. If there is not
sufficient oxygen available to satisfy respiration requirements, the deficit is added to the BOD state
variable, and DOX is set equal to zero.
ZORX makes use of subroutine DECBAL to update the state variables TAM, N03, and P04 to account
for additions from zooplankton respiration and inorganic excretion. The amount of inorganic constituents
produced by these two processes is calculated by the following equations:
ZNIT = (ZINGEX + ZRES)*CVBN (29)
ZP04 = (ZINGEX + ZRES)*CVBP
ZC02 = (ZINGEX + ZRES)*CVBC
where:
ZNIT = increment to TAM or N03 state variable (mg N/1 per interval)
ZP04 = increment to P04 state variable (mg P/l per interval)
ZC02 = increment to C02 state variable (mg C/l per interval)
ZINGEX = biomass decomposed to inorganic excretion(mg biomass/1 per interval)
ZRES = biomass respired by zooplankton (mg biomass/1 per interval)
CVBN = conversion factor from biomass to equivalent nitrogen
CVBP = conversion factor from biomass to equivalent phosphorus
CVBC = conversion factor from biomass to equivalent carbon
If ammonia is simulated, the inorganic nitrogen released is added to the TAM variable; otherwise, it is
added to the N03 variable. The value of ZC02 is computed for use in subroutine group PHCARB if pH
simulation is performed. Finally, ZORX calls subroutine ORGBAL to update the state variables for
ORN, ORP, ORC, and BOD to account for additions from zooplankton death and organic excretion. The
amounts of organic constituents produced by these processes are calculated as:
ZORN = ((REFR*ZDTH) + ZREFEX)*CVBN (30)
ZORP = ((REFR*ZDTH) + ZREFEX)*CVBP
ZORC = ((REFR*ZDTH) + ZREFEX)*CVBC
ZBOD = (ZDTH*CVNRBO) + (ZNRFEX*CVBO)
269
-------
HSPF Version 12
(mg N/1 per interval)
P/l per interval)
C/l per interval)
0/1 per interval
where:
ZORN = increment to ORN state variable
ZORP = increment to ORP state variable (mg
ZORC = increment to ORC state variable (mg
ZBOD = increment to BOD state variable (mg
REFR = refractory fraction of biomass
ZDTH = zooplankton death (mg biomass/1 per interval)
ZREFEX = refractory organic excretion (mg biomass/1 per interval)
ZNRFEX = nonrefractory organic excretion (mg biomass/1 per interval)
CVBO = conversion from biomass to equivalent oxygen
CVNRBO = conversion from nonrefractory biomass to equivalent oxygen,
times NONREF
270
-------
Functional Description
Benthic Algae - BALRX
(subroutine BALRX)
Purpose
BALRX simulates those algae in the RCHRES which are attached to rocks or other stable structures. In
free flowing streams, large diurnal fluctuations of oxygen can be attributed to benthic algae. During the
sunlight hours, if sufficient nutrients exist to support photosynthesis, oxygen is produced in such large
quantities that supersaturation often occurs. However, at night, when photosynthesis cannot occur, the
benthic algae can exert a significant demand on the oxygen supply of the RCHRES due to respiratory
requirements. Benthic algae influence the nutrient balance of the RCHRES by their extraction of
nutrients for growth.
Approach
The growth and death of benthic algae are modeled in much the same manner as their free floating
relatives, the phytoplankton. In fact, four of the five subroutines that are used for phytoplankton
simulation are also used in the benthic algae simulation. These routines are ALGRO, GROCHK,
ORGBAL, and NUTRUP. There are two major differences in modeling the two types of algae. First,
since the benthic algae are attached to materials in the RCHRES, they are not subject to longitudinal
advection. Second, the manner in which death of benthic algae is modeled is sufficiently different from
the method used for phytoplankton that a special routine, BALDTH, is used. Within BALRX benthic
algae are in units of micromoles phosphorus per liter so that the benthic algae simulation can take
advantage of the same subroutines used by PHYRX. In order to obtain these units, the following
conversion is performed:
BAL = BENAL*DEPCOR/CVPB (31)
where:
BAL = benthic algae (micromoles phosphorus/1)
BENAL = benthic algae (mg biomass/m2)
CVPB = conversion factor from micromoles phosphorus to mg biomass
DEPCOR = conversion from square meters to liters based on average
depth of water in RCHRES during the interval (computed in RQUAL)
Net Growth
Unit growth and respiration rates for benthic algae are calculated by subroutine ALGRO. The user has
the option of multiplying either of these rates by a constant factor if there is evidence that the benthic
algae population does not exhibit the same growth and respiration rates as the phytoplankton population.
Thus, net growth rate is calculated as:
GROBAL = (GRO*CFBALG - RES*CFBALR)*BAL (32)
where:
GROBAL = net growth rate of benthic algae (micromoles P/l per interval
GRO = unit growth rate as calculated in subroutine ALGRO
CFBALG = ratio of benthic algae to phytoplankton growth rates
under identical growth conditions (default = 1.0)
RES = unit respiration rate as calculated in subroutine ALGRO
CFBALR = ratio of benthic algae to phytoplankton respiration rate(default=l)
BAL = benthic algae concentration (micromoles P/l)
271
-------
HSPF Version 12
After GROBAL has been calculated, subroutine GROCHK is called to assure that the calculated growth
does not reduce any nutrient to a concentration less than 0.001 mg/1. If it does, GROBAL is adjusted to
satisfy this requirement.
Death of Benthic Algae
Subroutine BALDTH calculates the amount of benthic algae death and passes this information back to
BALRX (variable DTHBAL). BALRX updates the state variable BAL to account for net growth and
death. The value of BAL is not allowed to fall below 0.0001 micromoles of phosphorus per square meter.
Materials Balance for Related Constituents
The DOX state variable is updated to account for the net effect of benthic algae photosynthesis and
respiration according to the following equation:
DOX = DOX + (CVPB*CVBO*GROBAL) (33)
where:
DOX = concentration of dissolved oxygen (mg/1)
CVPB = conversion factor from micromoles phosphorus to mg biomass
CVBO = conversion factor from mg biomass to mg oxygen
GROBAL = net growth of benthic algae (micromoles phosphorus/1 per
interval)
The additions to ORN, ORP, ORC, and BOD resulting from benthic algae death are calculated as:
BALORN = REFR*DTHBAL*CVBPN*.014 (34)
BALORP = REFR*DTHBAL*.031
BALORC = REFR*DTHBAL*CVBPC*.012
BALBOD = CVNRBO*CVPB*DTHBAL
where:
BALORN
BALORP
BALORC
BALBOD
RE FR
DTHBAL
CVNRBO
CVPB
CVBPN
CVBPC
(mg
N/1
per
interval
(mg
P/l
per
interval
(mg
C/l
per
interval
(mg
O/l
per
interval
P/l
per
interval)
= refractory fraction of biomass
conversion from mg biomass to equivalent mg
oxygen demand (allowing for refractory fraction)
conversion from micromoles phosphorus to mg biomass
conversion from micromoles phosphorus to micromoles nitrogen
conversion from micromoles phosphorus to micromoles carbon
When BALORN, BALORP, BALORC, and BALBOD have been evaluated, subroutine ORGBAL is
called to perform the actual increments to the appropriate state variables. Finally, subroutine NUTRUP is
called to update the inorganic state variables to account for net growth.
External Units
The output values for benthic algae are in units of milligrams biomass per square meter and micrograms
chlorophyll a per square meter.
272
-------
Functional Description
Benthic Algae Death - BALDTH
(subroutine BALDTH)
Purpose
BALDTH calculates algal death each interval by using one of two unit death rates specified in the User's
Control Input. ALDL, the low unit death rate, is used when environmental conditions encourage
sustained life; in situations where nutrients are scarce or the benthic algae population becomes excessive,
ALDH, the high algal death rate, is used.
The high algal death rate, which has a default value of 0.01/hr, is used if any one of three conditions
exists:
1. the concentration of P04 is less than the value of parameter PALDH
2. the concentration of inorganic nitrogen is less than the value of parameter NALDH
3. the areal density of benthic algae is greater than the value of parameter MBAL
Regardless of whether these tests indicate that ALDH or ALDL (default equals 0.001/hr) should be used,
an additional increment to death occurs if anaerobic conditions are prevalent during the interval. The
increment to death rate due to anaerobic conditions is determined by the value of parameter OXALD.
When the benthic algae population grows to a size greater than that which may be supported on the
bottom surface, algae begin to break away from the bottom, a phenomenon known as sloughing.
Whenever the population calculated exceeds the maximum allowable bottom density (MBAL), the
sloughing process removes the excess algae. The amount of benthic algae death which occurs during the
interval is calculated as:
DTHBAL = (ALD*BAL) + SLOF (35)
Method
where:
DTHBAL
ALD
BAL
SLOF
amount of benthic algae death (micromoles P/l per interval)
unit algal death rate determined by environmental conditions
(/interval)
concentration of benthic algae (micromoles P/l)
amount of benthic algae sloughed (micromoles P/l per interval)
273
-------
HSPF Version 12
pH, Carbon Dioxide, Total Inorganic Carbon, and Alkalinity - PHCARB
(Subroutine Group PHCARB of Module RCHRES)
Purpose
PHCARB calculates the pH of the water within a RCHRES. The primary value of pH is as an indicator
of the chemical environment of the system. Under normal circumstances, pH is near neutral, that is, near
seven. Most life sustaining processes are impaired at extremes of pH.
Method
Figure "Flow diagram of inorganic carbon in the PHCARB group of the RCHRES Application Module"
below illustrates the fluxes and storages of constituents introduced in this section. Determination of pH
requires simulation of alkalinity, carbon dioxide, and total inorganic carbon. Within PHCARB, state
variables for alkalinity (ALK), carbon dioxide (C02), and total inorganic carbon (TIC) are expressed as
molar concentrations to correspond to the equilibrium expressions necessary to determine pH. The
conversion from mg/1 to moles/1 takes place after longitudinal advection has been considered. Externally,
ALK, C02, and TIC are expressed in mg/1.
Alkalinity
Alkalinity is defined as the amount of acid required to attain a pH value equal to that of a total inorganic
carbon molar solution of H2C03. This pH value is near 4.5, which is approximately the lowest pH value
tolerated by most forms of aquatic life. Alkalinity is interpreted as the acid neutralizing capacity of
natural waters.
Alkalinity is simulated as a conservative constituent, in module section CONS. Parameter ALKCON, in
the User's Control Input for PHCARB, specifies which conservative substance is alkalinity. For example,
if ALKCON = 3 then subroutine PHCARB will assume that alkalinity is the 3rd conservative constituent.
Carbon Dioxide and Total Inorganic Carbon
HSPF assumes that changes in the TIC concentration occur only as changes in C02 concentration. Thus,
the sources of TIC are:
1. carbon dioxide invasion (input) from the atmosphere
2. zooplankton respiration
3. carbon dioxide released by BOD decay
4. net growth of algae (if negative)
5. benthal release of carbon dioxide (if BENRFG = 1)
The sinks of TIC are:
1. carbon dioxide release to the atmosphere
2. net growth of algae (if positive)
All of these quantities except carbon dioxide invasion are calculated in other subroutines and passed into
PHCARB.
274
-------
Functional Description
ZC02
Zooplankton
respiration/
KCINV*(SATCQ2-C02
Carbon X
dioxide y
invasion J
IC02
f " I
I Inflow |
I to
'RCHRESI
DECC02
BOD
Decay
r
Net
growth
V of algae
BENCQ2
Benthal
release
ITIC
Inflow
to
RCHRES
0C02JNJ
'"outflow I
I from ,
RCHRES'
' thru |
¦ exit
\ N /
R0C02
^ Sum I
I of ,
out- I
I flow |
. from 1
I^CHRiS;
OT[C|N)
Outflow
from
RCHRES
thru
exit
ROTIC
Figure 64: Flow diagram of inorganic carbon in the PHCARB group of the RCHRES Application Module
275
-------
HSPF Version 12
Carbon Dioxide Invasion
In order to calculate carbon dioxide invasion, the saturation concentration of C02 must be determined.
First, Henry's constant for C02, defined as the molar concentration of atmospheric C02 divided by the
partial pressure of C02, is calculated by the equation:
S = 10.**(2385.7 3/TWKELV - 14.0184 + 0.0152642*TWKELV) (1)
where:
S = Henrys's constant for C02
TWKELV = temperature of water (deg K)
Using Henry's constant, the saturation concentration of C02 is calculated as:
SATC02 = 3.16E-04*CFPRES*S (2)
where:
SATC02 = saturation concentration of C02 (moles C02-C/1)
CFPRES = correction to atmospheric pressure resulting from elevation
difference (calculated in the Run Interpreter)
S = Henry's constant for C02
The carbon dioxide invasion is then calculated by the following equation:
ATC02 = KCINV*(SATC02 - C02) (3)
where:
ATC02 = carbon dioxide invasion expressed as moles C02-C/1
per interval
KCINV = carbon dioxide invasion coefficient (/interval)
SATC02 = saturation concentration of C02 (moles C02-C/1)
C02 = concentration of C02 after longitudinal advection
(moles C02-C/1)
A positive value for ATC02 indicates addition of C02 to the water; a negative value indicates a release
of C02 from water to the atmosphere. The value of KCINV is dependent upon the value calculated for
KOREA, the oxygen reaeration coefficient, in subroutine group OXRX:
KCINV = CFCINV*KOREA (4)
where:
KCINV = carbon dioxide invasion coefficient (/interval)
CFCINV = parameter specifying ratio of C02 invasion rate to 02
reaeration rate
KOREA = oxygen reaeration coefficient (/interval)
276
-------
Functional Description
Net Carbon Dioxide Flux
The net carbon dioxide flux is determined by the following equation:
DELTCD = ATC02 + (ZC02 - ALGC02 + DECC02 + BENC02)/12000.
where:
DELTCD
ATC02
ZC02
= net C02 flux (moles C02-C/1 per interval)
= C02 invasion (moles C02-C/1 per interval)
= C02 released by zooplankton excretion and respiration
(mg C02-C/1 per interval)
ALGC02 = C02 flux due to net growth of algae (mg C02-C/1
per interval)
DECC02 = C02 released by BOD decay (mg C02-C/1 per interval)
BENC02 = benthal release of C02 (mg C02-C/1 per interval)
12000. = conversion from mg C02-C/1 to moles C02-C/1
If DECFG, the flag which decouples C02 from the algal simulation, has a value of one, ALGC02 has a
value of zero in this equation. Benthal release rates for both aerobic and anaerobic conditions must be
included in the User's Control Input if benthal release of C02 is simulated. Since HSPF assumes that
changes in total inorganic carbon concentration only occur as changes in carbon dioxide, the update to the
TIC state variable for each simulation interval is:
TIC = TIC + DELTCD (6)
where:
TIC = total inorganic carbon (moles C/l)
The Carbonate System
The value of pH is controlled by the carbonate system. There are three species of importance to the
system: [H2C03*], [HC03], and [C03], [H2C03*] is defined as the sum of [H2C03] and [C02]; for
modeling purposes [H2C03] is negligible relative to [C02], The carbonate system can be described by
the following equations:
[H]*[HC03]/[H2C03*] = K1EQU (7)
[H]*[C03]/[HC03] = K2EQU
[H]*[OH] = KWEQU
[H2C03*] + [HC03] + [C03] = TIC
[HC03] + 2*[C03] + [OH] - [H] = ALK
where:
[H]
[OH]
[C03 ]
[HC03]
[H2C03*]
K1EQU
K2EQU
KWEQU
= hydrogen ion concentration (moles/1)
= hydroxide ion concentration (moles/1)
= carbonate ion concentration (moles/1)
= bicarbonate ion concentration (moles/1)
= carbonic acid/carbon dioxide concentration (moles/1)
= first dissociation constant for carbonic acid
= second dissociation constant for carbonic acid
= ionization product of water
The five unknown values ([H2C03*], [HC03], [C03], [H], [OH]) can be determined when K1EQU,
K2EQU, KWEQU, TIC, and ALK are known. K1EQU, K2EQU, and KWEQU are all functions of water
temperature and are evaluated by the following equations:
277
-------
HSPF Version 12
K1EQU = 10.**(-3404.71/TWKELV + 14.8435 - 0 . 032786*TWKELV) (8)
K2EQU = 10.**(-2902.39/TWKELV + 6.4980 - 0.02379*TWKELV)
KWEQU = 10.**(-4470.99/TWKELV + 6.0875 - 0.01706*TWKELV)
where:
TWKELV = absolute temperature of water (deg K)
Calculation of pH and C02
Once values have been determined for K1EQU, K2EQU, KWEQU, TIC, and ALK, an equilibrium
equation can be developed for hydrogen ion concentration ([H]). The five equations representing the
carbon system (Equation 7) can be reduced to a fourth order polynomial expression:
[H]**4 + COEFF1*([H]**3) + COEFF2*([H]**2) + COEFF3*[H] + COEFF4 = 0 (9)
where:
COEFF1 = ALK + K1EQU
COEFF2 = -KWEQU + ALK*K1EQU + K1EQU*K2EQU - TIC*K1EQU
COEFF3 = -2.*K1EQU*K2EQU*TIC - K1EQU*KWEQU + ALK*K1EQU*K2EQU
COEFF4 = -K1EQU*K2EQU*KWEQU
[H] = hydrogen ion concentration (moles/1)
The solution of this equation is performed by subroutine PHCALC. Based on the hydrogen ion
concentration calculated in PHCALC, the concentration of C02 is recalculated as:
C02 = TIC/ (1. + K1EQU/HPLUS + K1EQU*K2EQU/(HPLUS**2) ) (10)
where:
C02 = carbon dioxide concentration (moles C/l)
TIC = total inorganic carbon concentration (moles C/l)
K1EQU = first dissociation constant of carbonic acid
K2EQU = second dissociation constant of carbonic acid
HPLUS = hydrogen ion concentration (moles H/l)
Finally, the units of TIC, C02, and ALK are converted back to mg/1 for use outside of PHCARB.
278
-------
Functional Description
Calculate pH - PHCALC
(subroutine PHCALC)
PHCALC uses the Newton-Raphson method to solve the fourth order polynomial expression for the
hydrogen ion concentration (Equation 9). The user specifies the maximum number of iterations
performed by assigning a value to parameter PHCNT. PHCALC continues the iteration process until the
solutions for pH concentration of two consecutive iterations differ by no more than one tenth of a pH unit.
If the solution technique does not converge within the maximum allowable number of iterations,
PHCALC passes this information back to PHCARB by assigning a value of zero to CONVFG. An error
message is printed and then PHCALC is called again, to repeat the unsuccessful iteration process. This
time, the "debug flag" (PHDBFG) is set ON so that, for each iteration, PHCALC will print information
which will help the user track down the source of the problem.
279
-------
HSPF Version 12
Copy Time Series - COPY
(Utility Module COPY)
This utility module is used to copy one or more time series from a source specified in the EXT
SOURCES or NETWORK Block of the User's Control Input (UCI), to a target specified in the
NETWORK or EXT TARGETS Block.
To operate the COPY module, the user must specify the time interval used in the internal scratch pad
(INDELT) and the number of point-valued and mean-valued time series to be copied (NPT and NMN in
TIMESERIES). Up to 20 point-valued and/or 20 mean-valued time series may be copied in a single
operation.
Module COPY is typically used to transfer time series, such as precipitation and potential
evapotranspiration data, from a sequential file (e.g., ASCII data) to a data set in the WDM file or DSS.
Thereafter, when these data are used as inputs to simulation operations, they are read directly from the
WDM or DSS.
COPY can also be used to change the "kind" and/or interval of one or more time series. For example, a
WDM data set containing hourly precipitation data could be input to COPY and the output stored in
another WDM data set with a daily time step. The data would automatically be aggregated.
280
-------
Functional Description
Output Time Series to a List File - PLTGEN
(Utility Module PLTGEN)
This utility module was originally designed to prepare one or more time series for simultaneous display
on a plotter. Its more common usage is to simply create formatted text files containing listings of time
series for transfer to other programs, such as spreadsheets, statistical packages, and other models. As with
the COPY module, the user must specify the input(s) (sources), using entries in the EXT SOURCES or
NETWORK Blocks in his control input (UCI) file. The internal time step and the number of point-
and/or mean-valued time series to be displayed must also be specified.
TSGET transfers the time series from the source(s) to the INPAD (as in COPY). PLTGEN then outputs
these data to a plot file (PLOTFL). There are three possible formats for this file, selected by the input flag
TYPEFG.
TYPEFG Output description
1 Standard PLTGEN/MUTSIN file. NPT + NMN must be less than or
equal to 20.
2 FEQ Diffuse Time Series File (DTSF). NPT must be zero.
3 FEQ Point Time Series File (PTSF). NPT must be one, and NMN
must be zero.
The default (type 1) is a sequential file; the first several records contain general information, such as the
plot heading, number of curves to be plotted, the names of the time series represented by each curve,
scaling information, etc. Each subsequent record contains:
Columns
Contents
1 -
4
Identifier (first 4 characters of title)
6 -
10
Year
11 -
13
Month
14 -
16
Day
17 -
19
Hour
20 -
22
Minute
25 -
36
Value for curve 1, for this
date/time
39 -
50
Value for curve 2, for this
date/time
etc
(repeats until data for all
curves are supplied
Format:
A4, IX, 15, 413,20(2X,G12.5)
The next two types of files are used to link HSPF with the hydrodynamic model FEQ (Franz and
Melching, 1997). The DTSF file is used to transfer the outflows (in inches or mm) from up to 99
pervious or impervious land segments that are tributary to an FEQ branch. The PTSF file is used to
transfer the outflow (in cfs or cms) from a single RCHRES to an FEQ branch.
The time resolution of the PLOTFL is the INDELT of the run, an integer multiple of the INDELT (which
must also be evenly divisible into one day), one month, or one year.
The user can also specify that a PLOTFL contain only records greater than a certain threshold value,
THRESH, or that it produces output only during a certain span of time specified in the Special Actions
Block.
281
-------
HSPF Version 12
The contents of a sample standard PLOTFL are listed below. To keep the listing short, only the first four
values have been included. The DTSF and PTSF files are unformatted binary files, so no sample is
shown.
A PLOTFL was originally intended to be read by a stand-alone plotting program, which would translate
its contents into information used to drive a pen-plotting device. These devices are now essentially
obsolete. Alternative uses of a PLOTFL are:
1. To display one or more time series in printed form. For example: To examine the contents of a
data set in the WDM file, input it to PLTGEN and list the contents of the PLOTFL.
2.
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
Plot
To transfer time series to some other stand-alone program, such as a spreadsheet or graphical
display program. For example, one could specify the contents of a PLOTFL as input to a
program which performs statistical analysis or computes cross correlations between time series.
HSPF FILE FOR DRIVING SEPARATE PLOT PROGRAM
Time interval: 30 mins Last month in printout year: 9
No. of curves plotted: Point-valued: 2 Mean-valued: 0 Total: 2
Label flag: 0
Plot title: Plot
Y-axis label: Flow
Scale info: Ymin:
Ymax:
Time:
Data for each curve
Label
Inflow
Outflow
1
IDELT:
30
PIVL:
of reservoir flowrates
(ft3/sec)
.00000E+00
1000.0
48.000 intervals/inch
Point-valued first, then mean-valued):
LINTYP
0
0
INTEQ
0
0
COLCOD
1
1
TRAN
SUM
SUM
TRANCOD
1
1
Time series (pt-valued, then mean-valued)
Date/time
1974 5 31 24 0
1974 6 1 0 30
1974 6 110
1974 6 1 1 30
Values
.00000E+00
. 82838
1.5071
2 .0631
1.0000
1.0000
1.0000
1.0000
Figure 65: Sample PLOTFL for TYPEFG=1 (showing four time points)
282
-------
Functional Description
Display Time Series in a Tabular Format - DISPLY
(Utility Module DISPLY)
The purpose of this module is to permit any time series to be displayed (at a variety of time intervals) in a
tabular format. Sample outputs are shown in figures below. Salient features of this module are:
1. Any time series (input or computed) can be displayed. The user specifies the time series in the
EXT SOURCES or NETWORK Block, as with any other module.
2. As with any other module, the data are first placed in the INPAD, by module TSGET. At this
point they are at the time interval specified for this operation in the OPN SEQUENCE Block
(INDELT). This might have involved aggregation or disaggregation if the data were brought in
from the WDM file. In general, INDELT can be any of the 19 HSPF supported time steps,
ranging from 1 minute to 1 day.
3. The user can elect to display the data in a "long-span table" or a "short-span table". The term
"span" refers to the period covered by each table. A short-span table (first two figures below)
covers a day or a month at a time and a long-span table (last figure below) covers a year.
4. The user selects the time step for the individual items in a short-span display (the display interval)
by specifying it as a multiple (PIVL) of INDELT. For example, the data in Figure "Short-Span
Display (First Type)" are displayed at an interval of 5 minutes. This could have been achieved
with the following scenarios:
INDELT PIVL
5 minutes 1
1 minute 5
If the display interval is less than one hour, one hour's worth of data are displayed on one printed
row of the table as in Figure "Short-Span Display (First Type)." The number of items in a row
depends on their interval (e.g., 60 for one minute, 12 for 5 minutes, 2 for 30 minutes.). A row
may actually occupy up to 5 physical lines of printout because a maximum of 12 items is placed
on a line. The entire table spans one day.
If the display interval is greater than or equal to one hour, a day's worth of data are displayed on
one row as in Figure "Short-Span Display (Second Type)." Again, the number of items in a row
depends on the display interval. In this case the entire table spans a month.
5. A long-span table always covers one year; the display interval for the individual items in the table
is one day as in Figure "Long-Span (Annual) Display." The user can select the month which
terminates the display (December in the example) so that the data can be presented on a calendar
year, water year or some other basis.
6. For the purpose of aggregating the data from the interval time step (INDELT) to the display
interval, day-value, month-value, or year-value, one of five "transformation codes" can be
specified:
283
-------
HSPF Version 12
Code
Meaning
SUM
Sum of the data
AVER
Average of the data
MAX
Take the maximum of the values at the smaller time step
MIN
Take the minimum
LAST
Take the last of the values belonging to the shorter time step
SUM is appropriate for displaying data like precipitation and loadings; AVER is useful for
displaying data such as temperatures and concentrations.
7. The module incorporates a feature designed to permit reduction of the quantity of printout
produced when doing short-span displays. If the "row-value" ("hour-sum" in Figure "Short-Span
Display (First Type)," "day-average" in Figure "Short-Span Display (Second Type)") is less than
or equal to a threshold value, printout of the entire row is suppressed. The default threshold is 0.0.
Thus, in Figure "Short-Span Display (First Type)" data for hours when no precipitation occurred
are not printed.
8. The user can also specify the following:
a. The number of decimal digits to use in a display.
b. A title for the display.
c. Alinear transformation, to be performed on the data when they are at the INDELT time
interval (i.e., before module DISPLY performs any aggregation). By default, no transformation
is performed.
284
-------
Functional Description
WDM 39 Precip. (in/100)
Summary for DAY 1976/10/4
Date interval: 5 mins
HOUR SUM
Interval Number
1
2
3
4
5
6
7
8
9
10
11
12
3
2.0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
.0
0
0
1.0
4
CO
o
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
.0
0
0
o
o
5
o
LO
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
.0
2
0
2.0
6
6.0
1
0
1
0
2
0
1
0
1
0
0
0
0
0
0
0
0
0
0
.0
0
0
o
o
7
CO
o
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
.0
0
0
1.0
8
CO
o
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
.0
0
0
o
o
9
CO
o
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
.0
1
0
o
o
10
CO
o
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
.0
0
0
1.0
11
CO
o
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
.0
1
0
o
o
12
4.0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
.0
0
0
o
o
13
CO
o
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
.0
0
0
o
o
14
2.0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
.0
1
0
o
o
15
4.0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
.0
1
0
o
o
16
7.0
0
0
0
0
1
0
0
0
1
0
1
0
1
0
1
0
1
0
0
.0
1
0
o
o
17
CO
o
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
.0
1
0
o
o
18
6.0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
.0
1
0
1.0
19
o
LO
1
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
.0
0
0
o
o
20
CO
o
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
.0
0
0
1.0
21
1.0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
.0
0
0
o
o
22
1.0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
.0
0
0
o
o
DAY
SUM : 7.00000E+01
Figure 66: Short-Span Display (First Type)
285
-------
HSPF Version 12
Duration Analysis on a Time Series - DURANL
(Utility Module DURANL)
This module examines the behavior of a time series, computing a variety of statistics relating to its
excursions above and below certain specified levels. The quantity of printout produced can be regulated
by the user with a print-level flag (PRFG), which has a valid range of values from 1 to 6.
The basic principles are:
1. The module works on the time series after it has been placed in the INPAD. The data are, thus, at
the internal time step of the operation (INDELT). This module operates on a mean-valued input
time series. Therefore, if a point-valued time series is routed to it, TSGET will, by default,
generate mean values for each time step, and these will be analyzed.
2. When the value of the time series rises above the user-specified level, a positive excursion
commences. When it next falls below the level, this excursion ends. A negative excursion is
defined in the reverse way. (Figure "Definition of terms used in duration analysis module").
3. If the time series has a value less than -10.0** 10 this is considered to be an undefined event (e.g.,
the concentration of a constituent when there is no water). In this case the value is in a special
category - it is in neither a positive nor a negative excursion.
4. The above is true if the specified duration is one time step. In this case, the results produced
include a conventional frequency analysis (e.g., flow duration) of the data. However, the user
may specify up to 10 durations; each is given as a multiple (N) of the basic time step (INDELT),
Then, for an excursion or undefined event to be considered, it has to endure for at least N
consecutive intervals; else it is ignored.
5. The user may specify an analysis season. This is a period (the same in each year) for which the
data will be analyzed (e.g., Oct 1 through May 10). Data falling outside the analysis season will
not be considered.
288
-------
Functional Description
Value
(of time
series or
"level")
I
I
I
V +10
-10
-20
Time
. . <====Time Series
1 1
.— 'I
->
1 1 . —. 1
" 1 III
| 3+ | 1 1
i
> _
3 +
| 3rd
1 1 1
1 |3-|
1 1 1
1 1 1
1
| level
1
>
i
1 II 1
2+ 1 .2-1 2+ | 2-|
2 +
i
>
II 1 1
II II
2nd level
1+ ' 1 1
1 +
1 1
| |
1st level
> >
Legend: 2+ excursion above second level (duration >=1)
2- excursion below second level (duration >=1)
etc.
Figure 69: Definition of terms used in duration analysis module
The analyses performed and printout produced are:
1. Introductory information - Title, start and end date/time, analysis season.
2. The next seven sets of tables are all similar in format; each contains data on positive and negative
excursions, for each level and duration, and information on undefined event conditions which
persisted for each of the specified durations. The value of PRFG required to generate each of
these, and the table heading and the data displayed in it are:
a. PRFG > 0. "Fraction of time spent in excursions at each level with duration greater than or
equal the specified durations. The fraction is relative to the total time span." These are the
fractions of total considered time that each of the above-defined conditions existed.
b. PRFG > 1. "Fraction of time spent in excursions at each level with duration greater than or
equal the specified durations. The fraction is relative to the time spent in excursions at each
level." In the "Positive Excursions" table, this gives, for each specified level, the total time
that an excursion of duration N existed, divided by the total time that an excursion of duration
1 existed. A similar definition holds for the numbers in the "Negative Excursions" table.
289
-------
HSPF Version 12
c. PRFG > 2. "Time spent in excursions at each level with duration greater than or equal the
specified durations." The tables give the total number of time steps for which the various
conditions occurred.
d. PRFG > 3. "Number of excursions at each level with duration greater than or equal the
specified durations". These give the total number of events that were found (number of
positive and negative excursions for each level and duration, and number of "undefined
occurrences" of each duration).
e. PRFG > 4. "Average duration of excursions at each level given that the duration is greater
than or equal the specified durations". These values answer the question: "given that a
specified excursion or undefined condition occurred, what was the mean number of time
steps that it persisted?"
f. PRFG > 5. "Standard deviation of duration of excursions at each level given that the duration
is greater than or equal the specified durations." These tables are similar to those discussed in
(e) above, except that the standard deviation, instead of the mean, is considered.
g. PRFG > 6. "Fraction of excursions with duration N with respect to the total number of
excursions (duration 1) for each level". These tables give the number of excursions at each
duration divided by the number of excursions at duration 1 for each level.
3. Summary information: Total number of time intervals analyzed, total number of time intervals
for which values were "undefined", total number of days analyzed, sample size, max, min, mean,
standard deviation.
290
-------
Functional Description
SAMPLE SIZE: 13200
SAMPLE MAXIMUM: .1307E+05
SAMPLE MINIMUM: 2.2 90
SAMPLE MEAN: 37.80
SAMPLE STANDARD DEVIATION: 164.0
Figure 70: Sample Duration Analysis Printout
4. Lethality analysis:
The function of this section of the DURANL module is to assess the risk associated with any contaminant
concentration time series generated by the HSPF application modules. The methodology links frequency
data on instream contaminant levels to toxicity information resulting from both acute and chronic
laboratory bioassays. The methodology is based on the Frequency Analysis of Concentration (FRANCO)
program developed by Battelle, Pacific Northwest Laboratories as part of their Chemical Migration and
Risk Assessment (CRMA) Methodology.
Laboratory toxicity experiments provide the main basis for developing a risk analysis for fish or other
aquatic organisms. A common method of summarizing the results of these experiments is to use a lethal
concentration where 50% of the fish die (LC50). Usually information for LC50 concentrations at 24, 48,
and 96 hours can be derived from laboratory experiments in the form of pairs of lethal concentration and
duration values. By connecting these pairs with straight line segments and extending the function in a
reasonable manner at each end, a function is defined such that an event defined by a particular
concentration level with a particular duration can be classified as exceeding or not exceeding the function,
i.e., exceeding an LC50 value. An event exceeds the LC function when the concentration defining the
event and the duration of the event results in the pair falling above and to the right of the combined LC50,
or global exceedance, curve.
If LCNUM is greater than zero, a global exceedance summary table is printed which gives the fraction of
time that a global exceedance curve is exceeded. Up to 5 LC curves can be analyzed at one time. It
should be noted that the global exceedance summary eliminates double counting by reporting only those
exceedance events with the lowest concentrations that occur in different contaminant peaks. (FRANCO
documentation should be consulted for more detailed discussion).
If LCOUT=l and LCNUM=0, a lethal event summary is printed to supplement the global exceedance
information. The table gives a summary of all lethal events including ending time, lethal curve number,
number of intervals in event, and concentration level. Printout is to unit PUNIT, which should be unique
to the duration analysis; otherwise, the output from the lethal event summary will be mixed with the
printout from application modules.
293
-------
HSPF Version 12
0.010
0.008
0.002
0.001
24 48 96 192
DUR AT (hours)
288
Figure 71: Sample Lethal Concentration (LC) Function for Global Exceedance Calculation
294
-------
Functional Description
Generate a Time Series from One or Two Other Time Series - GENER
(Utility Module GENER)
This module is designed to perform any one of several possible transformations on input time series. The
transformation is specified by supplying an option code (OPCODE). If A and B are the input time series
and C is the computed time series, then the transformations performed for each possible value of
OPCODE are:
OPCODE
Action
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
C= Abs value (A)
C= Square root (A)
C= Truncation (A)
e.g., If A=4.2, C=4.0
A=-3.5, C=-3.0
C= Ceiling (A). The "ceiling" is
the integer >= given value,
e.g., If A=3.5, C=4.0
A=-2.0, C=-2 . 0
C= Floor (A). The "floor" is the
integer <= given value,
e.g., If A=3.0, C=3.0
A=-2 . 7, C=-3.0
C= loge (A)
C= loglO (A)
C= K(1)+K(2)*A+K(3)*A**2 (up to 7 terms)
The user supplies the number of
terms and the values of the
coefficients (K).
C= K**A
C= A**K
C= A+K
C= Sin (A)
C= Cos (A)
C= Tan (A)
C= Sum (A)
C= A+B
C= A-B
C= A*B
C= A/B
C= MAX (A, B)
C= MIN (A,B)
C= A**B
C= cumulative departure of A below B
C= K
C= Max (A, K)
C= Min (A, K)
Note that if OPCODE is less than 15, or OPCODE equals 25 or 26, only one input time series is involved
(unary operators); if OPCODE is 24, no inputs are required (constant); otherwise two inputs are required
(binary operators). As with the other operating modules, the input time series are first placed in the
INPAD by module TSGET (This may involve a change of time step and/or "kind"). Therefore, by the
time module GENER works on them, they are mean-valued time series with a time step equal to
INDELT.
295
-------
HSPF Version 12
Multiple Sequential Input of Time Series from an HSPF PLTGEN File -
MUTSIN
(Utility Module MUTSIN)
This utility module reads a sequential external file previously written on disk. This file has the same
format as the PLOTFL produced with utility module PLTGEN. The user specifies the number of point
and/or mean-valued time series to be read and the number of lines to skip at the beginning of the external
file.
The missing data flag, MISSFG, is used to specify how MUTSIN reacts to missing data. A MISSFG
value of 0 indicates that MUTSIN is to report an error and quit if any data are missing. Therefore, in this
case, the internal time step (DELT) must equal the time step of the external file, the starting time of the
run must correspond with the first entry read from the external file, and no entries may be missing. A
MISSFG value of 1 indicates that MUTSIN is to fill missing sequential file entries with 0.0. A MISSFG
value of 2 indicates that MUTSIN is to fill missing entries with -1.0E30. A MISSFG value of 3 indicates
that MUTSIN is to fill missing values with the value of the next available entry.
Note that the date and time appearing in each record of the file must be in the same format as that used by
the PLTGEN module to write a PLOTFL. That is, the full year/month/day/hour/minute string must be
present and a time, e.g., midnight is coded as 74 01 02 24 00, not 75 01 03 00 00.
The EXT TARGETS and/or NETWORK blocks are used to specify where TSPUT places the time series
data read in from the external file.
MUTSIN has four potential uses:
1. It may be used to form a simple interface with other continuous models. The other model can
output its results in the form of an HSPF PLOTFL (or a format conversion program can be used),
and MUTSIN can be used to input this data to HSPF. (Conversely, data can be output from
HSPF, using the PLTGEN module, for input to the other model.)
2. MUTSIN may be used to transfer data in a WDM file to another WDM file. This transfer
requires the use of PLTGEN to output the data from the source file and MUTSIN to input the data
to the target file.
3. MUTSIN can be used to transfer data between different types of computer hardware where WDM
or DSS files are incompatible (e.g., Unix to PC and vice versa).
4. MUTSIN may also be used to input point valued data or data with a time interval not included in
the standard HSPF sequential input formats.
296
-------
Functional Description
Best Management Practice Evaluation - BMPRAC
(Utility Module BMPRAC)
This utility module is designed to simulate the effects of Best Management Practices by applying simple
"removal" fractions to each constituent being modeled. More complex methods, which could depend on
such things as amounts already removed or stored (e.g., sediment trapped in a detention pond) may be
added to this module in the future. Very complex detention scenarios may be best modeled explicitly by
a RCHRES.
A single instance of the BMPRAC module handles the transfer of all mass loads from any number of
PERLNDs and IMPLNDs to a single RCHRES, as long as the same fractions are to be applied for each
land use. If expected removal fractions are to vary by land use, then separate BMPRACs are required for
each land segment to reach connection.
The general equations for a removal are as follows:
REMOVE= FRAC * INPUT
OUTPUT= INPUT - REMOVE
where:
REMOVE = mass removed
FRAC = fraction to remove
INPUT = inflow mass
OUTPUT = outflow mass
Note that the removal fraction (FRAC) is specifed independently for each constituent and may vary
monthly.
297
-------
HSPF Version 12
Summary Report - REPORT
(Utility Module REPORT)
The REPORT module is designed to produce time series output in a very flexible fashion. The output
format may be either a standard table or it may be specified by the user in an optional input format file.
REPORT creates summaries of time series data according to three criteria: constituent, source, and time
step. Each input time series is given constituent and source indices as subscripts in the time series blocks.
The name and other information for each constituent and source are specified in the REPORT input
block. The time series may be aggregated daily, monthly, or yearly, with the time step and transformation
function specified as input parameters. Each constituent may have its own transformation function, so
that, for instance, loads and concentrations may appear in the same report.
REPORT produces three standard tables. The first is a unit-area, non-point loading table. This table is
used for summarizing loadings to a reach from various sources, including land segments, point sources,
and atmospheric deposition. Input time series are expected to be passed directly from
PERLND/IMPLND with no areal multiplier in the SCHEMATIC block (although conversion factors may
still be needed in the MASS-LINK block). In this report, columns are sources. Rows are time steps, plus
a summary row. The entire table is repeated for each constituent. Row headers are automatically derived
date strings. The page width must be sufficient to fit the entire table. Excerpts from an example follow:
Land Surface unit loads
SEDIMENT(TONS)
P:Forest/Open P:Agricultural
1996 0.155 0.789
1997 0.152 0.395
1998 0.162 0.355
Average 0.156 0.513
The second standard report table is the total/percent loading table. This report is similar to the first
standard format, but the expected inputs are total loads from each source. Columns are sources, plus a
total column. Excerpts from an example follow:
Land Surface percent loads
SEDIMENT(TONS)
P:Forest/Open P:Agricultural
1996 38.901 40.557
1997 46.407 24.660
1998 45.297 20.287
Average 43.283 29.058
Pet
100.00
100.00
100.00
100.00
The third standard report table is a flux table. This report is used for general tables of fluxes over time,
such as water balances. Columns are time steps, plus a summary column. Rows are constituents. The
entire table is repeated for each source. Column headers (dates) appear only once per page. Excerpts
from an example follow:
298
-------
Functional Description
Report test - Flux-summary format - Upper segment
Forest/Open
1986 1987 1988 Average
SEDIMENT
0.021
0.002
0.000
0.008
HEAT
29072000.
4721800.
674630.
11490000 .
DISS OXYGEN
15.038
4 . 810
0. 609
6.819
AMMONIA
0.172
0.042
0.004
0.073
NITRATE
0. 652
0.156
0.018
0.275
ORGANIC N
0.492
0.095
0.014
0.200
TOTAL N
1.316
0.292
0.035
0.548
ORTHOPHOSPHATE
0.015
0.003
0.000
0.006
ORGANIC P
0.024
0.005
0.001
0.010
TOTAL P
0.039
0.008
0.001
0.016
TOC
3.083
0.596
0.085
1.255
BOD
4 . 097
0.793
0.114
1. 668
FECAL COLIFORM
16786000.
2342300.
188420.
6438800.
299
-------
HSPF Version 12
User-Defined Format Input File
REPORT can read a file containing the desired format, with output fields where input names or results
from the run may be placed. All fields are marked by the character '@', usually followed by a case-
sensitive keyword, plus up to three 2-character subscripts delimited by colons. The maximum line length
read from the input file is 256 characters. The following field types are currently recognized:
• @TITLE as specified in the REPORT-TITLE table
• @SRC:nn source name SRCID, as specified in the REPORT-SRC table, where 'nn' is the index
number of the source.
• @CON:nn constituent name CONID, as specified in the REPORT-CON table, where 'nn' is the
index number of the constituent.
• @TRAN :nn transformation string TRAN (the transformation used to aggregate data in time), as
specified in the REPORT-CON table, where 'nn' is the index number of the constituent.
• @TIM:nn time label constructed for the'nn'-th time step, counting from the start of the run. If the
run begins or ends in the middle of a print interval (PCODE) time step, then the partial time step is
accounted for as if it were complete.
• @SSUM:nn source summary header SRCHED, as specified in the REPORT-SUMM table, where
'nn' is the number of the characters to write.
• @TSUM:nn time step summary header TIMHED, as specified in the REPORT-SUMM table, where
'nn' is the number of the characters to write.
• @cc:ss:tt Accumulator value fields, where 'cc', 'ss' and 'tt' are replaced respectively by the
constituent index, the source index, and the time step count since the beginning of the run. The
maximum number of time steps is currently 32. If the run extends beyond this span, then subsequent
results are ignored. If 'tt' is zero, then the time step aggregation transformation TIMTRN (SUM,
AVER, MAX, MIN, LAST) is applied to determine an summary over all of the time steps.
If 'ss' is zero, then the source aggregation transformation SRCTRN (SUM, AVER, MAX, MIN, LAST,
PCT) is applied to determine a summary of the accumulated values of all sources. If both are zero, then
STTRFG specifies in which order to apply the transformations to get the overall summary for the
constituent.
If SRCTRN is PCT, then all values are converted to percentages of the total of all sources for that
constituent (by time step or over all time steps) before being written. For example, if PCODE is 5, TRAN
is SUM, TIMTRN is AVER, SRCTRN is MAX, then:
• the accumulator values are annual totals for each constituent for each source
• the time summaries for each constituent are the average of the annual totals for each source
• the source summaries for each constituent are the maximum of the annual totals for each time step
• If STTRFG=1, the overall summary for each constituent is the maximum of the average annual totals
for each source
• If STTRFG=2, the overall summary is the average of the maximum annual totals for each time step.
300
-------
Functional Description
Looping
There is a special marker @LOOP which enables the user to create implied loops, so that the number of
constituents, sources, and time steps need not be known when the format is written. It must appear alone
as the first line of the file.
Each column, row, or entire table (i.e., the entire contents of the file) may be repeated by associating the
structure with a single loop index (constituent, source, or time step) on the @LOOP line. Once this
association is made, then anytime a subscript forthat index is replaced by then that structure is
repeated appropriately.
For example, the @LOOP line may look like one of these:
@LOOP TAB=CON ROW=TIM COL=SRC
This says that the entire contents of the file are repeated for each constituent, with one row per time step
and one column per source. This is the loop structure for FORMFG=l or 2.
@LOOP TAB=SRC ROW=CON COL=TIM
This says that the table is repeated for each source, with one row per constituent and one column per time
step. This is the loop structure for FORMFG=3.
@LOOP ROW=TIM
The last says that each row is repeated for each time step. In this case, no other loops may be performed,
so the number of columns is fixed in the format file, and if multiple tables are desired, then they all must
appear in the format file in the desired order.
Here are the looped structures which are declared in the HSPF Message WDM file for the "canned"
formats:
FORMFG=l
0LOOP COL=SRC ROW=TIM
0TITLE
0CON:**
0SRC:**
0 TIM * * *
0TSUM:12 0**:**:OO
FORMFG=2
0LOOP COL=SRC ROW=TIM
0TITLE
0CON:**
0SRC:** 0SSUM: 12
0 TIM * * *
0TSUM:12 0**:**:OO
FORMFG= 3
0LOOP COL=TIM ROW=CON
0TITLE
0SRC:**
0TIM:** 0TSUM: 12
0 CON •
TAB=CON
TAB=CON
0**:00:**
0**:00:00
TAB=SRC
0**.**.go
301
-------
HSPF Version 12
Special Format for transfer to external database or spreadsheet
If FORMFG is set to 0, then the output report presents the data in normalized fashion - each record
contains source, constituent, date, and data value. An excerpt from an example is as follows:
INPT TO 8 80SEDIMENT(TONS)198 66.
INPT TO 880SEDIMENT(TONS)1987l9.
INPT TO 880SEDIMENT(TONS)19886.
The contents of this report may be tab- or comma-delimited. This report is quite appropriate to use if
further analysis of HSPF output is to be made with an external spreadsheet or database program.
302
-------
Functional Description
Module TSPUT
Module TSPUT is complementary to, and may be viewed as a mirror image of, module TSGET. TSGET
obtains time series from a WDM file, DSS, sequential file, or the INPAD and places its output in the
INPAD. Conversely, TSPUT obtains a time series from the INPAD and places its output in the WDM
file, DSS, or back in the INPAD. It has similar capabilities to TSGET, to alter the time step, "kind" or to
perform a linear transformation on the time series with which it deals.
Compared to TSGET, module TSPUT contains one complicating factor. When a time series is to be
written to a WDM or DSS data set, the action taken depends on how any pre-existing data are to be
treated. The possible access modes, ADD and REPL, are discussed in Time Series Linkages.
303
-------
HSPF Version 12
References
American Society for Testing and Materials. 1980. Annual Book of ASTM Standards: Part 31, Water,
Philadelphia, PA.
Anderson, E.A. 1968. Development and Testing of Snow Pack Energy Balance Equations, Water
Resources Research, 4(1): 19-37.
Anderson, E.A., andN.H. Crawford. 1964. The Synthesis of Continuous Snowmelt Runoff Hydrographs
on a Digital Computer, Department of Civil Engineering, Stanford University, Stanford, California,
Technical Report No. 36, 103 p.
AQUA TERRA Consultants. 2000. Data Structures for HSPF Version 12, Mountain View, CA.
Caupp, C.L., J.T. Brock, and H.M. Runke. 1994. Model formulation and program description of the
Dynamic Stream Simulation and Assessment Model (DSSAMt): Application to the Truckee River,
Nevada for Truckee River Operating Agreement (TROA) DEIS/DEIR. Technical Report No. RCR94-1.
Submitted to the U.S. Bureau of Reclamation, Carson City, NV, Rapid Creek Research, Inc., Boise,
Idaho.
Chou, T.-W. 1980. Aquatic Biodegradation, Chapter 6 in Mill et al., 1980.
Churchill, M.A., H.L. Elmore, and R.A. Buckingham. 1962. The Prediction of Stream Reaeration Rates.
Amer. Soc. Civil Engineers Journ. 88(SA4), p. 1-46.
Committee on Sanitary Engineering Research. 1960. Solubility of Atmospheric Oxygen in Water.
Twenty-ninth Progress Report. ASCE, Journal of the Sanitation Engineering Div., 86(SA4):41.
Covar, A.P. 1976. Selecting the Proper Reaeration Coefficient for Use in Water Quality Models,
Proceedings of the Conference on Environmental Modeling and Simulation, Cincinnati, OH, EPA 600/9-
76-016, 861p.
Crawford, N.H., and A.S. Donigian, Jr. 1973. Pesticide Transport and Runoff Model for Agricultural
Lands. Office of Research and Development, U.S. Environmental Protection Agency, Washington, DC.
EPA 660/2-74-013. 21 lp.
Crawford, H.H. and R.K. Linsley. 1966. Digital Simulation in Hydrology: Stanford Watershed Model IV,
Technical Report No. 39, Dept. of Civil Engineering, Stanford University, Stanford, CA, 210p.
Di Toro, D.M., D.T. O'Connor, and R.V. Thomann. 1970. A Dynamic Model of Phytoplankton
Populations in Natural Waters, Environmental Engineering and Science Program, Manhattan College,
New York.
Donigian, A.S., Jr., and N.H. Crawford. 1976a. Modeling Pesticides and Nutrients on Agricultural Lands,
Environmental Research Laboratory, Athens, GA, EPA 600/2-7-76-043, 317 p.
Donigian, A.S., Jr., and N.H. Crawford. 1976b. Modeling Nonpoint Pollution From the Land Surface,
Environmental Research Laboratory, Athens, GA, EPA 600/3-76-083, 280p.
304
-------
Functional Description
Donigian, A.S, Jr., D.C. Beyerlein, H.H. Davis, Jr., and N.H. Crawford. 1977. Agricultural Runoff
Management (ARM) Model Version II: Refinement and Testing, Environmental Research Laboratory,
Athens, GA, EPA 600/3-77-098, 294p.
Dugdale, R.C., and J.J. Macisaac. 1971. A Computational Model for the Uptake ofNitrate in the Peru
Upwelling. Prepublication Copy.
Falco, J.W., K.T. Sampson, and R.F. Carsel. 1976. Physical Modeling of Pesticide Degradation.
Proceedings of Symposium on Model Ecosystem Approach to Biodegradation Studies, Society for
Industrial Microbiology, pp. 193-202.
Franz, D.D., and C.S. Melching. 1997. Full Equations (FEQ) model for the solution of the full, dynamic
equations of motion for one-dimensional unsteady flow in open channels and through control structures:
U.S. Geological Survey Water-Resources Investigations Report 96-4240, 258p.
Harnard, H.S. and R. Davis. 1943. The Ionization Constant of Carbonic Acid in Water and the Solubility
of C02 in Water and Aqueous Salt Solution from 0 to 50 C, Journal of the American Chemical Society,
65:2030.
Hydrocomp, Inc. 1977. Hydrocomp Water Quality Operations Manual, Palo Alto, CA.
Hydrocomp, Inc. 1976. Hydrocomp Simulation Programming: Operations Manual, Palo Alto, CA, 2nd
ed.
Hydrocomp, Inc. and AQUA TERRA Consultants. 1996. Modifications to HSPF for High Water Table
and Wetlands Conditions in South Florida: Conceptual Analysis, Preliminary Design and Implementation,
and Initial Testing. Report to South Florida Water Management District, West Palm Beach, FL, 102p.
Jobson, H.E. 1977. Bed Conduction Computation for Thermal Models, J. Hydraulics Div., ASCE,
103(HY10), 1213-1217.
Jobson, H.E. and T.N. Keefer. 1979. Modeling Highly Transient Flow, Mass, and Heat Transport in the
Chattahoochee River near Atlanta, Georgia. U.S. Geological Survey Professional Paper No. 1136.
Krone, R.B. 1962. Flume Studies of the Transport of Sediment in Estuarial Shoaling Processes.
Hydraulic Engineering Laboratory and Sanitary Engineering Research Laboratory, University of
California, Berkeley, CA.
Loehr, R.C., T.B.S. Prakasam, E.G. Srinath, and Y.D. Joo. 1973. Development and Demonstration of
Nutrient Removal from Animal Wastes, U.S. Environmental Protection Agency, Washington, D.C. EPA
R2-73-095.
Mabey, W.R., T. Mill, and D.G. Hendry. 1980. Photolysis in Water, Chapter 3 in Mill et al., 1980.
Meyer, L.D., and W.H. Wischmeier. 1969. Mathematical Simulation of the Process of Soil Erosion by
Water. Trans. Am. Soc. Agric. Eng. 12(6):754-758,762.
Mill, T., W.R. Mabey, D.C. Bomberger, T.-W. Chou, D.G. Hendry, and J.H. Smith. 1980. Laboratory
Protocols for Evaluating the Fate of Organic Chemicals in Air and Water. SRI International, Menlo Park,
CA, Environmental Research Laboratory, Athens, GA.
Negev, M. 1967. A Sediment Model on a Digital Computer, Department of Civil Engineering, Stanford
University, Stanford, CA, Technical Report No. 76, 109p.
305
-------
HSPF Version 12
O'Connor, D.J., and D.M. Di Toro. 1970. Photosynthesis and Oxygen Balance in Streams. ASCE, Journal
of Sanitation Engineering Div., 96(SA2):7240.
O'Connor, D.J., and W.E. Dobbins. 1958. Mechanism of Reaeration in Natural Streams. Trans, of the
ASCE, Vol. 123, p. 641-684.
Onishi, Y. and S.E. Wise. 1979. Mathematical Model, SERATRA, for Sediment-Contaminant Transport
in Rivers and its Application to Pesticide Transport in Four Mile and Wolf Creeks in Iowa. Battelle,
Pacific Northwest Laboratories, Richland, WA.
Onstad, C.A., and G.R. Foster. 1975. Erosion Modeling on a Watershed, Trans, of ASAE, 18(2):288-292.
Owens, M., R.W. Edwards, and J.W. Gibbs. 1964. Some Reaearation Studies in Streams, Intl. Journal of
Air and Water Pollution, Vol. 8, p. 469-486.
Partheniades, E. 1962. A Study of Erosion and Deposition of Cohesive Soils in Salt Water, Ph.D. Thesis,
University of California, Berkeley, CA.
Philips, J.R. 1957. The Theory of Infiltration: The Infiltration Equation and Its Solution, Soil Science,
83:345-375.
Rango, A. and J. Martinec. 1995. Revisiting the Degree-day Method for Snowmelt Computations, Water
Resources Bulletin, Vol. 31, No. 4, 657-669.
Reddy, K.R, R. Khaleel, M.R. Overcash, and P.W. Westerman. 1979. A Nonpoint Source Model for Land
Areas Receiving Animal Wastes: II. Ammonia Volatilization, Trans, of ASAE, 22(6): 1398-1405.
Richman, S. 1958. The Transformation of Energy by Daphnia pulex. Ecolog. Monogr. Vol. 28, p. 273-
291.
Schindler, D.W. 1968. Feeding, Assimilation and Respiration Rates of Daphnia magna Under Various
Environmental Conditions and their Relation to Production Estimates, Journal of Animal Ecology, Vol.
37, p. 369-385.
Shaffer, M.J., A.D. Halvorson, and F.J. Pierce. 1991. Nitrate Leaching and Economic Analysis Package
(NLEAP): Model Description and Application. In: Managing Nitrogen for Groundwater Quality and
Farm Profitability. R.F. Follett, D.R. Keeney, and R.M. Cruse (eds.). Soil Science Society of America,
Inc.
Smajstrla, A.G. 1990. Technical Manual: Agricultural Field Scale Irrigation Requirements Simulation
(AFSIRS) Model, Version 5.5. Agricultural Engineering Dept., University of Florida, Gainesville, FL,
202p.
Smith, J.H., and D.C. Bomberger. 1980. Volatilization from Water, Chapter 7 in Mill et al., 1980.
Smith, J.H., W.R. Mabey, N. Bohonos, B.R. Holt, S.S. Lee, T.-W. Chou, D.C. Bomberger, and T. Mill.
1977. Environmental Pathways of Selected Chemicals in Freshwater Systems, Part I: Background and
Experimental Procedures. Environmental Research Laboratory, Athens, GA, EPA 600/7-77-113.
Thomann, R.V. 1972. Systems Analysis and Water Quality Management. McGraw-Hill, Inc., New York,
286p.
Tsivoglou, E.C., and J.R. Wallace. 1972. Characterization of Stream Reaeration Capacity, U.S.
Environmental Protection Agency, EPA R3-72-012.
306
-------
Functional Description
U.S. Army Corps of Engineers. 1956. Snow Hydrology, Summary Report of the Snow Investigations,
North Pacific Division. Portland, OR, 437p.
U.S. Environmental Protection Agency. 1975. Process Design Manual for Nitrogen Control, Office of
Technology Transfer, Washington D.C.
Vanomi, V.A., Editor. 1975. Sedimentation Engineering. Prepared by the ASCE Task Committee for the
Preparation of the Manual on Sedimentation of the Sedimentation Committee of the Hydraulics Division,
New York.
Wezerak, C.G., and J.J. Gannon. 1968. Evaluation of Nitrification in Streams. ASCE, Journal of the
Sanitation Engineering Div., 94(SA5):6159.
Wischmeier, W.H., and D.D. Smith. 1965. Predicting Rainfall Erosion Losses from Cropland East of the
Rocky Mountains. U.S. Department of Agriculture, Agricultural Handbook No. 282. 47p.
Zepp, R.G. and D.M. Cline. 1977. Rates of Direct Photolysis in Aquatic Environments, Environmental
Science and Technology, 11:359-366.
307
-------
-------
Users Control Input
Users Control Input
General Information And Conventions
The User's Control Input
The User's Control Input (UCI) consists of text lines limited to 80 characters. A general feature of the
UCI is that the lines are collected into groups. Groups may contain subordinate groups; that is, they may
be nested. In every case, a group commences with a heading (such as RUN) and ends with a delimiter
(such as END RUN).
The HSPF system ignores any line in the UCI which contains three or more consecutive asterisks (***),
just as a computer language compiler bypasses comments in a source program. Blank lines are also
ignored. This feature can be used to insert headings and comments which make the text more intelligible
to the reader, but are not required or read by the HSPF system itself.
The body of the User's Control Input consists of one or more major groups of text, called RUN input sets.
A RUN input set contains all the input needed to perform a single RUN. A RUN is a set of operations
with a common START date-time and END date-time.
General Comments on Method of Documentation
The documentation of each portion of the UCI is divided into three sections: Layout, Details, and
Explanation. The Layout section shows how the input is arranged. Text always appearing in the same
form (e.g., RUN) is shown in upper case. Text which varies from job to job is shown by lower case
symbols enclosed in angle brackets (). Lines containing illustrative text, not actually required by the
system, have three consecutive asterisks, just as they might have in the UCI. Optional material, or that
which is not always required, is enclosed in brackets []. The column numbers printed at the head of each
Layout show the starting location of each keyword and symbol.
The Details section describes the input values required for each symbol appearing in the Layout. The
Fortran identifiers used to store the value(s) in the code are given, followed by the format. The field(s)
specified in this format start in the column containing the < which immediately precedes the symbol in
the layout. For example, < range >, which consists of the starting and ending operations that the current
line applies to, starts in column 1 and ends in column 10. Where relevant, the Details section also
indicates default values and minimum and maximum values for each item in the UCI.
The Explanation section contains any necessary explanatory material which could not fit into the Details
section, including definitions of each field.
309
-------
HSPF Version 12
Format Of The Users Control Input
Summary
The User's Control Input starts with a RUN heading and ends with an END RUN delimiter. The body of
the text consists of several groups, called "blocks," which may appear in any sequence:
RUN
GLOBAL Block
Contains information of a global nature. It applies to every operation in the RUN.
FILES Block
Specifies disk files to be used by the run and their file unit numbers.
OPN SEQUENCE Block
Specifies the operations to be performed in the RUN, in the sequence they will be executed. It indicates
any grouping (INGROUPs).
Block
Deals with data pertaining to all the operations of the same , for example, parameters
and initial conditions for all Pervious Land-segments in a RUN. It is not concerned with relationships
between operations, or with external sources or targets for time series. There is one
Block for each involved in the RUN.
[FTABLES Block]
A collection of function tables (FTABLES). A function table is used to document, in discrete numerical
form, a functional relationship between two or more variables. FTABLES are used to specify the depth-
volume-discharge relationship for RCHRES operations, or in some cases to specify the surface runoff
from a wetland PERLND.
[EXT SOURCES Block]
Specifies time series which are input to the operations from external sources (WDM file, DSS file, or
sequential (SEQ) files).
[NETWORK Block]
Specifies any time series which are passed between operations.
[EXT TARGETS Block]
Specifies those time series which are output from operations to external destinations (WDM or DSS file).
[SCHEMATIC Block]
310
-------
Users Control Input
Specifies structure of watershed, i.e., connections of land segments and stream reaches to each other.
Operates in tandem with MASS-LINK block to simplify definition of complex watersheds.
[MASS-LINK Block]
Specifies groups of time series to combine with network connections defined in the SCHEMATIC block
in order to specify mass flows in the watershed.
[MONTH-DATA Block]
Specifies monthly values of atmospheric deposition fluxes and concentrations (in rain) for water quality
constituents.
[CATEGORY Block]
Specifies the number of water categories to be simulated in the streams and reservoirs represented by
RCHRES operations.
[PATHNAMES Block]
Associates DSS pathnames with dataset ID numbers for all DSS data sets in the EXT SOURCES and
EXT TARGETS blocks.
[FORMATS Block]
Contains any user-supplied formats which may be required to read time series on external sequential
(SEQ) data files.
[SPEC-ACTIONS Block]
Specifies operation, variable location, type or name, date/time and action code in order to change a
variable's value during a run.
END RUN
Usually, a User's Control Input will not include all of the above blocks. Their presence will be dictated
by the operations performed in the RUN and the options which are selected.
311
-------
HSPF Version 12
GLOBAL Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GLOBAL
< run-info >
START < s-date-time > END< e-date-time >
RUN INTERP OUTPT LEVELS
RESUME RUN UNITS
END GLOBAL
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GLOBAL
Seven Mile River - Water quality run
START 1980/01/01 00:00 END 1987/12/31 12:00
RUN INTERP OUTPT LEVELS 4 3
RESUME 0 RUN 1 UNITS
END GLOBAL
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
RUNINF(20)
A78
none
none
none
SYR,
18,
none
1
32767
SMO,
IX,12,
1
1
12
SDA,
IX,12,
1
1
varies
SHR,
IX,12,
0
0
23
SMI
IX, 12
0
0
59
EYR,
18,
none
1
32767
EMO,
IX,12,
12
1
12
EDA,
IX,12,
varies
1
varies
EHR,
IX,12,
#24
0
24 #only if EMI is 0
EMI
IX, 12
0
0
59
OUTLEV
15
0
0
10
SPOUT
15
2
0
10
RESMFG
15
0
0
1
RUNFG
15
0
0
1
EMFG
15
1
1
2
312
-------
Users Control Input
Explanation
RUNINF is a title and/or comments regarding the RUN.
SYR, SMO, SDA, SHR, and SMI define the starting date/time of the simulation time span.
EYR, EMO, EDA, EHR, and EMI define the ending date/time of the simulation time span.
Users conventionally label the same point in time differently, depending whether they are looking
forward or backward towards it. For example, if we say that a RUN starts on 1978/05 we mean that it
commences at the start of May 1978. On the other hand, if we say it ends on 1978/05 we mean it
terminates at the end of May 1978. Thus, HSPF has two separate conventions for the external labeling of
time. When supplying values for a date/time field a user may omit any element in the field except the
year, which must be supplied as a 4 digit figure. HSPF will substitute the defaults given above for any
blank or zero values. The completed starting and ending date/time fields are translated into another
format, which is the only one used to label intervals and time points internally. It has a resolution of 1
minute. Thus, time is recorded as a year/month/day/hour/minute set, to completely specify either a time
interval or point. The date/time used by the internal clock uses the "contained within" principle. For
example, the first minute in an hour is numbered 1 (not 0) and the last is numbered 60 (not 59). The same
applies to the numbering of hours. Thus, the time conventionally labeled 11:15 is in the 12th hour of the
day so is labeled 12:15 internally; the last minute of 1978 is labeled 1978/12/31 24:60. This convention is
extended to the labeling of points by labeling it with the minute that immediately precedes it. Thus,
midnight New Year's eve 1978/1979 is 1978/12/31 24:60, not 1979/01/01 00:00. This gives a system for
uniquely labeling each point internally.
OUTLEV is a flag which governs the quantity of informative output produced by the Run Interpreter. A
value of 0 results in minimal output; 10 results in very detailed output useful primarily for locating errors
in the UCI or the program. A value of 3 or 4 is appropriate for most runs. OUTLEV does not affect error
or warning messages.
SPOUT is a flag that governs the quantity of output produced in the Run Interpreter Output file whenever
a Special Action is performed during the simulation. A value of 0 results in minimal output, and a value
of 10 results in maximum output.
RESMFG represents a feature that is not supported in this version of HSPF. It should be set to 0.
If RUNFG is 1, the program will interpret the input and then execute the RUN (if no errors are detected).
If RUNFG is 0, only the interpretation will be completed.
EMFG is the UCI units system flag for all simulation operations (i.e., PERLND, IMPLND and RCHRES
operations). If EMFG is 1, all input values in the UCI file will be interpreted using the English units
defined in the tables in this section (User's Control Input) of this manual. If EMFG is 2, Metric units are
assumed for UCI values.
313
-------
HSPF Version 12
FILES Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
FILES
< filename >
(repeats until all files are specified)
END FILES
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
FILES
UNIT#
FILE NAME ***
WDM1
24
test.wdm
MESSU
21
test.mes
61
test.dsp
33
test.pis
END FILES
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Comment
FTYPE
A6
File
type; valid values are: MESSU, WDM,
WDM1,
. WDM2, WDM3, WDM4, DSS1, DSS2, DSS3,
DSS4,
. DSS5, FEQTSF, and blank (" ").
FUN IT
15
File
unit number; available values are
1-4,
8, and 10-98 (10-98 recommended).
FNAME
A64
File
name; complete path name or local
name
if in default/current directory.
314
-------
Users Control Input
Explanation
The FILES Block contains the names of input and output files used by the program during the run; this
block associates the unit numbers specified in various parts of the UCI file with actual disk file names.
Since the FILES Block requires that the program be able to locate the UCI file, HSPF requires that the
user provide its name before execution can begin. On DOS-based or other command-line based operating
systems, this can also be accomplished on the command line. When invoking HSPF, one can include the
name of the UCI file using the following syntax:
hspf uci-file-name
FTYPE is a keyword that identifies the type of file. There are twelve FTYPE's that HSPF recognizes,
and FTYPE must be specified for these types of files. Note, however, that the WDM and WDM1
keywords are synonymous, and should not appear together in the same FILES block. For all other files,
this field should be left blank. The FTYPE keyword should be left-justified in columns one through six.
The valid FTYPE values are shown below:
DESCRIPTION FTYPE
Run interpreter output MESSU
Watershed Data Management WDM, WDM1, WDM2, WDM3, WDM4
HEC Data Storage System files DSS1, DSS2, DSS3, DSS4, DSS5
VAX (only) PLTGEN output file PLTGEN
FEQ Time Series File: Diffuse FEQTSF
(DTSF) or Point (PTSF)
Other input and output files (blank)
FUNIT is the file unit number of the file. This corresponds to the unit number of those files specified in
other parts of the UCI file. FUNIT is an integer value that should be right-justified in columns 9 through
13; valid values are 1-99. Each value of FUNIT in the FILES Block should be unique, and the values 5-7,
9, and 99 are reserved for internal scratch files. Preferably, values of 10 to 98 should be used to avoid any
conflicts with internally-generated files.
FNAME is the name of the file. If the file is not in the current (default) directory, the relative path name
should be specified. FNAME should be left-justified in columns 17 through 80.
The FILES Block is usually required. In particular, if a WDM or DSS file is needed by the run, it must be
specified in the FILES Block, since the program does not have a default name for these files.
Similarly, for the operating modules (PERLND, IMPLND, RCHRES, DISPLY, PLTGEN, DURANL,
MUTSIN, BMPRAC, and REPORT), and sequential (SEQ) time series input, the user must specify file
unit numbers as the destination for printout (or source for MUTSIN or sequential time series input). Also,
it is recommended that these files be explicitly assigned names in the FILES Block. However, if the user
does not include an entry in the FILES block for one of these operations, a file is automatically opened by
HSPF with the default name "hspfxx.dat", where xx is the unit number, except for the MESSU file, which
defaults to "hspfecho.out".
315
-------
HSPF Version 12
OPN SEQUENCE Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
OPN SEQUENCE
[INGRP
INDELT ]
<-opn-id
— >
<-opn-id
— >
[END INGRP ]
<-opn-id
—> INDELT
<-opn-id
—> INDELT
[INGRP
INDELT ]
<-opn-id
— >
[END INGRP ]
END OPN SEQUENCE
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OPN SEQUENCE
INGRP
INDELT 02:00
PERLND
20
PERLND
21
PERLND
22
END INGRP
RCHRES
1 INDELT 12:00
END OPN SEQUENCE
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Comment
HRMIN(2) 12,IX,12
<-opn-id-> OPTYP,OPTNO A6,5X,I3
Time interval (hour:min) used in the
INPAD e.g., 00:05
Type and number of this operation,
e.g., RCHRES 100
316
-------
Users Control Input
Explanation
This block specifies the various operations to be performed in the RUN and, optionally, their grouping
into INGROUPs. The operations will be performed in the sequence specified in the block, apart from
repetition implied by grouping. A maximum of 500 operations can be specified in one run.
Every <-opn-id-> consists of OPTYP and OPTNO. The OPTYP field must contain an identifier of up to 6
characters which corresponds to one of the operating module identifiers in the HSPF system. The
OPTNO field contains an integer which distinguishes operations of the same type from one another.
Every (OPTYP plus OPTNO) must be unique.
The time intervals (time steps) of the INGROUPs (or the RUN) are specified in this block. These appear
on the INGROUP lines, except where the user has not placed an operation in an INGROUP. In that case
is specified alongside <-opn-id->.
317
-------
HSPF Version 12
Optimization of Operation Sequencing
The sequence of operations within the Operations Sequence block should be optimized to make most
efficient use of the internal scratch pad (INPAD). Optimal use of the INPAD is accomplished by
reducing the maximum number of time series (rows) on the INPAD. This increases the length of each
row and the INSPAN, which reduces swapping between operations.
A time series occupies a row on the INPAD from the moment it is either read from an external source or
is created by an operation until the moment it is used by the last operation requiring it. HSPF
automatically optimizes the reading of data from external sources and writing of data to external targets.
Optimal sequencing of operations requires that an operation be executed as soon as all input time series
produced by other operations have been created. For example, a DISPLY operation which displays
outflow from a PERLND operation should immediately follow the PERLND operation. A RCHRES
operation representing a section of stream should immediately follow any RCHRES operations
representing reaches upstream and any PERLND operations which contribute local inflow.
For example, a watershed is represented by 4 PERLND operations, 5 RCHRES operations, 2 PLTGEN
operations, 4 DISPLY operations, and 1 DURANL operation. These are defined as follows:
PERLND 1 - rain gage 1, land use of pasture
PERLND 2 - rain gage 1, land use of corn
PERLND 3 - rain gage 2, land use of pasture
PERLND 4 - rain gage 2, land use of corn
RCHRES 1 - local inflow from PERLND 1 and 2
RCHRES 2 - upstream inflow from RCHRES 1, local inflow from PERLND 1 and 2
RCHRES 3 - local inflow from PERLND 3 and 4
RCHRES 4 - upstream inflow from RCHRES 2 and 3, local inflow from
PERLND 3 and 4
RCHRES 5 - upstream inflow from RCHRES 4, local inflow from PERLND 3 and 4
DISPLY 1 - outflow from RCHRES 5
DISPLY 2 - outflow from RCHRES 3
DISPLY 3 - unit flow from PERLND 2
DISPLY 4 - unit flow from PERLND 4
PLTGEN 1 - outflow from RCHRES 5, measured flow at bottom of RCHRES 5
PLTGEN 2 - outflow from RCHRES 1, area weighted sum of unit flow from
PERLND 1 and 2
DURANL 1 - outflow from RCHRES 5
318
-------
Users Control Input
The optimum order for these operations is:
PERLND 1
PERLND 2
DISPLY 3
RCHRES 1
PLTGEN 2
RCHRES 2
PERLND 3
PERLND 4
DISPLY 4
RCHRES 3
DISPLY 2
RCHRES 4
RCHRES 5
DISPLY 1
DURANL1
PLTGEN 1
319
-------
HSPF Version 12
Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
General
Section
Section
Section
END
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Comment
OPTYP
A6
Type of operation covered in this
block, e.g., RCHRES, PERLND
input
1 input
2 input | Only supplied if the operating module contains sections
| and the section is active
I
N input
320
-------
Users Control Input
Explanation
This type of block deals with data which pertain to all operations of the same , e.g., the
parameters and initial conditions for all the Pervious Land segments in a RUN. It is not concerned with
relationships between operations or with external sources or targets for time series.
This type of block provides for general input and for input which is specific to individual sections of the
operating module. The latter (sections) only apply to modules which are sectioned (PERLND, IMPLND,
and RCHRES). The general input contains all of the information which simple (non-sectioned) modules
require; for sectioned modules it contains input which is not specific to any one section.
The general organization of the blocks is as follows:
The user supplies the input in a set of tables (e.g., ACTIVITY). Each table has a name (eg. ACTIVITY),
called the "Table-type". A table starts with the heading and ends with the delimiter END
. The body of the table consists of:
< value s >
where is the range of operation-type numbers to which the apply. If the second field in
is blank, the range is assumed to consist of a single operation. Thus, in the example in
ACTIVITY, Pervious Land-segments (PERLNDs) 1 through 7 have the same set of active sections, while
PERLND 9 has a different set.
Thus, a table lists the values given to a specified set of variables (occupying only 1 line) for all the
operations of a given type. The input was designed this way to minimize the quantity of data supplied
when many operations have the same values for certain sets of input.
HSPF only looks for a given Table-type if the options already specified by the user require data contained
within it. Thus, Table-type MON-INTERCEP is relevant only if VCSFG in Table-type PWAT-PARM1
is set to 1 for one or more PERLNDs. The system is designed to ignore redundant information. Thus, if
VCSFG is 0 and Table-type MON-INTERCEP is supplied, the table is ignored.
On the other hand, if an expected value is not supplied, the system will attempt to use a default value.
This situation can arise in one of three ways:
1. The entire table may be missing from the UCI.
2. The table may be present but not contain an entry (line) for the operation in question. The example in
ACTIVITY has no entry for PLS No. 8. Thus, all values in its active sections vector will have the default
of 0.
3. A field may be left blank. In the example in PWAT-PARM2, KVARY will be assigned the default
value 0.0 for PERLNDs 1 through 7.
When appropriate, the HSPF system also checks that a value supplied by the user falls within an
allowable range. If it does not, an error message is generated.
Note that a table contains either integers or real values, but generally not both. For example, Table-type
ACTIVITY contains only integer flags, while Table-type PWAT-PARM2 contains only real numbers.
For tables containing real-valued data, the documentation gives separate defaults, minima and maxima for
the English and Metric unit systems. The user specifies the units system for all inputs in the UCI in the
GLOBAL block.
321
-------
HSPF Version 12
PERLND Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PERLND
General input
[section ATEMP input]
[section SNOW input]
[section PWATER input]
[section SEDMNT input]
[section PSTEMP input]
[section PWTGAS input]
[section PQUAL input]
[section MSTLAY input]
[section PEST input]
[section NITR input]
[section PHOS input]
[section TRACER input]
END PERLND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
This block contains the data which are domestic to all the Pervious Land Segments in the RUN. The
general input is always relevant: other input is only required if the module section concerned is active.
322
-------
Users Control Input
General input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type ACTIVITY
[Table-type PRINT-INFO]
Table-type GEN-INFO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [] above are not always required; for example, because all the values can be
defaulted.
323
-------
HSPF Version 12
ACTIVITY
Active Sections
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
ACTIVITY
<-range>< a-s-vector >
(repeats until all operations of this type are covered)
END ACTIVITY
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ACTIVITY
Active Sections
# - # ATMP SNOW PWAT SED PST PWG
17 111
9 0 0 0 1
END ACTIVITY
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k•
¦k -k -k
PQAL MSTL PEST NITR PHOS TRAC***
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
ASVEC(12) 1215 0 0 1
Explanation
The PERLND module is divided into 12 sections: ATEMP, SNOW, PWATER, SEDMNT, PSTEMP,
PWTGAS, PQUAL, MSTLAY, PEST, NITR, PHOS, and TRACER. The values supplied in this table
specify which sections are active and which are not, for each operation involving the PERLND module
A value of 0 means the section is inactive and 1 means it is active. Any meaningful subset of sections
may be active.
324
-------
Users Control Input
PRINT-INFO
Printout information for PERLND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PRINT-INFO
<-range>< print-flags >
(repeats until all operations of this type are covered)
END PRINT-INFO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PRINT-INFO
<^PIjS -k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k P t— f 13.^ S "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k "k PJVL PYR
# - # ATMP SNOW PWAT SED PST PWG PQAL MSTL PEST NITR PHOS TRAC *********
17246 432 10 12
END PRINT-INFO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
PFLAG(12)
1215
4
2
6
PIVL
15
1
1
1440
PYREND
15
9
1
12
325
-------
HSPF Version 12
Explanation
This table allows the user to vary the printout level (maximum frequency of output) for the various active
sections of an operation. The meaning of each permissible value for PFLAG() is:
2 means every PIVL intervals
3 means every day
4 means every month
5 means every year
6 means never
In the example above, output from Pervious Land-segments 1 thru 7 will occur as follows:
Section
ATEMP
SNOW
PWATER
SEDMNT
thru
PEST
NITR
PHOS
TRACER
Maximum frequency
10 intervals
month
never
| month (defaulted)
month
day
10 intervals
A value need only be supplied for PIVL if one or more sections have a printout level of 2. For those
sections, printout will occur every PIVL intervals (i.e., every PIVL*DELT minutes, where DELT is the
number of minutes in the time step of the RUN or INGROUP). PIVL must be chosen such that there are
an integer number of printout periods in a day.
HSPF automatically provides printed output at all standard intervals greater than the specified interval. In
the above example, output for section PHOS will be printed at the end of each day, month, and year.
PYREND is the calendar month which terminates the year for printout purposes. Thus, the annual
summary can reflect the situation over the past water year or the past calendar year, etc.
326
-------
Users Control Input
GEN-INFO
Other general information for PERLND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GEN-INFO
<-range>< PLS-id > <-printu->
(repeats until all operations of this type are covered)
END GEN-INFO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GEN-INFO
# - #
PLS Name
Units Printout ***
t-series Engl Metr ***
1 Yosemite Valley
2 Kings river
END GEN-INFO
in out
1 1
1 1
23
23
24
24
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
LSID (5)
5A4
none
none
none
IUNITS,OUNITS
215
1
1
2
PUNIT(2)
215
0
0
99
327
-------
HSPF Version 12
Explanation
LSID is a 20 character identifier for the PERLND.
The values supplied for IUNITS and OUNITS indicate the system of units for data in the input time series
and output time series, respectively: 1 means English units, 2 means Metric units.
Note: All operations in the run must use the same units system for data in the UCI file; therefore, this
system of units is specified by EMFG in the GLOBAL block.
The values supplied for PUNIT(l) and PUNIT(2) indicate the destinations (files) of printout in English
and metric units, respectively. A value of 0 means no printout is required in that unit system. A non-zero
value means printout is required in that system, and the value is the unit number of the file to which
printout is to be written. The unit number is associated with a filename in the FILES BLOCK.
Note that printout for each Pervious Land Segment can be obtained in either the English or Metric
systems, or both, irrespective of the system used to supply the inputs (specified by EMFG in the
GLOBAL block).
328
-------
Users Control Input
ATEMP input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type ATEMP-DAT]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of the table mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [] above are not always required; for example, because all the values can be
defaulted.
329
-------
HSPF Version 12
ATEMP-DAT
Elevation difference between gage and PERLND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
ATEMP-DAT
<-range>
(repeats until all operations of this type are covered)
END ATEMP-DAT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ATEMP-DAT
El-diff
# - # (ft)
1 7 150.
END ATEMP-DAT
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ELDAT
F10.0
o
o
none
none
ft
Engl
o
o
none
none
m
Metric
AIRTMP
F10.0
60
-60
140
Deg
F
Engl
15
-50
60
Deg
C
Metric
Explanation
ELD AT is the difference in elevation between the temperature gage and the PERLND; it is used to
estimate the temperature over the segment by application of a lapse rate. ELDAT is positive if the
segment is higher than the gage, and vice versa.
AIRTMP is the initial (i.e., at the starting time of the RUN) air temperature over the land segment.
330
-------
Users Control Input
SNOW input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type ICE-FLAG]
[Table-type SNOW-FLAGS]
Table-type SNOW-PARM1
[Table-type SNOW-PARM2]
[Table-type MON-MELT-FAC]
[Table-type SNOW-INIT1]
[Table-type SNOW-INIT2]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [] above are not always required; for example, because all the values can be
defaulted.
331
-------
HSPF Version 12
ICE-FLAG
governs simulation of ice formation in snow
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
ICE-FLAG
<-range>
(repeats until all operations of this type are covered)
END ICE-FLAG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ICE-FLAG
Ice- ***
# - # flag ***
17 1
END ICE-FLAG
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
ICEFG 15 0 0 1
Explanation
A value of 0 means ice formation in the snow pack will not be simulated; 1 means it will.
332
-------
Users Control Input
SNOW-FLAGS
Snow option flags
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
l
123456789012345
•A-**************
Layout
¦k -k -k -k -k -k
SNOW-FLAGS
<-range><—snow—>
(repeats until all operations of this type are covered)
END SNOW-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SNOW-FLAGS
***
# - # SNOP VKM ***
17 10
END SNOW-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
<—snow—>
SNOPFG
15
0
0
1
VKMFG
15
0
0
1
Explanation
SNOPFG is a flag selecting the method for computing snowmelt. A value of 0 means use the energy
balance method requiring input of air temperature, wind, dewpoint, and solar radiation; 1 means use a
temperature index method that requires only air temperature.
VKMFG indicates whether or not the degree-day factor KMELT used in the temperature index method is
assumed to vary through the year on a monthly basis: 1 means it varies, 0 means it does not. If this flag is
on (1), monthly values for KMELT must be supplied in Table-type MON-MELT-FAC.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
2 3 4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
333
-------
HSPF Version 12
SNOW-PARM1
First group of SNOW parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SNOW-PARM1
<-range>< snowparml >
(repeats until all operations of this type are covered)
END SNOW-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SNOW-PARM1
*** Latitude Mean- SHADE SNOWCF COVIND KMELT TBASE
*** # - # elev
1 7 39.5 3900. 0.3 1.2 10. 0.12 31.0
END SNOW-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
LAT
7F10.0
40.0
-
90.0
90.0
degrees
Both
ME LEV
0.0
0
.0
30000
0 ft
Engl
0.0
0
.0
10000
0 m
Metric
SHADE
0.0
0
.0
1.0
none
Both
SNOWCF
none
1
.0
100.0
none
Both
COVIND
none
0
.01
none
in
Engl
none
0
.25
none
mm
Metric
KMELT
0.0
0
.0
none
in/day.F
Engl
0.0
0
.0
none
mm/day.C
Metric
TBASE
32 . 0
0
.0
60.0
F
Engl
0.0
-
20.0
20.0
C
Metric
334
-------
Users Control Input
Explanation
LAT is the latitude of the pervious land segment (PLS). It is positive for the northern hemisphere, and
negative for the southern hemisphere. It is used only when SNOPFG=0 in Table-type SNOW-FLAGS.
MELEV is the mean elevation of the PLS above sea level. It is used only when SNOPFG=0 in Table-
type SNOW-FLAGS.
SHADE is the fraction of the PLS which is shaded from solar radiation, by trees for example. It is used
only when SNOPFG=0 in Table-type SNOW-FLAGS.
SNOWCF is the factor by which the input precipitation data will be multiplied, if the simulation indicates
it is snowfall, to account for poor catch efficiency of the gage under snow conditions.
COVIND is the maximum snowpack (water equivalent) at which the entire PLS will be covered with
snow (see SNOW section in Functional Description).
KMELT is the constant degree-day factor for the temperature index snowmelt method, to be used when
SNOPFG=l and VKMFG=0 in Table-type SNOW-FLAGS.
TBASE is the reference temperature for the temperature index method (SNOPFG=l in Table-type
SNOW-FLAGS).
335
-------
HSPF Version 12
SNOW-PARM2
Second group of SNOW parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SNOW-PARM2
<-range>< snowparm2 >
(repeats until all operations of this type are covered)
END SNOW-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SNOW-PARM2
***
# - # RDCSN TSNOW SNOEVP CCFACT MWATER MGMELT ***
1 7 0.2 33. 0.1 2.0 .03 .01
END SNOW-PARM2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
RDCSN
F10.0
0.15
0.01
1.0
none
Both
TSNOW
F10.0
32 . 0
30.0
40.0
degF
Engl
0.0
-1.0
5.0
degC
Metric
SNOEVP
F10.0
0.1
0.0
1.0
none
Both
CCFACT
F10.0
1.0
0.0
10.0
none
Both
MWATER
F10.0
0.03
0.0
1.0
none
Both
MGMELT
F10.0
0.01
0.0
1.0
in/day
Engl
0.25
0.0
25.
mm/day
Metric
336
-------
Users Control Input
Explanation
RDCSN is the density of cold, new snow relative to water. This value applies to snow falling at air
temperatures lower than or equal to 0 degrees F. At higher temperatures the density of snow is adjusted.
TSNOW is the air temperature below which precipitation will be snow, under saturated conditions.
Under non-saturated conditions the temperature is adjusted slightly.
SNOEVP is a parameter which adapts the snow evaporation (sublimation) equation to field conditions. It
is used only when SNOPFG=0 in Table-type SNOW-FLAGS.
CCFACT is a parameter which adapts the snow condensation/convection melt equation to field
conditions. It is used only when SNOPFG=0 in Table-type SNOW-FLAGS.
MWATER is the maximum water content of the snow pack, in depth of water per depth of water.
MGMELT is the maximum rate of snowmelt by ground heat, in depth of water per day. This is the value
which applies when the pack temperature is at the freezing point.
337
-------
HSPF Version 12
MON-MELT-FAC
Monthly degree-day factor
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-MELT-FAC
<-range>< mon-kmelt >
(repeats until all operations of this type are covered)
END MON-MELT-FAC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-MELT-FAC
Degree-day factor at start of each
# - # JAN FEB MAR APR MAY JUN JUL
1 7 .02 .03 .03 .04 .05 .08 .12
END MON-MELT-FAC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
KMELTM(12)
12F5.0
o
o
o
o
none
in/d.F
Engl
o
o
o
o
none
mm/d.C
Metric
Explanation
Monthly values of degree-day factor. Only required if SNOPFG=l and VKMFG=1 in Table-type
SNOW-FLAGS.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
month ***
AUG SEP OCT NOV DEC ***
.15 .12 .05 .03 .01
338
-------
Users Control Input
SNOW-INIT1
First group of initial values for SNOW
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SNOW-INITl
<-range>< snowinitl >
(repeats until all operations of this type are covered)
END SNOW-INITl
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SNOW-INITl
***
# - # Pack-snow Pack-ice Pack-watr RDENPF DULL PAKTMP***
1 7 2.1 .02 .40
END SNOW-INITl
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
Pack-snow
F10.0
0 .
0
0
.0
none
in
Engl
0 .
0
0
.0
none
mm
Metric
Pack-ice
F10.0
0 .
0
0
.0
none
in
Engl
0 .
0
0
.0
none
mm
Metric
Pack-watr
F10.0
0 .
0
0
.0
none
in
Engl
0 .
0
0
.0
none
mm
Metric
RDENPF
F10.0
0 .
2
01
1.0
none
Both
DULL
F10.0
400 .
0
.0
800 .
none
Both
PAKTMP
F10.0
32 .
none
32 .
degF
Engl
0 .
0
none
0.0
degC
Metric
Explanation
Pack-snow is the quantity of snow in the pack (water equivalent).
Pack-ice is the quantity of ice in the pack (water equivalent).
Pack-watr is the quantity of liquid water in the pack.
RDENPF is the density of the frozen contents (snow and ice) of the pack, relative to water.
DULL is an index to the dullness of the snow pack surface, from which albedo is estimated. It is used
only when SNOPFG=0 in Table-type SNOW-FLAGS.
PAKTMP is the mean temperature of the frozen contents of the snow pack.
339
-------
HSPF Version 12
SNOW-INIT2
Second group of initial values for SNOW
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SNOW-INIT2
<-range>< snowinit2 >
(repeats until all operations of this type are covered)
END SNOW-INIT2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SNOW-INIT2
***
# - # COVINX XLNMLT SKYCLR***
1 7 0.50
END SNOW-INIT2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
COVINX
F10.0
0.01
0.01
none
in
Engl
0.25
0.25
none
mm
Metric
XLNMLT
F10.0
0.0
0.0
none
in
Engl
0.0
0.0
none
mm
Metric
SKYCLR
F10.0
1.0
. 15
1.0
none
Both
Explanation
COVINX is the current snow pack depth (water equivalent) required to obtain complete areal coverage of
the land segment. If the pack is less than this amount, areal coverage is prorated (PACKF/COVINX).
XLNMLT is the current remaining possible increment to ice storage in the pack (see Functional
Description). It is relevant if ice formation is simulated (ICEFG= 1).
SKYCLR is the fraction of sky which is assumed to be clear at the present time.
340
-------
Users Control Input
PWATER input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type PWAT-PARM1]
Table-type PWAT-PARM2
Table-type PWAT-PARM3]
Table-type PWAT-PARM4
Table-type PWAT-PARM5]
Table-type PWAT-PARM6]
Table-type PWAT-PARM7]
Table-type MON-INTERCEP]
Table-type MON-UZSN]
Table-type MON-MANNING]
Table-type MON-INTERFLW]
Table-type MON-IRC]
Table-type MON-LZETPARM]
Table-type PWAT-STATE1]
Table-type IRRIG-PARM1]
Table-type IRRIG-PARM2]
Table-type CROP-DATES]
Table-type CROP-STAGES]
Table-type CROP-SEASPM]
Table-type SOIL-DATA]
Table-type SOIL-DATA2]
Table-type SOIL-DATA3]
Table-type MON-IRR-CRDP]
Table-type MON-IRR-AWD]
Table-type IRRIG-SCHED]
Table-type IRRIG-SOURCE]
Table-type IRRIG-TARGET]
I
| only required if the relevant quantity
| varies through the year
I
only required if using irrigation
module (IRRGFG > 0 in PWAT-PARM1)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [] above are not always required; for example, because all the values can be
defaulted.
341
-------
HSPF Version 12
PWAT-PARM1
First group of PWATER parameters (flags)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-PARM1
<-range>< pwatparml >
(repeats until all operations of this type are covered)
END PWAT-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-PARM1
Flags ***
# - # CSNO RTOP UZFG VCS VUZ VNN VIFW VIRC VLE IFFC HWT IRRG ***
17 11
END PWAT-PARM1
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
CSNOFG
15
0
0
1
RTOPFG
15
0
0
3
UZFG
15
0
0
1
VCSFG
15
0
0
1
VUZFG
15
0
0
1
VNNFG
15
0
0
1
VIFWFG
15
0
0
1
VIRCFG
15
0
0
1
VLEFG
15
0
0
1
IFFCFG
15
1
1
2
HWTFG
15
0
0
1
IRRGFG
15
0
0
3
342
-------
Users Control Input
Explanation
If CSNOFG is 1, section PWATER assumes that snow accumulation and melt is being considered. It
will, therefore, expect that the time series produced by section SNOW are available, either internally
(produced in this RUN) or from external sources (e.g., produced in a previous RUN). If CSNOFG is 0,
no such time series are expected. See the Functional Description for further information.
RTOPFG is a flag that selects the algorithm for computing overland flow. Four optional methods are
provided. If RTOPFG is 1, routing of overland flow is done in the same way as in the predecessor
models HSPX, ARM and NPS. A value of 0 results in a different algorithm that is described in the
Functional Description (Section E). Values of 2 and 3 are designed for use under high water table/low
land gradient conditions (HWTFG = 1). A value of 2 results in use of a simple power function method.
If a value of 3 is entered, the program uses a table in the FTABLES block to determine surface outflow as
a function of surface storage.
UZFG selects the method for computing inflow to the upper zone. If UZFG is 1, upper zone inflow is
computed in the same way as in the predecessor models HSPX, ARM and NPS. A value of 0 results in
the use of a different algorithm, which is less sensitive to changes in DELT (see Functional Description).
The flags beginning with "V" indicate whether or not certain parameters will be assumed to vary through
the year on a monthly basis: 1 means they do vary, 0 means they do not. The quantities which can vary
on a monthly basis are:
VCSFG
interception storage capacity
VUZFG
upper zone nominal storage
VNNFG
Manning's n for the overland flow plane
VIFWFG
interflow inflow parameter
VIRCFG
interflow recession constant
VLEFG
lower zone evapotranspiration (E-T) parameter
If any of these flags are on (1), monthly values for the associated parameter must be supplied in the
corresponding monthly table (see Table-types MON-, documented later in this section).
If IFFCFG is 1, then the effect of frozen ground on infiltration rate is computed from the amount of ice in
the snow pack (PACKI). CSNOFG must be turned on, and if section SNOW does not compute PACKI
(because ICEFG is off or the section is inactive) PACKI must be supplied as an input time series. If
IFFCFG is 2, then the infiltration adjustment factor is determined from the soil temperature in the lower
layer/groundwater layer, which is either computed in section PSTEMP or must be supplied as a time
series. (See Table-type PWAT-PARM5 for more details.)
If HWTFG is 1, then high water table and low land surface gradient conditions (i.e., wetlands) are
prevalent on the land segment, and different algorithms are used for some processes. See Water Budget
Pervious, High Water Table, Low Gradient in Functional Description for details. Note: use of monthly
values for UZSN is not recommended when using these optional methods.
If IRRGFG is greater than zero, then it selects the method used to determine demands in the irrigation
module. If IRRGFG is 1, then the input time series IRRDEM will be supplied in the EXT SOURCES
block. If IRRGFG is 2, then the demand is calculated based on allowable water depletion in the crop root
zone. If IRRGFG is 3, then irrigation occurs according to a schedule defined by the user in Table-type
IRRIG-SCHED.
343
-------
HSPF Version 12
PW AT-PARM2
Second group of PWATER parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-PARM2
<-range>< pwatparm2 >
(repeats until all operations of this type are covered)
END PWAT-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-PARM2
***
# _ # ***FOREST LZSN INFILT LSUR SLSUR KVARY AGWRC
1 7 0.2 8.0 0.7 400. .001 .98
END PWAT-PARM2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
FOREST
F10.0
o
o
o
o
1.0
none
Both
LZSN
F10.0
none
. 01
100 .
in
Engl
none
.25
2500.
mm
Metric
INFILT
F10.0
none
0.0001
100 .
in/hr
Engl
none
0.0025
2500.
mm/hr
Metric
LSUR
F10.0
none
1.0
none
ft
Engl
none
O
CO
none
m
Metric
SLSUR
F10.0
none
.000001
10.
none
Both
KVARY
F10.0
0.0
O
o
none
1/in
Engl
0.0
o
o
none
1/mm
Metric
AGWRC
F10.0
none
0.001
0 .999
1/day
Both
344
-------
Users Control Input
Explanation
FOREST is the fraction of the pervious land segment which is covered by forest, and which will therefore
continue to transpire in winter. This is only relevant if snow is being considered (i.e., CSNOFG = 1).
LZSN is the lower zone nominal storage.
INFILT is an index to the infiltration capacity of the soil.
LSUR is the length of the assumed overland flow plane.
SLSUR is the slope of the overland flow plane.
KVARY is a parameter which affects the behavior of groundwater recession flow, enabling it to be non-
exponential in its decay with time.
AGWRC is the basic groundwater recession rate if KVARY is zero and there is no inflow to
groundwater; AGWRC is defined as the rate of flow today divided by the rate of flow yesterday.
345
-------
HSPF Version 12
PW AT-PARM3
Third group of PWATER parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-PARM3
<-range><-
pwatparm3
(repeats until all operations of this type are covered)
END PWAT-PARM3
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-PARM3
***
# - #*** PETMAX
9 39
END PWAT-PARM3
PETMIN
33
INFEXP
3.0
INFILD
1.5
DEEPFR
BASETP
AGWETP
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
PETMAX
F10
0
40
none
none
degF
Engl
4 .
4
none
none
degC
Metric
PETMIN
F10
0
35
none
none
degF
Engl
1.
7
none
none
degC
Metric
INFEXP
F10
0
2 .
0
0
0
10
. 0
none
Both
INFILD
F10
0
2 .
0
1
0
2 .
0
none
Both
DEEPFR
F10
0
0 .
0
0
0
1.
0
none
Both
BASETP
F10
0
0 .
0
0
0
1.
0
none
Both
AGWETP
F10
0
0 .
0
0
0
1.
0
none
Both
346
-------
Users Control Input
Explanation
PETMAX is the air temperature below which E-T will arbitrarily be reduced below the value obtained
from the input time series, and PETMIN is the temperature below which E-T will be zero regardless of
the value in the input time series. These values are only used if snow is being considered (CSNOFG= 1).
INFEXP is the exponent in the infiltration equation, and INFILD is the ratio between the maximum and
mean infiltration capacities over the PLS.
DEEPFR is the fraction of groundwater inflow which will enter deep (inactive) groundwater, and, thus, be
lost from the system as it is defined in HSPF.
BASETP is the fraction of remaining potential E-T which can be satisfied from baseflow (groundwater
outflow), if enough is available.
AGWETP is the fraction of remaining potential E-T which can be satisfied from active groundwater
storage if enough is available.
347
-------
HSPF Version 12
PW AT-PARM4
Fourth group of PWATER parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-PARM4
<-range>< pwatparm4 >
(repeats until all operations of this type are covered)
END PWAT-PARM4
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-PARM4
***
# - # CEPSC UZSN NSUR INTFW IRC LZETP***
1 7 0.1 1.3 0.1 3. 0.5 0.7
END PWAT-PARM4
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CEPSC F10.0 0.0 0.0 10.0 in Engl
0.0 0.0 250. mm Metric
UZSN F10.0 none 0.01 10.0 in Engl
none 0.25 250. mm Metric
NSUR F10.0 0.1 0.001 1.0 complex Both
INTFW F10.0 none 0.0 none none Both
IRC F10.0 none 1.0E-30 0.999 1/day Both
LZETP F10.0 0.0 0.0 2.0 none Both
348
-------
Users Control Input
Explanation
Values in this table need only be supplied for those parameters which do not vary through the year. If
they do vary (as specified in Table-type PWAT-PARM1), monthly values are supplied in the tables
documented below (MON-xxx).
CEPSC is the interception storage capacity.
UZSN is the upper zone nominal storage.
NSUR is Manning's n for the overland flow plane.
INTFW is the interflow inflow parameter.
IRC is the interflow recession parameter. Under zero inflow, this is the ratio of today's interflow outflow
rate to yesterday's rate.
LZETP is the lower zone E-T parameter. It is an index to the density of deep-rooted vegetation.
349
-------
HSPF Version 12
PW AT-PARM5
Fifth group of PWATER parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-PARM5
<-range>< pwatparm5 >
(repeats until all operations of this type are covered)
END PWAT-PARM5
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-PARM3
***
# _ #*** FZG FZGL
9 0.9 0.1
END PWAT-PARM3
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
FZG
F10 ,
.0
1.0
0
.0001
none
/in
Engl
F10 ,
.0
0.0394
0
.0001
none
/mm
Metr
FZGL
F10 ,
.0
0.1
0
.0001
1.0
none
Both
Explanation
FZG is the parameter that adjusts for the effect of ice (in the snow pack) on infiltration when IFFCFG is
1. It is not used if IFFCFG is 2.
FZGL is the lower limit of INFFAC as adjusted by ice in the snow pack when IFFCFG is 1. If IFFCFG is
2, FZGL is the value of INFFAC when the lower layer temperature is at or below freezing.
350
-------
Users Control Input
PW AT-PARM6
Sixth group of PWATER parameters - (parameters related to high water table/low gradient conditions)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-PARM6
<-range>< pwatparm6 >
(repeats until all operations of this type are covered)
END PWAT-PARM6
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-PARM6
***
# - #*** MELEV
1 7 1225.
END PWAT-PARM6
BELV GWDATM
1205.0 1200.0
PCW
0.3
PGW
0.2
UPGW
0.4
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit system
MELEV
F10 ,
.0
O
o
o
o
30000
. 0
ft
Engl
o
o
o
o
10000
. 0
m
Metric
BELV
F10 ,
.0
none
none
none
ft
Engl
none
none
none
m
Metric
GWDATM
F10 ,
.0
none
none
none
ft
Engl
none
none
none
m
Metric
PCW
F10 ,
.0
none
0.01
0 .
999
none
Both
PGW
F10 ,
.0
none
0.01
0 .
999
none
Both
UPGW
F10 ,
.0
none
0.01
0 .
999
none
Both
351
-------
HSPF Version 12
Explanation
MELEV is the mean surface elevation of the land segment. If the SNOW module section is active, this
value is ignored and the program uses the value for MELEV given in Table-type SNOW-PARM1.
BELV is the base elevation for active groundwater. It corresponds to the bottom elevation of nearby
channels; therefore, if the groundwater elevation is above BELV, there is outflow into the channels.
Groundwater below BELV is considered inactive.
GWDATM is the datum for the groundwater elevation GWEL. Storage below this elevation is
considered lost from the system.
PCW is the cohesion water porosity. It is the soil pore space in micropores.
PGW is the gravitational water porosity. It is the soil pore space in macropores in the lower and
groundwater layers of the soil column.
UPGW is the upper gravitational water porosity. It is the pore space in macropores in the upper layers of
the soil column.
352
-------
Users Control Input
PW AT-PARM7
Seventh group of PWATER parameters - (parameters related to high water table/low gradient conditions)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-PARM7
<-range>< pwatparm7 >
(repeats until all operations of this type are covered)
END PWAT-PARM7
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-PARM7
***
# - #*** STABNO SRRC SREXP IFWSC DELTA UELFAC LELFAC
1 7 0.9 1.00 4.8 0.20
END PWAT-PARM7
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
STABNO
110
0
0
999
none
Both
SRRC
F10.0
none
1.0E-10
0 .999
/hr
Both
SREXP
F10.0
1.0
0.0
none
none
Both
IFWSC
F10.0
none
0.01
30.0
in
Engl
none
0.25
750 .
mm
Metric
DELTA
F10.0
0.001
1.0E-6
0.2
in
Engl
0.025
2.5E-5
5.0
mm
Metric
UELFAC
F10.0
4.0
3.0
5.0
none
Both
LELFAC
F10.0
2.5
2.0
3.0
none
Both
353
-------
HSPF Version 12
Explanation
STABNO is the ID number for the FTABLE in the FTABLES block which contains the outflow
properties from the surface storage. This value is used only if RTOPFG = 3 in Table-type PWAT-
PARM1.
SRRC is the surface runoff recession constant. It is used to calculate surface runoff as a function of
surface storage only. This value is used only if RTOPFG = 2 in Table-type PWAT-PARM1.
SREXP is the surface runoff exponent. This value is used only if RTOPFG = 2 in Table-type PWAT-
PARM1.
IFWSC is the maximum interflow storage capacity when the groundwater elevation is greater than the
upper influence elevation (UELV).
DELTA is the groundwater tolerance level used to determine transition between regions when high water
table conditions are being simulated (HWTFG = 1). It is used to smooth out jumps in groundwater
elevation due to changes in "soil region."
UELFAC is the multiplier on UZSN which is used to compute the upper zone capacity. The default value
(4.0) should generally be used.
LELFAC is the multiplier on LZSN which is used to compute the lower zone capacity. The default value
(2.5) should generally be used.
354
-------
Users Control Input
MON-INTERCEP
Monthly interception storage capacity
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-INTERCEP
<-range>< mon-icep >
(repeats until all operations of this type are covered)
END MON-INTERCEP
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-INTERCEP
Interception storage capacity at start of each month ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 .02 .03 .03 .04 .05 .08 .12 .15 .12 .05 .03 .01
END MON-INTERCEP
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CEPSCM(12) 12F5.0 0.0 0.0 10. in Engl
0.0 0.0 250. mm Metric
Explanation
Monthly values of interception storage. Only required if VCSFG is 1 in Table-type PWAT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
355
-------
HSPF Version 12
MON-UZSN
Monthly upper zone nominal storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-UZSN
<-range>< mon-uzsn >
(repeats until all operations of this type are covered)
END MON-UZSN
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-UZSN
Upper zone storage at start of each month ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 7 .30 .35 .30 .45 .56 .57 .45 .67 .64 .54 .56 .40
END MON-UZSN
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
UZSNM(12) 12F5.0 none .01 10. in Engl
none .25 250. mm Metric
Explanation
Monthly values of upper zone nominal storage. This table is only required if VUZFG is 1 in Table-type
PWAT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
356
-------
Users Control Input
MON-MANNING
Monthly Manning's n values
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-MANNING
<-range>< mon-Manning >
(repeats until all operations of this type are covered)
END MON-MANNING
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-MANNING
Manning's
# - # JAN FEB
1 7 .23 .34
END MON-MANNING
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit system
NSURM(12)
12F5.0
. 10
. 001
1.0
complex
Both
Explanation
Monthly values of Manning's constant for overland flow. This table is only required if VNNFG is 1 in
Table-type PWAT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
n at start of each month ***
MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
.34 .35 .28 .35 .37 .35 .28 .29 .30 .30
357
-------
HSPF Version 12
MON-INTERFLW
monthly interflow inflow parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-INTERFLW
<-range>< ion- inter f lw >
(repeats until all operations of this type are covered)
END MON-INTERFLW
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-INTERFLW
Interflow
# - # JAN FEB
1 7 2.0 3.3
END MON-INTERFLW
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
INTFWM(12)
12F5.0
none
o
o
none
none
Both
Explanation
Monthly values of the interflow inflow parameter. This table is only required if VIFWFG is 1 in Table-
type PWAT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
inflow parameter for start of each month ***
MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
3.6 3.8 4.2 5.6 5.6 7.6 7.5 5.6 4.6 3.4
358
-------
Users Control Input
MON-IRC
Monthly interflow recession constants
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-IRC
<-range>< mon-irc >
(repeats until all operations of this type are covered)
END MON-IRC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-IRC
Interflow recession constant at start of each month ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 .35 .40 .40 .40 .40 .43 .45 .45 .50 .45 .45 .40
END MON-IRC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IRCM(12) 12F5.0 none 1.0E-30 0.999 /day Both
Explanation
Monthly values of the interflow recession parameter. This table is only required if VIRCFG is 1 in Table-
type PWAT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
359
-------
HSPF Version 12
MON-LZETPARM
Monthly lower zone E-T parameter
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-LZETPARM
<-range>< mon-lzetparm >
(repeats until all operations of this type are covered)
END MON-LZETPARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-LZETPARM
Lower zone evapotranspiration parm at start of each month ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 .30 .30 .35 .35 .40 .40 .45 .45 .45 .45 .42 .38
END MON-LZETPARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
LZETPM(12) 12F5.0 0.0 0.0 2.0 none Both
Explanation
Monthly values of the lower zone ET parameter. This table is only required if VLEFG is 1 in Table-type
PWAT -PARM 1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
360
-------
Users Control Input
PWAT-STATE1
PWATER initial state variables
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWAT-STATE1
<-range>< pwat-statel >
(repeats until all operations of this type are covered)
END PWAT-STATE1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWAT-STATE1
PWATER state
# - #*** CEPS
1 7 0.05
END PWAT-STATE1
variables***
SURS UZS IFWS
0.10 0.25 0.01
LZS AGWS GWVS
8.2 2.0 .025
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name
Format
Def
Min
Max
Units
Unit syst
CEPS
7F10.0
o
o
o
o
100
inches
Engl
o
o
o
o
2500
mm
Metric
SURS
o
o
o
o
100
inches
Engl
o
o
o
o
2500
mm
Metric
UZS
. 001
. 001
100
inches
Engl
. 025
. 025
2500
mm
Metric
IFWS
o
o
o
o
100
inches
Engl
o
o
o
o
2500
mm
Metric
LZS
. 001
. 001
100
inches
Engl
. 025
. 025
2500
mm
Metric
AGWS
o
O
o
O
100
inches
Engl
O
O
O
O
2500
mm
Metric
GWVS
O
O
O
O
100
inches
Engl
O
O
O
O
2500
mm
Metric
361
-------
HSPF Version 12
Explanation
This table is used to specify the initial water storages in the soil.
CEPS is the initial interception storage.
SURS is the initial surface (overland flow) storage.
UZS is the initial upper zone storage.
IFWS is the initial interflow storage.
LZS is the initial lower zone storage.
AGWS is the initial active groundwater storage. If high water table/low gradient conditions are being
simulated (HWTFG = 1 in table PWAT-PARM1), then AGWS is the storage above the base elevation for
active groundwater (BELV). The total groundwater storage (TGWS) is given by (AGWS + BGWS).
Under this option, a negative value of AGWS will be interpreted as a groundwater level below the base
elevation; however, if TGWS is negative, an error condition occurs.
GWVS is the initial index to groundwater slope; it is a measure of antecedent active groundwater inflow.
362
-------
Users Control Input
IRRIG-PARM1
First group of irrigation parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67 8
•A-***************************
Layout
¦k -k -k -k -k -k
IRRIG-PARMl
<-range>< irrparml >
(repeats until all operations of this type are covered)
END IRRIG-PARMl
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IRRIG-PARMl
x - x NSKD SZON
102 1
103 3
END IRRIG-PARMl
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
NSKED
15
0
0
20
SZONFG
15
0
0
1
VCRDFG
15
0
0
2
VAWDFG
15
0
0
2
IROPFG
15
0
0
1
(flags)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
¦k -k -k
VCRD VAWD IROP ***
2 2 0
363
-------
HSPF Version 12
Explanation
NSKED specifies the number of scheduled applications. It is required when IRRGFG=3 in Table-type
PWAT-PARM1. The applications are scheduled in Table-type IRRIG-SCHED.
The remaining flags apply only when IRRGFG=2 in Table-type PWAT-PARM1.
If SZONFG is zero, then field capacity and wilting point are the same for all zones, and are input in
Table-type IRRIG-PARM2. If SZONFG is 1, then they are different for each soil zone, requiring input of
Table-types SOIL-DATA2 and SOIL-DATA3.
VCRDFG is used to specify how crop root depth is input/varies: 0 = constant, input in Table-type IRRIG-
PARM2; 1 = monthly varying, requiring input of Table-type MON-IRR-CRDP; 2 = varying by stage of
growing season, requiring input of Table-types CROP-STAGES and CROP-SEASPM.
VAWDFG is used to specify how the allowable water depletion is input/varies: 0 = constant, input in
Table-type IRRIG-PARM2; 1 = monthly varying, requiring input of Table-type MON-IRR-AWD; 2 =
varying by stage of growing season, requiring input of Table-types CROP-STAGES and CROP-
SEASPM.
IROPFG is used to specify the irrigation method: 1 = normal method; or 2 = subirrigation (seepage)
method. The latter requires that HWTFG=1 in Table-type PWAT-PARM1.
364
-------
Users Control Input
IRRIG-PARM2
Second group of irrigation parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IRRIG-PARM2
<-range>< irrparm2 >
(repeats until all operations of this type are covered)
END IRRIG-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IRRIG-PARM2
*** IRAREA IREFF ARZI WILTP FLDCAP CRDEP IRAWD CAPRIS
*** x - x (acres) (in/in) (in/in) (in) (in)
102 1563.5 0.7 0.5 0.01 0.4 36.0 0.6 6.0
END IRRIG-PARM2
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IRAREA
^1
CO
o
0
0
0
0
none
ac
Engl
0
0
0
0
none
ha
Metric
IREFF
^1
CO
o
1
0
0
0
1.0
none
Both
ARZI
^1
CO
o
1
0
0
0
1.0
none
Both
WILTP
^1
CO
o
0
0
0
0
1.0
in/in
Engl
0
0
0
0
1.0
mm/mm
Metric
FLDCAP
^1
CO
o
0
0
0
0
1.0
in/in
Engl
0
0
0
0
1.0
mm/mm
Metric
CRDEP
^1
CO
o
0
0
0
0
none
in
Engl
0
0
0
0
none
cm
Metric
IRAWD
^1
CO
o
0
0
0
0
1.0
none
Both
CAPRIS
^1
CO
o
6
0
0
0
none
in
Engl
15
25
0
0
none
cm
Metr
365
-------
HSPF Version 12
Explanation
IRAREA is the area being covered by the depth of irrigation application. It should be equal to the total
area of the PERLND, so that hydrologic response is uniform. This parameter is used only when
withdrawals are made from a RCHRES, i.e., RPRIOR > 0 in Table-type IRRIG-SOURCE.
The remainder of the table is needed only when IRRGFG=2.
IREFF is the irrigation method efficiency. It is used to calculate gross irrigation demand from net
irrigation demand.
ARZI is the areal fraction of the root zone that is irrigated.
WILTP and FLDCAP are the the wilting point and field capacity of the soil for all layers when SZONFG
= 0 in Table-type IRRIG-PARM1.
CRDEP is the irrigated crop root depth when VAWDFG = 0 in Table-type IRRIG-PARM1.
IRAWD is the allowable water depletion when VCRDFG = 0 in Table-type IRRIG-PARM1.
CAPRIS is the maximum capillary rise when IROPFG = 1 in Table-type IRRIG-PARM1.
366
-------
Users Control Input
CROP-DATES
Planting and harvesting dates
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
CROP-DATES
<-range>
(repeats until all operations of this type are covered)
END CROP-DATES
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
CROP-DATES
CROP 1 CROP 2 CROP 3 ***
# - # NCRP PM PD HM HD PM PD HM HD PM PD HM HD ***
1 2 4 15 8 20 9 5 9 29
END CROP-DATES
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
NCRP 15 113
CRPDAT (*) 213 1 1 12
1 1 31
Explanation
NCRP is the number of crops per year.
CRPDAT is the month and day of planting and harvesting for each crop. Crop seasons cannot overlap,
but a season may extend beyond the end of the calendar year.
Cropping dates are required in two cases: 1) the PWATER irrigation module when IRRGFG=2 in Table-
type PWAT-PARM1, and VCRDFG and/or VAWDFG = 2 in Table-type IRRIG-PARM1; 2) the yield-
based method of plant uptake is being used (NUPTFG = 1 in Table-type NIT-FLAGS and/or PUPTFG =
1 in Table-type PHOS-FLAGS).
This table should only be entered once for the PWATER, NITR, and PHOS sections.
367
-------
HSPF Version 12
CROP-STAGES
7 8
901234567890
•A-***********
CROP-STAGES
<-range>< crpstage >
(repeats until all operations of this type are covered)
END CROP-STAGES
¦k -k -k -k -k -k -k
Example
Crop growth stages
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2 3 4 5 6
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
CROP-STAGES
***
x - x CRPST1 CRPST2 CRPST3 CRPST4 ***
102 0.20 0.30 0.35 0.15
END CROP-STAGES
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CRPSTG(4,*) 4F10.0 0.0 0.0 1.0 none Both
Explanation
The crop seasons established in Table-type CROP-DATES are divided into four growth stages. CRPSTG
is the array of fractions of the length of each crop season which makes up each of the four stages.
This table is required only when IRRGFG = 2 in Table-type PWAT-PARM1, and VCRDFG and/or
VAWDFG = 2 in Table-type IRRIG-PARM1. The table must be repeated NCRP times.
368
-------
Users Control Input
CROP-SEASPM
Crop growth stage parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
CROP-SEASPM
<-range>< crpseaspm >
(repeats until all operations of this type are covered)
END CROP-SEASPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
CROP-SEASPM
CRAWD1 CRAWD2 CRAWD3 CRAWD4 CRRDPI CRRDPF
x - x (in) (in)
102 0.60 0.60 0.60 0.90 8.0 12.0
END CROP-SEASPM
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CRPAWD(4) 4F10.0
CRPRDP(2) 2F10.0
0.0 0.0 1.0 none Both
0.0 0.0 none in Engl
0.0 0.0 none cm Metric
Explanation
CRPAWD(4) is the allowable water depletion for each of the four stages for an annual crop. It is
assumed to be constant throughout each stage.
CRPRDP(2) is the initial and final crop root depth for irrigation. The depth of irrigation is assumed to be
equal to the initial depth during stage 1, rising linearly during stage 2 to remain at the final level
throughout stages 3 and 4.
This table is required only when IRRGFG = 2 in Table-type PWAT-PARM1, and VCRDFG and/or
VAWDFG = 2 in Table-type IRRIG-PARM1. The table is repeated NCRP times.
369
-------
HSPF Version 12
SOIL-DATA
Soil layer depths and bulk densities
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SOIL-DATA
<-range>< depths >< bulkdens >
(repeats until all operations of this type are covered)
END SOIL-DATA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SOIL-DATA
| Depths
# - #|Surface Upper
1 7 .12 6.0
END SOIL-DATA
(ins) | Bulk
Lower GroundwlSurface
40.0 80. 80.
density (lb/ft3) |***
Upper Lower Groundwl***
120 .
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Min
Max
Units Unit syst
4F8.0 none
none
4F8.0 103
1. 65
.001 1000
.0025 2500
50 150
0.80 2.40
in Engl
cm Metric
lb/ft3 Engl
g/cm3 Metric
Explanation
The first four values are the depths (thicknesses) of the surface, upper, lower and groundwater layers,
respectively; the second group of four values are the corresponding bulk densities of the soil in those
layers. The soil depths are used in the PWATER irrigation algorithm if IRRGFG=2 in Table-type
PWAT-PARM2, and all values are used in the PEST, NITR, and PHOS sections. In the latter case, the
depth and bulk density are multiplied together by the program to obtain the mass of soil in each layer in
order to compute the concentrations of adsorbed chemicals.
370
-------
Users Control Input
SOIL-DATA2
Wilting points for each soil layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SOIL-DATA2
<-range>< wiltpt >
(repeats until all operations of this type are covered)
END SOIL-DATA2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SOIL-DATA2
Wilting points for each soil layer ***
# - # SURFACE UPPER LOWER ACT GW ***
1 7 .02 .01 .01 .015
END SOIL-DATA2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
WILTPT(4) 4F10.0 0.0 0.0 1.0 none Both
Explanation
The wilting point is used to determine when the soil is too dry for plant uptake of water or nutrients to
occur. WILTPT is input as a fraction (volume basis).
It is required in two cases: 1) the PWATER irrigation module when IRRGFG=2 in Table-type PWAT-
PARM1, and SZONFG = 1 in Table-type IRRIG-PARM1; 2) the yield-based method of plant uptake is
being used (NUPTFG = 1 in Table-type NIT-FLAGS and/or PUPTFG = 1 in Table-type PHOS-FLAGS)
This table should only be entered once for the PWATER, NITR, and PHOS sections.
371
-------
HSPF Version 12
SOIL-DATA3
Field capacity for each soil layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SOIL-DATA3
<-range>< fdcap >
(repeats until all operations of this type are covered)
END SOIL-DATA3
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SOIL-DATA3
SFDCAP UFDCAP LFDCAP AFDCAP ***
x - x (in/in) (in/in) (in/in) (in/in) ***
102 0.40 0.40 0.40 0.40
END SOIL-DATA3
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
FDCAP(4) 4F10.0 0.0 0.0 1.0 none Both
Explanation
The field capacity is the maximum amount of water that the soil can hold after gravity drainage. It is input
as a fraction (volume basis).
FDCAP is required when IRRGFG=2 in Table-type PWAT-PARM1 and SZONFG=l in Table-type
IRRIG-PARM1.
372
-------
Users Control Input
MON-IRR-CRDP
Monthly crop root depth
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-IRR-CRDP
<-range>< mon-crdep >
(repeats until all operations of this type are covered)
END MON-IRR-CRDP
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-IRR-CRDP
Monthly crop root depth for irrigation (in) ***
x - x JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
103 0. 0. 8. 10. 12. 12. 12. 12. 12. 0. 0. 0.
END MON-IRR-CRDP
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CRDEPM(12) 12F5.0 0.0 0.0 none in Engl
0.0 0.0 none cm Metric
Explanation
Monthly values of the crop root depth for irrigation. This table is only required if VCRDFG=1 in Table-
type IRRIG-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
373
-------
HSPF Version 12
MON-IRR-AWD
Monthly allowable water depletion
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-IRR-AWD
<-range>< mon-awd >
(repeats until all operations of this type are covered)
END MON-IRR-AWD
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-IRR-AWD
Monthly allowable water depletion as fraction of AWC ***
x - x JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
103 0. 0. .40 .45 .50 .50 .65 .65 .40 0. 0. 0.
END MON-IRR-AWD
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IRAWDM(12) 12F5.0 0.0 0.0 none none Both
Explanation
Monthly values of the allowable water depletion for irrigation. This table is only required if
VAWDFG=1 in Table-type IRRIG-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
374
-------
Users Control Input
IRRIG-SCHED
Scheduled irrigation applications
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
IRRIG-SCHED
yr mo dy hr mn dur rate yr mo dy hr mn dur rate
<-range> <—> <> <> <> <>< >< > <—> <> <> <> <>< >< >
(repeats until all operations of this type are covered)
END IRRIG-SCHED
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IRRIG-SCHED
<
Application—
< date > IRDU
x - x yyyy mm dd hh mm min
101 1989/ 6/15 4:00 240
101 1989/ 6/29 4:00 300
END IRRIG-SCHED
-> *** < Application >
< date > IRDU IRRATE
yyyy mm dd hh mm min in/hr
1989/ 6/22 4:00 120 0.2
IRRATE ***
in/hr ***
0.3
0.3
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IRDATEi
15,*)
14
0
0
none
none
Both
12
1
0
12
none
Both
12
1
0
31
none
Both
12
0
0
24
none
Both
12
0
0
60
none
Both
IRDURAi
I*)
15
0
0
none
min
Both
IRRATEi
I*)
F10.0
0 .
.0
0 .
.0
none
in/hr
Engl
0 .
.0
0 .
.0
none
mm/hr
Metric
Explanation
The entries for each PERLND are repeated NSKED times, two to a line. The maximum value of NSKED
is 20.
IRDATE(5,*) is the start date for each irrigation event. If the year is blank or zero, the application occurs
annually, but in that case, the duration may not extend across a calendar year boundary.
IRDURA(*) is the duration of application in minutes.
IRRATE(*) is the rate of water application in depth/hour.
This table is required only if IRRGFG = 3 in Table-type IRRIG-PARM1.
375
-------
HSPF Version 12
IRRIG-SOURCE
Source priorities for irrigation withdrawals
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IRRIG-SOURCE
<-range>< irrsrc >
(repeats until all operations of this type are covered)
END IRRIG-SOURCE
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IRRIG-SOURCE
*** < External >< Groundwater >< RCHRES >
*** x - x XPRIOR XFRAC GPRIOR GFRAC RPRIOR RFRAC IRCHNO
101 102 2 1 0.3 1 0.7 100
103 0 2 1 100
END IRRIG-SOURCE
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Mm
Max
Units Unit syst
XPRIOR
XFRAC
GPRIOR
GFRAC
RPRIOR
RFRAC
IRCHNO
110
F10.0
110
F10.0
110
F10.0
110
0
1.0
0
1.0
0
1.0
0
0
0.0
0
0.0
0
0.0
0
3
1.0
3
1.0
3
1.0
999
none
none
none
none
none
none
none
Both
Both
Both
Both
Both
Both
Both
Explanation
Irrigation withdrawals may come from any or all of three sources: external sources, active groundwater,
and RCHRES. Each source is assigned a priority, 1 being the highest, and 3 the lowest. A zero priority
means that the source is unused for this PERLND. Two sources, or even all three, may have the same
priority, in which case fractions specify how much of the irrigation demand to take from each source.
XPRIOR, GPRIOR, and RPRIOR are the priorities associated with each source, respectively. XFRAC,
GFRAC, and RFRAC are the corresponding fractions.
IRCHNO is the ID number of the source RCHRES in the OPN SEQUENCE block.
376
-------
Users Control Input
IRRIG-TARGET
Target fractions for irrigation applications
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IRRIG-TARGET
<-range>< irrtgt >
(repeats until all operations of this type are covered)
END IRRIG-TARGET
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IRRIG-TARGET
Irrigation Application Target Fractions ***
x - x Intercep Surface Upper Lower Active GW ***
101 102 0.4 0.6 0 0 0
103 0 0 0 0 1.0
END IRRIG-TARGET
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IRRTGT(5) 5F10.0 0.0 0.0 1.0 none Both
Explanation
IRRTGT(5) is the fraction of the gross irrigation application that is applied to each of five possible
targets: 1) interception storage; 2) soil surface; 3) upper soil zone; 4) lower soil zone; 5) active
groundwater storage.
377
-------
HSPF Version 12
SEDMNT input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type SED-PARM1] Tables in brackets [] are
Table-type SED-PARM2 not always required.
Table-type SED-PARM3
[Table-type MON-COVER]
[Table-type MON-NVSI]
[Table-type SED-STOR]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
378
-------
Users Control Input
SED-PARM1
First group of SEDMNT parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SED-PARM1
<-range><—sed-parml-->
(repeats until all operations of this type are covered)
END SED-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SED-PARM1
***
# - # CRV VSIV SDOP***
17 0 10
END SED-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
CRVFG
315
0
0
1
VSIVFG
0
0
2
SDOPFG
0
0
1
Explanation
If CRVFG is 1, erosion-related cover may vary throughout the year. Values are supplied in Table-type
MON-COVER.
If VSIVFG is 1, the rate of net vertical sediment input may vary throughout the year. If VSIVFG is 2, the
vertical sediment input is added to the detached sediment storage only on days when no rainfall occurred
during the previous day. Values are supplied in Table-type MON-NVSI.
SDOPFG is a flag that determines the algorithm used to simulate removal of sediment from the land
surface. If SDOPFG is 1, sediment removal will be simulated with the algorithm used in the predecessor
models ARM and NPS. If it is 0, a different algorithm will be used (see the Functional Description for
details).
379
-------
HSPF Version 12
SED-PARM2
Second group of SEDMNT parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SED-PARM2
<-range>< sed-parm2 >
(repeats until all operations of this type are covered)
END SED-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SED-PARM2
***
# - # SMPF KRER JRER AFFIX COVER NVSI***
1 7 0.9 0.08 1.90 0.01 0.5 -0.100
END SED-PARM2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units Unit syst
SMPF
6F10.0
1.0
0.001
1.0
none
Both
KRER
o
o
o
o
none
complex
Both
JRER
none
none
none
complex
Both
AFFIX
0.0
0.0
1.0
/day
Both
COVER
0.0
0.0
1.0
none
Both
NVSI
0.0
none
none
lb/ac/day
Engl
0.0
none
none
kg/ha/day
Metric
380
-------
Users Control Input
Explanation
SMPF is a "supporting management practice factor." It is used to simulate the reduction in erosion
achieved by use of erosion control practices.
KRER is the coefficient in the soil detachment equation.
JRER is the exponent in the soil detachment equation.
AFFIX is the fraction by which detached sediment storage decreases each day as a result of soil
compaction.
COVER is the fraction of land surface which is shielded from rainfall erosion (not considering snow
cover, which is handled by the program).
NVSI is the rate at which sediment enters detached storage from the atmosphere. A negative value can be
supplied, for example, to simulate removal by human activity or wind.
If monthly values for COVER and NVSI are being supplied, values supplied for these variables in this
table are not relevant.
381
-------
HSPF Version 12
SED-PARM3
Third group of SEDMNT parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SED-PARM3
<-range>< sed-parm3 >
(repeats until all operations of this type are covered)
END SED-PARM3
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SED-PARM3
***
# - # KSER JSER KGER JGER***
1 7 0.08 1.7 0.06 1.4
END SED-PARM3
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KSER
JSER
KGER
JGER
4F10.0 0.0 0.0 none complex Both
none none none complex Both
0.0 0.0 none complex Both
none none none complex Both
Explanation
KSER and JSER are the coefficient and exponent in the detached sediment washoff equation.
KGER and JGER are the coefficient and exponent in the matrix soil scour equation, which simulates
gully erosion.
382
-------
Users Control Input
MON-COVER
Monthly erosion-related cover values
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-COVER
<-range>< mon-cover >
(repeats until all operations of this type are covered)
END MON-COVER
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-COVER
# - #
1 7
END MON-COVER
Monthly values for erosion related cover
JAN
0.0
FEB
.12
MAR
. 12
APR
.24
MAY
.24
JUN
.56
JUL
. 67
AUG
.56
SEP
. 34
OCT
.34
NOV
.23
DEC***
.12
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
COVERM(12) 12F5.0 0.0 0.0 1.0 none Both
Explanation
Monthly values of the COVER parameter. This table is only required if CRVFG is 1 in Table-type SED-
PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
383
-------
HSPF Version 12
MON-NVSI
Monthly net vertical sediment input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NVSI
<-range>< mon-nvsi >
(repeats until all operations of this type are covered)
END MON-NVSI
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NVSI
Monthly net vertical sediment input***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 -.01 -.02 -.03 -.04 -.05 -.03 -.02 -.01 0.0 .01 .03 .01
END MON-NVSI
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
NVSIM(12)
12F5.0
o
o
none
none
lb/ac,
.d
Engl
o
o
none
none
kg/ha,
.d
Metric
Explanation
Monthly values of the net vertical sediment input. This table is only required if VSIVFG is greater than 0
in Table-type SED-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
384
-------
Users Control Input
SED-STOR
Initial storage of detached sediment
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SED-STOR
<-range>< >
(repeats until all operations of this type are covered)
END SED-STOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SED-STOR
Detached sediment storage (tons/acre) ***
# - # ***
1 7 0.2
END SED-STOR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
DETS F10.0 0.0 0.0 none tons/ac Engl
0.0 0.0 none tonnes/ha Metric
Explanation
DETS is the initial storage of detached sediment.
385
-------
HSPF Version 12
PSTEMP input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type PSTEMP-PARM1]
Table-type PSTEMP-PARM2 Tables in brackets [] are
[Table-type MON-ASLT] not always required
[Table-type MON-BSLT]
[Table-type MON-ULTP1]
[Table-type MON-ULTP2]
[Table-type MON-LGTP1 ]
[Table-type MON-LGTP2]
[Table-type PSTEMP-TEMPS]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
386
-------
Users Control Input
PSTEMP-PARM1
Flags for section PSTEMP
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PSTEMP-PARM1
<-range>< pstemp-parml >
(repeats until all operations of this type are covered)
END PSTEMP-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PSTEMP-PARM1
Flags for section PSTEMP***
# - # SLTV ULTV LGTV TSOP***
1 7 0 0 0 1
END PSTEMP-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
SLTVFG 415 0 0 1
ULTVFG 0 0 1
LGTVFG 0 0 1
TSOPFG 0 0 2
Explanation
If SLTVFG is 1, parameters for estimating surface layer temperature can vary throughout the year. Thus,
Table-types MON-ASLT and MON-BSLT will be expected.
ULTVFG serves the same purpose for upper layer temperature calculations. Tables MON-ULTP1 and
MON-ULTP2 will be expected if ULTVFG is 1. LGTVFG serves the same purpose for the lower layer
and active groundwater layer temperature calculations. Table-types MON-LGTP1 and MON-LGTP2 will
be expected if LGTVFG is 1.
TSOPFG governs the methods used to estimate subsurface soil temperatures. If TSOPFG is 0, they are
computed using a mean departure from air temperature, together with smoothing factors. If TSOPFG is
2, the method is identical, except that the lower layer/groundwater layer temperature is calculated from
the upper layer soil temperature, instead of directly from the air temperature. If TSOPFG is 1, upper layer
soil temperature is estimated by regression on air temperature (like surface temperature). The lower
layer/groundwater layer temperature is supplied directly by the user (a different value may be specified
for each month).
387
-------
HSPF Version 12
P STEMP-P ARM2
Second group of PSTEMP parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PSTEMP-PARM2
<-range>< pstemp-parm2 >
(repeats until all operations of this type are covered)
END PSTEMP-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PSTEMP-PARM2
***
# - # ASLT BSLT ULTP1 ULTP2 LGTP1 LGTP2***
1 7 24. .5 24. .5 40. 0.0
END PSTEMP-PARM2
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ASLT
6F10.0 32.
o
o
100 .
deg
F
Engl
0 .
-18 .
38 .
deg
C
Metric
BSLT
1.0
0.001
2.0
deg
F/F
Engl
1.0
0.001
2.0
deg
C/C
Metric
Definition of the remaining quantities depends on soil temperature option flag
(TSOPFG in Table-type PSTEMP-PARM1)
TSOPFG = 0 or 2:
ULTP1
none
none
none
none
Both
ULTP2
none
none
none
F deg
Engl
none
none
none
C deg
Metric
LGTP1
none
none
none
none
Both
LGTP2
none
none
none
F deg
Engl
none
none
none
C deg
Metric
ULTP1
none
none
none
Deg
F
Engl
none
none
none
Deg
C
Metric
ULTP2
none
none
none
Deg
F/F
Engl
none
none
none
Deg
C/C
Metric
LGTP1
none
none
none
Deg
F
Engl
none
none
none
Deg
C
Metric
LGTP2
not used
388
-------
Users Control Input
Explanation
ASLT is the surface layer temperature when the air temperature is 32 degrees F (0 degrees C). It is the
intercept of the surface layer temperature regression equation.
BSLT is the slope of the surface layer temperature regression equation.
If TSOPFG = 0, then:
ULTP1 is the smoothing factor in the upper layer temperature calculation.
ULTP2 is the mean difference between upper layer soil temperature and air temperature.
LGTP1 and LGTP2 are the smoothing factor and mean departure from air temperature for calculating
lower layer/groundwater soil temperature.
If TSOPFG = 1 then:
ULTP1 and ULTP2 are the intercept and slope in the upper layer soil temperature regression equation
(like ASLT and BSLT for the surface layer).
LGTP1 is the lower layer/groundwater layer soil temperature.
LGTP2 is not used.
If TSOPFG = 2 then:
ULTP1 is the smoothing factor in the upper layer temperature calculation.
ULTP2 is the mean difference between upper layer soil temperature and air temperature.
LGTP1 and LGTP2 are the smoothing factor and mean departure from the upper layer soil temperature
for calculating lower layer/groundwater soil temperature.
If monthly values are being supplied for any of these quantities (in Table-type MON-xxx), the value
appearing in this table is not relevant.
389
-------
HSPF Version 12
MON-ASLT
Monthly values for ASLT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-ASLT
<-range>< mon-aslt >
(repeats until all operations of this type are covered)
END MON-ASLT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-ASLT
Value of
# - # JAN FEB
1 7 37. 38.
END MON-ASLT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ASLTM(12)
12F5.0
32 .
0 .
100 .
deg F
Engl
0 .
-18 .
38 .
deg C
Metric
Explanation
This table is only required if SLTVFG is 1 in Table-type PSTEMP-PARM1.
The input monthly values apply to the first day of the month; values for intermediate days are obtained by
interpolating between successive monthly values.
ASLT at start of each month (deg f)***
MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
39. 40. 41. 42. 43. 44. 45. 44. 41. 40.
390
-------
Users Control Input
MON-BSLT
Monthly values for BSLT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-BSLT
<-range>< mon-bslt >
(repeats until all operations of this type are covered)
END MON-BSLT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-BSLT
Value of BSLT at start of each month (deg F/F)***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 1.3.3 .3 .4 .4 .5 .5 .5 .4 .4 .4 .3
END MON-BSLT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
BSLTM(12) 12F5.0 1.0 0.001 2.0 deg F/F Engl
1.0 0.001 2.0 deg C/C Metric
Explanation
This table is only required if SLTVFG is 1 in Table-type PSTEMP-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
391
-------
HSPF Version 12
MON-ULTP1
Monthly values for ULTP1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-ULTP1
<-range>< mon-ultpl >
(repeats until all operations of this type are covered)
END MON-ULTP1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-ULTP1
# - #
1 7
END MON-ULTP1
Value of ULTP1 at start of each month i
JAN FEB MAR APR MAY JUN JUL AUG
40. 42.
37. 38. 39.
44. 47. 44.
TSOPFG=l)
SEP OCT
42. 39.
NOV
39.
¦k -k -k
DEC***
39 .
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ULTP1M(12) 12F5.0 see notes for Table-type PSTEMP-PARM2
Explanation
This table is only required if ULTVFG is 1 in Table-type PSTEMP-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
392
-------
Users Control Input
MON-ULTP2
Monthly values for ULTP2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-ULTP2
<-range>< mon-ultp2 >
(repeats until all operations of this type are covered)
END MON-ULTP2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-ULTP2
Value of ULTP2 at start of each month (TSOPFG=l) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 1.3.3 .4 .5 .5 .5 .6 .6 .5 .4 .4 .3
END MON-ULTP2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ULTP2M(12) 12F5.0 see notes for Table-type PSTEMP-PARM2
Explanation
This table is only required if ULTVFG is 1 in Table-type PSTEMP-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
393
-------
HSPF Version 12
MON-LGTP1
Monthly values for LGTP1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-LGTP1
<-range>< mon-lgtpl >
(repeats until all operations of this type are covered)
END MON-LGTP1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-LGTP1
# - #
1 7
END MON-LGTP1
Value of LGTP1 at start of each month i
JAN FEB MAR APR MAY JUN JUL AUG
43. 51.
35. 38. 41.
45. 46. 45.
TSOPFG=l)
SEP OCT
39. 37.
NOV
35.
¦k -k -k
DEC***
35 .
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
LGTP1M(12) 12F5.0 see notes for Table-type PSTEMP-PARM2
Explanation
This table is only required if LGTVFG is 1 in Table-type PSTEMP-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
394
-------
Users Control Input
MON-LGTP2
Monthly values for LGTP2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-LGTP2
<-range>< mon-lgtp2 >
(repeats until all operations of this type are covered)
END MON-LGTP2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-LGTP2
Value for LGTP2 at start of each month (F deg) (TSOPFG=0) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 2.0 2.0 2.0 2.0 1.0 1.0 1.0 0.0 0.0 0.0 1.0 2.0
END MON-LGTP2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
LGTP2M(12) 12F5.0 none none none F deg Engl
none none none C deg Metric
Explanation
This table is only required if LGTVFG is 1 in Table-type PSTEMP-PARM1, and TSOPFG is 0 or 2.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
395
-------
HSPF Version 12
PSTEMP-TEMPS
Initial temperatures
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PSTEMP-TEMPS
<-range>< ps temp-temps >
(repeats until all operations of this type are covered)
END PSTEMP-TEMPS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PSTEMP-TEMPS
Initial temperatures***
# - # AIRTC SLTMP ULTMP LGTMP***
1 7 48. 48. 48. 48.
END PSTEMP-TEMPS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format
Def
Min
Max
Units
Unit syst
AIRTC 4F10.0
60.
-20 .
120 .
deg
F
Engl
16.
-29 .
49.
deg
C
Metric
SLTMP
60.
-20 .
120 .
deg
F
Engl
16.
-29 .
49.
deg
C
Metric
ULTMP
60.
-20 .
120 .
deg
F
Engl
16.
-29 .
49.
deg
C
Metric
LGTMP
60.
-20 .
120 .
deg
F
Engl
16.
-29 .
49.
deg
C
Metric
Explanation
These are the initial temperatures:
AIRTC - air temperature
SLTMP - surface layer soil temperature
ULTMP - upper layer soil temperature
LGTMP - lower layer/groundwater layer soil temperature
396
-------
Users Control Input
PWTGAS input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Tables in brackets [] are not
always required
[Table-type PWT-PARM1]
[Table-type PWT-PARM2]
[Table-type LAT-FACTOR]
[Table-type MON-IFWDOX]
[Table-type MON-IFWC02]
[Table-type MON-GRNDDOX]
[Table-type MON-GRNDC02]
[Table-type PWT-TEMPS]
[Table-type PWT-GASES]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
397
-------
HSPF Version 12
PWT-PARM1
Flags for section PWTGAS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWT-PARM1
<-range>< pwt-parml >
(repeats until all operations of this type are covered)
END PWT-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWT-PARM1
Flags for section PWTGAS***
# - # IDV ICV GDV GVC***
1 7 0 0 1 0
END PWT-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
IDVFG
415
0
0
1
ICVFG
0
0
1
GDVFG
0
0
1
GCVFG
0
0
1
Explanation
Each of these flags indicate whether or not a parameter is allowed to vary throughout the year, and thus,
whether or not the corresponding table of monthly values will
be expected:
Flag
Parameter
Table For Monthly Values
IDVFG
Interflow dissolved oxygen concentration
MON-IFWDOX
ICVFG
Interflow C02 concentration
MON-IFWC02
GDVFG
Groundwater dissolved oxygen concentration
MON-GRNDDOX
GCVFG
Groundwater C02 concentration
MON-GRNDC02
398
-------
Users Control Input
PWT-PARM2
Second group of PWTGAS parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345
•A-**********************************
Layout
¦k -k -k -k -k -k
PWT-PARM2
<-range>< pwt-parm2 >
(repeats until all operations of this type are covered)
END PWT-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWT-PARM2
Second group of PWTGAS parameters ***
# - # ELEV IDOXP IC02P ADOXP AC02P***
1 7 1281. 8.2 0.2 8.2 0.3
END PWT-PARM2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ELEV
5F10.0
0
0
-1000.
30000.
ft
Engl
0
0
-300.
9100.
m
Metric
IDOXP
0
0
O
o
20.
mg/1
Both
IC02P
0
0
o
o
1.0
mg C/l
Both
ADOXP
0
0
o
o
20.
mg/1
Both
AC02P
0
0
o
o
1.0
mg C/l
Both
Explanation
ELEV is the elevation of the PLS above sea level; it is used to adjust the saturation concentrations of
dissolved gases in surface outflow.
IDOXP is the concentration of dissolved oxygen in interflow outflow.
IC02P is the concentration of dissolved C02 in interflow outflow.
ADOXP is the concentration of dissolved oxygen in active groundwater outflow.
AC02P is the concentration of dissolved C02 in active groundwater outflow.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
399
-------
HSPF Version 12
LAT-FACTOR
Lateral inflow concentration factors
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
LAT-FACTOR
<-range>< la t-factor >
(repeats until all operations of this type are covered)
END LAT-FACTOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
LAT-FACTOR
Lateral inflow concentration factors ***
# - # SDLFAC SLIFAC ILIFAC ALIFAC ***
1 4 0.3 0.5 0.5 0.5
END LAT-FACTOR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit
SDLFAC
4F10.0
o
o
o
o
1.0
none
Both
SLIFAC
o
o
o
o
1.0
none
Both
ILIFAC
o
o
o
o
1.0
none
Both
ALIFAC
o
o
o
o
1.0
none
Both
Explanation
This table is used by Sections PWTGAS and PQUAL. The parameters in this table specify the weighting
factors for the lateral inflow concentrations of non-mass-balance quality constituents; they are used in
determining the outflow concentration.
SDLFAC is the weighting factor for sediment-associated constituents (QUALSD) in Section PQUAL.
SLIFAC is the weighting factor for surface outflow of temperature and dissolved gases in Section
PWTGAS. It is not used for surface outflow of general quality constituents (QUALOF) in Section
PQUAL, because these constituents maintain a mass-balance.
ILIFAC is the weighting factor for interflow outflow of temperature and dissolved gases in Section
PWTGAS, and for interflow-associated constituents (QUALIF) in Section PQUAL.
ALIFAC is the weighting factor for baseflow outflow of temperature and dissolved gases in Section
PWTGAS, and for groundwater-associated constituents (QUALGW) in Section PQUAL.
400
-------
Users Control Input
MON-IFWDOX
Monthly interflow dissolved oxygen concentration
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-IFWDOX
<-range>< mon-ifwdox >
(repeats until all operations of this type are covered)
END MON-IFWDOX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-IFWDOX
Value at start of each month
# - # JAN FEB MAR APR MAY JUN
1 7 4.5 4.7 5.7 6.5 7.6 7.6
END MON-IFWDOX
for interflow DO concentration***
JUL AUG SEP OCT NOV DEC***
7.4 6.3 4.3 5.3 4.3 3.5
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IDOXPM(12) 12F5.0 0.0 0.0 20.0 mg/1 Both
Explanation
This table is only required if IDVFG is 1 in Table-type PWT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
401
-------
HSPF Version 12
M0N-IFWC02
Monthly interflow C02 concentration
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-IFWC02
<-range>< mon-ifwco2 >
(repeats until all operations of this type are covered)
END MON-IFWC02
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-IFWC02
Value at start of each month for interflow C02 concentration***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 .123 .171 .142 .145 .157 .178 .122 .123 .143 .145 .176 .145
END MON-IFWC02
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IC02PM(12) 12F5.0 0.0 0.0 1.0 mg C/l Both
Explanation
This table is only required if ICVFG is 1 in Table-type PWT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
402
-------
Users Control Input
MON-GRNDDOX
Monthly groundwater dissolved oxygen concentration
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-GRNDDOX
<-range>< mon-grnddox >
(repeats until all operations of this type are covered)
END MON-GRNDDOX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-GRNDDOX
Value at start
# - # JAN FEB MAR
1 7 4.5 4.7 4.9
END MON-GRNDDOX
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ADOXPM(12)
12F5.0
0.0
0.0
20.0
mg/1
Both
Explanation
This table is only required if GDVFG is 1 in Table-type PWT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
of each month for groundwater DO concentration*
APR MAY JUN JUL AUG SEP OCT NOV DEC***
4.9 4.9 4.9 5.0 5.6 5.7 5.8 5.4 5.1
403
-------
HSPF Version 12
M0N-GRNDC02
Monthly groundwater C02 concentration
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-GRNDC02
<-range>< mon-grndco2 >
(repeats until all operations of this type are covered)
END MON-GRNDC02
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-GRNDC02
Value at start of each month for groundwater C02 concentration***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 .23 .22 .22 .23 .24 .25 .24 .23 .22 .22 .22 .22
END MON-GRNDC02
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
AC02PM(12) 12F5.0 0.0 0.0 1.0 mg C/l Both
Explanation
This table is only required if GCVFG is 1 in Table-type PWT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
404
-------
Users Control Input
PWT-TEMPS
Initial water temperatures
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWT-TEMPS
<-range>< pwt-temps >
(repeats until all operations of this type are covered)
END PWT-TEMPS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWT-TEMPS
Initial water temperatures***
# - # SOTMP IOTMP AOTMP***
1 7 47. 47. 53.
END PWT-TEMPS
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SOTMP
3F10.0 60.
32 .
100 .
deg
F
Engl
16.
0 .
38 .
deg
C
Metric
IOTMP
60.
32 .
100 .
deg
F
Engl
16.
0 .
38 .
deg
C
Metric
AOTMP
60.
32 .
100 .
deg
F
Engl
16.
0 .
38 .
deg
C
Metric
Explanation
These are the initial values of outflow water temperatures:
SOTMP is surface outflow temperature.
IOTMP is interflow outflow temperature.
AOTMP is active groundwater outflow temperature.
405
-------
HSPF Version 12
PWT-GASES
Initial dissolved oxygen and C02 concentrations
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PWT-GASES
<-range>< pwt-gases >
(repeats until all operations of this type are covered)
END PWT-GASES
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PWT-GASES
Initial DO and C02 concentrations***
# - # SODOX SOC02 IODOX IOC02 AODOX AOC02***
1 7 8.9 .122 7.8 .132 3.5 .132
END PWT-GASES
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SODOX
6F10.0 0
0
0
0
20.
mg/1
Both
SOC02
0
0
0
0
1.0
mg C/l
Both
IODOX
0
0
0
0
20.
mg/1
Both
IOC02
0
0
0
0
1.0
mg C/l
Both
AODOX
0
0
0
0
20.
mg/1
Both
AOC02
0
0
0
0
1.0
mg C/l
Both
Explanation
These are the initial concentrations of dissolved gases in outflow:
SODOX is DO concentration in surface outflow.
SOC02 is C02 concentration in surface outflow.
IODOX is DO concentration in interflow outflow.
IOC02 is C02 concentration in interflow outflow.
AODOX is DO concentration in active groundwater outflow.
AOC02 is C02 concentration in active groundwater outflow.
406
-------
Users Control Input
PQUAL input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type NQUALS]
[Table-type PQL-AD-FLAGS]
[Table-type LAT-FACTOR]
if section PWTGAS is inactive and lateral inflow is
being simulated
Table-type QUAL-PROPS
[Table-type QUAL-INPUT]
[Table-type MON-POTFW]
[Table-type MON-POTFS]
[Table-type MON-ACCUM]
[Table-type MON-SQOLIM]
[Table-type MON-IFLW-CONC]
[Table-type MON-GRND-CONC]
repeat for each
quality constituent
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above, except LAT-FACTOR, is detailed in the
documentation which follows. LAT-FACTOR is documented under the input for Section PWTGAS
(4.4(1).7).
Tables enclosed in brackets [] are not always required; for example, because all the values can be
defaulted.
407
-------
HSPF Version 12
NQUALS
Total number of quality constituents simulated
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NQUALS
<-range>
(repeats until all operations of this type are covered)
END NQUALS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NQUALS
***
# - #NQUAL***
17 8
END NQUALS
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
NQUAL 15 1 1 10
Explanation
The total number of quality constituents simulated in Section PQUAL is indicated in this table. The set of
tables below Table-type PQL-AD-FLAGS is repeated for each quality constituent.
408
-------
Users Control Input
PQL-AD-FLAGS
Atmospheric deposition flags for PQUAL
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PQL-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END PQL-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PQL-AD-FLAGS
Atmospheric deposition flags ***
*** QUAL1 QUAL2 QUAL3 QUAL4 QUAL5 QUAL6 QUAL7 QUAL8 QUAL9 QAL10
#*** #
1 7 -1 10 -1 -1 11 12 13 -1 0 0 0 11 0-1 0 0 -10
END PQL-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
PQADFG(*) (IX,213) 0 -1 none
Explanation
PQADFG is an array of flags indicating the source of atmospheric deposition data. The QUAL ID number
is determined by the order in which the QUALS are input in the tables below. Each QUAL has two flags.
The first is for dry or total deposition flux, and the second is for wet deposition concentration. The flag
values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series PQADFX or PQADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
It is an error to specify a non-zero flag value for a non-QUALOF.
409
-------
HSPF Version 12
QUAL-PROPS
Identifiers and flags for a quality constituent
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
QUAL-PROPS
<-range><-qualid > < flags >
(repeats until all operations of this type are covered)
END QUAL-PROPS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
QUAL-PROPS
Identifiers and Flags***
# - #*** qualid QTID QSD VPFW
1 7 BOD kg 0 0
END QUAL-PROPS
VPFS QSO VQO QIFW VIQC QAGW VAQC
0 1110 11
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
QUALID
3A4
none
none
none
QTYID
A4
none
none
none
QSDFG
915
0
0
1
VPFWFG
0
0
2
VPFSFG
0
0
1
QSOFG
0
0
1
VQOFG
0
0
1
QIFWFG
0
0
1
VIQCFG
0
0
4
QAGWFG
0
0
1
VAQC FG
0
0
4
410
-------
Users Control Input
Explanation
QUALID is a 10 character identifier (name) for the quality constituent.
QTYID is a 4 character identifier for the units associated with this constituent (e.g., kg, or lb). These are
the units referred to as "qty" in subsequent tables (e.g., Table-type QUAL-INPUT).
If QSDFG is 1 then:
1. This constituent is a QUALSD; it is assumed to be sediment-associated.
2. If VPFWFG is 1 or greater, the washoff potency factor may vary throughout the year. Table-type
MON-POTFW is expected. If VPFWFG is 2, the daily factors are not computed by interpolation
between the monthly values.
3. If VPFSFG is 1, the scour potency factor may vary throughout the year. Table-type MON-POTFS
is expected.
If QSOFG is 1 or 2 then:
1. This constituent is a QUALOF; it is assumed to be directly associated with overland flow. If
QSOFG is 1, then accumulation and removal occur daily, independently of atmospheric
deposition. If QSOFG is 2, then accumulation and removal occur every interval, and the removal
rate is applied to atmospheric deposition and lateral inflows, as well as the accumulation.
2. If VQOFG is 1 then the rate of accumulation and the limiting storage of the QUALOF may vary
throughout the year. Table-types MON-ACCUM and MON-SQOLIM are expected for this
QUAL.
If QIFWFG is 1 then:
1. This constituent is a QUALIF; it is assumed to be associated with interflow.
2. If VIQCFG 1 or greater, the concentration of this constituent in interflow outflow may vary
throughout the year. Table-type MON-IFLW-CONC is expected. If VIQCFG is 2 or 4, the daily
values are obtained directly from the monthly values; no interpolation between monthly values is
performed. If VIQCFG is 3 or 4, the units of the input concentrations are mg/1; note: this option
requires that the "qty" units be pounds (English system) or kilograms (Metric system).
If QAGWFG is 1 then:
1. This constituent is a QUALGW (groundwater associated).
2. If VAQCFG is 1 or greater, the concentration of this constituent in groundwater outflow may
vary throughout the year. Table-type MON-GRND-CONC is expected. If VAQCFG is 2 or 4,
the daily values are obtained directly from the monthly values; no interpolation between monthly
values is performed. If VAQCFG is 3 or 4, the units of the input concentrations are mg/1; note:
this option requires that the "qty" units be pounds (English system) or kilograms (Metric system).
411
-------
Users Control Input
Explanation
The following variables are applicable only if the constituent is a QUALSD:
1. POTFW is the washoff potency factor.
2. POTFS is the scour potency factor.
A potency factor is the ratio of constituent yield to sediment (washoff or scour) outflow.
The following variables are applicable only if the constituent is a QUALOF:
1. SQO is the initial storage of QUALOF on the surface of the PLS.
2. ACQOP is the rate of accumulation of QUALOF.
3. SQOLIM is the maximum storage of QUALOF.
4. WSQOP is the rate of surface runoff which will remove 90 percent of stored QUALOF per hour.
IOQC is the concentration of the constituent in interflow outflow; it is meaningful only if this QUAL is a
QUALIF.
AOQC is the concentration of the constituent in active groundwater outflow; it is meaningful only if this
QUAL is a QUALGW.
If monthly values are being supplied for any of these quantities, the value in this table is not relevant;
instead, the system expects and uses values supplied in Table-type MON-xxx.
413
-------
HSPF Version 12
MON-POTFW
Monthly washoff potency factor
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-POTFW
<-range>< mon-potfw >
(repeats until all operations of this type are covered)
END MON-POTFW
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-POTFW
Value at start
# - # JAN FEB MAR
1 7 1.2 2.4 3.6
END MON-POTFW
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
POTFWM(12) 12F5.0 0.0 0.0 none qty/ton Engl
0.0 0.0 none qty Metric
/tonne
Explanation
This table is only required if VPFWFG is greater than 0 in Table-type QUAL-PROPS.
If VPFWFG is 1 or 3, the input monthly values apply to the first day of the month, and values for
intermediate days are obtained by interpolating between successive monthly values. If VPFWFG is 2 or
4, the input monthly values apply directly to all days of the month.
of each month
APR MAY JUN
5.8 10.2 20.2
for washoff potency
JUL AUG SEP OCT
25.2 30.8 40.2 10.1
factor (lb/ton)***
NOV DEC***
2.5 1.7
414
-------
Users Control Input
MON-POTFS
Monthly scour potency factor
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-POTFS
<-range>< mon-potf s >
(repeats until all operations of this type are covered)
END MON-POTFS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-POTFS
Value at start of each month for scour potency factor (lb/ton)***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 0.9 0.9 0.9 0.8 0.8 1.1 1.1 1.3 1.3 1.0 0.9 0.9
END MON-POTFS
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
POTFSM(12) 12F5.0 0.0 0.0 none qty/ton Engl
0.0 0.0 none qty Metric
/tonne
Explanation
This table is only required if VPFSFG is 1 in Table-type QUAL-PROPS.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
415
-------
HSPF Version 12
MON-ACCUM
Monthly accumulation rates of QUALOF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-ACCUM
<-range>< mon-accum >
(repeats until all operations of this type are covered)
END MON-ACCUM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-ACCUM
Value at start of month for accum rate of QUALOF (lb/ac.day)***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 0.0 0.0 0.01 0.02 0.02 0.04 0.05 0.04 0.02 0.01 0.0 0.0
END MON-ACCUM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ACQOPM(12) 12F5.0 0.0 0.0 none qty/ac.d Engl
0.0 0.0 none qty/ha.d Metric
Explanation
This table is only required if VQOFG is 1 in Table-type QUAL-PROPS.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
416
-------
Users Control Input
MON-SQOLIM
Monthly limiting storage of QUALOF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-SQOLIM
<-range>< mon-sqolim >
(repeats until all operations of this type are covered)
END MON-SQOLIM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-SQOLIM
Value at start of month for limiting storage of QUALOF (lb/acre)***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 10 12 14 18 20 25 30 26 20 13 10 7
END MON-SQOLIM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SQOLIM(12) 12F5.0 l.E-6 l.E-6 none qty/ac Engl
2.E-6 2.E-6 none qty/ha Metric
Explanation
This table is only required if VQOFG is 1 in Table-type QUAL-PROPS.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
417
-------
HSPF Version 12
MON-IFLW-CONC
Monthly concentration of QUAL in interflow
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-IFLW-CONC
<-range>< mon-if lw-conc >
(repeats until all operations of this type are covered)
END MON-IFLW-CONC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-IFLW-CONC
Cone of QUAL in interflow outflow for each month (lb/ft3)***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7.0012.0010.0005 0.0 0.0.0002 .005 .002 .001.0016.0014.0012
END MON-IFLW-CONC
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IOQCM(12) 12F5.0 0.0 0.0 none qty/ft3 Engl
0.0 0.0 none qty/1 Metric
If VIQCFG = 3 or 4 in
Table-type QUAL-PROPS: 0.0 0.0 none mg/1 Both
Explanation
This table is only required if VIQCFG is greater than 0 in Table QUAL-PROPS.
If VIQCFG is 1 or 3, the input monthly values apply to the first day of the month, and values for
intermediate days are obtained by interpolating between successive monthly values. If VIQCFG is 2 or 4,
the input monthly values apply directly to all days of the month.
418
-------
Users Control Input
MON-GRND-CONC
Monthly concentration of QUAL in active groundwater
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-GRND-CONC
<-range>< mon-grnd-conc >
(repeats until all operations of this type are covered)
END MON-GRND-CONC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-GRND-CONC
Value at start of month for cone of QUAL in groundwater (lb/ft3)**
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7.0013.0014.0012.0012.0012.001 .001 .001 .0011.0012.0012.0013
END MON-GRND-CONC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
AOQCM(12) 12F5.0 0.0 0.0 none qty/ft3 Engl
0.0 0.0 none qty/1 Metric
If VAQCFG = 3 or 4 in
Table-type QUAL-PROPS: 0.0 0.0 none mg/1 Both
Explanation
This table is only required if VAQCFG is greater than 0 in Table QUAL-PROPS.
If VAQCFG is 1 or 3, the input monthly values apply to the first day of the month, and values for
intermediate days are obtained by interpolating between successive monthly values. If VAQCFG is 2 or
4, the input monthly values apply directly to all days of the month.
419
-------
HSPF Version 12
MSTLAY input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type VUZFG
Table-type UZSN-LZSN
Table-type MON-UZSN if VUZFG=1
Table-type MST-PARM
Table-type MST-TOPSTOR
Table-type MST-TOPFLX
Table-type MST-SUBSTOR
Table-type MST-SUBFLX
| only if Section
| PWATER is
| inactive
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above, except MON-UZSN, is detailed in the
documentation which follows. MON-UZSN is documented under the input for Section PWATER.
Note that if all the fields in a table have default values, the table can be omitted from the User's Control
Input. Then, the defaults will be used.
Table-types MST-TOPSTOR through MST-SUBFLX should usually not be supplied. See the
documentation of those tables for further details.
420
-------
Users Control Input
VUZFG
Variable upper zone flag
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
VUZFG
<-range>
(repeats until all operations of this type are covered)
END VUZFG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
VUZFG
VUZFG***
# - # ***
17 1
END VUZFG
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
VUZFG 15 0 0 1
Explanation
VUZFG is a flag which indicates whether or not the upper zone nominal storage varies throughout the
year or not. A value of zero means it does not vary, a value of 1 means it does. If it does vary, the system
will expect a table of type MON-UZSN in the User's Control Input.
Note that Table VUZFG is only required if Section PWATER is inactive. If that section is active VUZFG
would have already been provided in the input for PWATER (Table-type PWAT-PARM1).
421
-------
HSPF Version 12
UZSN-LZSN
Values of UZSN, LZSN and initial surface storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
UZSN-LZSN
<-range><-uzsn-X-lzsn-X-surs->
(repeats until all operations of this type are covered)
END UZSN-LZSN
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
UZSN-LZSN
UZSN
# - # in
1 7 1.0
END UZSN-LZSN
LZSN SURS
in in
6.0 .02
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
UZSN
^1
CO
o
none
0.01
10.0
in
Engl
none
0.25
250 .
mm
Metric
LZSN
^1
CO
o
none
0.01
100 .
in
Engl
none
0.25
2500.
mm
Metric
SURS
^1
CO
o
. 001
. 001
100 .
in
Engl
. 025
. 025
2500.
mm
Metric
Explanation
This table is only required if Section PWATER is inactive; otherwise, the data would have already been
supplied in the input for Section PWATER.
UZSN is the nominal upper zone storage. The value supplied here is irrelevant if VUZFG has been set to
1; in that case monthly values for UZSN are supplied in Table-type MON-UZSN.
LZSN is the nominal lower zone storage.
SURS is the initial surface detention storage.
422
-------
Users Control Input
MST-PARM
Factors used to adjust solute leaching rates
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MST-PARM
<-range>< leach-parms >
(repeats until all operations of this type are covered)
END MST-PARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MST-PARM
SLMPF
# - #
1 7 0.5
END MST-PARM
ULPF LLPF***
¦k -k -k
2.0 2.0
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Min
Max
Units Unit syst
SLMPF
ULPF
LLPF
3F10.0 1.0 .001 1.0 none Both
1.0 1.0 10.0 none Both
1.0 1.0 10.0 none Both
Explanation
These are the factors that are used to adjust solute percolation rates. SLMPF affects percolation from the
surface layer storage to the upper layer principal storage. ULPF affects percolation from the upper layer
principal storage to the lower layer storage. LLPF affects percolation from the lower layer storage to the
active and inactive groundwater.
423
-------
HSPF Version 12
MST-TOPSTOR
Initial moisture storage in each topsoil layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MST-TOPSTOR
<-range>< tops tor >
(repeats until all operations of this type are covered)
END MST-TOPSTOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MST-TOPSTOR
Topsoil
# - # SMSTM
1 7 100000
END MST-TOPSTOR
storages (lb/ac)***
UMSTM IMSTM***
400000 300000
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SMSTM
3F10.0 0
0
0
0
none
lb/ac
Engl
0
0
0
0
none
kg/ha
Metric
UMSTM
0
0
0
0
none
lb/ac
Engl
0
0
0
0
none
kg/ha
Metric
IMSTM
0
0
0
0
none
lb/ac
Engl
0
0
0
0
none
kg/ha
Metric
Explanation
This table is used to specify the initial moisture content in the surface, upper principal and upper
transitory (interflow) storages, respectively.
Note that the values given in this table only affect the water storages for the start of the first interval in the
run; there is no carry-over of the values beyond the starting instant. Therefore, in most runs, this table
need not be supplied; the default zero values will not cause any problems.
424
-------
Users Control Input
MST-TOPFLX
Initial fractional fluxes in topsoil layers
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MST-TOPFLX
<-range>< top-flux >
(repeats until all operations of this type are covered)
END MST-TOPFLX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MST-TOPFLX
Fractional fluxes
# - # FSO FSP
1 7 .07 .03
END MST-TOPFLX
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
FSO,FSP,FII, 5F10.0 0.0 0.0 1.0 /ivl Both
FUP,FIO
in topsoil layers (/ivl) *
FII FUP FIO*
Explanation
These are the initial values of the fractional fluxes of soluble chemicals through the topsoil layers of a
PLS.
Note that the values supplied in this table apply at the instant that the run starts. The program computes
new values each time step and there is no carry-over of values from one time step to the next. Therefore,
in most runs, you can omit this table; the default zero values will not cause any problems.
425
-------
HSPF Version 12
MST-SUBSTOR
Initial moisture storage in subsurface layers
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MST-SUBSTOR
<-range>< subs tor >
(repeats until all operations of this type are covered)
END MST-SUBSTOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MST-SUBSTOR
Subsoil moisture (kg/ha)***
# - # LMSTM AMSTM ***
1 7 800000 1000000
END MST-SUBSTOR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
LMSTM,AMSTM 2F10.0 0.0 0.0 none lb/ac Engl
0.0 0.0 none kg/ha Metric
Explanation
These are the initial moisture storages in the lower layer and active groundwater layers, respectively.
Usually, this table should be omitted and the default values used. The comments made on this subject in
the explanation for Table-type MST-TOPSTOR are also applicable here.
426
-------
Users Control Input
MST-SUBFLX
Initial fractional fluxes in subsurface layers
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345
•A-**********************************
Layout
¦k -k -k -k -k -k
MST-SUBFLX
<-range>< subf lux >
(repeats until all operations of this type are covered)
END MST-SUBFLX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MST-SUBFLX
Subsurface
# - # FLP
1 7 0.1
END MST-SUBFLX
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
FLP,FLDP,FAO
3F10.0
o
o
o
o
1.0
/ivl
Both
Explanation
These are the initial fractional fluxes of soluble chemicals through the subsoil layers.
Usually, this table should be omitted and the default values taken. The comments on this subject in the
explanation for Table-type MST-TOPFLX are applicable here.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
fractional fluxes (/ivl) ***
FLDP FAO ***
0.05
427
-------
HSPF Version 12
PEST input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type PEST-FLAGS]
[Table-type PEST-AD-FLAGS]
Table-type SOIL-DATA
Table-type PEST-ID
if not used in PWATER
Table-type PEST-THETA
Table-type PEST-FIRSTPM for surface layer
Table-type PEST-FIRSTPM for upper layer
Table-type PEST-FIRSTPM for lower layer
I
I if
| ADOPFG
I =1
Table-type PEST-FIRSTPM for groundwater layer |
Table-type PEST-CMAX
Table-type PEST-SVALPM
Table-type PEST-SVALPM
Table-type PEST-SVALPM
Table-type PEST-SVALPM
Table-type PEST-CMAX
Table-type PEST-NONSVPM
Table-type PEST-NONSVPM
Table-type PEST-NONSVPM
Table-type PEST NONSVPM
Table-type PEST-DEGRAD
Table-type PEST-STOR1
Table-type PEST-STOR1
Table-type PEST-STOR2
Table-type PEST-STOR1
Table-type PEST-STOR1
for surface layer
for upper layer
for lower layer
for groundwater layer
for surface layer
for upper layer
for lower layer
for groundwater layer
if
ADOPFG
=2
if
ADOPFG
=3
for surface layer storage
for upper layer principal storage
for upper layer transitory storage
for lower layer storage
for groundwater layer storage
repeat for
each
pesticide
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
428
-------
Users Control Input
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows,
except for SOIL-DATA, which is documented under the input for Section PWATER.
The comments given alongside the table names above indicate under what circumstances a table is
expected.
Note that if all the fields in a table have default values, the table can be omitted from the User's Control
Input. Then, the defaults will be adopted. However, any tables that are repeated for multiple soil layers
should generally not be omitted because the "nth" occurrence of one of these tables refers to the
corresponding "nth" layer. If a table for layer i is omitted, the next occurrence of the table (intended for
layer i+1) will be applied to layer i, and unintended results will occur.
ADOPFG is the adsorption/desorption option flag. It is described in the documentation for Table-type
PEST-FLAGS below.
429
-------
HSPF Version 12
PEST-FLAGS
Flags for pesticide simulation
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-FLAGS
<-range>< itmax >< adopt >
(repeats until all operations of this type are covered)
END PEST-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-FLAGS
NPST|Max iterations|Adsorp option ***
# - # |Pstl Pst2 Pst3|Pstl Pst2 Pst3***
1 7 2 20 20 13
END PEST-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
NPST
15
1
1
3
ITMXPS(*)
315
30
1
100
ADOPFG(*)
315
2
1
3
Explanation
NPST is the number of pesticides being simulated in the PERLND. NPST is limited to 3.
ITMXPS is the maximum number of iterations that will be made in trying to solve for adsorbed and
dissolved equilibrium using the Freundlich isotherm. A separate value may be supplied for each pesticide
being simulated. If the Freundlich method is not being used, these values have no effect.
ADOPFG(*) are flags which indicate which method will be used to simulate adsorption/desorption for
each pesticide:
1 - first-order kinetics
2 - single-value Freundlich method
3 - non-single value Freundlich method
430
-------
Users Control Input
PEST-AD-FLAGS
Atmospheric deposition flags for pesticides
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END PEST-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-AD-FLAGS
*** PESTICIDE #1
*** CRYS ADSB SOLN
#*** #
1 7 -1 10 -1 -1 11 12
END PEST-AD-FLAGS
Atmospheric deposition flags
PESTICIDE #2
CRYS ADSB SOLN
13 -1 10 0 11
PESTICIDE #3
CRYS ADSB SOLN
-1 0 0-10
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
PEADFG(*) (IX,213) 0 -1 none
Explanation
PEADFG is an array of flags indicating the source of pesticide atmospheric deposition data. Each
pesticide has three forms: crystalline, adsorbed, and solution. Each form has two flags. The first is for
dry or total deposition flux (), and the second is for wet deposition concentration (). The flag
values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series PEADFX or PEADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
431
-------
HSPF Version 12
PEST-ID
Name of pesticide
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-ID
<-range>< pestid >
(repeats until all operations of this type are covered)
END PEST-ID
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-ID
Pesticide***
# - # ***
1 7 Atrazine
END PEST-ID
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Min
Max
PESTID(*)
5A4 none
none
none
Explanation
This table specifies the name of the pesticide to which the data in the following tables apply.
432
-------
Users Control Input
PEST-THETA
Pesticide first-order reaction temperature correction parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2 3 4 5
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-THETA
<-range>< theta >
(repeats until all operations of this type are covered)
END PEST-THETA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-THETA
Temperature parms ***
# - # THDSPS THADPS ***
1 7 1.07
END PEST-THETA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
THDSPS,THADPS
2F10.0
1.05
1.00
2 .00
none
Both
Explanation
These parameters are used to adjust the desorption and adsorption rate parameters (respectively), using a
modified Arrhenius equation:
Rate at T = (Rate at 35 deg C) * (theta)**(T-35)
This table is only required if first-order kinetics are used to simulate adsorption/desorption (ADOPFG=l
in Table-type PEST-FLAGS).
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
6 7 8
67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
433
-------
HSPF Version 12
PEST-FIRS TPM
Pesticide first-order parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-FIRSTPM
<-range>< firstparm >
(repeats until all operations of this type are covered)
END PEST-FIRSTPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-FIRSTPM
First-order parms (/day)***
# - # KDSPS KADPS ***
1 7 .07 .04
END PEST-FIRSTPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KDSPS,KADPS 2F10.0 0.0 0.0 none /day Both
Explanation
KDSPS and KADPS are the desorption and adsorption rates at 35 deg C.
This table is only required if ADOPFG=l (first-order kinetics) for this pesticide.
434
-------
Users Control Input
PEST-CMAX
Maximum solubility of pesticide
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67
•A-**************************
Layout
¦k -k -k -k -k -k
PEST-CMAX
<-range><—cmax—>
(repeats until all operations of this type are covered)
END PEST-CMAX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-CMAX
CMAX***
# - # (ppm)* * *
1 7 25.0
END PEST-CMAX
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
CMAX
F10.0
o
o
o
o
none
ppm
Both
Explanation
CMAX is the maximum solubility of the pesticide in water.
This table is only required if ADOPFG= 2 or 3 for this pesticide (Freundlich method of simulating
adsorption/de sorption).
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
435
-------
HSPF Version 12
PEST-SVALPM
Pesticide parameters for single-value Freundlich method
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-SVALPM
<-range>< svalpm >
(repeats until all operations of this type are covered)
END PEST-SVALPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-SVALPM
XFIX
# - # (ppm)
1 7 20.
END PEST-SVALPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
XFIX
3F10.0
0 ,
.0
o
o
none
ppm
Both
K1
0 ,
.0
o
o
none
1/kg
Both
Nl
none
1.0
none
none
Both
Explanation
XFIX is the maximum concentration (on the soil) of pesticide which is permanently fixed to the soil. K1
and N1 are the coefficient and exponent parameters for the Freundlich adsorption/desorption equation:
X= K1*C**(1/N1) + XFIX
This table is only used if ADOPFG= 2 for this pesticide (single-value Freundlich method). Then, the
system expects it to appear four times for this pesticide; first, for the surface layer, second for the upper
layer, third for the lower layer, and fourth for the active groundwater layer.
K1 Nl***
¦k -k -k
4.0 1.5
436
-------
Users Control Input
PEST-NONSVPM
Pesticide parameters for non-single value Freundlich method
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-NONSVPM
<-range>< nonsvpm >
(repeats until all operations of this type are covered)
END PEST-NONSVPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-NONSVPM
XFIX K1 N1 N2***
# - # (ppm) ***
1 7 15. 5.0 1.5 1.7
END PEST-NONSVPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
XFIX
4F10.0
0 ,
.0
o
o
none
ppm
Both
K1
0 ,
.0
o
o
none
1/kg
Both
N1
none
1.0
none
none
Both
N2
none
1.0
none
none
Both
Explanation
XFIX is the maximum concentration (on the soil) of pesticide which is permanently fixed in the soil. K1
and N1 are the coefficient and exponent parameters for the Freundlich curve used for adsorption. N2 is
the exponent parameter for the auxiliary ("desorption") curve.
This table is only used if ADOPFG= 3 for this pesticide (non-single value Freundlich method).
437
-------
HSPF Version 12
PEST-DEGRAD
Pesticide degradation rates
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-DEGRAD
<-range>< degrad >
(repeats until all operations of this type are covered)
END PEST-DEGRAD
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-DEGRAD
Pesticide degradation rates (/day) ***
# - # Surface Upper Lower Groundw***
1 7 .05 .02 .01
END PEST-DEGRAD
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SDGCON,UDGCON, 4F10.0 0.0 0.0 1.0 /day Both
LDGCON,ADGCON
Explanation
These are the degradation rates of the pesticide in the surface, upper, lower and groundwater layers,
respectively. These rates are not adjusted for temperature.
438
-------
Users Control Input
PEST-STOR1
Initial pesticide storage in surface,
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67
•A-**************************
Layout
¦k -k -k -k -k -k
PEST-STOR1
<-range><-cryst—>< ads — ><—soln—>
(repeats until all operations of this type are covered)
END PEST-STOR1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-STOR1
Initial pesticide in surface layer (lb/ac)***
# - # Cryst Ads Soln ***
1 7 10.0 25.0 50.0
END PEST-STOR1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
,,
PSCY,PSAD,
3F10.0
o
o
o
o
none
lb/ac
Engl
PSSU
o
o
o
o
none
kg/ha
Metric
Explanation
PSCY is the pesticide in crystalline form, PSAD is the pesticide in adsorbed form and PSSU is the
pesticide in solution.
The values given in this table apply to one of the following four soil storages: surface, upper principal,
lower or groundwater. The table should appear four times, once for each layer.
upper, lower or groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
439
-------
HSPF Version 12
PEST-STOR2
Initial pesticide stored in upper layer transitory (interflow) storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PEST-STOR2
<-range><—ips >
(repeats until all operations of this type are covered)
END PEST-STOR2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PEST-STOR2
Interflow ***
# - # storage(kg/ha)***
1 7 20.0
END PEST-STOR2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IPS F10.0 0.0 0.0 none lb/ac Engl
0.0 0.0 none kg/ha Metric
Explanation
IPS is the initial storage of pesticide in the upper layer transitory (interflow) storage. Since only
dissolved pesticide is modeled in that storage, only one value is needed (no crystalline or adsorbed
material).
440
-------
Users Control Input
NITR input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type SOIL-DATA if not already input for PWATER or PEST
Table-type NIT-FLAGS
Table-type NIT-AD-FLAGS
Table-type NIT-FSTGEN
Table-type NIT-FSTPM for surface layer
Table-type NIT-FSTPM for upper layer
Table-type NIT-FSTPM for lower layer
Table-type NIT-FSTPM for groundwater layer
Table-type NIT-ORGPM for surface layer
Table-type NIT-ORGPM for upper layer
Table-type NIT-ORGPM for lower layer
Table-type NIT-ORGPM for groundwater layer
Table-type NIT-AMVOLAT if AMVOFG= 1
Table-type NIT-CMAX
Table-type NIT-SVALPM for surface layer
Table-type NIT-SVALPM for upper layer
Table-type NIT-SVALPM for lower layer
Table-type NIT-SVALPM for groundwater layer
if FORAFG= 1
Table-type NIT-UPTAKE
Table-type MON-NITUPT
Table-type MON-NITUPT
Table-type MON-NITUPT
Table-type MON-NITUPT
for surface layer
for upper layer
for lower layer
for groundwater layer
if VNUTFG= 0
| if VNUTFG= 1
I
if NUPTFG=0
Table-type SOIL-DATA2
Table-type CROP-DATES
Table-type NIT-YIELD
Table-type MON-NUPT-FR1
Table-type MON-NUPT-FR2
Table-type MON-NUPT-FR2
Table-type MON-NUPT-FR2
Table-type MON-NUPT-FR2
if not already input
| for PWATER
for surface layer
for upper layer
for lower layer
for groundwater layer
if NUPTFG= 1
441
-------
HSPF Version 12
Table-type NIT-UPIMCSAT
Table-type NIT-UPIMKMAX if VNUTFG= 0
Table-type MON-NITUPNI
Table-type MON-NITUPAM
Table-type MON-NITIMNI
Table-type MON-NITIMAM
I
| if VNUTFG= 1
I
I
if NUPTFG= 2 or -2
Note: The preceding group of tables each repeat four times, once for each soil
layer, if NUPTFG= 2, but appear only once for all soil layers if NUPTFG= -2
Table-type NIT-BGPLRET
| if VPRNFG= 0
Table-type MON-NPRETBG
Table-type MON-NPRETBG
Table-type MON-NPRETBG
Table-type MON-NPRETBG
Table-type MON-NPRETFBG
for surface layer
for upper layer
for lower layer
for groundwater layer
if VPRNFG=1
Table-type NIT-AGUTF
Table-type MON-NITAGUTF
Table-type MON-NITAGUTF
Table-type MON-NITAGUTF
Table-type MON-NITAGUTF
for surface layer
for upper layer
for lower layer
for groundwater layer
Table-type NIT-AGPLRET
Table-type MON-NPRETAG
Table-type MON-NPRETLI for surface layer
Table-type MON-NPRETLI for upper layer
Table-type MON-NPRETFLI
if VNUTFG= 0
I
| if VNUTFG= 1
I
if VPRNFG= 0
I
| if VPRNFG= 1
I
if ALPNFG=1
Table-type NIT-STOR1
Table-type NIT-STOR1
Table-type NIT-STOR2
Table-type NIT-STOR1
Table-type NIT-STOR1
for surface layer storage
for upper layer principal storage
for upper layer transitory storage, above ground plant
and litter storage
for lower layer storage
for groundwater layer storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
442
-------
Users Control Input
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows,
except for SOIL-DATA, SOIL-DATA2, and CROP-DATES, which are documented under the input for
Section PWATER.
This section is complex, and has many possible tables. Users are cautioned to carefully observe the
options selected and the tables that are required. The comments given alongside the table names in the
above list indicate under what circumstances a table is expected. The flags that determine the
expected/required tables are described below as well as under the table where they are input (Table-type
NIT-FLAGS below).
AMVOFG is the ammonia volatilization flag.
FORAFG is the ammonium adsorption/desorption method flag.
VNUTFG is the variable nitrogen plant uptake flag.
NUPTFG is the plant uptake method flag.
ALPNFG is the "above-ground plant N and litter compartment" flag.
VPRNFG is the variable plant return flag.
Note that if all the fields in a table have default values, the table can be omitted from the User's Control
Input. Then, the defaults will be adopted. However, any tables that are repeated for multiple soil layers
should generally not be omitted because the "nth" occurrence of one of these tables refers to the
corresponding "nth" layer. If a table for layer i is omitted, the next occurrence of the table (intended for
layer i+1) will be applied to layer i, and unintended results may occur.
443
-------
HSPF Version 12
NIT-FLAGS
Flags for nitrogen simulation
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-FLAGS
<-range>< nit flags >
(repeats until all operations of this type are covered)
END NIT-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-FLAGS
Nitrogen flags ***
x - x VNUT FORA ITMX BNUM CNUM NUPT FIXN AMVO ALPN VNPR ***
171 312 11
END NIT-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
VNUTFG
1015 0
0
1
FORAFG
0
0
1
ITMAXA
30
1
100
BNUMN
none
1
1000
CNUMN
none
1
1000
NUPTFG
0
-2
2
FIXNFG
0
0
1
AMVOFG
0
0
1
ALPNFG
0
0
1
VNPRFG
0
0
1
444
-------
Users Control Input
Explanation
If VNUTFG = 1, the first-order plant uptake parameters for nitrogen are allowed to vary throughout the
year and four tables of type MON-NITUPT (or MON-NITUPNI and MON-NITUPAM if saturation
kinetics are being simulated) are expected in the User's Control Input. The first appearance is for the
surface layer, 2nd for upper layer, 3rd for the lower layer, and 4th for the groundwater layer. If VNUTFG
= 0, the uptake rates do not vary through the year and a value for each layer is specified in a single table
(Table-type NIT-UPTAKE if first-order kinetics are being simulated or NIT-UPIMKMAX if saturation
kinetics are being simulated).
FORAFG indicates which method is to be used to simulate adsorption and desorption of ammonium:
0 - first-order kinetics
1 - single-value Freundlich method
ITMAXA is the maximum number of iterations that will be attempted in solving the Freundlich equation;
applicable only if FORAFG= 1.
BNUMN is the number of time steps that will elapse between recalculation of biochemical reaction
fluxes. For example, if BNUMN = 10 and the simulation time step is 5 minutes, then these fluxes will be
recalculated every 50 minutes. All reactions except adsorption/desorption fall into this category. CNUMN
is the corresponding number for the chemical (adsorption/desorption) reactions.
NUPTFG indicated which method is to be used to simulate plant uptake of nitrogen:
0 - first-order kinetics
1 - yield-based algorithm
2 - saturation (Michaelis-Menton) kinetics
-2 - same as for 2, but with parameters constant over all soil layers
If FIXNFG is 1, nitrogen fixation is simulated. For this option, NUPTFG must also be 1. If FIXNFG is
zero, or if NUPTFG is not 1, then N fixation is turned off.
If AMVOFG is 1, ammonia volatilization is simulated.
If ALPNFG is 1, above-ground and litter compartments for plant nitrogen are simulated.
If VNPRFG is 1, then the parameters for describing the return of plant nitrogen to the soil are allowed to
vary monthly.
445
-------
HSPF Version 12
NIT-AD-FLAGS
Atmospheric Deposition Flags for Nitrogen Species
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END NIT-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-AD-FLAGS
*** NITRATE
*** SURF UPPR
#*** #
1 7 -1 10 -1 -1
END NIT-AD-FLAGS
Atmospheric deposition flags
AMMONIA
SURF UPPR
11 12 13 -1
ORGANIC N
SURF UPPR
10 0 11
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
NIADFG(*) (IX,213) 0 -1 none
Explanation
NIADFG is an array of flags indicating the source of atmospheric deposition data. Each species can be
deposited into either the surface or upper soil layers. Each species/layer combination has two flags. The
first is for dry or total deposition flux, and the second is for wet deposition concentration. The flag values
indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series NIADFX or NIADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
446
-------
Users Control Input
NIT-FSTGEN
Nitrogen first-order general parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-FSTGEN
<-range>< temp-parms >
(repeats until all operations of this type are covered)
END NIT-FSTGEN
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-FSTGEN
Upt-facts< Temp-parms (theta) > ***
# - # N03 NH4 PLN KDSA KADA KIMN KAM KDNI KNI KIMA ***
1 7 .5 .5 1.07 1.08
END NIT-FSTGEN
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Min
Max
Units Unit syst
N03UTF
NH4UTF
THPLN
THKDSA
THKADA
THKIMN
THKAM
THKDNI
THKNI
THKIMA
2F5.0
8F5.0
1.0
0.0
1.07
1.05
1.05
1.07
1.07
1.07
1.05
1.07
0.001
0.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
none
none
none
none
none
none
none
none
none
none
Both
Both
Both
Both
Both
Both
Both
Both
Both
Both
447
-------
HSPF Version 12
Explanation
These general parameters apply to nitrogen reactions in all the layers; thus, this table only appears once
(or not at all, if defaults are used).
N03UTF and NH4UTF designate which fraction of nitrogen uptake comes from nitrate and ammonium,
respectively. Their sum must be unity; otherwise an error message is generated. They are used only if
first-order or yield-based plant uptake is being used (NUPTFG = 0 or 1 in Table-type NIT-FLAGS).
The remaining fields specify the temperature coefficients (theta) for the various reactions:
THPLN Plant uptake (not relevant if NUPTFG =1)
THKDSA Ammonium desorption (only relevant if FORAFG = 0)
THKADA Ammonium adsorption (only relevant if FORAFG = 0)
THKIMN Nitrate immobilization
THKAM Organic N ammonification
THKDNI NO 3 denitrification
THKNI Nitrification
THKIMA Ammonium immobilization
448
-------
Users Control Input
NIT-FSTPM
Nitrogen first-order reaction parameters for the surface, upper, lower or active groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-FSTPM
<-range>< f stparms >
(repeats until all operations of this type are covered)
END NIT-FSTPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-FSTPM
*** Nitrogen first-order parameters for lower layer (/day)
# - #*** KDSAM KADAM KIMNI KAM KDNI KNI KIMAM
1 7 .05 .03 .02 .05
END NIT-FSTPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KDSAM,KADAM, 7F10.0 0.0 0.0 none /day Both
KIMNI,KAM,KDNI,
KNI,KIMAM
Explanation
These are the first-order reaction rate parameters for a layer of soil:
KDSAM Ammonium desorption (only relevant if FORAFG = 0)
KADAM Ammonium adsorption (only relevant if FORAFG = 0)
KIMNI Nitrate immobilization (only relevant if NUPTFG = 0 or 1)
KAM Organic N ammonification
KDNI Denitrification of N03
KNI Nitrification
KIMAM Ammonium immobilization (only relevant if NUPTFG = 0 or 1)
HSPF expects this table to appear four times in the User's Control Input; first for the surface layer, second
for the upper layer, third for the lower layer, and fourth for the active groundwater layer. If one or more
occurrences of the table are missing, all reaction parameters for the affected layer(s) will be defaulted to
zero.
449
-------
HSPF Version 12
NIT-ORGPM
Organic nitrogen transformation parameters for the surface, upper, lower, or groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-ORGPM
<-range>< orgpm >
(repeats until all operations of this type are covered)
END NIT-ORGPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-ORGPM
KLON
# - #
1 3 250.
END NIT-ORGPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
KLON
4F10.0
1.0E20
o
o
1.0E20
none
Both
KRON
1.0E20
o
o
1.0E20
none
Both
KONLR
o
o
o
o
none
/day
Both
THNLR
1.07
1.0
2.0
none
Both
Explanation
This table is only required in order to simulate detailed organic nitrogen transformations and transport
(designed primarily for forests). The table is supplied four times - once for each soil layer. If one or
more occurrences of the table are missing, all parameters for the affected layer(s) will be defaulted.
KLON is the particulate/soluble partitioning coefficient for labile organic N. KRON is the
particulate/soluble partitioning coefficient for refractory organic N. KONLR is the first-order conversion
rate of labile to refractory particulate organic N and THNLR is the associated temperature correction
coefficient.
KRON KONLR THNLR ***
/day
200. .02 1.07
¦k -k -k
450
-------
Users Control Input
NIT-AMVOLAT
Ammonia volatilization parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67 8
•A-***************************
Layout
¦k -k -k -k -k -k
NIT-AMVOLAT
<-range>< amvopm >
(repeats until all operations of this type are covered)
END NIT-AMVOLAT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-AMVOLAT
SKVOL UKVOL LKVOL AKVOL
x - x (/day) (/day) (/day) (/day)
1 3 0.4 0.2 0.1 0.0
END NIT-AMVOLAT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
SKVOL,UKVOL,
6F10.0
o
o
o
o
none
/day
Both
LKVOL,AKVOL
THVOL
1.07
1.0
2.0
none
Both
TRFVOL
20.0
o
o
35.0
deg C
Both
Explanation
SKVOL, UKVOL, LKVOL, and AKVOL are the ammonia volatilization rates in the surface, upper,
lower, and groundwater layers, respectively. THVOL is the temperature correction coefficient. TRFVOL
is the reference temperature for the correction.
This table is only used if volatilization of ammonia is simulated (AMVOFG = 1 in Table-type NIT-
FLAGS).
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
THVOL TRFVOL ***
(-) (deg C) ***
1.07 20.0
451
-------
HSPF Version 12
NIT-CMAX
Maximum solubility of ammonium
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-CMAX
<-range><—cmax—>
(repeats until all operations of this type are covered)
END NIT-CMAX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-CMAX
CMAX***
# - # (ppm)* * *
1 5 15.0
END NIT-CMAX
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CMAX F10.0 0.0 0.0 none ppm Both
Explanation
CMAX is the maximum solubility of ammonium in water. This table only appears once, and is only
required if FORAFG = 1 (adsorption/desorption is simulated using single-value Freundlich method).
452
-------
Users Control Input
NIT-SVALPM
Nitrogen single value
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
l
12345678901234567
•A-****************
Layout
¦k -k -k -k -k -k
NIT-SVALPM
<-range>< svalpm >
(repeats until all operations of this type are covered)
END NIT-SVALPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-SVALPM
XFIX
# - # (ppm)
1 3 10.0
END NIT-SVALPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
XFIX
3F10.0
0 ,
.0
o
o
none
ppm
Both
K1
0 ,
.0
o
o
none
1/kg
Both
Nl
none
1.0
none
none
Both
Explanation
This table is only required if FORAFG = 1; that is, adsorption and desorption of ammonium is simulated
using the single-value Freundlich method.
This table is exactly analogous to Table-type PEST-SVALPM.
Freundlich adsorption/de sorption parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
2 3 4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
K1 Nl***
¦k -k -k
5.0 1.2
453
-------
HSPF Version 12
NIT-UPTAKE
Nitrogen plant uptake rate parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-UPTAKE
<-range>< uptake >
(repeats until all operations of this type are covered)
END NIT-UPTAKE
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-UPTAKE
Nitrogen plant uptake rates (/day) ***
# - # Surface Upper Lower Groundw***
1 2 0.01 0.02 0.01
END NIT-UPTAKE
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SKPLN,UKPLN, 4F10.0 0.0 0.0 none /day Both
LKPLN,AKPLN
Explanation
SKPLN, UKPLN, LKPLN and AKPLN are the plant nitrogen uptake reaction rate parameters for the
surface, upper, lower, and active groundwater layers, respectively. This table is required when first-order
plant uptake is being used, and uptake parameters do not vary monthly (NUPTFG = 0 and VNUTFG = 0
in Table-type NIT-FLAGS).
454
-------
Users Control Input
MON-NITUPT
Monthly plant uptake parameters for nitrogen, for the surface, upper, lower or groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NITUPT
<-range>< ion-uptake >
(repeats until all operations of this type are covered)
END MON-NITUPT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NITUPT
Plant uptake parms for nitrogen in upper layer (/day) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 4 .01 .03 .05 .05 .03 .01
END MON-NITUPT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KPLNM(*) 12F5.0 0.0 0.0 none /day Both
Explanation
This table is required if first-order plant uptake is being used and the plant uptake parameters vary
throughout the year (NUPTFG = 0 and VNUTFG = 1 in Table-type NIT-FLAGS). The entire table is
supplied four times; first for the surface layer, second for the upper layer, third for the lower layer, and
fourth for the active groundwater layer. If omitted, default values will be supplied. For example, if the
third and fourth occurrences of the table are omitted, the parameters for the lower and groundwater layers
will default to zero.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
455
-------
HSPF Version 12
NIT-YIELD
Yield-based nitrogen plant uptake parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-YIELD
<-range><-target-X-maxrat->
(repeats until all operations of this type are covered)
END NIT-YIELD
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-YIELD
NUPTGT NMXRAT ***
# - # (LB/AC) ***
1 100.00 1.5
END NIT-YIELD
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<-target-> NUPTGT
<-maxrat-> NMXRAT
F10.0 0.0 0.0
0.0 0.0
F10.0 1.0 1.0
none lb/ac Engl
none kg/ha Metric
none none Both
Explanation
NUPTGT is the total annual target for plant uptake of nitrogen for all soil layers and all crops during the
calendar year.
NMXRAT is the ratio of the maximum uptake rate to the optimum (target) rate when the crop is making
up a deficit in nitrogen uptake.
This table is required only when yield-based plant uptake is being used (i.e., NUPTFG = 1 in Table-type
NIT-FLAGS).
456
-------
Users Control Input
MON-NUPT-FR1
Monthly fractions for yield-based plant uptake of nitrogen
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NUPT-FR1
<-range>< mon-nuptfr >
(repeats until all operations of this type are covered)
END MON-NUPT-FR1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NUPT-FR1
Monthly fractions for plant uptake target ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 .1 .2 .2 .2 .1 .2
2 .1 .1 .05 .05 .1 .1 .1 .05 .05 .1 .1 .1
END MON-NUPT-FR1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
NUPTFM(*) 12F5.0 0.0 0.0 1.0 none Both
Explanation
These are the fractions of the total annual nitrogen plant uptake target (NUPTGT in Table-type NIT-
YIELD) applied to each month. The fractions across the year must sum to unity; otherwise, an error
message is generated. This table is only required when yield-based plant uptake of nitrogen is being used
(NUPTFG = 1 in Table-type NIT-FLAGS).
457
-------
HSPF Version 12
MON-NUPT-FR2
Monthly fractions for yield-based plant uptake of nitrogen from a soil layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NUPT-FR2
<-range>< mon-layf r >
(repeats until all operations of this type are covered)
END MON-NUPT-FR2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NUPT-FR2
Monthly fractions for plant uptake target from surface ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
2 .15 .15 .15 .1 .1 .1 .1 .1 .15 .12 .12 .1
END MON-NUPT-FR2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SNUPTM(*),UNUPTM(*) 12F5.0 0.0 0.0 1.0 none Both
LNUPTM(*) , ANUPTM(*)
Explanation
These are the fractions of the monthly nitrogen plant uptake target (NUPTGT in Table-type NIT-YIELD
times NUPTFM in Table-type MON-NUPT-FR1) applied to each soil layer: surface, upper, lower, and
active groundwater. The fractions across the four layers (NOT across the 12 months, as for MON-
NUPT-FR1) must sum to unity; otherwise an error message is generated. This table is only required
when yield-based plant uptake of nitrogen is being used (NUPTFG = 1 in Table-type NIT-FLAGS).
Then, the system expects it to appear four times: first, for the surface layer, second for the upper layer,
etc. If one or more occurrences of the table are missing, all parameters for the affected layer(s) will be
defaulted to zero.
458
-------
Users Control Input
NIT-UPIMC SAT
Half saturation constants for nitrogen uptake and immobilization when using saturation kinetics method
(for surface, upper, lower, or groundwater layer)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-UPIMCSAT
<-range>< csatpm >
(repeats until all operations of this type are covered)
END NIT-UPIMCSAT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-UPIMCSAT
CSUNI CSUAM CSINI CSIAM ***
x - x (ug/1) (ug/1) (ug/1) (ug/1) ***
1 3 40. 15. 4.0 1.5
END NIT-UPIMCSAT
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CSUNI,CSUAM 4F10.0 0.0 0.0 none ug/1 Both
CSINI,CSIAM
Explanation
CSUNI and CSUAM are the nitrate and ammonia half saturation constants for uptake. CSINI and
CSIAM are the nitrate and ammonia half saturation constants for immobilization.
This table is only required if nitrogen uptake and immobilization are being simulated using the saturation
kinetics method (NUPTFG = 2 or -2 in Table-type NIT-FLAGS). If NUPTFG = 2, HSPF expects this
table to appear four times in the User's Control Input, once for each soil layer. If one or more
occurrences of the table are missing, all parameters for the affected layer(s) will be defaulted to zero. If
NUPTFG = -2, HSPF expects one occurrence of this table, and uses the same parameters for all four soil
layers.
459
-------
HSPF Version 12
NIT-UPIMKMAX
Maximum rate constants for nitrogen uptake and immobilization when using saturation kinetics method
(for surface, upper, lower, or groundwater layer)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-UPIMKMAX
<-range>< kmaxpm >
(repeats until all operations of this type are covered)
END NIT-UPIMKMAX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-UPIMKMAX
Maximum plant uptake and immobilization rates (mg/l/day) ***
x - x KUPNI KUPAM KIMNI KIMAM ***
1 3 1.0 0.6 .05 .02
END NIT-UPIMKMAX
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KUPNI,KUPAM 4F10.0 0.0 0.0 none mg/l.d Both
KIMNI,KIMAM
Explanation
KUPNI and KUPAM are the nitrate and ammonia maximum uptake rates. KIMNI and KIMAM are the
nitrate and ammonia maximum immobilization rates.
This table is only required if nitrogen uptake and immobilization are being simulated using the saturation
kinetics method (NUPTFG = 2 or -2 in Table-type NIT-FLAGS). IfNUPTFG = 2, HSPF expects this
table to appear four times in the User's Control Input, once for each soil layer. If one or more
occurrences of the table are missing, all parameters for the affected layer(s) will be defaulted to zero. If
NUPTFG = -2, HSPF expects one occurrence of this table, and uses the same parameters for all four soil
layers.
460
-------
Users Control Input
MON-NITUPNI
Monthly nitrate uptake maximum rates when using saturation kinetics method
(for the surface, upper, lower or groundwater layer)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NITUPNI
<-range>< mon-upnipm >
(repeats until all operations of this type are covered)
END MON-NITUPNI
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NITUPNI
Maximum plant uptake rate for nitrate (mg/l/day) ***
x - x JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 4 .05 .25 .75 1.2 2.0 2.5 2.5 2.5 2.0 1.2 .75 .25
END MON-NITUPNI
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KUNIM(*) 12F5.0 0.0 0.0 none mg/l.d Both
Explanation
This table contains the maximum nitrate uptake rates when using the saturation kinetics method. The
table is required if saturation kinetics are being simulated for uptake and the rates vary monthly
(NUPTFG = 2 or -2 and VNUTFG = 1 in Table- type NIT-FLAGS). If NUPTFG = 2, HSPF expects this
table to appear four times in the User's Control Input, once for each soil layer. If one or more
occurrences of the table are missing, all parameters for the affected layer(s) will be defaulted to zero. If
NUPTFG = -2, HSPF expects one occurrence of this table, and uses the same parameters for all four soil
layers.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
461
-------
HSPF Version 12
MON-NITUP AM
Monthly ammonia uptake maximum rates when using saturation kinetics method
(for the surface, upper, lower or groundwater layer)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NITUPAM
<-range>< mon-upampm >
(repeats until all operations of this type are covered)
END MON-NITUPAM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NITUPAM
Max ammonia uptake rate in upper layer (mg/l/day) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 4 .03 .06 .12 .30 .45 .60 .60 .60 .45 .30 .15 .08
END MON-NITUPAM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KUAMM(*) 12F5.0 0.0 0.0 none mg/l.d Both
Explanation
This table contains the maximum ammonia uptake rates when using the saturation kinetics method. The
table is required if saturation kinetics are being simulated for uptake and the rates vary monthly
(NUPTFG = 2 or -2 and VNUTFG = 1 in Table- type NIT-FLAGS). If NUPTFG = 2, HSPF expects this
table to appear four times in the User's Control Input, once for each soil layer. If one or more
occurrences of the table are missing, all parameters for the affected layer(s) will be defaulted to zero. If
NUPTFG = -2, HSPF expects one occurrence of this table, and uses the same parameters for all four soil
layers.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
462
-------
Users Control Input
MON-NITIMNI
Monthly nitrate immobilization rates when using saturation kinetics method
(for the surface, upper, lower or groundwater layer)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NITIMNI
<-range>< mon-imnipm >
(repeats until all operations of this type are covered)
END MON-NITIMNI
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NITIMNI
Nitrate immobilization rate in upper layer (mg/l/day) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 4 .01 .01 .02 .02 .03 .04 .04 .04 .03 .03 .02 .01
END MON-NITIMNI
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KINIM(*) 12F5.0 0.0 0.0 none mg/l.d Both
Explanation
This table contains the maximum nitrate immobilization rates when using the saturation kinetics method.
The table is required if saturation kinetics are being simulated for immobilization, and the rates vary
monthly (NUPTFG = 2 or -2 and VNUTFG = 1 in Table-type NIT-FLAGS). If NUPTFG = 2, HSPF
expects this table to appear four times in the User's Control Input, once for each soil layer. If one or more
occurrences of the table are missing, all parameters for the affected layer(s) will be defaulted to zero. If
NUPTFG = -2, HSPF expects one occurrence of this table, and uses the same parameters for all four soil
layers.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
463
-------
HSPF Version 12
MON-NITIMAM
Monthly ammonia immobilization rates when using saturation kinetics method
(for the surface, upper, lower or groundwater layer)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NITIMAM
<-range>< ion- imampm >
(repeats until all operations of this type are covered)
END MON-NITIMAM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NITIMAM
Ammonia immobilization rate in upper layer (mg/l/day) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 4 .01 .01 .01 .02 .02 .02 .03 .03 .02 .02 .02 .01
END MON-NITIMAM
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KIAMM(*) 12F5.0 0.0 0.0 none mg/l.d Both
Explanation
This table contains the maximum ammonia immobilization rates when using the saturation kinetics
method. The table is required if saturation kinetics are being simulated for immobilization, and the rates
vary monthly (NUPTFG = 2 or -2 and VNUTFG = 1 in Table-type NIT-FLAGS). If NUPTFG = 2, HSPF
expects this table to appear four times in the User's Control Input, once for each soil layer. If one or more
occurrences of the table are missing, all parameters for the affected layer(s) will be defaulted to zero. If
NUPTFG = -2, HSPF expects one occurrence of this table, and uses the same parameters for all four soil
layers.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
464
-------
Users Control Input
NIT-BGPLRE T
Below-ground plant nitrogen return rates
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-BGPLRET
<-range>< plrepm >
(repeats until all operations of this type are covered)
END NIT-BGPLRET
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-BGPLRET
Below-ground plant return rates and refractory fraction ***
SKPRBN UKPRBN LKPRBN AKPRBN BGNPRF ***
x - x (/day) (/day) (/day) (/day) ***
1 3 .02 .01 .01 0.0 0.1
END NIT-BGPLRET
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
SKPRBN
F10.0
o
o
o
o
none
/day
Both
UKPRBN
F10.0
o
o
o
o
none
/day
Both
LKPRBN
F10.0
o
o
o
o
none
/day
Both
AKPRBN
F10.0
o
o
o
o
none
/day
Both
BGNPRF
F10.0
o
o
o
o
none
none
Both
Explanation
SKPRBN, UKPRBN, LKPRBN, and AKPRBN are the first-order return rates of below-ground plant N to
organic N storage in the four layers. BGNPRF is the fraction of plant N return that becomes particulate
refractory organic N. (The remainder becomes particulate labile organic N.)
This table is only used when plant return rates are constant (VPRNFG = 0 in Table-type NIT-FLAGS).
465
-------
HSPF Version 12
MON-NPRETBG
Monthly below-ground plant N return rates for the surface, upper, lower or groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NPRETBG
<-range>< mon-plrepm >
(repeats until all operations of this type are covered)
END MON-NPRETBG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NPRETBG
Return rates for below-ground plant N in upper layer (/day) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 4 .01 .03 .05 .05 .03 .01
END MON-NPRETBG
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KRBNM(*) 12F5.0 0.0 0.0 none /day Both
Explanation
This table contains the first-order return rates of below-ground plant N to organic N. The table is used if
the plant N return parameters vary throughout the year (VPLRFG = 1 in Table-type NIT-FLAGS). The
entire table is supplied four times; first for the surface layer, second for the upper layer, third for the lower
layer, and fourth for the active groundwater layer. If omitted, default values will be supplied. For
example, if the third and fourth occurrences of the table are omitted, the parameters for the lower and
groundwater layers will default to zero.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
466
-------
Users Control Input
MON-NPRETFBG
Monthly refractory fractions for below-ground plant N return
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NPRETFBG
<-range>< mon-plrefr >
(repeats until all operations of this type are covered)
END MON-NPRETFBG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NPRETFBG
Monthly refractory
x - x JAN FEB MAR APR
1 4 .02 .02 .03 .04
END MON-NPRETFBG
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
BNPRFM(*)
12F5.0
o
o
o
o
1.0
none
Both
Explanation
This table contains the fractions of below-ground plant N return which become particulate refractory
organic N. (The rest becomes particulate labile organic N.) The table is used only if the plant N return
parameters vary throughout the year (VPLRFG = 1 in Table-type NIT-FLAGS).
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
fractions for below-ground plant N return ***
MAY JUN JUL AUG SEP OCT NOV DEC ***
.04 .05 .05 .05 .04 .04 .03 .03
467
-------
HSPF Version 12
NIT-AGUTF
Above-ground plant uptake fractions
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-AGUTF
<-range>< agutf >
(repeats until all operations of this type are covered)
END NIT-AGUTF
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-AGUTF
Above-ground plant uptake fractions ***
x - x SANUTF UANUTF LANUTF AANUTF ***
1 3 0.8 0.8 0.7 0.7
END NIT-AGUTF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SANUTF,UANUTF, 4F10.0 0.0 0.0 1.0 none Both
LANUTF,AANUTF
Explanation
SANUTF, UANUTF, LANUTF and AANUTF are the above-ground plant uptake fractions for the
surface, upper, lower, and active groundwater layers, respectively. This table is used only when the
above-ground compartment is being simulated and uptake parameters do not vary monthly (ALPNFG = 1
and VNUTFG = 0 in Table-type NIT-FLAGS).
468
-------
Users Control Input
MON-NITAGUTF
Monthly above-ground plant uptake fractions for nitrogen, for the surface, upper, lower or
groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NITAGUTF
<-range>< mon-agutf >
(repeats until all operations of this type are covered)
END MON-NITAGUTF
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NITAGUTF
Monthly above-ground fractions for plant uptake ***
x - x JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 4 .70 .70 .70 .75 .75 .80 .80 .80 .75 .75 .70 .70
END MON-NITAGUTF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ANUFM(*) 12F5.0 0.0 0.0 1.0 none Both
Explanation
This table contains the fractions of plant uptake which go to above-ground plant N storage. The table is
used only if the above-ground compartment is being simulated and the plant uptake parameters vary
throughout the year (ALPNFG = 1 and VNUTFG = 1 in Table-type NIT-FLAGS). The table is supplied
four times; first for the surface layer, second for the upper layer, third for the lower layer, and fourth for
the active groundwater layer. If omitted, default values will be supplied. For example, if the third and
fourth occurrences of the table are omitted, the parameters for the lower and groundwater layers will
default to zero.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
469
-------
HSPF Version 12
NIT-AGPLRET
Above-ground plant nitrogen return rates
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-AGPLRET
<-range>< plrepm >
(repeats until all operations of this type are covered)
END NIT-AGPLRET
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-AGPLRET
Above-ground plant return rates and refractory fraction
AGKPRN SKPRLN UKPRLN LINPRF
x - x (/day) (/day) (/day)
1 3 .01 .02 .01 0.1
END NIT-AGPLRET
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit
AGKPRN
F10.0
o
o
o
o
none
/day
Both
SKPRLN
F10.0
o
o
o
o
none
/day
Both
UKPRLN
F10.0
o
o
o
o
none
/day
Both
LINPRF
F10.0
o
o
o
o
none
none
Both
Explanation
AGKPRN is the first-order return rate of above-ground plant N to litter N.
SKPRLN and UKPRLN are the first-order return rates of litter N to organic N storage in the surface and
upper soil layers, respectively.
LINPRF is the fraction of litter N return that becomes particulate refractory organic N. (The rest becomes
particulate labile organic N.)
This table is only used when the above-ground and litter compartments are being simulated for nitrogen,
and plant return rates are constant (i.e., ALPNFG = 1 and VPRNFG = 0 in Table-type NIT-FLAGS).
470
-------
Users Control Input
MON-NPRETAG
Monthly above-ground plant N return rates to litter N
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NPRETAG
<-range>< mon-plrepm >
(repeats until all operations of this type are covered)
END MON-NPRETAG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NPRETAG
Return rates for above-ground
# - # JAN FEB MAR APR MAY JUN
1 4 .01 .03 .05
END MON-NPRETAG
plant N to litter N (/day) ***
JUL AUG SEP OCT NOV DEC ***
.05 .03 .01
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KRANM(*) 12F5.0 0.0 0.0 none /day Both
Explanation
This table contains the first-order return rate of above-ground plant N to litter N. The table is used only
when the above-ground compartment is being simulated and the plant N return parameters vary
throughout the year (i.e., ALPNFG = 1 and VPLRFG = 1 in Table-type NIT-FLAGS).
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
471
-------
HSPF Version 12
MON-NPRETLI
Monthly litter plant N return rates for the surface or upper layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NPRETLI
<-range>< mon-plrepm >
(repeats until all operations of this type are covered)
END MON-NPRETLI
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NPRETLI
Return rates for litter plant N to upper layer (/day) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 4 .01 .03 .05 .05 .03 .01
END MON-NPRETLI
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KRLNM(*) 12F5.0 0.0 0.0 none /day Both
Explanation
This table contains the return rates of litter plant N to particulate labile organic N in the surface or upper
layer. The table is required if the plant N return parameters vary throughout the year (VPLRFG = 1 in
Table-type NIT-FLAGS). The entire table is supplied two times; first for the surface layer and second for
the upper layer. If omitted, default values will be supplied. For example, if the second occurrence of the
table is omitted, the parameters for the upper layer will default to zero.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
472
-------
Users Control Input
MON-NPRETFLI
Monthly refractory fractions for litter N return
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-NPRETFLI
<-range>< mon-plrefr >
(repeats until all operations of this type are covered)
END MON-NPRETFLI
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-NPRETFLI
Monthly refractory
x - x JAN FEB MAR APR
1 4 .02 .02 .03 .04
END MON-NPRETFLI
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
LNPRFM(*)
12F5.0
o
o
o
o
1.0
none
Both
Explanation
This table contains the fractions of litter N return which become particulate refractory organic N. (The
rest becomes particulate labile organic N.) The table is used only if the litter compartment is being
simulated and the plant N return parameters vary throughout the year (ALPNFG = 1 and VPLRFG = 1 in
Table-type NIT-FLAGS).
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
fractions for litter N return ***
MAY JUN JUL AUG SEP OCT NOV DEC ***
.04 .05 .05 .05 .04 .04 .03 .03
473
-------
HSPF Version 12
NIT-STOR1
Initial storage of nitrogen in the surface, upper, lower, or groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-STORl
<-range>< nit-storl >
(repeats until all operations of this type are covered)
END NIT-STORl
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-STORl
Initial storage of N (lb/ac) ***
x - x LORGN AMAD AMSU N03 PLTN RORGN ***
1 4 100. 500. 50.
END NIT-STORl
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
LORGN,AMAD,AMSU, 6F10.0 0.0 0.0 none lb/ac Engl
N03,PLTN,RORGN 0.0 0.0 none kg/ha Metric
Explanation
This table is similar in organization to Table-type PEST-STOR1. It specifies the initial storage of N in
one of the four major soil layers. The values in the table are:
LORGN
Labile organic nitrogen
AMAD
Adsorbed ammonium
AMSU
Solution ammonium
N03
Nitrate
PLTN
Nitrogen stored in plants
RORGN
Refractory organic nitrogen
474
-------
Users Control Input
NIT-STOR2
Initial storage of nitrogen in upper layer transitory (interflow) storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NIT-STOR2
<-range>< nit-stor2 >
(repeats until all operations of this type are covered)
END NIT-STOR2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NIT-STOR2
Initial N in interflow, above-ground, and litter storage (lb/ac) ***
x - x IAMSU IN03 ISLON ISRON AGPLTN LITTRN ***
1 2 100. 10.
END NIT-STOR2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
IAMSU,IN03, 6F10.0 0.0 0.0 none lb/ac Engl
ISRON,ISRON, 0.0 0.0 none kg/ha Metric
AGPLTN,LITTRN
Explanation
This table specifies the initial storage of N in the upper layer transitory (interflow) storage. If the above-
ground and litter compartments are being simulated (ALPNFG = 1 in Table-type NIT-FLAGS), then the
initial storage for these compartments is also specified.
IAMSU Solution ammonium
IN03 Nitrate
ISLON Solution labile organic nitrogen
ISRON Solution refractory organic nitrogen
AGPLTN Above-ground plant nitrogen (only relevant if ALPNFG = 1)
LITTRN Litter nitrogen (only relevant if ALPNFG =1)
475
-------
HSPF Version 12
PHOS input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type SOIL-DATA if not already input for PWATER, PEST or NITR
Table-type PHOS-FLAGS
Table-type PHOS-AD-FLAGS
Table-type PHOS-FSTGEN
Table-type PHOS-FSTPM for surface layer
Table-type PHOS-FSTPM for upper layer
Table-type PHOS-FSTPM for lower layer
Table-type PHOS-FSTPM for groundwater layer
Table-type PHOS-CMAX
Table-type PHOS-SVALPM for surface layer
Table-type PHOS-SVALPM for upper layer
Table-type PHOS-SVALPM for lower layer
Table-type PHOS-SVALPM for groundwater layer
if
FORPFG=
1
(single value
Freundlich
method)
Table-type PHOS-UPTAKE
Table-type MON-PHOSUPT
Table-type MON-PHOSUPT
Table-type MON-PHOSUPT
Table-type MON-PHOSUPT
for surface layer
for upper layer
for lower layer
for groundwater layer
if VPUTFG= 0
| if VPUTFG= 1
I
if PUPTFG= 0
Table-type SOIL-DATA2
Table-type CROP-DATES
Table-type PHOS-YIELD
Table-type MON-PUPT-FR1
Table-type MON-PUPT-FR2
Table-type MON-PUPT-FR2
Table-type MON-PUPT-FR2
Table-type MON-PUPT-FR2
| if not already input
| for PWATER or NITR
for surface layer
for upper layer
for lower layer
for groundwater layer
if PUPTFG= 1
Table-type PHOS-STOR1
Table-type PHOS-STOR1
Table-type PHOS-STOR2
Table-type PHOS-STOR1
Table-type PHOS-STOR1
for surface layer storage
for upper layer principal storage
for upper layer transitory storage
for lower layer storage
for groundwater layer storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
476
-------
Users Control Input
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows,
except for SOIL-DATA, SOIL-DATA2, and CROP-DATES, which are documented under the input for
Section PWATER.
The comments given alongside the table names above indicate under what circumstances a table is
expected. Note that if all the fields in a table have default values, the table can be omitted from the User's
Control Input. Then, the defaults will be adopted. However, any tables that are repeated for multiple soil
layers should generally not be omitted because the "nth" occurrence of one of these tables refers to the
corresponding "nth" layer. If a table for layer i is omitted, the next occurrence of the table (intended for
layer i+1) will be applied to layer i, and unintended results may occur.
NUPTFG and PUPTFG are the plant uptake method flag for nitrogen and phosphorus, respectively.
VPUTFG and FORPFG are the phosphorus plant uptake flag and the phosphate adsorption/desorption
method flag, respectively. NUPTFG is described under Table-type NIT-FLAGS above. The others are
described under Table-type PHOS-FLAGS below.
477
-------
HSPF Version 12
PHOS-FLAGS
Flags governing simulation of phosphorus
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-FLAGS
<-range>< phos flags >
(repeats until all operations of this type are covered)
END PHOS-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-FLAGS
VPUT FORP ITMX BNUM CNUM PUPT ***
# - #
14 1 10 10 1
END PHOS-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
VPUTFG
515
0
0
1
FORPFG
0
0
1
ITMAXP
30
1
100
BNUMP
none
1
1000
CNUMP
none
1
1000
PUPTFG
0
0
1
478
-------
Users Control Input
Explanation
If VPUTFG = 1, the first-order plant uptake parameters for phosphorus are allowed to vary throughout the
year and four tables of type MON-PHOSUPT are expected in the User's Control Input. The first
appearance is for the surface layer, 2nd for upper layer, 3rd for the lower layer, and 4th for the
groundwater layer. If VPUTFG = 0, the uptake rates do not vary through the year and a value for each
layer is specified in a single table (Table-type PHOS-UPTAKE).
FORPFG indicates which method is to be used to simulate adsorption and desorption of phosphate:
0 - first-order kinetics
1 - single-value Freundlich method
ITMAXP is the maximum number of iterations that will be attempted in solving the Freundlich equation;
applicable only if FORPFG= 1.
BNUMP is the number of time steps that will elapse between recalculation of biochemical reaction fluxes.
For example, if BNUMP =10 and the simulation time step is 5 minutes, then these fluxes will be
recalculated every 50 minutes. All reactions except adsorption/desorption fall into this category.
CNUMP is the corresponding number for the chemical (adsorption/desorption) reactions.
PUPTFG indicated which method is to be used to simulate plant uptake of phosphorus:
0 - first-order kinetics
1 - yield-based algorithm
479
-------
HSPF Version 12
PHOS-AD-FLAGS
Atmospheric deposition flags for PHOS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END PHOS-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-AD-FLAGS
Atmospheric deposition flags ***
*** PHOSPHATE ORGANIC P
*** SURF UPPR SURF UPPR
#*** #
1 7 -1 10 -1 -1 11 12 13 -1
END PHOS-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
PHADFG(*) (IX,213) 0 -1 none
Explanation
PHADFG is an array of flags indicating the source of atmospheric deposition data. Each species can be
deposited into either the surface or upper soil layers. Each species/layer combination has two flags. The
first is for dry or total deposition flux, and the second is for wet deposition concentration. The flag values
indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series PHADFX or PHADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
480
-------
Users Control Input
PHOS-FSTGEN
Temperature correction parameters for phosphorus reactions
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-FSTGEN
<-range>< theta >
(repeats until all operations of this type are covered)
END PHOS-FSTGEN
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-FSTGEN
Temperature correction
# - # THPLP THKDSP
1 1.07
END PHOS-FSTGEN
parameters (theta) **
THKADP THKIMP THKMP***
1.05
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
THPLP
5F10.0 1.07
1.0
2.0
none
Both
THKDSP
1.05
1.0
2.0
none
Both
THKADP
1.05
1.0
2.0
none
Both
THKIMP
1.07
1.0
2.0
none
Both
THKMP
1.07
1.0
2.0
none
Both
Explanation
These are the temperature correction coefficients (theta) for the various reactions:
THPLP Plant uptake (only relevant if PUPTFG=0 in Table PHOS-FLAGS)
THKDSP Phosphate desorption (only relevant if FORPFG=0 in Table PHOS-FLAGS)
THKADP Phosphate adsorption (only relevant if FORPFG=0 in Table PHOS-FLAGS)
THKIMP Phosphate immobilization
THKMP Organic P mineralization
481
-------
HSPF Version 12
PHOS-FSTPM
7 8
901234567890
•A-***********
PHOS-FSTPM
<-range>< phos-f stpm >
(repeats until all operations of this type are covered)
END PHOS-FSTPM
¦k -k -k -k -k -k -k
Example
Phosphorus first-order reaction parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2 3 4 5 6
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
PHOS-FSTPM
Phosphorus first-order parameters for surface layer (/day) ***
# - # KDSP KADP KIMP KMP ***
15 .04
END PHOS-FSTPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
4F10.0 0.0 0.0 none /day Both
KDSP,KADP,
KIMP,KMP
Explanation
This table is analogous to Table-type NIT-FSTPM.
are:
KDSP Phosphate desorption (only
KADP Phosphate adsorption (only
KIMP Phosphate immobilization
KMP Organic P mineralization
The reaction rate parameters supplied in this table
used if FORPFG=0 in Table-type PHOS-FLAGS)
used if FORPFG=0 in Table-type PHOS-FLAGS)
482
-------
Users Control Input
PHOS-CMAX
Maximum solubility of phosphate
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67
•A-**************************
Layout
¦k -k -k -k -k -k
PHOS-CMAX
<-range><—cmax—>
(repeats until all operations of this type are covered)
END PHOS-CMAX
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-CMAX
CMAX***
# - # (ppm)* * *
1 2 5.0
END PHOS-CMAX
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
CMAX
F10.0
o
o
o
o
none
ppm
Both
Explanation
This table is exactly analogous to Table-type NIT-CMAX.
CMAX is the maximum solubility of phosphate in water. This table only appears once, and is only
required if FORPFG = 1 in Table-type PHOS-FLAGS (adsorption/desorption is simulated using single-
value Freundlich method).
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
483
-------
HSPF Version 12
PHOS-SVALPM
Phosphorus single value Freundlich adsorption/desorption parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-SVALPM
<-range>< svalpm >
(repeats until all operations of this type are covered)
END PHOS-SVALPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-SVALPM
Parameters for Freundlich method (lower layer) ***
# - # XFIX K1 N1 ***
1 30. 5.0 1.5
END PHOS-SVALPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
XFIX 3F10.0 0.0 0.0 none ppm Both
K1 0.0 0.0 none Both
N1 none 1.0 none Both
Explanation
This table is exactly analogous to Table-type NIT-SVALPM. It is only used if FORPFG= 1 in Table-type
PHOS-FLAGS.
484
-------
Users Control Input
PHOS-UPTAKE
Phosphorus plant uptake parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-UPTAKE
<-range>< phos-uptake >
(repeats until all operations of this type are covered)
END PHOS-UPTAKE
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-UPTAKE
Phosphorus plant uptake parms (/day) ***
# - # SKPLP UKPLP LKPLP AKPLP***
1 .005 .03 .05 .01
END PHOS-UPTAKE
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SKPLP,UKPLP, 4F10.0 0.0 0.0 none /day Both
LKPLP,AKPLP
Explanation
This table is exactly analogous to Table-type NIT-UPTAKE.
SKPLP, UKPLP, LKPLP and AKPLP are the plant phosphorus uptake reaction rate parameters for the
surface, upper, lower, and active groundwater layers, respectively. This table is required when first-order
plant uptake is being used, and uptake parameters do not vary monthly (PUPTFG = 0 and VPUTFG = 0
in Table-type PHOS-FLAGS).
485
-------
HSPF Version 12
MON-PHOSUPT
Monthly plant uptake parameters for phosphorus, for the surface, upper, lower or groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-PHOSUPT
<-range>< mon-phosupt >
(repeats until all operations of this type are covered)
END MON-PHOSUPT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-PHOSUPT
Monthly phosphorus uptake parameters for surface layer (/day)***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
1 2 .01 .03 .07 .07 .04 .01
END MON-PHOSUPT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KPLPM(*) 12F5.0 0.0 0.0 none /day Both
Explanation
This table is exactly analogous to Table-type MON-NITUPT.
This table is required if first-order plant uptake is being used and the plant uptake parameters vary
throughout the year (PUPTFG = 0 and VPUTFG = 1 in Table-type PHOS-FLAGS). The entire table is
supplied four times; first for the surface layer, second for the upper layer, third for the lower layer, and
fourth for the active groundwater layer. If omitted, default values will be supplied. For example, if the
third and fourth occurrences of the table are omitted, the parameters for the lower and groundwater layers
will default to zero.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
486
-------
Users Control Input
PHOS-YIELD
Yield-based phosphorus plant uptake parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3 4
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-YIELD
<-range><-target-X-maxrat->
(repeats until all operations of this type are covered)
END PHOS-YIELD
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-YIELD
PUPTGT
# - # (LB/AC)
1 100.00
END PHOS-YIELD
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
<-target->
PUPTGT
F10.0
o
o
o
o
none
lb/ac
Engl
o
o
o
o
none
kg/ha
Metric
<-maxrat->
PMXRAT
F10.0
1.0
1.0
2 . 0
none
Both
Explanation
This table is exactly analogous to Table-type NIT-YIELD.
PUPTGT is the total annual target for plant uptake of phosphorus for all soil layers and all crops during
the calendar year.
PMXRAT is the ratio of the maximum uptake rate to the optimum (target) rate when the crop is making
up a deficit in phosphorus uptake.
This table is required only when yield-based plant uptake is being used (i.e., PUPTFG = 1 in Table-type
PHOS-FLAGS).
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
PMXRAT ***
¦k -k -k
1.5
487
-------
HSPF Version 12
MON-PUPT-FR1
Monthly fractions for yield-based plant uptake of phosphorus
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-PUPT-FR1
<-range>< mon-puptfr >
(repeats until all operations of this type are covered)
END MON-PUPT-FR1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-PUPT-FR1
Monthly fractions for plant uptake target ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
1 .1 .2 .2 .2 .1 .2
2 .1 .1 .05 .05 .1 .1 .1 .05 .05 .1 .1 .1
END MON-PUPT-FR1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
PUPTFM(*) 12F5.0 0.0 0.0 1.0 none Both
Explanation
This table is exactly analogous to Table-type MON-NUPT-FR1.
These are the fractions of the total annual phosphorus plant uptake target (PUPTGT in Table-type PHOS-
YIELD) applied to each month. The fractions across the year must sum to unity; otherwise, an error
message is generated. This table is only required when yield-based plant uptake of phosphorus is being
used (PUPTFG = 1 in Table-type PHOS-FLAGS).
488
-------
Users Control Input
MON-PUPT-FR2
Monthly fractions for yield-based plant uptake of phosphorus from a soil layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-PUPT-FR2
<-range>< mon-layf r >
(repeats until all operations of this type are covered)
END MON-PUPT-FR2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-PUPT-FR2
Monthly fractions for plant uptake target from surface ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
2 .15 .15 .15 .1 .1 .1 .1 .1 .15 .12 .12 .1
END MON-PUPT-FR2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
S PUPTM(*),UPUPTM(*)
12F5.0
o
o
o
o
1.0
none
Both
LPUPTM(*),APUPTM(*)
Explanation
This table is exactly analogous to Table-type MON-NUPT-FR2. Refer to that table for details.
489
-------
HSPF Version 12
PHOS-STOR1
Initial phosphorus storage in the surface, upper, lower or groundwater layer
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-STOR1
<-range>< phos-storl >
(repeats until all operations of this type are covered)
END PHOS-STOR1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-STOR1
Initial phosphorus in upper layer (lb/ac) ***
# - # ORGP P4AD P4SU PLTP ***
1 3 50. 2000. 200.
END PHOS-STOR1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ORGP,P4AD, 4F10.0 0.0 0.0 none lb/ac Engl
P4SU,PLTP 0.0 0.0 none kg/ha Metric
Explanation
This table is analogous to Table-type NIT-STOR1. It specifies the initial storage of P in one of the four
major soil layers. The values in the table are:
ORGP Organic phosphorus
P4AD Adsorbed phosphate
P4SU Solution phosphate
PLTP Phosphorus stored in plants
490
-------
Users Control Input
PHOS-STOR2
Initial storage of phosphate in upper layer transitory (interflow) storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHOS-STOR2
<-range><—phos—>
(repeats until all operations of this type are covered)
END PHOS-STOR2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PHOS-STOR2
Phosphate in interflow
# - # IP4SU
1 6 100.
END PHOS-STOR2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
IP4SU
F10.0
o
o
o
o
none
lb/ac
Engl
o
o
o
o
none
kg/ha
Metric
Explanation
This table is analogous to Table-type NIT-STOR2. It specifies the initial storage of solution phosphate in
the upper layer transitory (interflow) storage.
(kg/ha) ***
¦k -k -k
491
-------
HSPF Version 12
TRACER input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type TRAC-ID
[Table-type TRAC-AD-FLAGS]
[Table-type TRAC-TOPSTOR]
[Table-type TRAC-SUBSTOR]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Note: if all the fields in a table have default values, the table can be omitted from the User's Control
Input. Then, the defaults will be adopted.
492
-------
Users Control Input
TRAC-ID
Name of conservative substance (tracer)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345 67
•A-************************************
Layout
¦k -k -k -k -k -k
TRAC-ID
<-range>< trac-id >
(repeats until all operations of this type are covered)
END TRAC-ID
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
TRAC-ID
Name of tracer
# - #
1 10 Chloride
END TRAC-ID
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
TRACID(*)
5A4
none
none
none
Explanation
TRACID is a 20 character identifier (name) of the tracer substance.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
¦k -k -k
493
-------
HSPF Version 12
TRAC-AD-FLAGS
Atmospheric deposition flags for TRACER
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
TRAC-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END TRAC-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
TRAC-AD-FLAGS
Atmospheric deposition flags ***
*** SURF UPPR
#*** #
1 7 -1 10 -1 -1
END TRAC-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
TRADFG(*)
(IX,213)
0
-1
none
Explanation
TRADFG is an array of flags indicating the source of atmospheric deposition data. The tracer substance
can be deposited into either the surface or upper soil layers. Each layer has two flags. The first is for dry
or total deposition flux, and the second is for wet deposition concentration. The flag values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series TRADFX or TRADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
494
-------
Users Control Input
TRAC-TOPSTOR
Initial quantity of tracer in topsoil
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67
•A-**************************
Layout
¦k -k -k -k -k -k
TRAC-TOPSTOR
<-range>< trac-tops tor >
(repeats until all operations of this type are covered)
END TRAC-TOPSTOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
TRAC-TOPSTOR
Initial storage of chloride in topsoil (kg/ha)
# - # STRSU UTRSU ITRSU
1 200.
END TRAC-TOPSTOR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
STRSU,UTRSU,
3F10.0
o
o
o
o
none
lb/ac
Engl
ITRSU
o
o
o
o
none
kg/ha
Metric
Explanation
This table specifies the initial storage of tracer (conservative) in the surface, upper principal, and upper
transitory (interflow) storages.
storages
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
¦k -k -k
495
-------
HSPF Version 12
TRAC-SUBSTOR
Initial quantity of tracer in lower and active groundwater storages
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
TRAC-SUBSTOR
<-range>< trac-substor >
(repeats until all operations of this type are covered)
END TRAC-SUBSTOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
TRAC-SUBSTOR
Initial storage of chloride in subsoil layers (lb/ac) ***
# - # LTRSU ATRSU ***
1 300. 500.
END TRAC-SUBSTOR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
LTRSU,ATRSU 2F10.0 0.0 0.0 none lb/ac Engl
0.0 0.0 none kg/ha Metric
Explanation
This table specifies the initial storage of conservative (tracer) material in the lower and active
groundwater layers.
496
-------
Users Control Input
IMPLND Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IMPLND
General input
[section ATEMP input]
[section SNOW input]
[section IWATER input]
[section SOLIDS input]
[section IWTGAS input]
[section IQUAL input]
END IMPLND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
This block contains the data which are domestic to all the Impervious Land segments in the RUN. The
General input is always relevant: other inputs are only required if the module section concerned is active.
497
-------
HSPF Version 12
General input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type ACTIVITY
[Table-type PRINT-INFO]
Table-type GEN-INFO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [] above are not always required; for example, because all the values can be
defaulted.
498
-------
Users Control Input
ACTIVITY
Active Sections
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345
•A-************************
Layout
¦k -k -k -k -k -k
ACTIVITY
<-range>< a-s-vector >
(repeats until all operations of this type are covered)
END ACTIVITY
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ACTIVITY
Active
# - # ATMP SNOW IWAT SLD
17 111
9 0 0 0 1
END ACTIVITY
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
AIRTFG,SNOWFG,IWATFG,
SLDFG,IWGFG,IQALFG
615
0
0
1
Explanation
The IMPLND module is divided into 6 sections (ATEMP, SNOW, IWATER, SOLIDS, IWTGAS, and
IQUAL). The values supplied in this table specify which sections are active and which are not, for each
operation involving the IMPLND module. A value of 0 means the section is inactive and 1 means it is
active. Any meaningful subset of sections may be active.
yrir-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Sections ***
IWG IQAL ***
499
-------
HSPF Version 12
PRINT-INFO
Printout information for IMPLND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PRINT-INFO
<-range>< print-flags >
(repeats until all operations of this type are covered)
END PRINT-INFO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PRINT-INFO
******** Print-flags ********
# - # ATMP SNOW IWAT SLD IWG IQAL
1 7 2 4 6
END PRINT-INFO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
PIVL PYR
¦k-k-k-k-k-k-k-k-k
10 12
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
PFLAG(6)
615
4
2
6
PIVL
15
1
1
1440
PYREND
15
9
1
12
500
-------
Users Control Input
Explanation
This table allows the user to vary the printout level (maximum frequency of output) for the various active
sections of an operation. The meaning of each permissible value for PFLAG() is:
2 means every PIVL intervals
3 means every day
4 means every month
5 means every year
6 means never
In the example above, output from Impervious Land-segments 1 thru 7 will occur as follows:
Section Maximum frequency
A value need only be supplied for PIVL if one or more sections have a printout level of 2. For those
sections, printout will occur every PIVL intervals (that is, every PDELT=PIVL*DELT minutes). PIVL
must be chosen such that there are an integer number of PDELT periods in a day.
HSPF automatically provides printed output at all standard intervals greater than the specified minimum
interval. In the above example, output for section ATEMP will be printed at the end of each 10 intervals,
day, month and year.
PYREND is the calendar month which terminates the year for printout purposes. Thus, the annual
summary can reflect the situation over the past water year or the past calendar year, etc.
ATEMP
SNOW
IWATER
SOLIDS
thru
10 intervals
month
never
| month (defaulted)
IQUAL
501
-------
HSPF Version 12
GEN-INFO
Other general information for IMPLND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GEN-INFO
<-range>< ILS-id > <-printu->
(repeats until all operations of this type are covered)
END GEN-INFO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GEN-INFO
# - #
Name
UnitSysts Printout
t-series Engl Metr
out
1 Chicago loop
2 Astrodome
END GEN-INFO
23
•A-**
•A-**
•A-**
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
LSID (5)
5A4
none
none
none
IUNITS,OUNITS
215
1
1
2
PUNIT(2)
215
0
0
99
502
-------
Users Control Input
Explanation
LSID is a 20 character identifier for an IMPLND.
The values supplied for IUNITS and OUNITS indicate the system of units for input and output time
series, respectively. 1 means English units, 2 means Metric units.
All operations in the run must use the same units system for data in the UCI file; therefore, this system of
units is specified by EMFG in the GLOBAL block.
The values supplied for PUNIT(*) indicate the destinations (files) of printout in English and metric units,
respectively. A value of 0 means no printout is required in that unit system. A non-zero value means
printout is required in that system and is the unit number of the file to which printout is to be written. The
unit number is associated with a filename in the FILES BLOCK.
Note that printout for each Impervious Land Segment can be obtained in either the English or Metric
systems, or both (irrespective of the system used to supply the inputs).
503
-------
HSPF Version 12
ATEMP input
Section ATEMP is common to the PERLND and IMPLND modules. Refer to ATEMP in PERLND for
documentation.
504
-------
Users Control Input
SNOW input
Section SNOW is common to the PERLND and IMPLND modules. Refer to SNOW in PERLND.
505
-------
HSPF Version 12
IWATER input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type IWAT-PARM1]
Table-type IWAT-PARM2
[Table-type IWAT-PARM3]
[Table-type MON-RETN] | only required if the relevant quantity
[Table-type MON-MANNING] | varies through the year
[Table-type IWAT-STATE1]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [] above are not always required; for example, because all the values can be
defaulted.
506
-------
Users Control Input
IWAT-PARM1
First group of IWATER parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67 8
•A-***************************
Layout
¦k -k -k -k -k -k
IWAT-PARM1
<-range>< iwatparml >
(repeats until all operations of this type are covered)
END IWAT-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IWAT-PARM1
# - # CSNO RTOP
17 11
END IWAT-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
CSNOFG,RTOPFG, 515 0 0 1
VRSFG,VNNFG,
RTLIFG
(flags)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Flags
VRS VNN RTLI
507
-------
HSPF Version 12
Explanation
If CSNOFG is 1, section IWATER assumes that snow accumulation and melt is being considered. It will,
therefore, expect that the time series produced by section SNOW are available, either internally (produced
in this RUN) or from external sources (produced in a previous RUN). If CSNOFG is 0, no such time
series are expected. See the Functional Description for further information.
RTOPFG is a flag that selects the algorithm for computing overland flow. Two optional methods are
provided. If RTOPFG is 1, routing of overland flow is done in the same way as in the NPS Model. A
value of 0 results in a different algorithm. (See the Functional Description for details).
The flags beginning with "V" indicate whether or not certain parameters are assumed to vary through the
year: 1 means they do vary, 0 means they do not. The quantities concerned are:
VRSFG retention storage capacity
VNNFG Manning's n for the overland flow plane
If either of these flags are on, monthly values for the parameter concerned must be supplied (see Table-
types MON-RETN and MON-MANNING).
If RTLIFG is 1, any lateral surface inflow to the ILS will be subject to retention storage; if it is 0, lateral
inflow is not subject to retention storage.
508
-------
Users Control Input
IWAT-PARM2
Second group of IWATER parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IWAT-PARM2
<-range>< iwatparm2 >
(repeats until all operations of this type are covered)
END IWAT-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IWAT-PARM2
# - #
1 7
END IWAT-PARM2
LSUR
400 .
SLSUR
. 001
NSUR
¦k -k -k
RETSC ***
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
LSUR
F10.0
none
1.0
none
ft
Engl
none
o
CO
none
m
Metric
SLSUR
F10.0
none
.000001
10.
none
Both
NSUR
F10.0
0.1
0.001
1.0
Both
RETSC
F10.0
0.0
O
O
10.0
in
Engl
0.0
O
O
250 .
mm
Metric
Explanation
LSUR is the length of the assumed overland flow plane, and SLSUR is the slope.
NSUR is Manning's n for the overland flow plane.
RETSC is the retention (interception) storage capacity of the surface.
509
-------
HSPF Version 12
IWAT-PARM3
Third group of IWATER parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IWAT-PARM3
<-range>< iwatparm3 >
(repeats until all operations of this type are covered)
END IWAT-PARM3
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IWAT-PARM3
***
# _ #*** PETMAX PETMIN
1 7
9 39 33
END IWAT-PARM3
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit s;
PETMAX
F10.0
40.
none
none
degF
Engl
4.4
none
none
degC
Metric
PETMIN
F10.0
35.
none
none
degF
Engl
1.7
none
none
degC
Metric
Explanation
PETMAX is the air temperature below which E-T will arbitrarily be reduced below the value obtained
from the input time series.
PETMIN is the temperature below which E-T will be zero regardless of the value in the input time series.
These values are only used if snow is being considered (i.e., CSNOFG= 1 in Table-type IWAT-PARM1).
510
-------
Users Control Input
MON-RETN
Monthly retention storage capacity
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-RETN
<-range>< mon-retn >
(repeats until all operations of this type are covered)
END MON-RETN
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-RETN
Retention storage capacity at start of each month ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 .02 .03 .03 .04 .05 .08 .12 .15 .12 .05 .03 .01
END MON-RETN
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
RETSCM(12) 12F5.0 0.0 0.0 10. in Engl
0.0 0.0 250. mm Metric
Explanation
This table is only required if VRSFG = 1 in Table-type IWAT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
511
-------
HSPF Version 12
MON-MANNING
Monthly Manning's n values
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-MANNING
<-range>< mon-Manning >
(repeats until all operations of this type are covered)
END MON-MANNING
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-MANNING
Manning's
# - # JAN FEB
1 7 .23 .34
END MON-MANNING
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
NSURM(12)
12F5.0
0.1
. 001
1.0
complex
Both
Explanation
This table is only required if VNNFG = 1 in Table-type IWAT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
n at start of each month ***
MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ***
.34 .35 .28 .35 .37 .35 .28 .29 .30 .30
512
-------
Users Control Input
IWAT-STATE1
IWATER initial state variables
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IWAT-STATEl
<-range>< iwat-statel >
(repeats until all operations of this type are covered)
END IWAT-STATEl
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IWAT-STATEl
IWATER state variables***
# - #*** RETS SURS
1 7 0.05 0.10
END IWAT-STATEl
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
RETS
2F10.0
. 001
. 001
100
inches
Engl
. 025
. 025
2500
mm
Metric
SURS
. 001
. 001
100
inches
Engl
. 025
. 025
2500
mm
Metric
Explanation
This table is used to specify the initial water storages.
RETS is the initial retention storage.
SURS is the initial surface (overland flow) storage.
513
-------
HSPF Version 12
SOLIDS input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type SLD-PARM1]
Table-type SLD-PARM2
[Table-type MON-SACCUM]
[Table-type MON-REMOV]
[Table-type SLD-STOR]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [] above are not always required; for example, because all the values can be
defaulted.
514
-------
Users Control Input
SLD-PARM1
First group of SOLIDS parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SLD-PARM1
<-range><—sld-parml-->
(repeats until all operations of this type are covered)
END SLD-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SLD-PARM1
# - # VASD
17 0
END SLD-PARM1
¦k -k -k
VRSD SDOP***
1 0
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
VASDFG 315 0 0 1
VRSDFG 0 0 1
SDOPFG 0 0 1
Explanation
If VASDFG is 1, the accumulation rate of solids is allowed to vary throughout the year and Table-type
MON-SACCUM is expected. If the flag is zero, the accumulation rate is constant, and is specified in
Table-type SLD-PARM2. The corresponding flag for the unit removal rate is VRSDFG.
SDOPFG is a flag that determines the algorithm used to simulate removal of sediment from the land
surface. If SDOPFG is 1, sediment removal is simulated with the algorithm used in the NPS model. If it
is 0, a different algorithm is used. (See the Functional Description for details).
515
-------
HSPF Version 12
SLD-PARM2
Second group of SOLIDS parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SLD-PARM2
<-range>< sld-parm2 >
(repeats until all operations of this type are covered)
END SLD-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SLD-PARM2
***
# - # KEIM JEIM ACCSDP REMSDP***
1 7 0.08 1.90 0.01 0.5
END SLD-PARM2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units Unit syst
KEIM
4F10.0
o
o
o
o
none
complex
Both
JEIM
none
none
none
complex
Both
ACCSDP
0.0
0.0
none
tons/ac.d
Engl
0.0
0.0
none
tonnes/ha.d
Metric
REMSDP
0.0
0.0
1.0
/day
Both
Explanation
KEIM is the coefficient in the solids washoff equation.
JEIM is the exponent in the solids washoff equation.
ACCSDP is the rate at which solids accumulate on the land surface.
REMSDP is the fraction of solids storage which is removed each day when there is no runoff, for
example, because of street sweeping.
If monthly values for the accumulation and removal rates are being supplied, values supplied for these
variables in this table are not used by the program.
516
-------
Users Control Input
MON-SACCUM
Monthly solids accumulation rates
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-SACCUM
<-range>< mon-accum >
(repeats until all operations of this type are covered)
END MON-SACCUM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-SACCUM
Monthly values
# - # JAN FEB MAR
1 7 0.0 .12 .12
END MON-SACCUM
for solids accumulation
APR MAY JUN JUL AUG
.24 .24 .56 .67 .56
(tonnes/ha.day) ***
SEP OCT NOV DEC***
.34 .34 .23 .12
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ACCSDM(12) 12F5.0 0.0 0.0 none tons/ac.d Engl
0.0 0.0 none tonnes/ha.d Metric
Explanation
This table is only required if VASDFG = 1 in Table-type SLD-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
517
-------
HSPF Version 12
MON-REMOV
Monthly solids unit removal rates
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-REMOV
<-range>< mon-remov >
(repeats until all operations of this type are covered)
END MON-REMOV
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-REMOV
Monthly solids unit removal rate ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 .05 .05 .07 .15 .15 .20 .20 .20 .20 .10 .05 .05
END MON-REMOV
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
REMSDM(12) 12F5.0 0.0 0.0 1.0 /day Both
Explanation
This table is only required if VRSDFG = 1 in Table-type SLD-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
518
-------
Users Control Input
SLD-STOR
Initial solids storage
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
l
12345678901234567
•A-****************
Layout
¦k -k -k -k -k -k
SLD-STOR
<-range>
(repeats until all operations of this type are covered)
END SLD-STOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SLD-STOR
Solids
# - #
17 0.
END SLD-STOR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units Unit syst
SLDS
F10.0
o
o
o
o
none
tons/ac Engl
o
o
o
o
none
tonnes/ha Metric
Explanation
SLDS is the initial storage of solids on the impervious surface.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
2 3 4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
storage (tons/acre) ***
¦k -k -k
2
519
-------
HSPF Version 12
IWTGAS input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type IWT-PARM1]
[Table-type IWT-PARM2] Tables in brackets [] are not
[Table-type LAT-FACTOR] always required
[Table-type MON-AWTF]
[Table-type MON-BWTF]
[Table-type IWT-INIT]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
520
-------
Users Control Input
IWT-PARM1
Flags for section IWTGAS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IWT-PARMl
<-range>
(repeats until all operations of this type are covered)
END IWT-PARMl
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IWT-PARMl
Flags for section IWTGAS***
# - # WTFV CSNO ***
17 0 0
END IWT-PARMl
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
WTFVFG
215
0
0
1
CSNOFG
0
0
1
Explanation
WTFVFG indicates whether or not the water temperature regression parameters (AWTF and BWTF) are
allowed to vary throughout the year, and thus, whether or not Table-types MON-AWTF and MON-
BWTF are expected.
If CSNOFG=l, the effects of snow accumulation and melt are considered; if it is zero, they are not. If
section IWATER is active, the value of CSNOFG supplied here is ignored because it was first supplied in
the input for that section (Table-type IWAT-PARM1).
521
-------
HSPF Version 12
IWT-PARM2
Second group of IWTGAS parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IWT-PARM2
<-range>< iwt-parm2 >
(repeats until all operations of this type are covered)
END IWT-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IWT-PARM2
Second group of IWTGAS parms***
# - # ELEV AWTF BWTF***
1 7 1281. 40.0 0.8
END IWT-PARM2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ELEV
3F10.0
o
o
-1000.
30000.
ft
Engl
o
o
-300.
9100.
m
Metric
AWTF
32 .
o
o
100 .
DegF
Engl
o
o
-18 .
38 .
DegC
Metr
BWTF
1.0
0.001
2.0
DegF/F
Engl
1.0
0.001
2.0
DegC/C
Metr
Explanation
ELEV is the elevation of the ILS above sea level; it is used to adjust saturation concentrations of
dissolved gases in surface outflow.
AWTF is the surface water temperature when the air temperature is 32 deg F (0 deg C). It is the intercept
of the surface water temperature regression equation.
BWTF is the slope of the surface water temperature regression equation.
522
-------
Users Control Input
LAT-FACTOR
Lateral inflow concentration factors
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
LAT-FACTOR
<-range>< la t-factor >
(repeats until all operations of this type are covered)
END LAT-FACTOR
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
LAT-FACTOR
Lateral inflow concentration factors ***
# - # SDLFAC SLIFAC ***
1 4 0.3 0.5
END LAT-FACTOR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
SDLFAC
2F10.0
o
o
o
o
1.0
none
Both
SLIFAC
o
o
o
o
1.0
none
Both
Explanation
This table is used by Sections IWTGAS and IQUAL. The parameters specify the weighting factors for
the lateral inflow concentrations of non-mass-balance quality constituents to be used in determining the
outflow concentration.
SDLFAC is the weighting factor for sediment-associated constituent outflow (QUALSD) in Section
IQUAL.
SLIFAC is the weighting factor for surface outflow of temperature and dissolved gases in Section
IWTGAS. It is not used for surface outflow of general quality constituents (QUALOF) in Section
IQUAL, because these constituents maintain a mass-balance.
523
-------
HSPF Version 12
MON-AWTF
Monthly values for AWTF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-AWTF
<-range>< mon-awtf >
(repeats until all operations of this type are covered)
END MON-AWTF
¦k -k -k -k -k -k -k
Example
¦k -k -k
MON-AWTF
Value of AWTF at start of each month (deg F)
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 7 37. 38. 39. 40. 41. 42. 43. 44. 45. 44. 41. 40.
END MON-AWTF
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
AWTFM(12) 12F5.0 32. 0. 100. deg F Engl
0. -18. 38. deg C Metric
Explanation
This table is only required ifWTFVFG = 1 in Table-type IWT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
524
-------
Users Control Input
MON-BWTF
Monthly values for BWTF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-BWTF
<-range>< mon-bwtf >
(repeats until all operations of this type are covered)
END MON-BWTF
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-BWTF
Value of BWTF at start of each month (deg F/F) ***
# - # JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC***
1 1.3.3 .3 .4 .4 .5 .5 .5 .4 .4 .4 .3
END MON-BWTF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
BWTFM(12) 12F5.0 1.0 0.001 2.0 deg F/F Engl
1.0 0.001 2.0 deg C/C Metric
Explanation
This table is only required ifWTFVFG = 1 in Table-type IWT-PARM1.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
525
-------
HSPF Version 12
IWT-INIT
Initial conditions for section IWTGAS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IWT-INIT
<-range>< iwt-init >
(repeats until all operations of this type are covered)
END IWT-INIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IWT-INIT
SOTMP
# - # DegC
17 16.
END IWT-INIT
SODOX S0C02***
mg/1 mg C/l***
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
SOTMP
3F10.0 60.0
32 .
100 .
Deg F
Engl
16.0
. 01
CO
CO
o
Deg C
Metric
SODOX
O
o
o
O
20.0
mg/1
Both
SOC02
o
o
o
o
1.0
mg C/l
Both
Explanation
These are the initial values for the temperature, dissolved oxygen concentration, and C02 concentration
of the surface runoff. The values given in this table do not affect anything in the simulation beyond the
start of the first interval of the run. Therefore, in most simulations, this table can be omitted.
526
-------
Users Control Input
IQUAL input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type NQUALS]
[Table-type IQL-AD-FLAGS]
[Table-type LAT-FACTOR] if section IWTGAS is inactive
Table-type QUAL-PROPS
[Table-type QUAL-INPUT]
[Table-type MON-POTFW]
[Table-type MON-ACCUM]
[Table-type MON-SQOLIM]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above, except LAT-FACTOR, is detailed in the
documentation which follows or in the documentation for the PERLND module. LAT-FACTOR is
documented under the input for Section IWTGAS above.
Tables enclosed in brackets [] are not always required;for example, because all the values can be
defaulted.
repeat this group of tables for each
quality constituent
527
-------
HSPF Version 12
NQUALS
Total number of quality constituents simulated
This table is identical to the corresponding table for the PERLND module. Refer to PQUAL in PERLND.
528
-------
Users Control Input
IQL-AD-FLAGS
Atmospheric deposition flags for IQUAL
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
IQL-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END IQL-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
IQL-AD-FLAGS
Atmospheric deposition flags ***
*** QUAL1 QUAL2 QUAL3 QUAL4 QUAL5 QUAL6 QUAL7 QUAL8 QUAL9 QAL10
#*** #
1 7 -1 10 -1 -1 11 12 13 -1 0 0 0 11 0-1 0 0 -10
END IQL-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
IQADFG(*)
(IX,213)
0
-1
none
Explanation
IQADFG is an array of flags indicating the source of atmospheric deposition data for QUALs. Each
QUAL has two flags. The first is for dry or total deposition flux, and the second is for wet deposition
concentration. The flag values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series IQADFX or IQADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
Note: atmospheric deposition can only be specified for QUALOF's; it is an error to specify a non-zero
flag value for a non-QUALOF.
529
-------
HSPF Version 12
QUAL-PROPS
Identifiers and flags for a quality constituent
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
QUAL-PROPS
<-range><-qualid > < flags >
(repeats until all operations of this type are covered)
END QUAL-PROPS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
QUAL-PROPS
Identifiers and Flags ***
# - # QUALID QTID QSD VPFW QSO VQO***
1 7 BOD kg 0 0 1 1
END QUAL-PROPS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
QUALID
3A4
none
none
none
QTYID
A4
none
none
none
QSDFG
415
0
0
1
VPFWFG
0
0
1
QSOFG
0
0
1
VQOFG
0
0
1
530
-------
Users Control Input
Explanation
QUALID is a 10 character identifier for the quality constituent.
QTYID is a 4 character identifier for the units associated with this constituent (e.g., kg, # (for coliforms)).
These are the units referred to as "qty" in subsequent tables (e.g., Table-type QUAL-INPUT).
If QSDFG is 1 then:
1. This constituent is a QUALSD (sediment associated).
2. If VPFWFG is 1, the washoff potency factor may vary throughout the year. Table-type MON-
POTFW is expected.
If QSOFG is 1 then:
1. This constituent is a QUALOF; it is assumed to be directly associated with overland flow. If
QSOFG is 1, then accumulation and removal occur daily, independently of atmospheric
deposition. If QSOFG is 2, then accumulation and removal occur every interval, and the removal
rate is applied to atmospheric deposition and lateral inflows, as well as the accumulation.
2. If VQOFG is 1, the rate of accumulation and the limiting storage of QUALOF may vary
throughout the year. Table-types MON-ACCUM and MON-SQOLIM are expected.
531
-------
HSPF Version 12
QUAL-INPUT
Surface storage of qual and nonseasonal parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
QUAL-INPUT
<-range>< qual-input >
(repeats until all operations of this type are covered)
END QUAL-INPUT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
QUAL-INPUT
Storage on surface and nonseasonal parameters***
# - # SQO POTFW ACQOP SQOLIM WSQOP ***
1 7 1.21 .172 0.02 2.0 1.70
END QUAL-INPUT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
SQO
5F8.0 0.0
0
0
none
qty/ac
Engl
0.0
0
0
none
qty/ha
Metric
POTFW
0.0
0
0
none
qty/ton
Engl
0.0
0
0
none
qty/tonne
Metric
ACQOP
0.0
0
0
none
qty/ac.d
Engl
0.0
0
0
none
qty/ha.d
Metric
SQOLIM
0.000001
0
000001
none
qty/ac
Engl
0.000002
0
000002
none
qty/ha
Metric
WSQOP
1. 64
0
01
none
in/hr
Engl
41.7
0
25
none
mm/hr
Metric
532
-------
Users Control Input
Explanation
The following variable is relevant only if the constituent is a QUALSD:
1. POTFW, the washoff potency factor.
POTFW (washoff potency factor) is the ratio of constituent yield to sediment outflow.
The following variables are applicable only if the constituent is a QUALOF:
1. SQO, the initial storage of QUALOF on the surface of the ILS.
2. ACQOP, the rate of accumulation of QUALOF on the surface.
3. SQOLIM, the maximum storage of QUALOF on the surface.
4. WSQOP, the rate of surface runoff that will remove 90 percent of stored QUALOF per hour.
If monthly values are being supplied for any of these quantities, the value in this table is not relevant;
instead,the system expects and uses values supplied in the corresponding monthly table (Table-types
MON-POTFW, MON-ACCUM, MON-SQOLIM).
533
-------
HSPF Version 12
MON-POTFW
Monthly washoff potency factor
This table is identical to the corresponding table in the PERLND module. Refer to MON-POTFW in
PERLND for documentation.
MON-ACCUM
Monthly accumulation rates of QUALOF
This table is identical to the corresponding table in the PERLND module. Refer to MON-ACCUM in
PERLND.
MON-SQOLIM
Monthly limiting storage of QUALOF
This table is identical to the corresponding table in the PERLND module. Refer to MON-SQOLIM in
PERLND.
534
-------
Users Control Input
RCHRES Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
RCHRES
General input
[section HYDR input]
[section ADCALC input]
[section CONS input]
[section HTRCH input]
[section SEDTRN input]
[section GQUAL input]
[input for RQUAL sections]
[section OXRX input]
[section NUTRX input]
[section PLANK input]
[section PHCARB input]
END RCHRES
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
This block contains the data that are domestic to all RCHRES processing units in the RUN. The general
input is always relevant; other input is only required if the module section concerned is active.
535
-------
HSPF Version 12
General input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type ACTIVITY
[Table-type PRINT-INFO]
Table-type GEN-INFO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [], above, are not always required; for example, because all values can be
defaulted.
536
-------
Users Control Input
ACTIVITY
Active Sections
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345
•A-**********************************
Layout
¦k -k -k -k -k -k
ACTIVITY
<-range>< a-s-vector >
(repeats until all operations of this type are covered)
END ACTIVITY
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ACTIVITY
RCHRES Active sections***
# - # HYFG ADFG CNFG HTFG SDFG GQFG OXFG NUFG PKFG PHFG ***
171111111000
END ACTIVITY
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
HYDRFG,ADFG,CONSFG,HTFG, SEDFG
GQALFG,OXFG,NUTFG,PLKFG,PHFG
1015
0
0
1
Explanation
The RCHRES module is divided into eleven sections. The values supplied in this table specify which
sections are active and which are not, for each operation involving the RCHRES module. A value of 0
means inactive and 1 means active. Any meaningful subset of sections may be active, with the following
conditions: 1) Section ADCALC must be active if any water quality sections (CONS through PHCARB)
are active. 2) If any section in the RQUAL group (Section OXRX through PHCARB) is active, all
preceding RQUAL sections must also be active.
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
537
-------
HSPF Version 12
PRINT-INFO
Printout information for RCHRES
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PRINT-INFO
<-range>< print-flags >
(repeats until all operations of this type are covered)
END PRINT-INFO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PRINT-INFO
RCHRES Printout level flags***
# - # HYDR ADCA CONS HEAT SED
1 7 2 2 2 5 5
END PRINT-INFO
GQL OXRX NUTR PLNK PHCB PIVL PYR***
2 3 3 10 12
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
PFLAG(10)
1015
4
2
6
PIVL
15
1
1
1440
PYREND
15
9
1
12
538
-------
Users Control Input
Explanation
HSPF permits the user to vary the printout level (maximum frequency) for the various active sections of
an operation. The meaning of each permissible value for PFLAG(*) is:
2 means every PIVL intervals
3 means every day
4 means every month
5 means every year
6 means never
In the example above, output from RCHRESs 1 through 7 will occur as follows:
Section
Maximum frequency
HYDR
10 intervals
ADCALC
10 intervals
CONS
10 intervals
HTRCH
year
SEDTRN
year
GQUAL
10 intervals
OXRX
day
NUTRX
day
PLANK
month (defaulted)
PHCARB
month (defaulted)
A value need only be supplied for PIVL if one or more sections have a printout level of 2. For those
sections, printout will occur every PIVL intervals (that is, every PDELT=PIVL*DELT minutes. PIVL
must be chosen such that there are an integer number of PDELT periods in a day.
HSPF will automatically provide printed output at all standard intervals greater than the specified
minimum interval. In the above example, output for section NUTRX will be printed at the end of each
day, month, and year.
PYREND is the calendar month which will terminate the year for printout purposes. Thus, the annual
summary can reflect the situation over the past water year or the past calendar year, etc.
539
-------
HSPF Version 12
GEN-INFO
7 8
678901234567890
•A-**************
GEN-INFO
<-range>< rchid >
(repeats until all operations of this type are covered)
END GEN-INFO
¦k -k -k -k -k -k -k
Example
Other general information for RCHRES
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2 3 4 5 6
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
GEN-INFO
RCHRES Name Nexits
# - #
4 East River-mile 4 2
END GEN-INFO
UnitSysts Printout ***
t-series Engl Metr LKFG ***
in out ***
1 1 23 0
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
RCHID(5)
5A4
none
none
none
NEXITS
15
1
1
5
IUNITS
5X, 15
1
1
2
OUNITS
15
1
1
2
PUNIT(2)
215
0
0
99
LKFG
15
0
0
1
540
-------
Users Control Input
Explanation
RCHID(l-5) is the 20 character name/identifier for the RCHRES.
NEXITS is the number of exits from the RCHRES; it is limited to 5.
The values supplied for IUNITS and OUNITS indicate the system of units for input and output time
series, respectively. 1 means English units, 2 means Metric units.
Note: All operations in the run must use the same units system for data in the UCI file; therefore, this
system of units is specified by EMFG in the GLOBAL block.
The values supplied for PUNIT(*) indicate the destinations (files) of printout in English and metric units,
respectively. A value of 0 means no printout is required in that unit system. A non-zero value means
printout is required in that system and is the unit number of the file to which printout is to be written. The
unit number is associated with a filename in the FILES BLOCK.
LKFG indicates whether the RCHRES is a lake (1) or a stream/river (0). This flag affects the method of
calculating bed shear stress (in Section HYDR) and the reaeration coefficient (in Section OXRX).
541
-------
HSPF Version 12
HYDR input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type HYDR-PARM1]
Table-type HYDR-PARM2
[Table-type MON-CONVF]
[Table-type HYDR-IRRIG]
[Table-type HYDR-INIT]
[Table-type HYDR-CATEGORY]
[Table-type HYDR-CINIT]
[Table-type HYDR-CPREC]
[Table-type HYDR-CEVAP]
[Table-type HYDR-CFVOL]
[Table-type HYDR-CDEMAND]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
if VCONFG = 1 (in Table-type HYDR-PARM1)
if irrigation withdrawals from reach are made
if "categories" are being simulated
Explanation
The exact format of each of the tables mentioned above is detailed in the documentation which follows.
Tables enclosed in brackets [], above, are not always required.
542
-------
Users Control Input
HYDR-PARM1
Flags for HYDR section
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-PARM1
<-range> <2><3> < odfvfg > < odgtfg > < funct >
(repeats until all operations of this type are covered)
END HYDR-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-PARM1
RCHRES Flags for HYDR section***
# - # VC A1 A2 A3 ODFVFG for each *** ODGTFG for each FUNCT for each
FG FG FG FG possible exit *** possible exit possible exit
1 7 0111 00001 11111 33333
END HYDR-PARM1
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
VCONFG
13
0
0
1
<1>
AUX1FG
13
0
0
1
<2>
AUX2FG
13
0
0
1
<3>
AUX3FG
13
0
0
1
ODFVFG(5)
513
0
-5
8
ODGTFG(5)
513
0
0
5
FUNCT(5)
513
1
1
3
543
-------
HSPF Version 12
Explanation
A value of 1 for VCONFG means that F(vol) (volume-dependent) outflow demand components are
multiplied by a factor which is allowed to vary through the year. These monthly adjustment factors are
input in Table-type MON-CONVF in this section.
A value of 1 for AUX1FG means a routine will be called to compute depth, stage, surface area, average
depth, and top width, and values for these parameters will be reported in the printout. These are used in
the calculation of precipitation and evaporation fluxes, and simulation of most water quality sections. A
value of 0 suppresses the calculation and printout of this information.
A value of 1 for AUX2FG means average velocity and average cross sectional area will be calculated, and
values for these parameters will be reported in the printout. These are used in the simulation of oxygen. A
value of 0 suppresses the calculation/printout of this information. If AUX2FG is 1, AUX1FG must also
be 1.
A value of 1 for AUX3FG means the shear velocity and bed shear stress will be calculated. These are
used in the calculation of deposition and scour of sediment (inorganic and organic). AUX3FG may only
be turned ON (=1) if AUX1FG and AUX2FG are also 1.
The value specified for ODFVFG(I) determines the F(vol) component of the outflow demand for exit I.
A value of 0 means that the outflow demand does not have a volume dependent component. A value
greater than 0 indicates the column number in the FTABLE which contains the F(vol) component. If the
value specified for ODFVFG is less than 0, the absolute value indicates the element of array COLIND()
which defines a pair of columns in the FTABLE which are used to evaluate the F(vol) component. Further
explanation of this latter option is provided in the functional description of the HYDR section in Part E. A
value of ODFVFG can be specified for each exit from a RCHRES. (Note: COLIND is specified as a time
series.)
The value specified for ODGTFG(I) determines the G(t) (time-dependent) component of the outflow
demand for exit I. A value of 0 means that the outflow demand does not have such a component. A value
greater than 0 indicates the element (index) number of the array OUTDGT() (or array COTDGT() if
Categories are being simulated) which contains the G(t) component. A value of ODGTFG can be
specified for each exit from a RCHRES. (Note: OUTDGT and COTDGT are specified in the form of time
series.)
FUNCT determines the function used to combine the components of an outflow demand. The possible
values and their meanings are:
1 means use the smaller of F(vol) and G(t)
2 means use the larger of F(vol) and G(t)
3 means use the sum of F(vol) and G(t)
544
-------
Users Control Input
HYDR-PARM2
Parameters for HYDR section
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-PARM2
<-range><-
hydr-parm2
(repeats until all operations of this type are covered)
END HYDR-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-PARM2
RCHRES ***
# - # FTBN
1 17
2 2
END HYDR-PARM2
LEN
2 . 7
1.5
DELTH
120 .
60 .
STCOR
3.2
1.
KS*** DB50
.5 0.2
.5 0.2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
FTABNO
5X,F5.0
none
1
999
none
Both
LEN
F10.0
none
0.01
none
miles
Engl
none
0.016
none
km
Metric
DELTH
F10.0
0.0
o
o
none
ft
Engl
0.0
o
o
none
m
Metric
STCOR
F10.0
0.0
none
none
ft
Engl
0.0
none
none
m
Metric
KS
F10.0
0.0
0.0
. 99
none
Both
DB50
F10.0
. 01
. 0001
100 .
in
Engl
.25
. 0025
2500.
mm
Metric
545
-------
HSPF Version 12
Explanation
FTABNO is the ID number for the F-Table (located in the FTABLES Block) which contains the
geometric and hydraulic properties of the RCHRES.
LEN is the length of the RCHRES.
DELTH is the drop in water elevation from the upstream to the downstream extremities of the RCHRES.
(It is used if section OXRX is active and reaeration is being computed using the Tsivoglou-Wallace
equation; or if section SEDTRN is active and sandload transport capacity is being computed using either
the Toffaleti or Colby method).
STCOR is the correction to the RCHRES depth to calculate stage. (Depth + STCOR = Stage)
KS is the weighting factor for hydraulic routing. Choice of a realistic KS value is discussed in the
functional description of the HYDR section in Part E.
DB50 is the median diameter of the bed sediment (assumed constant throughout the run). This value is
used to:
1. Calculate the bed shear stress if the RCHRES is a lake.
2. Calculate the rate of sand transport if the Colby or Toffaleti methods are used.
Note: The value input for DB50 is also used in section SEDTRN as the sand particle diameter required for
sandload computations.
546
-------
Users Control Input
MON-CONVF
Monthly F(vol) adjustment factors
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-CONVF
<-range>< mon-convf >
(repeats until all operations of this type are covered)
END MON-CONVF
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-CONVF
RCHRES
# - #
1 7
Monthly F(vol) adjustment factors***
JAN FEB MAR APR MAY JUN JUL AUG SEP
.97 .89 .89 .91 .93 .93 .94 .95 .95
OCT NOV
DEC***
. 97
END MON-CONVF
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
CONVFM(12) 12F5.0 0.0 0.0 none
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
547
-------
HSPF Version 12
HYDR-IRRIG
Irrigation withdrawal parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-IRRIG
<-range>< hydirrig >
(repeats until all operations of this type are covered)
END HYDR-IRRIG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-IRRIG
RCHRES IREXIT
x - x
100 1
END HYDR-IRRIG
IRMINV ***
(ac-ft) ***
122 .
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
IREXIT
IRMINV
110 0 0 5 none Both
F10.0 0.0 0.0 none acre-ft Engl
0.0 0.0 none Mm3 Metric
Explanation
IREXIT is the exit number for irrigation withdrawals.
IRMINV is the minimum volume below which irrigation withdrawals may not be made.
548
-------
Users Control Input
HYDR-INIT
Initial conditions for HYDR section
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-INIT
<-range><—vol > ct< colind > < outdgt >
(repeats until all operations of this type are covered)
END HYDR-INIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-INIT
Initial conditions for HYDR section ***
RCHRES VOL Cat Initial value of COLIND *** Initial value of OUTDGT
# - # ac-ft for each possible exit *** for each possible exit
< > <>< >< >< >< >< > *** < >< >< >< >< >
1 12.050 UN 4.0 1.2 1.8
END HYDR-INIT
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
VOL
F10.0
0.0
o
o
none
acre-ft
Engl
0.0
o
o
none
Mm3
Metric
ct
CAT
A2
blank
none
none
none
Both
COLIND
(5)
5F5.0
4.0
4.0
8.0
none
Both
OUTDGT
(5)
5F5.0
0.0
0.0
none
f t3/s
Engl
0.0
0.0
none
m3/s
Metric
549
-------
HSPF Version 12
Explanation
VOL is the initial volume of water in the RCHRES.
CAT may be either an integer or a category identifier (ID tag, defined in the CATEGORY block). If it is
an ID tag, all initial volume belongs to that category. If CAT is an integer value, the initial volume is
divided according to Table-type HYDR-CINIT, where CAT entries are expected. If CAT is zero or blank,
the initial volume is divided equally among all active categories. CAT is ignored if no CATEGORY
block is present in the UCI file.
The value of COLIND(I) for exit I indicates the pair of columns in the FTABLE that are used to evaluate
the initial value of the F(vol) (volume-dependent) component of outflow demand for the exit.
The array OUTDGT(I) specifies the initial value of the outflow demand for exit I, i.e., the G(t) (time-
dependent) component. It is ignored if a Category block is present in the UCI file. Initial values for
COTDGT are found in Table-type HYDR-CDEMAND.
A non-zero value of COLIND(I) is only meaningful if the outflow from exit I has an F(vol) component.
Similarly, a non-zero value for OUTDGT(I) is only meaningful if the outflow from exit I has a G(t)
component.
550
-------
Users Control Input
HYDR-CATEGORY
Categories associated with outflows and other fluxes
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-CATEGORY
cpr cev cfl cf2 cf3 cf4 cf5 ncgt
<> <> <> <> <> <> <> <>
(repeats until all operations of this type are covered)
END HYDR-CATEGORY
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-CATEGORY
Categories specified for Outflows, Precipitation and Evaporation ***
RCHRES Prec Evap< FVOL >NCOGT ***
#-# 12345 ***
< >< >< >< >< >< >< >< > ***
1 UN 4 TX 2 3
END HYDR-CATEGORY
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit
cpr
CPREC
A2
none
none
none
none
Both
cev
CEVAP
A2
none
none
none
none
Both
cf1-cf5
CFVOL(*)
A2
none
none
none
none
Both
ncgt
NOCGT
15
0
0
20
none
Both
551
-------
HSPF Version 12
Explanation
CPREC, CEVAP, CFVOL(*)
This table may be used to specify the categories that are impacted by outflows and other fluxes. For the
physical quantities precipitation, evaporation, and exit-specific F(vol) outflow, categories may be
specified in one of two ways: 1) A single category is specified by its two-character tag, right-justified in
the field. 2) If more than one category must be specified, then the number of categories is placed in the
field. Then the multiple categories are fully specified in Table-types HYDR-CPREC, HYDR-CEVAP,
and HYDR-CFVOL. If the field is blank or zero, or the table is omitted, then water is added to or
subtracted from all categories in proportion to their current storage fraction.
NCOGT is the number of COTDGT time series specifying category-associated demands from the reach.
These time series are assigned priorities and initial values in Table-type HYDR-CDEMAND. The time
series are input in the time series blocks (e.g., EXT SOURCES). (See the Time Series Catalog for
RCHRES).
552
-------
Users Control Input
HYDR-CINIT
Allocation of initial volumes to categories
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
HYDR-CINIT
ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac
<-range> <>< > <>< > <>< > <>< > <>< > <>< > <>< >
(repeats until all operations of this type are covered)
END HYDR-CINIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-CINIT
*** Initial Category Storage Fractions
*** RCHRES c cfrac c cfrac c cfrac c cfrac c cfrac c cfrac c cfrac
*** # - # <>< > <>< > <>< > <>< > <>< > <>< > <>< >
1 UN 0.2 TX 0.1 CU 0.1 FG 0.1 Z1 0.1 MI 0.05 AO 0.1
1 BB 0.1 AA 0.05 BB 0.1
END HYDR-CINIT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ct CINIT(*) A2 none none none none Both
cfrac CFRAC(*) F6.0 0.0 0.0 1.0 none Both
Explanation
This table is required when CAT in Table-type HYDR-INIT is a positive integer. CAT defines the
number of pairs to be specified in this table; up to seven pairs can be specified on a line.
CINIT is a two-character category tag.
CFRAC is the fraction of the initial volume belonging to the corresponding category. The sum of all
fractions must be 1.0; alternatively, if all CFRACS are blank or zero, the initial volume will be equally
divided among all categories.
553
-------
HSPF Version 12
HYDR-CPREC
Allocation of precipitation to categories
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
HYDR-CPREC
ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac
<-range> <>< > <>< > <>< > <>< > <>< > <>< > <>< >
(repeats until all operations of this type are covered)
END HYDR-CPREC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-CPREC
*** Category Fractions for precipitation
*** RCHRES ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac ct cfrac
*** # - # <>< > <>< > <>< > <>< > <>< > <>< > <>< >
1 UN 0.2 TX 0.1 CU 0.1 FG 0.1 Z1 0.1 MI 0.05 AO 0.1
1 BB 0.1 AA 0.05 BB 0.1
END HYDR-CPREC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ct CPRECC(*) A2 none none none none Both
cfrac CPRECF(*) F6.0 0.0 0.0 1.0 none Both
Explanation
This table is required when CPREC in Table-type HYDR-CATEGORY is a positive integer. CPREC
defines the number of pairs to be specified in this table; up to seven pairs can be specified on a line.
CPRECC is a two-character category tag.
CPRECF is the fraction of the precipitation which will be assigned to the corresponding category. The
sum of all fractions must be 1.0; alternatively if all fractions are blank or zero, the precipitation will be
equally divided among all the categories listed.
554
-------
Users Control Input
HYDR-CEVAP
Allocation of evaporation to categories
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-CEVAP
ct pr frac ct pr frac ct pr frac ct pr frac ct pr frac
<-range> <><->< > <><->< > <><->< > <><->< > <><->< >
(repeats until all operations of this type are covered)
END HYDR-CEVAP
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-CEVAP
Category Fractions and Priorities
RCHRES ct pr frac ct pr frac
# - # <><->< > <><->< >
1 UN 1 CU 2 0.5
1 AA 4
END HYDR-CEVAP
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ct
CEVAPC(*)
A2
none
none
none
none
Both
pr
CEVAPP(*)
13
0
0
none
none
Both
cfrac
CEVAPF(*)
F6.0
0.0
0.0
O 1
<—1 1
none
Both
Explanation
This table is required when CEVAP in Table-type HYDR-CATEGORY is a positive integer. CEVAP
defines the number of categories to be specified in this table; up to 5 categories can be specified on a line.
CEVAPC is a two-character category tag.
CEVAPP is an integer signifying the priority of the corresponding category when subtracting
evaporation. Water is taken from the lowest priority categories first, then from the next-lowest priority
categories, and so on. Categories with zero or undefined priority are taken last.
CEVAPF is the fraction of the evaporation which will be assigned to the corresponding category at a
given priority level. The sum of all fractions at a priority level must be 1.0; alternatively, if they are all
blank or zero, the evaporative loss will be equally divided among all the categories listed.
for Evaporation ***
ct pr frac ct pr frac ct pr frac ***
<><->< > <><->< > <><->< > ***
MI 2 0.5 TX 3 1.0 BB 4
555
-------
HSPF Version 12
HYDR-CFVOL
Allocation of volume-dependent outflow to categories
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-CFVOL
ct x pr frac ct x pr frac ct x pr frac ct x pr frac
<-range> <><><->< > <><><->< > <><><->< > <><><->< >
(repeats until all operations of this type are covered)
END HYDR-CFVOL
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-CFVOL
Category Fractions and Priorities for F(VOL) Outflow ***
RCHRES ct x pr frac ct x pr frac ct x pr frac ct x pr frac ***
# - # <><><->< > <><><->< > <><><->< > <><><->< > ***
1 UN 11 CU12 0.5 MI 12 0.5 UN 21 0.5
1 BB21 0.5AA22
END HYDR-CFVOL
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ct
CFVOLC(*)
A2
none
none
none
none
Both
X
CFVOLE(*)
12
0
0
5
none
Both
pr
CFVOLP(*)
13
0
0
none
none
Both
cfrac
CFVOLF(*)
F6.0
0.0
0.0
O 1
<—1 1
none
Both
556
-------
Users Control Input
Explanation
This table is required when any member of CFVOL in Table-type HYDR-CATEGORY is a positive
integer. The number of categories given in this table is the sum of the integer CFVOLs in HYDR-
CATEGORY; up to four can be specified on a line.
CFVOLC is a two-character category tag.
CFVOLE is the number of the exit for which the category is being specified.
CFVOLP is an integer signifying the priority of the corresponding category when subtracting F(vol)
(volume-dependent) outflow. Water is taken from the lowest priority categories first, then from the next-
lowest priority categories, and so on. Categories with zero or undefined priority are taken last.
CFVOLF is the fraction of the F(vol) outflow which will be assigned to the corresponding category at a
given priority level. The sum of all fractions at a priority level must sum to 1.0; alternatively, if all
fractions for a priority level are blank or zero, the outflow demand will be equally divided among all of
those categories.
557
-------
HSPF Version 12
HYDR-CDEMAND
Allocation of time-dependent outflow to categories
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HYDR-CDEMAND
ct x py pm pd cotdgt ct x py pm pd cotdgt
<-range> <><> <—> <> <> < > <><> <—> <> <> < >
(repeats until all operations of this type are covered)
END HYDR-CDEMAND
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HYDR-CDEMAND
Category Priorities and Initial Values
ct x Priority COTDGT ct x
RCHRES (yyyy/mm/dd) (cfs)
# - # <><> <—> <> <> < > <><>
1 UN 1 1865 50.0 MI 1
1 CU 2 1900/05/01 25.0
END HYDR-CDEMAND
for G(T) Demands
Priority COTDGT
yyyy/mm/dd) (cfs)
<—> <> <> < >
1900/01 30.0
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ct
COGTC(*)
A2
none
none
none
none
Both
X
COGTE(*)
12
0
0
5
none
Both
py
COGTPY(*)
14
0
0
none
none
Both
pm
COGTPM(*)
12
1
1
12
none
Both
pd
COGTPD(*)
12
1
1
31
none
Both
cotdgt
COTDGT(*)
F6. 0
0.0
0.0
none
none
Both
Explanation
This table is used in conjunction with the time-series COTDGT to specify outflow demands which are a
function of time, and to allocate these outflow demands among categories. The table may be omitted
when NCOGT in Table-type HYDR-CATEGORY is zero.
COGTC is a two-character category tag.
COGTE is the exit number for the demand being specified.
COGTPY (year), COGTPM (month), and COGTPD (day) signify the priority date of the corresponding
demand timeseries. Multiple demands on the same category are satisfied from earliest to latest priority
date. Unspecified (blank) priorities are satisfied last.
558
-------
Users Control Input
ADCALC input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type ADCALC-DATA]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of this input is detailed below. Table ADCALC-DATA is not always required because
its contents can be defaulted.
559
-------
HSPF Version 12
ADCALC-DATA
Data for section ADCALC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
ADCALC-DATA
<-range>< adcalc-data >
(repeats until all operations of this type are covered)
END ADCALC-DATA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ADCALC-DATA
RCHRES Data for
# - # CRRAT
5 1.7
END ADCALC-DATA
section ADCALC ***
VOL ***
324 .
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CRRAT 2F10.0 1.5 1.0 none none Both
VOL 0.0 0.0 none acre-ft Engl
0.0 0.0 none Mm3 Metric
Explanation
Section ADCALC must be active if any of the following sections are active.
CRRAT is the ratio of maximum velocity to mean velocity in the RCHRES cross-section under typical
flow conditions.
VOL is the volume of water in the RCHRES at the start of the simulation. Input of this value is not
necessary if section HYDR is active. (Note: Metric units are 10**6 m3).
560
-------
Users Control Input
CONS input
kkkkkkkkkkkkkkk
l
123456789012345
kkkkkkkkkkkkkkk
Layout
k k k k k k
[Table-type NCONS]
[Table-type CONS-AD-FLAGS]
Table-type CONS-DATA | repeat for each conservative constituent
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Explanation
The exact formats of these tables are detailed below. Table-type NCONS is not required if only one
conservative constituent is being simulated, since 1 is the default value of NCONS.
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
2 3 4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
561
-------
HSPF Version 12
NCONS
Number of conservative constituents simulated
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NCONS
<-range>
(repeats until all operations of this type are covered)
END NCONS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NCONS
RCHRES ***
# - #NCONS ***
17 4
END NCONS
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
NCONS 15 1 1 10
Explanation
NCONS is the number of conservative constituents being simulated.
562
-------
Users Control Input
CONS-AD-FLAGS
Atmospheric deposition flags for CONS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
CONS-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END CONS-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
CONS-AD-FLAGS
RCHRES Atmospheric deposition flags ***
*** CONS1 CONS2 CONS3 CONS4 CONS5 CONS 6 CONS7 CONS8 CONS9 QAL10
#*** #
1 7 -1 10 -1 -1 11 12 13 -1 10 0 0 11 0-1 0 0 -10
END CONS-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
COADFG(*) (IX,213) 0 -1 none
Explanation
COADFG is an array of flags indicating the source of atmospheric deposition data for the CONS section.
Each CONS has two flags. The first is for dry or total deposition flux, and the second is for wet
deposition concentration. The flag values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series COADFX or COADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
563
-------
HSPF Version 12
CONS-DATA
Information about one conservative substance
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
CONS-DATA
<-range>< conid >< con—> <—conv—>
(repeats until all operations of this type are covered)
END CONS-DATA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
CONS-DATA
RCHRES Data for conservative constituent No. 3 ***
# - # Substance-id Cone ID CONV QTYID ***
1 7 Total Diss Solids 251.3 mg/1 1000. kg
END CONS-DATA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Min
Max
Units Unit syst
CONID(5)
CON
CONCID
CONV
QTYID
5A4 blank none none
F10.0 0.0 0.0 none
2A4 blank none none
F10.0 none 1.0E-30 none
2A4 blank none none
none Both
concid Both
none Both
see below
none Both
Explanation
CONID is the name/identifier of the conservative constituent, limited to 20 characters.
CON is the initial concentration of the conservative constituent.
CONCID is the 8 character identifier for the concentration units for the conservative constituent. If the
constituent is the alkalinity data required for section PHCARB, CONCID must be mg/1 (as CaC03).
QTYID is the 8 character identifier for the units in which the total flow of constituent into, or out of, the
RCHRES will be expressed, e.g., "kg".
CONV is the conversion factor from QTYID/VOL to the desired concentration units (CONCID): CONC
= CONV*(QTYID/VOL). If English units are being used (EMFG = 1 in the GLOBAL Block), VOL units
are cubic feet; if Metric units are in effect (EMFG = 2), VOL units are cubic meters. For example, if
CONCID is mg/1, QTYID is kg, and VOL is cubic meters, then CONV=1000.
564
-------
Users Control Input
HTRCH input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type HT-BED-FLAGS]
[Table-type HEAT-PARM]
[Table-type HT-BED-PARM]
[Table-type MON-HT-TGRND] if TGFLG = 3
| if BEDFLG = 1 or 2
I
[Table-type HT-BED-DELH]
[Table-type HT-BED-DELTT]
| if BEDFLG = 3
I
[Table-type HEAT-INIT]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables above is detailed in the documentation which follows. Tables in
brackets [] need not always be supplied; for example, because all of the inputs have default values.
565
-------
HSPF Version 12
HT-BED-FLAGS
Flags for bed conduction in section HTRCH
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HT-BED-FLAGS
<-range>
(repeats until all operations of this type are covered)
END HT-BED-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HT-BED-FLAGS
RCHRES ***
# - # BDFG TGFG TSTP ***
1 3 55
END HT-BED-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
BEDFLG
15
0
0
3
TGFLG
15
2
1
3
TSTOP
15
55
1
100
Explanation
BEDFLG is the bed conduction flag, with the following meanings:
0 - bed conduction is not simulated
1 - single interface (water-mud) heat transfer method
2 - two-interface (water-mud and mud-ground) heat transfer method
3 - Jobson method
TGFLG specifies the source of the ground temperature for the bed conduction; used when BEDFLG is 1
or 2 (TGFLG: l=time series; 2=single value; 3=monthly values).
TSTOP is the number of time steps (prior to the current time step) that impact the heat flux at the current
time step; used only when the Jobson method is in effect.
566
-------
Users Control Input
HEAT-PARM
Parameters for section HTRCH
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HEAT-PARM
<-range><—elev—><—eldat-><—cf sx—><—ktrd—><—kcnd—><—kevp—>
(repeats until all operations of this type are covered)
END HEAT-PARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HEAT-PARM
RCHRES ELEV
# - # ft
1 7 2000.
END HEAT-PARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ELEV
F10.0
0
0
o
o
30000.
ft
Engl
0
0
o
o
10000.
m
Metric
ELDAT
F10.0
0
0
none
none
ft
Engl
0
0
none
none
m
Metric
CFSAEX
F10.0
1
0
0.001
2.0
none
Both
KATRAD
F10.0
9
37
1.00
20.
none
Both
KCOND
F10.0
6
12
1.00
20.
none
Both
KEVAP
F10.0
2
24
1.00
10.
none
Both
Explanation
ELEV is the mean RCHRES elevation.
ELD AT is the difference in elevation between the RCHRES and the air temperature gage (ELDAT is
positive if the RCHRES is higher than the gage).
CFSAEX is the correction factor for solar radiation; it is the fraction of the RCHRES surface exposed to
radiation.
KATRAD is the longwave radiation coefficient.
KCOND is the conduction-convection heat transport coefficient.
KEVAP is the evaporation coefficient.
ELDAT CFSAEX KATRAD KCOND KEVAP ***
ft ***
1500. .5 6.5 11. 4.
567
-------
HSPF Version 12
HT-BED-PARM
Bed conduction parameters for section HTRCH
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HT-BED-PARM
<-range><-muddep-><—tgrnd-><—kmud—><-kgrnd—>
(repeats until all operations of this type are covered)
END HT-BED-PARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HT-BED-PARM
RCHRES MUDDEP TGRND
# - # m deg C
1 7 0.1 20.
END HT-BED-PARM
KMUD KGRND ***
(kcal/m2/C/hr) ***
50.4 1.42
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
<-muddep->
MUDDEP
F10.0
0.33
0.01
none
ft
Engl
0.1
0.01
none
m
Metric
<—tgrnd->
TGRND
F10.0
59.
14 .
113 .
deg F
Engl
15.
-10 .
45.
deg C
Metric
<—kmud—>
KMUD
F10.0
50.
0.0
none
kcal/m2/C/hr Both
<—kgrnd->
KGRND
F10.0
1.4
0.0
none
kcal/m2/C/hr Both
Explanation
MUDDEP is the depth of the mud layer in the two-interface model (BEDFLG = 2).
TGRND is the constant (TGFLG = 2) ground temperature; it is used in the one and two-interface models
(BEDFLG = 1 or 2). Optionally, the ground temperature can be input in the form of twelve monthly
values or a time series.
KMUD is the heat conduction coefficient between water and the mud/ground; it is used if BEDFLG = 1
or 2. Typical values range from 3 to 100 kcal/m2/degC/hr.
KGRND is the heat conduction coefficient between ground and mud in the two-interface model
(BEDFLG = 2).
568
-------
Users Control Input
MON-HT-TGRND
Monthly ground temperatures for bed heat conduction algorithms
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-HT-TGRND
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-HT-TGRND
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-HT-TGRND
RCHRES TGI TG2
# - #
1 7 15. 16.
END MON-HT-TGRND
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
<12-values>
TGRNDM(1-12)
F5.0
none
14 .
113 .
deg F
English
none
-10.
45
deg C
Metric
Explanation
TGRNDM(l) through TGRNDM(12) are monthly ground temperatures for use in the bed heat conduction
models. This table must be included in the UCI only if TGFLG is assigned a value of 3 and BEDFLG = 1
or 2 in Table HT-BED-FLAGS.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
TG3 TG4 TG5 TG6 TG7 TG8 TG9 TG10 TG11 TG12***
¦k -k -k
17. 18. 19. 20. 20. 20. 20. 18. 17. 16.
569
-------
HSPF Version 12
HT-BED-DELH
Heat fluxes for Jobson bed heat conduction method
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HT-BED-DELH
<-range><—delhl-><—delh2-><—delh3-><—delh4-><—delh5-><—delh6-><—delh7->
<-range><-delh9 9-X-delhl00>
(repeats until all operations of this type are covered)
END HT-BED-DELH
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HT-BED-DELH
RCHRES *** DELH
# - # *** 1
1 -14.2
1 -4.71
etc
END HT-BED-DELH
DELH DELH
2 3
-9.44 -7.80
-4.47 -4.27
DELH DELH
4 5
-6.66 -5.77
-3.81 -3.93
DELH DELH
6 7
-5.34 -4.99
-3.53 -3.66
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<—delhi-> DELH(100) F10.0 0.0 none none btu/ft2/F/ivl English
0.0 none none kcal/m2/C/ivl Metric
Explanation
DELH are bed sediment-to-water heat fluxes (per one degree increase in water temperature) for the past
TSTOP time intervals; used in the Jobson bed-conduction method. A maximum of 100 values of DELH
are possible. (Caution: DELH values are dependent on the time step (DELT in GLOBAL Block)).
When an entry has to be continued onto more than 1 line:
1. No blank or comment lines may be put between any of the lines for a continued entry. Put all
comments ahead of the entry. (See above example).
2. The specification must be repeated for each line onto which the entry is continued.
570
-------
Users Control Input
HT-BED-DELTT
Initial temperature changes for Jobson bed conduction method
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HT-BED-DELTT
<-range><-delttl-><-deltt2-><-deltt3-><-deltt4-><-deltt5-><-deltt6-X-deltt7->
<-range>
(repeats until all operations of this type are covered)
END HT-BED-DELTT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HT-BED-DELTT
RCHRES *** DELTT
# - # *** 1
*** g
1 14.2
1 4.71
etc
END HT-BED-DELTT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
<-deltti->
DELTT(100)
F10.0
o
o
none
none
deg F
Engl
o
o
none
none
deg C
Metric
Explanation
DELTT are initial water temperature changes for the TSTOP time intervals immediately preceding the
starting time of the simulation; used in the Jobson bed-conduction method. A maximum of 100 values of
DELTT are possible. DELTT values are positive if the water temperature increases.
See rules for continuing an entry onto more than 1 line in Explanation for table HT-BED-DELH.
DELTT
2
9
9.44
4.47
DELTT
3
10
7.80
4.27
DELTT
4
11
6.66
3.81
DELTT
5
12
5.77
3 . 93
DELTT
6
13
5.34
3.53
DELTT
7
14
4 .99
3 . 66
571
-------
HSPF Version 12
HEAT-INIT
Initial conditions for HTRCH
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
HEAT-INIT
<-range>< init-temp >
(repeats until all operations of this type are covered)
END HEAT-INIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
HEAT-INIT
RCHRES TW AIRTMP
# - # degF degF
17 62. 70.
END HEAT-INIT
•A-**
•A-**
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
TW
F10.0
60.
32 .
200 .
degF
Engl
15.5
o
o
95.
degC
Metric
AIRTMP
F10.0
60.
-90 .
150 .
degF
Engl
15.5
-70.0
65.
degC
Metric
Explanation
TW is the initial water temperature and AIRTMP is the initial air temperature at the RCHRES.
572
-------
Users Control Input
SEDTRN input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type SANDFG]
Table-type SED-GENPARM
Table-type SED-HYDPARM
Table-type SAND-PM
Table-type SILT-CLAY-PM
[Table-type SSED-INIT]
[Table-type BED-INIT]
-- only if Section HYDR is inactive
— include twice, 1st for silt, 2nd for clay
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables above is detailed in the documentation which follows. Tables in
brackets [] need not always be supplied; for example, because all of the inputs have default values.
573
-------
HSPF Version 12
SANDFG
Sandload method flag
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SANDFG
<-range>
(repeats until all operations of this type are covered)
END SANDFG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SANDFG
RCHRES ***
# - # SDFG ***
2 2
END SANDFG
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
SANDFG 15 3 1 3
Explanation
SANDFG indicates the method that will be used for sandload simulation:
1 = Toffaleti method
2 = Colby method
3 = user-specified power function method.
574
-------
Users Control Input
SED-GENPARM
General sediment related parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345
•A-**********************************
Layout
¦k -k -k -k -k -k
SED-GENPARM
<-range>< gen-parm >
(repeats until all operations of this type are covered)
END SED-GENPARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SED-GENPARM
RCHRES BEDWID
# - # (m)
3 10 30.
END SED-GENPARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
BEDWID
F10.0
none
1.0
none
ft
Engl
none
o
CO
none
m
Metric
BEDWRN
F10.0
100 .
. 001
none
ft
Engl
30.5
. 0003
none
m
Metric
POR
F10.0
0.5
0.1
0 . 9
none
Both
Explanation
BEDWID is the width of the cross-section over which HSPF will assume bed sediment is deposited
(regardless of stage, top-width, etc); BEDWID is constant. It is used to estimate the depth of bed
sediment.
BEDWRN is the bed depth which, if exceeded (e.g., through deposition) will cause a warning message to
be printed in the echo file (MESSU).
POR is the porosity of the bed (volume voids/total volume). It is used to estimate bed depth.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
BEDWRN POR***
(m)
2. 0.4
¦k -k -k
575
-------
HSPF Version 12
SED-HYDPARM
Parameters normally read in Section HYDR
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SED-HYDPARM
<-range>< sed-hydparm >
(repeats until all operations of this type are covered)
END SED-HYDPARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SED-HYDPARM
RCHRES LEN DELTH
# - # (km) (m)
2 5.0 4.0
5 20.0 5.0
END SED-HYDPARM
DB50***
(mm)***
0.5
0.3
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
LEN
F10.0
none
0.01
none
miles
Engl
none
0.016
none
km
Metric
DELTH
F10.0
0.0
o
o
none
ft
Engl
0.0
o
o
none
m
Metric
DB50
F10.0
. 01
. 0001
100 .
in
Engl
.25
. 0025
2500.
mm
Metric
Explanation
This table is only required and read if Section HYDR is not active. Normally these parameters are
supplied in Table-type HYDR-PARM2; see section HYDR for definitions.
576
-------
Users Control Input
SAND-PM
Parameters related to sand transport
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SAND-PM
<-range>< sand-parms >
(repeats until all operations of this type are covered)
END SAND-PM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SAND-PM
RCHRES D W ***
# - # (in) (in/sec) ***
3 .01 1.2
END SAND-PM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
D
F10.0
none
. 001
100 .
in
Engl
none
. 025
2500.
mm
Metric
W
F10.0
none
. 02
500 .
in/sec
Engl
none
. 5
12500.
mm/sec
Metric
RHO
F10.0
2 . 65
1.0
4.0
gm/cm3
Both
KSAND
F10.0
0.0
0.0
none
complex
Both
EXPSND
F10.0
0.0
0.0
none
complex
Both
Explanation
D is the effective diameter of the transported sand particles, and W is the corresponding fall velocity in
still water. Note: the sand transport algorithms do not actually use D; they use DB50, supplied in Table-
type HYDR-PARM2. D is included here for consistency with the input data supplied for cohesive
sediment.
RHO is the density of the sand particles.
KSAND and EXPSND are the coefficient and exponent in the sandload power function formula. These
values should be input if SANDFG=3.
577
-------
HSPF Version 12
SILT-CLAY-PM
Parameters for silt or clay
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SILT-CLAY-PM
<-range><
Silt-clay-pm
(repeats until all operations of this type are covered)
END SILT-CLAY-PM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SILT-CLAY-PM
RCHRES D
W
RHO
TAUCD
TAUCS
M
•A-**
# - # (mm) (mm/s
ec) (gm/cm3) (
kg/m2)
(kg/m2)
(kg/m2.d)
¦k -k -k
o
CO
.80
2 . 7
2 . 0
2 . 5
0.1
9 .04
1.5
2 . 6
2 . 0
3.0
.08
END SILT-CLAY-PM
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
Details
Symbol Fortran name
Format
Def
Min
Max
Units Unit syst
D
F10.0
0.0
0.0
. 003
in
Engl
0.0
0.0
. 07
mm
Metric
W
F10.0
0.0
0.0
.2
in/sec
Engl
0.0
0.0
5.0
mm/sec
Metric
RHO
F10.0
2 . 65
2.0
4.0
gm/cm3
Both
TAUCD
F10.0
1.0E10
1.0E-10
none
lb/ft2
Engl
1.0E10
1.0E-10
none
kg/m2
Metric
TAUCS
F10.0
1.0E10
1.0E-10
none
lb/ft2
Engl
1.0E10
1.0E-10
none
kg/m2
Metric
M
F10.0
0.0
0.0
none
lb/ft2.d
Engl
0.0
0.0
none
kg/m2.d
Metric
578
-------
Users Control Input
Explanation
This table must be supplied twice; first for silt, then for clay.
D is the effective diameter of the particles and W is the corresponding fall velocity in still water.
RHO is the density of the particles.
TAUCD is the critical bed shear stress for deposition. Above this stress, there will be no deposition; as
the stress drops below this value to zero, deposition will gradually increase to the value implied by the fall
velocity in still water.
TAUCS is the critical bed shear stress for scour. Below this value, there will be no scour; above it, scour
will steadily increase.
In general TAUCD should be less than or equal to TAUCS.
M is the erodibility coefficient of the sediment.
Note that the default values for W, TAUCD, TAUCS, and M have been set so that silt and clay will
behave as "washload"; that is, material will settle at the rate implied by W (defaulted to zero) and there
will be no scour; the material will behave like a conservative substance.
579
-------
HSPF Version 12
SSED-INIT
Initial concentrations of suspended sediment
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SSED-INIT
<-range>< ssed-init >
(repeats until all operations of this type are covered)
END SSED-INIT
¦k -k -k -k -k -k -k
Example
•A-**
¦k -k -k
SSED-INIT
RCHRES Suspended sed cones (mg/1)
# - # Sand Silt Clay
1 5 100. 50. 20.
END SSED-INIT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
SSED(3)
3F10.0
o
o
o
o
none
mg/1
Both
Explanation
The initial concentrations of suspended sand, silt, and clay, respectively.
580
-------
Users Control Input
BED-INIT
Initial content of bed sediment
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
BED-INIT
<-range><-bed-dep>
(repeats until all operations of this type are covered)
END BED-INIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
BED-INIT
RCHRES BEDDEP Initial bed composition ***
# - # (m) Sand Silt Clay ***
3 1.5 0.6 0.2 0.2
END BED-INIT
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
BEDDEP
F10.0
0
0
O
o
none
ft
Engl
0
0
o
o
none
m
Metric
F10.0
1
0
. 0001
1.0
none
Both
F10.0
0
0
o
o
. 9999
none
Both
F10.0
0
0
o
o
. 9999
none
Both
Explanation
BEDDEP is the initial total depth (thickness) of the bed.
The three values supplied under , , and are the initial fractions (by
weight) of sand, silt, and clay in the bed material. The default values are arranged to simulate an all-sand
bed. The sum of the fractions must be 1.00.
581
-------
HSPF Version 12
GQUAL input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type GQ-GENDATA]
[Table-type GQ-AD-FLAGS]
next 15 tables — repeat for each qual
Table-type GQ-QALDATA
[Table-type GQ-QALFG]
[Table-type GQ-FLG2]
Table-type GQ-HYDPM -- only if qual undergoes hydrolysis (QALFG(1,I)=1)
Table-type GQ-ROXPM -- only if qual undergoes oxidation (QALFG(2,I)=1)
[Table-type GQ-PHOTPM] -- only if qual undergoes photolysis (QALFG(3,I)=1)
Table-type GQ-CFGAS -- only if qual undergoes volatilization (QALFG(4,I)=1)
next 2 tables -- only if qual undergoes biodegradation (QALFG(5,I)=1)
Table-type GQ-BIOPM
Table-type MON-BIO -- only if biomass is input monthly (GQPM2(7,I)=3)
Table-type GQ-GENDECAY -- only if qual has "general" decay (QALFG(6,I)=1)
next 5 tables -- only if qual is sediment associated (QALFG(7,I)=1)
[Table-type GQ-SEDDECAY]
Table-type GQ-KD
Table-type GQ-ADRATE
[Table-type GQ-ADTHETA]
[Table-type GQ-SEDCONC]
[Table-type GQ-VALUES]
next 3 tables -- only if the data are to be read as monthly values
(Source flag in Table-type GQ-GENDATA is ON)
[Table-type MON-WATEMP]
[Table-type MON-PHVAL] — only if there is hydrolysis (any QALFG(1)=1)
[Table-type MON-ROXYGEN] — only if there is oxidation (any QALFG(2)=1)
next 8 tables -- only if there is photolysis (any QALFG(3) = 1)
Table-type GQ-ALPHA
[Table-type GQ-GAMMA]
[Table-type GQ-DELTA]
[Table-type GQ-CLDFACT]
582
-------
Users Control Input
next 3 tables -- only if the data are to be read as monthly values
(Source flag in Table-type GQ-GENDATA is ON)
[Table-type MON-CLOUD]
[Table-type MON-SEDCONC]
[Table-type MON-PHYTO]
[Table-type SURF-EXPOSED] — only if Section HTRCH is inactive
(see Section PLANK for documentation)
next 7 tables
[Table-type OX-FLAGS]
[Table-type ELEV]
[Table-type OX-CFOREA]
[Table-type OX-TSIVOGLOU]
Table-type OX-LEN-DELTH
[Table-type OX-TCGINV]
Table-type OX-REAPARM
[Table-type GQ-DAUGHTER]
only if there is volatilization (any QALFG(4) = 1)
— repeat for each decay process that produces
daughter quals from parents
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
A "qual" is a generalized quality constituent simulated using this module section.
The exact format of each of the tables above, except those "borrowed" from Sections OXRX and
PLANK, is detailed in the documentation which follows. Tables in brackets [] need not always be
supplied; for example, because all of the inputs have default values.
583
-------
HSPF Version 12
GQ-GENDATA
General input for Section GQUAL
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-GENDATA
<-range>< source-fgs >
(repeats until all operations of this type are covered)
END GQ-GENDATA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-GENDATA
RCHRES NGQL TPFG PHFG ROFG CDFG SDFG PYFG LAT***
# - # ***
173221223 48
END GQ-GENDATA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
NGQUAL
15
1
1
3
none
Both
TEMPFG
15
2
1
3
none
Both
PHFLAG
15
2
1
3
none
Both
ROXFG
15
2
1
3
none
Both
CLDFG
15
2
1
3
none
Both
SDFG
15
2
1
3
none
Both
PHYTFG
15
2
1
3
none
Both
LAT
15
0
-54
54
degrees
Both
584
-------
Users Control Input
Explanation
NGQUAL - number of generalized constituents (quals) being simulated.
TEMPFG - source of water temperature data. 1 means a time series (either input or computed); 2 means a
single user-supplied value; 3 means 12 user-supplied values (one for each month).
PHFLAG - source of pH data. Input only if any QALFG(1)=1. The source designation scheme is the same
as for TEMPFG.
ROXFG - source of free radical oxygen data. Input only if any QALFG(2)=1. The source designation
scheme is the same as for TEMPFG.
CLDFG - source of cloud cover data. Input only if any QALFG(3)=1. The source designation scheme is
the same as for TEMPFG.
SDFG - source of total sediment concentration data. Input only if any QALFG(3)=1. The source
designation scheme is the same as for TEMPFG.
PHYTFG - source of phytoplankton data. Input only if any QALFG(3)=1. The source designation scheme
is the same as for TEMPFG.
LAT - latitude of the RCHRES. Input only if any QALFG(3)=1. Positive for the northern hemisphere.
585
-------
HSPF Version 12
GQ-AD-FLAGS
Atmospheric deposition flags for GQUAL
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END GQ-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-AD-FLAGS
RCHRES Atmospheric deposition flags ***
*** GQUAL1 GQUAL2 GQUAL3
#*** #
1 7 -1 10 -1 -1 11 12
END GQ-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
GQADFG(*)
(IX,213)
0
-1
none
Explanation
GQADFG is an array of flags indicating the source of atmospheric deposition data. Each GQUAL has
two flags. The first is for dry or total deposition flux, and the second is for wet deposition concentration.
The flag values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series GQADFX or GQADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
586
-------
Users Control Input
GQ-QALDATA
Data for a generalized quality constituent
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-QALDATA
<-range>< gqid ><—dqal—> <—conv—>
(repeats until all operations of this type are covered)
END GQ-QALDATA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-QALDATA
RCHRES *** GQID
# - # ***
1 7 Coliforms
END GQ-QALDATA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran
name(s)
Format
Def
Min
Max
Units
Unit
systeir
GQID
5A4
none
none
none
none
Both
DQAL
F10.0
0.0
0.0
none
concid
Both
CONCID
A4
none
none
none
none
Both
CONV
F10.0
none
1.0E-30
none
see below
QTYID
2A4
none
none
none
none
Both
Explanation
GQID - Name/identifier of constituent (qual), limited to 20 characters.
DQAL - Initial dissolved concentration of qual.
CONCID - Concentration units (implied that it is "per liter") eg."mg"(/l).
QTYID - Name of mass quantity unit for qual, limited to 8 characters.
CONV is the conversion factor from QTYID/VOL to the desired concentration units (CONCID): Cone =
CONV* (QTYID/VOL). If English units are being used (EMFG = 1 in the GLOBAL Block), then VOL
units are cubic feet; if Metric units are in effect (EMFG = 2), then VOL units are cubic meters. For
example, if CONCID is mg/1, QTYID is kg, and VOL is cubic meters, then CONV=1000.
DQAL CONCID CONV QTYID
2.0 # .001 #
587
-------
HSPF Version 12
GQ-QALFG
First set of flags for a qual
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-QALFG
<-range>< degrad-fgs Xsf g>
(repeats until all operations of this type are covered)
END GQ-QALFG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-QALFG
RCHRES HDRL OXID PHOT VOLT BIOD GEN SDAS***
# - #
17 110 0 1
END GQ-QALFG
0 1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
QALFG(1)
QALFG(2)
QALFG(3)
QALFG(4)
QALFG(5)
QALFG(6)
QALFG(7)
15
15
15
15
15
15
15
none
none
none
none
none
none
none
Both
Both
Both
Both
Both
Both
Both
Explanation
QALFG(l) - indicates whether hydrolysis is considered for dissolved qual.
QALFG(2) - indicates whether oxidation by free radical oxygen is considered for dissolved qual.
QALFG(3) - indicates whether photolysis is considered for dissolved qual.
QALFG(4) - indicates whether volatilization is considered for dissolved qual.
QALFG(5) - indicates whether biodegradation is considered for dissolved qual.
QALFG(6) - indicates whether general first order decay is considered for dissolved qual.
QALFG(7) - indicates whether or not qual is associated with sediment. If so, adsorption/desorption of
qual is simulated.
588
-------
Users Control Input
GQ-FLG2
Second set of flags for a qual
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-FLG2
<-range>< daughter proc >
(repeats until all operations of this type are covered)
END GQ-FLG2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-FLG2
RCHRES HDRL OXID PHOT VOLT BIOD GEN SBMS***
# - # ***
170010102
END GQ-FLG2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
GQPM2
(1)
15
0
0
1
none
Both
GQPM2
(2)
15
0
0
1
none
Both
GQPM2
(3)
15
0
0
1
none
Both
GQPM2
(4)
15
0
0
1
none
Both
GQPM2
(5)
15
0
0
1
none
Both
GQPM2
(6)
15
0
0
1
none
Both
GQPM2
(7)
15
2
1
3
none
Both
Explanation
GQPM2(1) through GQPM2(6) indicate whether or not this qual is a daughter product through each of
the six decay processes (1-hydrolysis, 2-oxidation, 3-photolysis, 4-reserved for future use, 5-
biodegradation, 6-general first order decay). GQPM2(7) indicates the source of biomass data for qual.
Input only if QALFG(5)=1. (l=time series, 2=single value, 3=twelve monthly values)
589
-------
HSPF Version 12
GQ-HYDPM
Hydrolysis parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-HYDPM
<-range>< hydrol-parms >
(repeats until all operations of this type are covered)
END GQ-HYDPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-HYDPM
RCHRES KA
# - #
1 7 5000.
END GQ-HYDPM
KB
50. .00004
KN THHYD***
¦k -k -k
1.03
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KA
KB
KN
THHYD
F10.0 none 1.0E-30 none /M-sec Both
F10.0 none 1.0E-30 none /M-sec Both
F10.0 none 1.0E-30 none /sec Both
F10.0 1.0 1.0 2.0 none Both
Explanation
KA - second-order acid rate constant for hydrolysis
KB - second-order base rate constant for hydrolysis
KN - first-order rate constant of neutral reaction with water
THHYD - temperature correction coefficient for hydrolysis
590
-------
Users Control Input
GQ-ROXPM
Parameters for free radical oxidation of qual
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-ROXPM
<-range>< rox-pm >
(repeats until all operations of this type are covered)
END GQ-ROXPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-ROXPM
RCHRES KOX
# - #
1 7 .000014
END GQ-ROXPM
THOX***
¦k -k -k
1.01
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
KOX
F10.0
none
1.0E-30
none
/M.sec
Both
THOX
F10.0
1.0
1.0
2.0
none
Both
Explanation
KOX - second-order rate constant for oxidation by free radical oxygen
THOX - temperature correction coefficient for oxidation by free radical oxygen
591
-------
HSPF Version 12
GQ-PHOTPM
Parameters for photolysis
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-PHOTPM
<-range>< first-7 >
<-range>< second-7 >
<-range>< last-4 ><—phi ><-theta—>
(repeats until all operations of this type are covered)
END GQ-PHOTPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-PHOTPM
# -
-k -k -k
K1
K2
K3
K4
K5
K6
K7
# -
-k -k -k
K8
K9
K10
Kll
K12
K13
K14
# -
-k -k -k
K15
K16
K17
K18
PHI
THETA
1
1
. 5
. 5
. 5
. 5
. 5
. 5
. 5
1
1
. 5
. 5
. 5
. 5
. 5
. 5
. 5
1
1
. 5
. 5
. 5
. 5
.47
1.02
END GQ-PHOTPM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit
PHOTPM(1-7)
F10.0
0.0
0.0
none
1/M.cm
Both
PHOTPM(8-14)
F10.0
0.0
0.0
none
1/M.cm
Both
PHOTPM(15-18)
F10.0
0.0
0.0
none
1/M.cm
Both
PHOTPM(19)
F10.0
1.0
. 0001
10.0
M/E
Both
PHOTPM(20)
F10.0
1.0
1.0
2.0
none
Both
592
-------
Users Control Input
Explanation
PHOTPM(l) through PHOTPM(18) are molar absorption coefficients for qual for 18 wavelength ranges
of light (see Functional Description for subroutine DDECAY in Part E).
PHOTPM(19) is the quantum yield for the qual in air-saturated pure water.
PHOTPM(20) is the temperature correction coefficient for photolysis.
When an entry has to be continued onto more than 1 line:
1. No blank or comment lines may be put between any of the lines for a continued entry. Put all
comments ahead of the entry. (See above example).
2. The specification must be repeated for each line onto which the entry is continued.
593
-------
HSPF Version 12
GQ-CFGAS
Ratio of volatilization rate to oxygen reaeration rate
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-CFGAS
<-range><—cfgas->
(repeats until all operations of this type are covered)
END GQ-CFGAS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-CFGAS
RCHRES CFGAS***
# - # ***
17 .70
END GQ-CFGAS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CFGAS F10.0 none 1.0E-30 none none Both
Explanation
CFGAS is the ratio of the volatilization rate to the oxygen reaeration rate.
594
-------
Users Control Input
GQ-BIOPM
Biodegradation parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-BIOPM
<-range>< bioparm >
(repeats until all operations of this type are covered)
END GQ-BIOPM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-BIOPM
RCHRES BIOCON THBIO
# - #
1 7 .31 1.07
END GQ-BIOPM
BIO***
¦k -k -k
.04
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
BIOCON
THBIO
BIO
F10.0 none
F10.0 1.07
F10.0 none
1.0E-30 none
1.0 2.0
0.00001 none
1/mg.d Both
none Both
mg/1 Both
Explanation
BIOCON - Second order rate constant for biodegradation of qual by biomass.
THBIO - Temperature correction coefficient for biodegradation of qual.
BIO - Concentration of the biomass which causes biodegradation of qual.
595
-------
HSPF Version 12
MON-BIO
Monthly values of biomass
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-BIO
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-BIO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-BIO
RCHRES BM1 BM2 BM3 BM4 BM5 BM6 BM7 BM8 BM9 BM10 BM11 BM12***
# - # ***
1 7 .03 .035 .03 .02 .02 .03 .03 .035 .040 .060 .050 .035
END MON-BIO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<12-values> BIOM(l-12) F5.0 none 0.00001 none mg/1 Both
Explanation
BIOM(l) through BIOM(12) are monthly concentrations of biomass that cause biodegradation of qual.
This table must be included only if GQPM2(7) is assigned a value of 3 in Table-type GQ-FLG2.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
596
-------
Users Control Input
GQ-GENDECAY
Parameters for "general" decay of qual
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-GENDECAY
<-range>< decay-pms >
(repeats until all operations of this type are covered)
END GQ-GENDECAY
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-GENDECAY
RCHRES FSTDEC THFST***
# - # ***
1 7 0.2 1.05
END GQ-GENDECAY
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
FSTDEC F10.0 none .00001 none /day Both
THFST F10.0 1.07 1.0 2.0 none Both
Explanation
FSTDEC - first-order decay rate for qual.
THFST - temperature correction coefficient for first-order decay of qual.
597
-------
HSPF Version 12
GQ-SEDDECAY
Parameters for decay of contaminant adsorbed to sediment
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-SEDDECAY
<-range>< ads-decay >
(repeats until all operations of this type are covered)
END GQ-SEDDECAY
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-SEDDECAY
RCHRES KSUSP THSUSP KBED
# - #
1 7 .01 1.06 .005
END GQ-SEDDECAY
THBED***
¦k -k -k
1.03
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ADDCPM(1)
F10.0
o
o
o
o
none
/day
Both
ADDCPM(2)
F10.0
1.07
1.0
2.0
none
Both
ADDCPM(3)
F10.0
o
O
o
o
none
/day
Both
ADDCPM(4)
F10.0
1.07
1.0
2.0
none
Both
Explanation
ADDCPM(l) - Decay rate for qual adsorbed to suspended sediment.
ADDCPM(2) - Temperature correction coefficient for decay of qual on suspended sediment.
ADDCPM(3) - Decay rate for qual adsorbed to bed sediment.
ADDCPM(4) - Temperature correction coefficient for decay of qual on bed sediment.
598
-------
Users Control Input
GQ-KD
Adsorption coefficients of qual
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-KD
<-range><
k-part
(repeats until all operations of this type are covered)
END GQ-KD
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-KD
RCHRES
# - #
1 7
END GQ-KD
ADPM1
1.0
ADPM2
5000
ADPM3
15000
ADPM4
. 3
ADPM5
1000
ADPM6***
¦k -k -k
4000
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
AD PM (1, 1)
F10.0
none
1.0E-10
none
1/mg
Both
AD PM (2 , 1)
F10.0
none
1.0E-10
none
1/mg
Both
AD PM (3, 1)
F10.0
none
1.0E-10
none
1/mg
Both
AD PM (4 , 1)
F10.0
none
1.0E-10
none
1/mg
Both
AD PM ( 5 , 1)
F10.0
none
1.0E-10
none
1/mg
Both
AD PM ( 6, 1)
F10.0
none
1.0E-10
none
1/mg
Both
Explanation
ADPM(1,1) through ADPM(6,1) are distribution coefficients for qual with: 1-suspended sand, 2-
suspended silt, 3-suspended clay, 4-bed sand, 5-bed silt, and 6-bed clay.
599
-------
HSPF Version 12
GQ-ADRATE
Adsorption/desorption rate parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-ADRATE
<-range>< k-adsdes >
(repeats until all operations of this type are covered)
END GQ-ADRATE
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-ADRATE
RCHRES ADPM1 ADPM2 ADPM3 ADPM4 ADPM5 ADPM6***
# - # ***
1 7 400. 400. 400. .0028 .0028 .0028
END GQ-ADRATE
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
AD PM(1,2)
F10.0
none
. 00001
none
/day
Both
AD PM(2,2)
F10.0
none
. 00001
none
/day
Both
AD PM(3,2)
F10.0
none
. 00001
none
/day
Both
AD PM(4,2)
F10.0
none
. 00001
none
/day
Both
AD PM(5,2)
F10.0
none
. 00001
none
/day
Both
AD PM(6,2)
F10.0
none
. 00001
none
/day
Both
Explanation
ADPM(1,2) through ADPM(6,2) are transfer rates between adsorbed and desorbed states of qual with: 1-
suspended sand, 2-suspended silt, 3-suspended clay, 4-bed sand, 5-bed silt, and 6-bed clay.
600
-------
Users Control Input
GQ-ADTHETA
Adsorption/de sorption temperature correction parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-ADTHETA
<-range><--
thet-adsdes
(repeats until all operations of this type are covered)
END GQ-ADTHETA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-ADTHETA
RCHRES ADPM1 ADPM2 ADPM3 ADPM4 ADPM5 ADPM6***
# - # ***
1 7 1.07 1.07 1.07 1.04 1.04 1.04
END GQ-ADTHETA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name
Format
Def
Min
Max
Units
Unit syst
ADPM(1,3)
F10.0
1.07
1.0
2.0
none
Both
AD PM (2 , 3)
F10.0
1.07
1.0
2.0
none
Both
AD PM (3, 3)
F10.0
1.07
1.0
2.0
none
Both
AD PM (4 , 3)
F10.0
1.07
1.0
2.0
none
Both
AD PM (5, 3)
F10.0
1.07
1.0
2.0
none
Both
AD PM ( 6, 3)
F10.0
1.07
1.0
2.0
none
Both
Explanation
ADPM(1,3) through ADPM(6,3) are temperature correction coefficients for adsorption/de sorption on: 1-
suspended sand, 2-suspended silt, 3-suspended clay, 4-bed sand, 5-bed silt, 6-bed clay.
601
-------
HSPF Version 12
GQ-SEDCONC
Initial concentrations on sediment
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-SEDCONC
<-range>< sedconc >
(repeats until all operations of this type are covered)
END GQ-SEDCONC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-SEDCONC
RCHRES SQAL1 SQAL2 SQAL3 SQAL4 SQAL5 SQAL6***
# - # ***
1 7 1.3 8.4 8.9 1.9 8.4 9.2
END GQ-SEDCONC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units Unit syst
SQAL(1-6)
F10.0
o
o
o
o
none
concu/mg Both
Explanation
SQAL(l) through SQAL(6) are initial concentrations of qual on: 1-suspended sand, 2-suspended silt, 3-
suspended clay, 4-bed sand, 5-bed silt, 6-bed clay.
602
-------
Users Control Input
GQ-VALUES
Initial values for inputs which are constant
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345
•A-**********************************
Layout
¦k -k -k -k -k -k
GQ-VALUES
<-range><—twat—><-phval—>< roc—>< eld—><—sdcnc-><—phy >
(repeats until all operations of this type are covered)
END GQ-VALUES
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-VALUES
RCHRES TWAT PHVAL
# - #
17 22. 7.
END GQ-VALUES
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
TWAT
F10.0
60
32
212 .
deg F
Engl
15
. 5
0 .
1
100 .
deg C
Metric
PHVAL
F10.0
7 .
0
1.
0
14 .
none
Both
ROC
F10.0
0 .
0
0 .
0
none
mole/1
Both
CLD
F10.0
0 .
0
0 .
0
10.
tenths
Both
SDCNC
F10.0
0 .
0
0 .
0
none
mg/1
Both
PHY
F10.0
0 .
0
0 .
0
none
mg/1
Both
Explanation
In Table-type GQ-GENDATA, values for data source flags are specified. If any of the flags are assigned a
value of 2, a single constant value for that data type must be provided in this table. For example, if
ROXFG=2 a value for free radical oxygen concentration (ROC) must be supplied in columns 31-40 of
this table.
TWAT - water temperature
PHVAL-pH
ROC - free radical oxygen concentration
CLD - cloud cover
SDCNC - total suspended sediment concentration
PHY - phytoplankton concentration (as biomass)
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
ROC CLD SDCNC PHY***
¦k -k -k
.07 1. 11. .007
603
-------
HSPF Version 12
MON-WATEMP
Monthly values of water temperature
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-WATEMP
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-WATEMP
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-WATEMP
RCHRES T1
# - #
1 7 34
END MON-WATEMP
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<12-values> TEMPM(1-12) F5.0 60. 32. 212. degF Engl
15.5 0.1 100. degC Metric
T2 T3 T4 T5 T6 T7 T8 T9 T10 Til T12***
¦k -k -k
37 39 42 55 59 64 62 58
54
46 38
Explanation
In Table-type GQ-GENDATA, values for data source flags are specified. If TEMPFG is assigned a value
of 3, 12 monthly values for water temperature must be supplied in this table.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
604
-------
Users Control Input
MON-PHVAL
Monthly values of pH
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-PHVAL
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-PHVAL
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-PHVAL
RCHRES PHI PH2 PH3 PH4 PH5 PH6 PH7 PH8 PH9 PH10 PH11 PH12***
# - # ***
1 7 6.8 6.8 6.4 6.1 5.9 5.6 5.6 5.9 6.1 6.4 6.8 6.8
END MON-PHVAL
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<12-values> PHVALM(1-12) F5.0 7.0 1.0 14.0 none Both
Explanation
In Table-type GQ-GENDATA, values for data source flags are specified. If PHFLAG is assigned a value
of 3, 12 monthly values for pH must be supplied in this table.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
605
-------
HSPF Version 12
MON-ROXYGEN
Monthly values of free radical oxygen
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-ROXYGEN
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-ROXYGEN
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-ROXYGEN
RCHRES OX1 OX2 OX3 OX4 OX5 0X6 0X7 0X8 0X9 OXIO 0X11 0X12***
# - # ***
1 7 .09 .09 .10 .11 .12 .12 .12 .12 .12 .10 .09 .09
END MON-ROXYGEN
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<12-values> ROCM(l-12) F5.0 0.0 0.0 none mole/1 Both
Explanation
In Table-type GQ-GENDATA, values for data source flags are specified. If ROXFG is assigned a value
of 3, 12 monthly values for free radical oxygen concentration must be supplied in this table.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
606
-------
Users Control Input
GQ-ALPHA
Values of base absorbance coefficient
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-ALPHA
<-range>< first-7 >
<-range>< second-7 >
<-range>< last-4 >
(repeats until all operations of this type are covered)
END GQ-ALPHA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-ALPHA
RCHRES***
# -
-k -k -k
K1
K2
K3
K4
K5
K6
K7
# -
-k -k -k
K8
K9
K10
Kll
K12
K13
K14
# -
-k -k -k
K15
K16
K17
K18
1
1
. 008
009
. 010
. 011
. 011
011
. 012
1
1
. 013
015
. 016
. 017
. 018
019
. 020
1
1
. 021
022
. 024
. 024
END GQ
-ALPHA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Min
Max
Units
Unit syst
ALPH(1-7)
F10.0 none
. 00001
none
/cm
Both
ALPH(8-14)
F10.0 none
. 00001
none
/cm
Both
ALPH (15-18)
F10.0 none
. 00001
none
/cm
Both
Explanation
ALPH(l) through ALPH(18) are base absorption coefficients for 18 wavelengths of light passing through
clear water.
This table is necessary only when a qual undergoes photolysis; i.e., when any QALFG(3)=1 in Table-type
GQ-QALFG.
When an entry has to be continued onto more than 1 line:
1. No blank or comment lines may be put between any of the lines for a continued entry. Put all
comments ahead of the entry. (See above example).
2. The specification must be repeated for each line onto which the entry is continued.
607
-------
HSPF Version 12
GQ-GAMMA
Values of sediment absorbance coefficient
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-GAMMA
<-range>< first-7 >
<-range>< second-7 >
<-range>< last-4 >
(repeats until all operations of this type are covered)
END GQ-GAMMA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-GAMMA
RCHRES***
#
-k -k -k
K1
K2
K3
K4
K5
K6
K7
#
-k -k -k
K8
K9
K10
Kll
K12
K13
K14
#
-k -k -k
K15
K16
K17
K18
1
4
. 001
. 001
. 001
. 001
. 001
. 001
. 001
1
4
. 001
. 002
. 002
. 002
. 002
. 002
. 002
1
4
. 002
. 002
. 002
. 002
END
GQ-GAMMA
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
GAMM(l-7) F10.0 0.0 0.0 none 1/mg.cm Both
GAMM(8-14) F10.0 0.0 0.0 none 1/mg.cm Both
GAMM(15-18) F10.0 0.0 0.0 none 1/mg.cm Both
Explanation
GAMM(l) through GAMM(18) are increments to the base absorbance coefficient (Table-type GQ-
ALPHA) for light passing through sediment-laden water.
This is table necessary only when a qual undergoes photolysis; i.e., when any QALFG(3)=1 in Table-type
GQ-QALFG.
See rules for continuing an entry onto more than 1 line in Explanation for Table-type GQ-ALPHA.
608
-------
Users Control Input
GQ-DELTA
Values of phytoplankton absorbance coefficient
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-DELTA
<-range>< first-7 >
<-range>< second-7 >
<-range>< last-4 >
(repeats until all operations of this type are covered)
END GQ-DELTA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-DELTA
RCHRES***
# - #***
K1
K2
K3
K4
K5
K6
K7
# - #***
K8
K9
K10
Kll
K12
K13
K14
# - #***
K15
K16
K17
K18
1 4
.0007
.0007
.0007
.0007
.0007
.0007
.0007
1 4
.0007
.0007
.0007
.0007
.0007
.0007
.0007
1 4
.0007
.0007
.0007
.0007
END GQ-DELTA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
DEL(l-7) F10.0 0.0 0.0 none 1/mg.cm Both
DEL(8-14) F10.0 0.0 0.0 none 1/mg.cm Both
DEL(15-18) F10.0 0.0 0.0 none 1/mg.cm Both
Explanation
DEL(l) through DEL(18) are increments to the base absorption coefficient (Table GQ-ALPHA) for light
passing through plankton-laden water.
This table is necessary only when a qual undergoes photolysis; i.e., when any QALFG(3)=1 in Table GQ-
QALFG.
See rules for continuing an entry onto more than 1 line in Explanation for Table-type GQ-ALPHA.
609
-------
HSPF Version 12
GQ-CLDFACT
Light extinction efficiency of cloud cover
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GQ-CLDFACT
<-range><—
<-range><—
<-range><—
first-7 >
second-7 >
-last-4 >
(repeats until all operations of this type are covered)
END GQ-CLDFACT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-CLDFACT
RCHRES***
#
-k -k -k
F1
F2
F3
F4
F5
F6
F7
#
-k -k -k
F8
F9
F10
Fll
F12
F13
F14
#
-k -k -k
F15
F16
F17
F18
1
4
.10
.10
.10
.15
.15
.15
.15
1
4
.17
.17
.17
.17
.18
.19
.20
1
4
.21
.21
.21
.21
END
GQ-CLDFACT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Mm
Max
Units Unit syst
KCLD(1-7)
KCLD(8-14)
KCLD(15-18)
F10.0 0.0
F10.0 0.0
F10.0 0.0
0.0 1.0 none Both
0.0 1.0 none Both
0.0 1.0 none Both
Explanation
KCLD(l) through KCLD(18) are values of light extinction efficiency of cloud cover for each of 18
wavelengths.
This table is necessary only when a qual undergoes photolysis; i.e., when any QALFG(3)=1 in Table-type
GQ-QALFG.
See rules for continuing an entry onto more than 1 line in Explanation for Table-type GQ-ALPHA.
610
-------
Users Control Input
MON-CLOUD
Monthly values of cloud cover
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-CLOUD
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-CLOUD
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-CLOUD
RCHRES CI
# - #
17 3
END MON-CLOUD
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<12-values> CLDM(1-12) F5.0 0.0 0.0 10.0 tenths Both
C2 C3 C4 C5 C6 C7 C8 C9 C10 Cll C12***
¦k -k -k
Explanation
CLDM(l) through CLDM(12) are monthly values of average cloud cover. This table must be included in
the UCI only if CLDFG=3 in Table-type GQ-GENDATA.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
611
-------
HSPF Version 12
MON-SEDCONC
Monthly values of sediment concentration
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-SEDCONC
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-SEDCONC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-SEDCONC
RCHRES
SCI
SC2 SC3 SC4 SC5
SC6
SC7 SC8 SC9 SC10 SC11 SC12***
# - #
¦k -k -k
1 7
2 .
4. 10. 120. 75.
10 .
¦xT
¦xT
CO
CO
END MON-SEDCONC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format
Def
Min Max Units Unit syst
<12-values>
SDCNCM(1-12) F5.0
1 O 1
1 • 1
1 O 1
1 1
0.0 none mg/1 Both
Explanation
SDCNCM(l) through SDCNCM(12) are monthly average suspended sediment concentration values.
This table must be included in the UCI only if SDFG=3 in Table-type GQ-GENDATA.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
612
-------
Users Control Input
MON-PHYTO
Monthly values of phytoplankton concentration
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
MON-PHYTO
<-range>< 12-values >
(repeats until all operations of this type are covered)
END MON-PHYTO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
MON-PHYTO
RCHRES PI P2 P3 P4 P5 P6 P7 P8 P9 P10 Pll P12***
# - # ***
1 7 .01 .03 .03 .03 .04 .11 .33 .47 .31 .17 .15 .06
END MON-PHYTO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
<12-values> PHYM(1-12) F5.0 0.0 0.0 none mg/1 Both
Explanation
PHYM(l) through PHYM(12) are monthly values of phytoplankton concentration. This table must be
included only if PHYTFG=3 in Table-type GQ-GENDATA.
Note: The input monthly values apply to the first day of the month, and values for intermediate days are
obtained by interpolating between successive monthly values.
613
-------
HSPF Version 12
GQ-DAUGHTER
Relationship between parent and daughter quals
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
GQ-DAUGHTER
<-range><— zero—><2-from-l><3-from-l>
<-range><— zero—><— zero—><3-from-2>
<-range><— zero—><— zero—><— zero—>
(repeats until all operations of this type are covered)
END GQ-DAUGHTER
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GQ-DAUGHTER
RCHRES
# -
#
ZERO
2F1
3F1***
# -
#
ZERO
ZERO
3F2***
# -
#
ZERO
ZERO
ZERO***
1
7
0.0
.36
.02
1
7
0.0
0.0
1.24
1
7
0.0
0.0
0.0
END GQ-DAUGHTER
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
0.0
<2-from-l> C(2,l)
<3-from-l> C(3,l)
<3-from-2> C(3,2)
F10.0 0.0 0.0
F10.0 0.0 0.0
F10.0 0.0 0.0
none none Both
none none Both
none none Both
Explanation
This table-type specifies the relationship between parent and daughter compounds. For example, variable
C(2,l) indicates the amount of qual #2 which is produced by decay of qual #1 through one of the decay
processes. The table must be repeated in sequence for each decay process that produces daughter quals
from decay of parent quals. The proper sequence is: 1-hydrolysis, 2-oxidation by free radical oxygen, 3-
photolysis, 4-(reserved for future use), 5-biodegradation, 6-general first order decay. For example, if
biodegradation is the only process of interest, five of these tables must be included, and the fifth one
should contain nonzero values.
614
-------
Users Control Input
Input for RQUAL sections
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type BENTH-FLAG]
[Table-type SCOUR-PARMS]
Section OXRX input
[Section NUTRX input] if NUTRX is active
[Section PLANK input] if PLANK is active
[Section PHCARB input] if PHCARB is active
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables above is detailed in the documentation which follows. Tables in
brackets [] need not always be supplied; for example, because all of the inputs have default values.
615
-------
HSPF Version 12
BENTH-FLAG
Benthic release flag
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
BENTH-FLAG
<-range>
(repeats until all operations of this type are covered)
END BENTH-FLAG
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
BENTH-FLAG
RCHRES BENF***
# - # ***
1 7
END BENTH-FLAG
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
BENRFG 15 0 0 1 none Both
Explanation
If BENRFG is 1, benthal influences are considered in the following sections.
616
-------
Users Control Input
SCOUR-PARMS
Benthal scour parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345
•A-************************
Layout
¦k -k -k -k -k -k
SCOUR-PARMS
<-range>< scour-parms >
(repeats until all operations of this type are covered)
END SCOUR-PARMS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SCOUR-PARMS
RCHRES SCRVEL
# - # ft/sec
17 15.
END SCOUR-PARMS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
SCRVEL
F10.0
10.
. 01
none
ft/sec
Engl
3.05
. 01
none
m/sec
Metric
SCRMUL
F10.0
2.0
1.0
none
none
Both
Explanation
SCRVEL is the threshold velocity above which the effect of scouring on benthal release rates is
considered.
SCRMUL is the multiplier by which benthal releases are increased during scouring.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
SCRMUL***
¦k -k -k
3 .
617
-------
HSPF Version 12
OXRX input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
+ [Table-type OX-FLAGS]
Table-type OX-GENPARM
+ [Table-type ELEV]
[Table-type OX-BENPARM]
+[Table-type OX-CFOREA]
if section HTRCH is not active
if BENRFG=1 (Table-type BENTH-FLAG)
if LKFG=1 (Table-type GEN-INFO)
+ [Table-type OX-TSIVOGLOU]
- if
| REAMFG=1
+ Table-type OX-LEN-DELTH if section HYDR inactive | (Tsivoglou)
+ [Table-type OX-TCGINV]
+ Table-type OX-REAPARM
if REAMFG=2 (Owen/Churchill, etc .
if REAMFG=3
if
LKFG=0
[Table-type OX-INIT]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Note: If any of the tables marked "+" above were supplied in your input for Section GQUAL, they must
not be repeated here (these are the tables used to calculate the oxygen reaeration coefficient, which, under
certain conditions, is also needed in Section GQUAL).
Explanation
The conditions under which data from the various tables are needed are indicated above. REAMFG is the
reaeration method flag, defined in Table-type OX-FLAGS below.
The exact format of each of the tables above is detailed in the documentation which follows. Tables in
brackets [] need not always be supplied; for example, because all of the inputs have default values.
618
-------
Users Control Input
OX-FLAGS
Oxygen flags
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345
•A-************************
Layout
¦k -k -k -k -k -k
OX-FLAGS
<-range>
(repeats until all operations of this type are covered)
END OX-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-FLAGS
RCHRES REAM ***
# - # ***
17 2
END OX-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
REAMFG
15
2
1
3
Explanation
REAMFG indicates the method used to calculate
1 Tsivoglou method is used.
2 Owens, Churchill, or O'Connor-Dobbins
water.
3 Coefficient is calculated as a power function of velocity and/or depth; user inputs exponents for
velocity and depth and an empirical constant (REAK).
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
the reaeration coefficient for free-flowing streams.
method is used depending on velocity and depth of
619
-------
HSPF Version 12
OX-GENPARM
General oxygen parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
OX-GENPARM
<-range>< ox-genparm >
(repeats until all operations of this type are covered)
END OX-GENPARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-GENPARM
RCHRES KBOD2 0
# - # /hr
1 7 0.1
END OX-GENPARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
KBOD20
F10.0
none
1.0E-30
none
/hr
Both
TCBOD
F10.0
1.075
1.0
2.0
none
Both
KODSET
F10.0
0.0
o
o
none
ft/hr
Engl
0.0
o
o
none
m/hr
Metric
SUPSAT
F10.0
1.15
1.0
2.0
none
Both
Explanation
KBOD20 is the unit BOD decay rate at 20 degrees C.
TCBOD is the temperature correction coefficient for BOD decay.
KODSET is the rate of BOD settling.
SUPSAT is the maximum allowable dissolved oxygen supersaturation (expressed as a multiple of the
dissolved oxygen saturation concentration).
TCBOD KODSET SUPSAT***
ft/hr ***
1.06 8.0 1.2
620
-------
Users Control Input
ELEV
RCHRES elevation above sea level
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
ELEV
<-range><—elev—>
(repeats until all operations of this type are covered)
END ELEV
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ELEV
RCHRES ELEV***
# - # ft***
1 7 2100.
END ELEV
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
ELEV F10.0 0.0 0.0 30000 ft Engl
0.0 0.0 10000 m Metric
Explanation
ELEV is the mean RCHRES elevation above sea level.
621
-------
HSPF Version 12
OX-BENPARM
Oxygen benthic parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
OX-BENPARM
<-range>< ox-benparm >
(repeats until all operations of this type are covered)
END OX-BENPARM
Example
¦k -k -k -k -k -k -k
OX-BENPARM
RCHRES BENOD TCBEN EXPOD BRBOD(1) BRBOD(2) EXPREL ***
# - # mg/m2.hr mg/m2.hr mg/m2.hr ***
1 7 1.0
END OX-BENPARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format
Def
Min
Max
Units
Unit syst
BENOD
F10 ,
.0
0.0
0.0
none
mg/m2
. hr
Both
TCBEN
F10 ,
.0
1.074
1.0
2.0
none
Both
EXPOD
F10 ,
.0
1.22
0.1
none
none
Both
BRBOD(1)
F10 ,
.0
72 .
. 0001
none
mg/m2
. hr
Both
BRBOD(2)
F10 ,
.0
100 .
. 0001
none
mg/m2
. hr
Both
EXPREL
F10 ,
.0
2 .82
0.1
none
none
Both
Explanation
This table is used if BENRFG = 1 in Table-type BENTH-FLAG (see RQUAL section).
BENOD is the benthal oxygen demand at 20 degrees C (with unlimited DO concentration).
TCBEN is the temperature correction coefficient for benthal oxygen demand.
EXPOD is the exponential factor in the dissolved oxygen term of the benthal oxygen demand equation.
BRBOD(l) is the benthal release rate of BOD under aerobic conditions, and BRBOD(2) is the increment
to benthal release of BOD under anaerobic conditions.
EXPREL is the exponent in the DO term of the benthal BOD release equation.
622
-------
Users Control Input
OX-CFOREA
Lake reaeration correction coefficient
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
OX-CFOREA
<-range><-cforea->
(repeats until all operations of this type are covered)
END OX-CFOREA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-CFOREA
RCHRES CFOREA***
# - # ***
1 7 0.8
END OX-CFOREA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CFOREA F10.0 1.0 .001 10. none Both
Explanation
CFOREA is a correction factor in the lake reaeration equation; it accounts for good or poor circulation
characteristics.
623
-------
HSPF Version 12
OX-TSIVOGLOU
Parameters for the Tsivoglou calculation of reaeration rate
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
OX-TSIVOGLOU
<-range>< ox-tsivoglou >
(repeats until all operations of this type are covered)
END OX-TSIVOGLOU
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-TSIVOGLOU
RCHRES REAKT TCGINV***
# - # /ft ***
1 7 .07 1.1
END OX-TSIVOGLOU
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
REAKT
F10.0
0.08
0.001
1.0
/ft
Both
TCGINV
F10.0
1.047
1.0
2.0
none
Both
Explanation
This table is required if REAMFG is 1.
REAKT is the empirical constant in Tsivoglou's equation for reaeration (escape coefficient).
TCGINV is the temperature correction coefficient for surface gas invasion.
624
-------
Users Control Input
OX-LEN-DELTH
Length and water elevation drop of reach
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345 67
•A-************************************
Layout
¦k -k -k -k -k -k
OX-LEN-DELTH
<-range>< ox-len-delth >
(repeats until all operations of this type are covered)
END OX-LEN-DELTH
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-LEN-DELTH
RCHRES LEN
# - # miles
17 10.
END OX-LEN-DELTH
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
LEN
F10.0
none
. 01
none
miles
Engl
none
. 01
none
km
Metric
DELTH
F10.0
none
0.00001
none
ft
Engl
none
0.00001
none
m
Metric
Explanation
This table is only relevant if HYDR is inactive and REAMFG = 1.
LEN is the length of the RCHRES.
DELTH is the (energy) drop of the RCHRES over its length.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
DELTH***
ft***
200 .
625
-------
HSPF Version 12
OX-TCGINV
Owen/Churchill/O'Connor-Dobbins data (temperature correction coefficient)
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
OX-TCGINV
<-range><-tcginv->
(repeats until all operations of this type are covered)
END OX-TCGINV
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-TCGINV
RCHRES TCGINV***
# - # ***
1 7 1.07
END OX-TCGINV
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
TCGINV
F10.0
1.047
1.0
2.0
none
Both
Explanation
This table is used when REAMFG = 2.
TCGINV is the temperature correction coefficient for surface gas invasion.
626
-------
Users Control Input
OX-REAPARM
Parameters for user-supplied reaeration formula
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8
•A-*************************************
Layout
¦k -k -k -k -k -k
OX-REAPARM
<-range>< ox-reaparm >
(repeats until all operations of this type are covered)
END OX-REAPARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-REAPARM
RCHRES TCGINV
# - #
1 7 1.08
END OX-REAPARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
TCGINV
F10.0
1.047
1.0
2.0
none
Both
REAK
F10.0
none
1.0E-30
none
/hr
Both
EXPRED
F10.0
0.0
none
0.0
none
Both
EXPREV
F10.0
0.0
0.0
none
none
Both
Explanation
This table is used when REAMFG = 3.
TCGINV is the temperature correction coefficient for surface gas invasion.
REAK is the empirical constant in the equation used to calculate the reaeration coefficient.
EXPRED is the exponent to depth and EXPREV is the exponent to velocity in the reaeration coefficient
equation.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
REAK EXPRED EXPREV***
/hr ***
1.0 -2.0 0.7
627
-------
HSPF Version 12
OX-INIT
Initial concentrations for the OXRX section
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
OX-INIT
<-range>< ox-init >
(repeats until all operations of this type are covered)
END OX-INIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
OX-INIT
RCHRES
# - #
1 7
END OX-INIT
DOX
mg/1
26.
BOD
mg/1
17.2
SATDO***
mg/1***
43 .
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
DOX
F10.0
o
o
o
o
20.0
mg/1
Both
BOD
F10.0
o
o
o
o
none
mg/1
Both
SATDO
F10.0
10.0
0.1
20.0
mg/1
Both
Explanation
DOX is the initial dissolved oxygen.
BOD is the initial biochemical oxygen demand.
SATDO is the initial dissolved oxygen saturation concentration.
628
-------
Users Control Input
NUTRX input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type NUT-FLAGS]
[Table-type NUT-AD-FLAGS]
[Table-type CONV-VAL1]
[Table-type NUT-BENPARM]
Table-type NUT-NITDENIT
[Table-type NUT-NH3VOLAT]
[Table-type MON-PHVAL]
if BENRFG=1 in Table-type BENTH-FLAG
if NH3 volatilization is simulated
(TAMFG=1 and AMVFG=1 in Table-type NUT-FLAGS)
if NH3 is simulated and monthly values of pH are being
input (TAMFG=1 and PHFLAG=3 in Table-type NUT-FLAGS)
see section GQUAL for documentation
[Table-type NUT-BEDCONC] |
[Table-type NUT-ADSPARM] |
[Table-type NUT-ADSINIT] |
if NH3 or P04 adsorption is simulated
((TAMFG=1 and ADNHFG=1) or
(P04FG=1 and ADPOFG=l) in Table-type NUT-FLAGS)
[Table-type NUT-DINIT]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables above is detailed in the documentation which follows. Tables in
brackets [] need not always be supplied; for example, because all of the inputs have default values.
BENRFG indicates whether or not benthal influences are considered. TAMFG indicates whether or not
ammonia is simulated, and ADNHFG indicates whether ammonia adsorption is considered. P04FG
indicates whether or not ortho-phosphorus is simulated, and ADPOFG indicates whether P04 adsorption
is considered.
629
-------
HSPF Version 12
NUT-FLAGS
Nutrient flags
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-FLAGS
<-range>< nut-flags >
(repeats until all operations of this type are covered)
END NUT-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NUT-FLAGS
RCHRES TAM N02 P04 AMV DEN ADNH ADPO PHFL ***
# - # ***
17 1 1
END NUT-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
TAMFG,N02FG, 715 0 0 1
P04FG,AMVFG,
DENFG,ADNHFG,
ADPOFG
PHFLG 15 2 1 3
Explanation
TAMFG - Value of 1 means ammonia is simulated.
N02FG - Value of 1 means nitrite is simulated.
P04FG - Value of 1 means ortho-phosphorus is simulated.
AMVFG - Value of 1 means ammonia volatilization is enabled.
DENFG - Value of 1 means denitrification is enabled.
ADNHFG - Value of 1 means NH4 adsorption is simulated.
ADPOFG - Value of 1 means P04 adsorption is simulated.
PHFLAG - Source of pH data (l=time series, 2=constant, 3=monthly values).
630
-------
Users Control Input
NUT-AD-FLAGS
Atmospheric deposition flags for nutrients
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END NUT-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NUT-AD-FLAGS
RCHRES Atmospheric deposition flags ***
*** N03 NH3 P04
#*** #
1 7 -1 10 -1 -1 11 12
END NUT-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
NUADFG(*) (IX,213) 0 -1 none
Explanation
NUADFG is an array of flags indicating the source of atmospheric deposition data. Each nutrient has two
flags. The first is for dry or total deposition flux, and the second is for wet deposition concentration. The
flag values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series NUADFX or NUADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
631
-------
HSPF Version 12
CONV-VAL1
Conversion factors for nutrients
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
CONV-VAL1
<-range>< conv-vall >
(repeats until all operations of this type are covered)
END CONV-VAL1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
CONV-VAL1
RCHRES CVBO CVBPC CVBPN BPCNTC***
# - # mg/mg mols/mol mols/mol ***
1 7 4.0 67. 33. 77.
END CONV-VAL1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units Unit :
CVBO
F10.0
I—1
CO
1.0
o
LO
mg/mg Both
CVBPC
F10.0
106.
50.
200 .
mols/mol Both
CVBPN
F10.0
16.
10.
50.
mols/mol Both
BPCNTC
F10.0
49.
10.
100 .
none Both
Explanation
CVBO - Conversion from milligrams biomass to milligrams oxygen.
CVBPC - Conversion from biomass expressed as phosphorus to carbon.
CVBPN - Conversion from biomass expressed as phosphorus to nitrogen.
BPCNTC - Percentage of biomass which is carbon (by weight).
632
-------
Users Control Input
NUT-BENPARM
Nutrient benthic parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-BENPARM
<-range>< nut-benparm >
(repeats until all operations of this type are covered)
END NUT-BENPARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NUT-BENPARM
RCHRES BRTAM(l) BRTAM(2)
# - # mg/m2.hr mg/m2.hr
1 7 10. 20.
END NUT-BENPARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
BRP04(1)
mg/m2.hr
1.0
BRP04 (2)
mg/m2.hr
4 . 0
ANAER***
mg/1***
. 001
BRTAM (
:d
5F10.0 0.0
0.0
none
mg/m2.hr
Both
BRTAM (
[2)
0.0
0.0
none
mg/m2.hr
Both
BRP04(
:d
0.0
0.0
none
mg/m2.hr
Both
BRP04(
:z)
0.0
0.0
none
mg/m2.hr
Both
ANAER
.005
.0001
1.0
mg/1
Both
Explanation
This table is used if BENRFG = 1 in Table-type BENTH-FLAG (see RQUAL section).
BRTAM(l) and BRTAM(2) are the benthal release rates of ammonia under aerobic and anaerobic
conditions, respectively.
BRP04(1) and BRP04(2) are the benthal release rates of ortho-phosphorus under aerobic and anaerobic
conditions, respectively.
ANAER is the concentration of dissolved oxygen below which anaerobic conditions are assumed to exist.
633
-------
HSPF Version 12
NUT-NITDENIT
Nitrification and denitrification parameters.
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-NITDENIT
<-range>< nut-nitdenit >
(repeats until all operations of this type are covered)
END NUT-NITDENIT
Example
¦k -k -k -k -k -k -k
NUT-NITDENIT
RCHRES KTAM20 KNO220 TCNIT KNO320 TCDEN DENOXT ***
# - # /hr /hr /hr mg/1 ***
1 7 .05 .05 1.1 .05 1.08 4.0
END NUT-NITDENIT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
KTAM20
6F10.0 none
0.001
none
/hr
Both
KNO220
none
0.001
none
/hr
Both
TCNIT
1.07
1.0
2.0
none
Both
KNO320
none
0.001
none
/hr
Both
TCDEN
1.07
1.0
2.0
none
Both
DENOXT
2 .00
O
o
none
mg/1
Both
Explanation
KTAM20 and KNO220 are the nitrification rates of ammonia and nitrite at 20 degrees C.
KNO320 is the nitrate denitrification rate at 20 degrees C.
TCNIT and TCDEN are the temperature correction coefficients for nitrification and denitrification,
respectively.
DENOXT is the dissolved oxygen concentration threshold for denitrification.
634
-------
Users Control Input
NUT-NH3 V OL AT
Ammonia volatilization parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-NH3VOLAT
<-range>< nut-nh3volat >
(repeats until all operations of this type are covered)
END NUT-NH3VOLAT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NUT-NH3VOLAT
RCHRES EXPNVG EXPNVL ***
# - # ***
5 6 0.6 0.8
END NUT-NH3VOLAT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
EXPNVG
F10.0
LO
O
0.1
2.0
none
Both
EXPNVL
F10.0
. 6667
0.1
2.0
none
Both
Explanation
EXPNVG is the exponent in the gas layer mass transfer coefficient equation for NH3 volatilization.
EXPNVL is the exponent in the liquid layer mass transfer coefficient equation for NH3 volatilization.
635
-------
HSPF Version 12
NUT-BEDCON C
Bed concentrations of adsorbed NH3 and P04
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-BEDCONC
<-range>< nut-bedconc >
(repeats until all operations of this type are covered)
END NUT-BEDCONC
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NUT-BEDCONC
RCHRES Bed concentrations of NH4 & P04 (mg/kg) ***
# - # NH4-sand NH4-silt NH4-clay P04-sand P04-silt P04-clay ***
2 3 0.01 0.02 0.03 0.10 0.20 0.30
END NUT-BEDCONC
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
BNH4(3)
3F10.0
o
o
o
o
none
mg/kg
Both
BP04 (3)
3F10.0
o
o
o
o
none
mg/kg
Both
Explanation
BNH4(l-3) are the constant bed concentrations of ammonia-N adsorbed to sand, silt, and clay.
BP04(l-3) are the constant bed concentrations of ortho-phosphorus-P adsorbed to sand, silt, and clay.
636
-------
Users Control Input
NUT-ADSPARM
Adsorption coefficients for ammonia and ortho-phosphorus
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-ADSPARM
<-range>< nut-adsparm >
(repeats until all operations of this type are covered)
END NUT-ADSPARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NUT-ADSPARM
RCHRES Partition coefficients for NH4 AND P04 (cm3/g) ***
# - # NH4-sand NH4-silt NH4-clay P04-sand P04-silt P04-clay ***
2 3 0.10 0.30 0.50 0.10 0.50 0.80
END NUT-ADSPARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ADNHPM(3)
3F10.0
1 .E-10
1 .E-10
none
cm3/g
Both
AD PO PM (3 )
3F10.0
1 .E-10
1 .E-10
none
cm3/g
Both
Explanation
ADNHPM(l-3) are the adsorption coefficients (Kd) for ammonia-N adsorbed to sand, silt, and clay.
ADPOPM(l-3) are the adsorption coefficients for ortho-phosphorus-P adsorbed to sand, silt, and clay.
637
-------
HSPF Version 12
NUT-DINIT
Initial concentrations of dissolved nutrients
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
NUT-DINIT
<-range>< nut-dinit >
(repeats until all operations of this type are covered)
END NUT-DINIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
NUT-DINIT
RCHRES N03 TAM N02
# - # mg/1 mg/1 mg/1
1 3 1.0 0.3 0.01
END NUT-DINIT
P04 PHVAL ***
mg/1 ph units ***
0.02 7.
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units Unit syst
NO 3
5F10.0
0
0
0
0
none
mg/1
TAM
0
0
0
0
none
mg/1
NO 2
0
0
0
0
none
mg/1
P04
0
0
0
0
none
mg/1
PHVAL
7
0
0
0
14 . 0
pH units
Explanation
N03, TAM, and N02 are the initial concentrations of nitrate, total ammonia, and nitrite (as N).
P04 is the initial concentration of ortho-phosphorus (as P).
PHVAL is the constant pH value if PHFLG=2, and the initial value of pH if PHFLG=1 or 3.
638
-------
Users Control Input
NUT-ADSINIT
Initial concentrations
kkkkkkkkkkkkkkkkk
1
12345678901234567
kkkkkkkkkkkkkkkkk
Layout
k k k k k k
NUT-ADSINIT
<-range>< nut-adsinit >
(repeats until all operations of this type are covered)
END NUT-ADSINIT
k k k k k k k
Example
k k k k k k k
NUT-ADSINIT
RCHRES Initial suspended NH4 and P04 concentrations (mg/kg) ***
# - # NH4-sand NH4-silt NH4-clay P04-sand P04-silt P04-clay ***
2 3 0.10 0.30 0.50 0.10 0.50 0.80
END NUT-ADSINIT
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
SNH4 (3)
3F10.0
o
o
o
o
none
mg/kg
Both
SP04 (3)
3F10.0
o
o
o
o
none
mg/kg
Both
Explanation
SNH4(l-3) are the initial concentrations of ammonia-N adsorbed to sand, silt, and clay.
SP04(l-3) are the initial concentrations of ortho-phosphorus-P adsorbed to sand, silt, and clay.
of NH3 and P04 adsorbed to suspended sediment
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
2 3 4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
639
-------
HSPF Version 12
PLANK input
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
Table-type PLNK-FLAGS
[Table-type PLNK-AD-FLAGS]
Table-type SURF-EXPOSED
Table-type PLNK-PARM1
[Table-type PLNK-PARM2]
[Table-type PLNK-PARM3]
Table-type PHYTO-PARM
Table-type ZOO-PARM1
[Table-type ZOO-PARM2]
if section HTRCH is inactive
I if
| ZOOFG=l
if
PHYFG=1
[Table-type BENAL-PARM]
[Table-type PLNK-INIT]
if BALFG=1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables above is detailed in the documentation which follows. Tables in
brackets [] need not always be supplied; for example, because all of the inputs have default values.
PHYFG, ZOOFG and BALFG are flags which indicate whether or not phytoplankton, zooplankton, and
benthic algae are being simulated. They are documented under Table-type PLNK-FLAGS below.
640
-------
Users Control Input
PLNK-FLAGS
Plankton flags
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PLNK-FLAGS
<-range>< pink-flags >
(repeats until all operations of this type are covered)
END PLNK-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PLNK-FLAGS
RCHRES PHYF ZOOF BALF SDLT AMRF DECF NSFG ZFOO ***
# - # ***
17 11 3
END PLNK-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
PHYFG,ZOOFG, 715 0 0 1
BALFG, SDLTFG,
AMRFG, DECFG,
NSFG
ZFOOD 15 2 1 3
Explanation
The following, except for ZFOOD, are the conditions when the flag is on (value = 1):
PHYFG - Phytoplankton are simulated.
ZOOFG - Zooplankton are simulated.
BALFG - Benthic algae are simulated.
SDLTFG - Influence of sediment washload on light extinction is simulated.
AMRFG - Ammonia retardation of nitrogen-limited growth is enabled.
DECFG - Linkage between carbon dioxide and phytoplankton growth is decoupled.
NSFG - Ammonia is included as part of available nitrogen supply in nitrogen
limited growth calculations.
ZFOOD - Indicates the quality of zooplankton food.
641
-------
HSPF Version 12
PLNK-AD-FLAGS
Atmospheric deposition flags for refractory organics
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PLK-AD-FLAGS
<-range>
(repeats until all operations of this type are covered)
END PLK-AD-FLAGS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PLK-AD-FLAGS
RCHRES Atmospheric deposition flags ***
*** ORN ORP ORC
#*** #
1 7 -1 10 -1 -1 11 12
END PLK-AD-FLAGS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
PLADFG(*)
(IX,213)
0
-1
none
Explanation
PLADFG is an array of flags indicating the source of atmospheric deposition data. Each organic
constituent has two flags. The first is for dry or total deposition flux, and the second is for wet deposition
concentration. The flag values indicate:
0 No deposition of this type is simulated
-1 Deposition of this type is input as time series PLADFX or PLADCN
>0 Deposition of this type is input in the MONTH-DATA table with the corresponding table ID
number.
642
-------
Users Control Input
SURF-EXPOSED
Correction factor for solar radiation data
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12 3
12345 67 8 9012345 67 8 9012345 67 8 9012345 67
•A-************************************
Layout
¦k -k -k -k -k -k
SURF-EXPOSED
<-range>
(repeats until all operations of this type are covered)
END SURF-EXPOSED
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SURF-EXPOSED
RCHRES CFSAEX ***
# - # ***
17 .5
END SURF-EXPOSED
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
CFSAEX
F10.0
1.0
0.001
1.0
none
Both
Explanation
This factor is used to adjust the input solar radiation to make it applicable to the RCHRES; for example,
to account for shading of the surface by trees or buildings.
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
4 5 6 7 8
8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
643
-------
HSPF Version 12
PLNK-PARM1
First group of general plankton parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PLNK-PARM1
<-range>< plnk-parml >
(repeats until all operations of this type are covered)
END PLNK-PARM1
Example
¦k -k -k -k -k -k -k
PLNK-PARM1
RCHRES RATCLP NONREF LITSED ALNPR EXTB MALGR***
# - # /ft /hr***
17 .5 .3 .4 0.1
END PLNK-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
RATCLP F10.0 .6 .01 none none Both
NONREF F10.0 .5 .01 1.0 none Both
LITSED F10.0 0.0 0.0 none 1/mg.ft Both
ALNPR F10.0 1.0 .01 1.0 none Both
EXTB F10.0 none .001 none /ft Engl
none .001 none /m Metric
MALGR F10.0 .3 .001 none /hr Both
Explanation
RATCLP is the ratio of chlorophyll A content of biomass to phosphorus content.
NONREF is the non-refractory fraction of algae and zooplankton biomass.
LITSED is the multiplication factor to total sediment concentration to determine sediment contribution to
light extinction.
ALNPR is the fraction of nitrogen requirements for phytoplankton growth that is satisfied by nitrate.
EXTB is the base extinction coefficient for light.
MALGR is the maximum unit algal growth rate.
644
-------
Users Control Input
PLNK-PARM2
second group of general plankton parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PLNK-PARM2
<-range>< plnk-parm2 >
(repeats until all operations of this type are covered)
END PLNK-PARM2
Example
¦k -k -k -k -k -k -k
PLNK-PARM2
RCHRES *** CMMLT
CMMN i
CMMNP
CMMP
TALGRH
TALGRL TALGRM
# - # ***ly/min
mg/1
mg/1
mg/1
degF
degF degF
17 .01
.05
.04
85.0
44 .
0 71.0
END PLNK-PARM2
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran
name Format Def
Min
Max
Units
Unit syst
CMMLT
F10.0
. 033
1.0E-6
none
ly/min
Both
CMMN
F10.0
. 045
1.0E-6
none
mg/1
Both
CMMNP
F10.0
. 0284
1.0E-6
none
mg/1
Both
CMMP
F10.0
. 015
1.0E-6
none
mg/1
Both
TALGRH
F10.0
95.
50.
212 .
degF
Engl
35.
10.
100 .
degC
Metric
TALGRL
F10.0
43.
-120.
212 .
degF
Engl
6.1
-84 .
100 .
degC
Metric
TALGRM
F10.0
77 .
32 .
212 .
degF
Engl
25.
0.0
100 .
degC
Metric
Explanation
CMMLT is the Michaelis-Menten constant for light limited growth.
CMMN is the nitrate Michaelis-Menten constant for nitrogen limited growth.
CMMNP is the nitrate Michaelis-Menten constant for phosphorus limited growth.
CMMP is the phosphate Michaelis-Menten constant for phosphorus limited growth.
TALGRH is the temperature above which algal growth ceases.
TALGRL is the temperature below which algal growth ceases.
TALGRM is the temperature below which algal growth is retarded.
645
-------
HSPF Version 12
PLNK-PARM3
Third group of general plankton parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PLNK-PARM3
<-range>< plnk-parm3 >
(repeats until all operations of this type are covered)
END PLNK-PARM3
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PLNK-PARM3
RCHRES ALR2 0
# - # /hr
1 7
END PLNK-PARM3
ALDH
/hr
.02
ALDL
/hr
OXALD
/hr
.04
NALDH
mg/1
PALDH***
mg/1***
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units
Unit syst
ALR2 0
F10.0
. 004
1.0E-6
none
/hr
Both
ALDH
F10.0
. 01
1.0E-6
none
/hr
Both
ALDL
F10.0
. 001
1.0E-6
none
/hr
Both
OXALD
F10.0
. 03
1.0E-6
none
/hr
Both
NALDH
F10.0
0.0
0.0
none
mg/1
Both
PALDH
F10.0
0.0
0.0
none
mg/1
Both
Explanation
ALR20 is the algal unit respiration rate at 20 degrees C.
ALDH is the high algal unit death rate.
ALDL is the low algal unit death rate.
OXALD is the increment to phytoplankton unit death rate due to anaerobic conditions.
NALDH is the inorganic nitrogen concentration below which high algal death rate occurs (as nitrogen).
PALDH is the inorganic phosphorus concentration below which high algal death rate occurs (as
phosphorus).
646
-------
Users Control Input
PHYTO-PARM
Phytoplankton parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PHYTO-PARM
<-range>< phyto-parm >
(repeats until all operations of this type are covered)
END PHYTO-PARM
Example
¦k -k -k -k -k -k -k
PHYTO-PARM
RCHRES SEED MXSTAY OREF CLALDH PHYSET REFSET***
# - # mg/1 mg/1 ft3/s ug/1 ft/hr ft/hr***
1 7 2.0 15. 8.0
END PHYTO-PARM
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format Def
Min
Max
Units Unit syst
SEED
F10.0
0
0
o
o
none
mg/1
Both
MXSTAY
F10.0
0
0
o
o
none
mg/1
Both
OREF
F10.0
0
0001
0.0001
none
f t3/s
Engl
0
0001
0.0001
none
m3/s
Metric
CLALDH
F10.0
5(
3.0
. 01
none
ug/1
Both
PHYSET
F10.0
0
0
o
o
none
ft/hr
Engl
0
0
o
O
none
m/hr
Metric
REFSET
F10.0
0
0
O
O
none
ft/hr
Engl
0
0
O
O
none
m/hr
Metric
Explanation
SEED is the minimum concentration of plankton not subject to advection (i.e., at high flow).
MXSTAY is the concentration of plankton not subject to advection at very low flow.
OREF is the outflow at which the concentration of plankton not subject to advection is midway between
SEED and MXSTAY.
CLALDH is the chlorophyll A concentration above which high algal death rate occurs.
PHYSET is the rate of phytoplankton settling.
REFSET is the rate of settling for dead refractory organics.
647
-------
HSPF Version 12
ZOO-PARM1
First group of zooplankton parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
ZOO-PARM1
<-range>< zoo-parml >
(repeats until all operations of this type are covered)
END ZOO-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ZOO-PARM1
RCHRES MZOEAT ZFIL20 ZRES20 ZD OXZD***
# - # mg/l.hr 1/mgzoo.hr /hr /hr /hr***
1 7 .098 0.2
END ZOO-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
Units Unit syst
MZOEAT
F10.0
. 055
. 001
none
mg phyto/ Both
mg zoo/hr
ZFIL20
F10.0
none
0.001
none
1/mg zoo/hr Both
ZRES20
F10.0
. 0015
1.0E-6
none
/hr Both
ZD
F10.0
. 0001
1.0E-6
none
/hr Both
OXZD
F10.0
. 03
1.0E-6
none
/hr Both
Explanation
MZOEAT is the maximum zooplankton unit ingestion rate.
ZFIL20 is the zooplankton filtering rate at 20 degrees C.
ZRES20 is the zooplankton unit respiration rate at 20 degrees C.
ZD is the natural zooplankton unit death rate.
OXZD is the increment to unit zooplankton death rate due to anaerobic conditions.
648
-------
Users Control Input
ZOO-PARM2
Second group of zooplankton parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
ZOO-PARM2
<-range>< zoo-parm2 >
(repeats until all operations of this type are covered)
END ZOO-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
ZOO-PARM2
RCHRES TCZFIL TCZRES ZEXDEL
# - #
1 7 1.2 1.1 0.8
END ZOO-PARM2
ZOMASS***
mg/org***
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
TCZFIL
TCZRES
ZEXDEL
ZOMASS
F10.0 1.17 1.0 2.0
F10.0 1.07 1.0 2.0
F10.0 0.7 .001 1.0
F10.0 .0003 1.0E-6 1.0
none Both
none Both
none Both
mg/org Both
Explanation
TCZFIL and TCZRES are the temperature correction coefficients for filtering and respiration,
respectively.
ZEXDEL is the fraction of non-refractory zooplankton excretion which is immediately decomposed when
the ingestion rate is greater than MZOEAT.
ZOMASS is the average weight of a zooplankton organism.
649
-------
HSPF Version 12
BENAL-PARM
Benthic algae parameters
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
BENAL-PARM
<-range>< benal-parm >
(repeats until all operations of this type are covered)
END BENAL-PARM
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
BENAL-PARM
RCHRES MBAL
# - # m.g/m.2
1 7 520.
END BENAL-PARM
CFBALR CFBALG***
¦k -k -k
.56 .80
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
MBAL
CFBALR
CFBALG
F10.0 600. .01 none mg/m2 Both
F10.0 1.0 .01 1.0 none Both
F10.0 1.0 .01 1.0 none Both
Explanation
MBAL is the maximum benthic algae density (as biomass).
CFBALR and CFBALG are the ratios of benthic algal to phytoplankton respiration and growth rates,
respectively.
650
-------
Users Control Input
PLNK-INIT
Initial plankton conditions
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PLNK-INIT
<-range>< plank-init >
(repeats until all operations of this type are covered)
END PLNK-INIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PLNK-INIT
RCHRES
# - #
1 7
END PLNK-INIT
PHYTO
mg/1
.0001
ZOO
org/1
.05
BENAL
mg/m2
. 002
ORN
mg/1
.01
ORP
mg/1
.02
ORC***
mg/1***
.01
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name Format Def
Min
Max
Units Unit syst
PHYTO
F10.0
.9 6E-6
1.0E-10
none
mg/1
Both
ZOO
F10.0
. 03
1.0E-6
none
org/1
Both
BENAL
F10.0
1.0E-8
1.0E-10
none
mg/m2
Both
ORN
F10.0
0.0
0.0
none
mg/1
Both
ORP
F10.0
0.0
0.0
none
mg/1
Both
ORC
F10.0
0.0
0.0
none
mg/1
Both
Explanation
PHYTO is the initial phytoplankton concentration, as biomass.
ZOO is the initial zooplankton concentration.
BENAL is the initial benthic algae density, as biomass.
ORN is the initial dead refractory organic nitrogen concentration.
ORP is the initial dead refractory organic phosphorus concentration.
ORC is the initial dead refractory organic carbon concentration.
651
-------
HSPF Version 12
PHCARB input
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
[Table-type PH-PARM1]
[Table-type PH-PARM2]
[Table-type PH-INIT]
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The exact format of each of the tables above is detailed in the documentation which follows. Tables in
brackets [] need not always be supplied; for example, because all of the inputs have default values.
652
-------
Users Control Input
PH-PARM1
Flags for pH simulation
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345
•A-************************
Layout
¦k -k -k -k -k -k
PH-PARM1
<-range>
(repeats until all operations of this type are covered)
END PH-PARM1
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PH-PARM1
RCHRES PHCN ALKC***
# - # ***
1 7 30 9
END PH-PARM1
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
PHCNT
15
25
1
100
ALKCON
15
1
1
10
Explanation
PHCNT is the maximum number of iterations used to solve for the pH.
ALKCON is the number of the conservative substance (in section CONS) which is used to simulate
alkalinity. Alkalinity must be simulated in order to obtain valid results.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
653
-------
HSPF Version 12
PH-PARM2
Parameters for pH simulation
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PH-PARM2
<-range>< ph-parm2 >
(repeats until all operations of this type are covered)
END PH-PARM2
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PH-PARM2
RCHRES
# - #
1 7
END PH-PARM2
CFCINV
. 901
BRC02(1)
mg/m2.hr
72 . 0
BRC02(2)***
mg/m2.hr***
65.1
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
CFCINV F10.0 .913 .001 1.0 none Both
BRC02(1) F10.0 62. .01 none mg/m2.hr Both
BRC02(2) F10.0 62. .01 none mg/m2.hr Both
Explanation
CFCINV is the ratio of the carbon dioxide invasion rate to the oxygen reaeration rate (which is computed
in section OXRX).
BRC02 is the benthal release rate of C02 (as carbon) for: (1) aerobic and (2) anaerobic conditions.
654
-------
Users Control Input
PH-INIT
Initial conditions for pH simulation
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67 8
•A-***************************
Layout
¦k -k -k -k -k -k
PH-INIT
<-range>< ph-init >
(repeats until all operations of this type are covered)
END PH-INIT
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PH-INIT
RCHRES
# - #
1 7
END PH-INIT
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
TIC F10.0 0.0 0.0 none mg/1 Both
C02 F10.0 0.0 0.0 none mg/1 Both
PH F10.0 7.0 1.0 15.0 none Both
Explanation
TIC is the initial total inorganic carbon.
C02 is the initial carbon dioxide (as carbon).
PH is the initial pH.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
TIC C02 pH***
mg/1 mg/1 ***
2.0 .03 8.0
655
-------
HSPF Version 12
COPY Block
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
COPY
Table-type TIMESERIES
END COPY
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The COPY module is used to copy one or more time series from one location (source) to another (target).
See COPY in Functional Description.
656
-------
Users Control Input
TIME SERIES
Number of time series to be copied
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345 67 8
•A-***************************
Layout
¦k -k -k -k -k -k
TIMESERIES
<-range>
(repeats until all operations of this type are covered)
END TIMESERIES
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
TIMESERIES
Copy-opn ***
# - # NPT NMN***
17 4
END TIMESERIES
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
NPT
15
0
0
20
NMN
15
0
0
20
Explanation
NPT is the number of point-valued time series to be copied.
NMN is the number of mean-valued time series to be copied.
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
657
-------
HSPF Version 12
PLTGEN Block
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
PLTGEN
Table-type PLOTINFO
Table-type GEN-LABELS
Table-type SCALING
Table-type CURV-DATA (repeats for each time series to be written to PLTGEN
file)
END PLTGEN
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Explanation
The PLTGEN module prepares one or more time series for display on a plotter. It writes the time series,
and associated title and scaling information, to a "pltgen" file which can be input to other software
packages for display and analysis. See PLTGEN in Functional Description .
658
-------
Users Control Input
PLOTINFO
General plot information
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
1 2
12345 67 8 9012345 67 8 9012345
•A-************************
Layout
¦k -k -k -k -k -k
PLOTINFO
<-range>
(repeats until all operations of this type are covered)
END PLOTINFO
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
PLOTINFO
Plot-opn ***
# - # FILE NPT NMN LABL PYR PIVL TYPE ***
13 2
END PLOTINFO
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max
PLOTFL
15
30
30
99
NPT
15
0
0
20
NMN
15
0
0
99
LABLFG
15
0
-1
1
PYREND
15
9
1
12
PIVL
15
1
-2
1440
TYPEFG
15
1
1
3
-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
3 4 5 6 7 8
67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
659
-------
HSPF Version 12
Explanation
PLOTFL is the file unit number of the PLTGEN file (output of this operation).
NPT is the number of point-valued time series to be written to the file.
NMN is the number of mean-valued time series to be written to the file.
LABLFG indicates how the plot will be labeled:
-1 means no labels
0 means standard labeling; that is, one set of X and Y axes and associated labels will be
drawn for entire plot.
1 means separate X and Y axes and labels will be drawn for each "frame" of the plot
(e.g., each water year).
PYREND is the calendar month which terminates a plot frame (e.g., a water year).
PIVL is the number of basic time intervals to be aggregated to get to the interval of the data written to the
PLTGEN file. There are two special cases for PIVL: a PIVL of -1 causes a monthly PLTGEN file to be
written. A PIVL of -2 causes an annual PLTGEN file to be written.
TYPEFG indicates which type of output file will be produced.
1 means a standard PLTGEN/MUTSIN file. NPT + NMN must be less than or equal to 20.
2 means an FEQ Diffuse Time Series File (DTSF). NPT must be zero.
3 means an FEQ Point Time Series File (PTSF). NPT must be one, and NMN must be zero.
660
-------
Users Control Input
GEN-LABELS
General plot labels
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
GEN-LABELS
<-range>< title > < ylabl >
(repeats until all operations of this type are covered)
END GEN-LABELS
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
GEN-LABELS
Plot-opn ***
# - # General title Y-axis label ***
1 3 Reservoir inflow and outflow rates Flow (ft3/sec)
END GEN-LABELS
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max
TITLE 10A4 none none none
YLABL 5A4 none none none
Explanation
TITLE is the general plot title. It also appears in the header of the FEQ DTSF file if TYPEFG=2 in Table-
Type PLOTINFO.
YLABL is the units label to be placed on the Y-axis.
661
-------
HSPF Version 12
SCALING
Scaling information
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
SCALING
<-range><—ymin—><—ymax—><—ivlin-X-thresh->
(repeats until all operations of this type are covered)
END SCALING
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
SCALING
Plot-opn ***
# - # YMIN YMAX IVLIN THRESH ***
1 3 500. 48.
END SCALING
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol Fortran name Format Def Min Max Units Unit syst
YMIN
YMAX
IVLIN
THRESH
F10.0 0.0 none none See Note Both
F10.0 none none none See Note Both
F10.0 none 0.0 none ivl/in Both
F10.0 -1.0E30 none none See Note Both
Explanation
YMIN and YMAX are the minimum and maximum ordinate (Y axis) values in YLABL units.
IVLIN is the horizontal (time) scale; that is, number of intervals (in pltgen file) per inch on graph.
THRESH is the write threshold value. If the value for any time series is greater than the threshold, a full
record is written to the PLTGEN file for the current PLTGEN file time interval.
662
-------
Users Control Input
CURV-DATA
Data for each time series on pltgen file
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Layout
¦k -k -k -k -k -k
CURV-DATA
<-range> < label >
(repeats until all operations of this type are covered)
END CURV-DATA
¦k -k -k -k -k -k -k
Example
¦k -k -k -k -k -k -k
CURV-DATA
Plot-opn Curve label Line Intg Col Tran ***
# - # type eqv code code ***
1 3 Inflow 10 1 1 AVER
END CURV-DATA
¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k
Details
Symbol
Fortran name
Format
Def
Min
Max