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

MON-LZETPARM	360

PWAT-STATE1	361

IRRIG-PARM1	363

IRRIG-PARM2	365

CROP-DATES	367

CROP-STAGES	368

CROP-SEASPM	369

SOIL-DATA	370

SOIL-DATA2	371

SOIL-DATA3	372

MON-IRR-CRDP	373

MON-IRR-AWD	374

IRRIG-SCHED	375

IRRIG-SOURCE	376

IRRIG-TARGET	377

SEDMNT input	378

SED-PARM1	379

SED-PARM2	380

SED-PARM3	382

MON-COVER	383

MON-NVSI	384

SED-STOR	385

PSTEMP input	386

PSTEMP-PARM1	387

PSTEMP-PARM2	388

MON-ASLT	390

MON-BSLT	391

MON-ULTP1	392

MON-ULTP2	393

MON-LGTP1	394

MON-LGTP2	395

PSTEMP-TEMPS	396

PWTGAS input	397

PWT-PARM1	398

PWT-PARM2	399

LAT-FACTOR	400

MON-IFWDOX	401

MON-IFWC02	402

MON-GRNDDOX	403

MON-GRNDC02	404

PWT-TEMPS	405

PWT-GASES	406

PQUAL input	407

NQUALS	408

PQL-AD-FLAGS	409

QUAL-PROPS	410

QUAL-INPUT	412

MON-POTFW	414

MON-POTFS	415

MON-ACCUM	416

xix


-------
HSPF Version 12

MON-SQOLIM	417

MON-IFLW-CONC	418

MON-GRND-CONC	419

MSTLAY input	420

VUZFG	421

UZSN-LZSN	422

MST-PARM	423

MST-TOPSTOR	424

MST-TOPFLX	425

MST-SUBSTOR	426

MST-SUBFLX	427

PEST input	428

PEST-FLAGS	430

PEST-AD-FLAGS	431

PEST-ID	432

PEST-THETA	433

PEST-FIRSTPM	434

PEST-CMAX	435

PEST-SVALPM	436

PEST-NONSVPM	437

PEST-DEGRAD	438

PEST-STOR1	439

PEST-STOR2	440

NITR input	441

NIT-FLAGS	444

NIT-AD-FLAGS	446

NIT-FSTGEN	447

NIT-FSTPM	449

NIT-ORGPM	450

NIT-AMVOLAT	451

NIT-CMAX	452

NIT-SVALPM	453

NIT-UPTAKE	454

MON-NITUPT	455

NIT-YIELD	456

MON -NUPT-FR1	457

MON-NUPT-FR2	458

NIT-UPIMC SAT	459

NIT-UPIMKMAX	460

MON -NITUPNI	461

MON -NITUPAM	462

\10\-M I I MM	463

MON -NITIMAM	464

NIT-BGPLRET	465

MON -NPRETBG	466

MON -NPRETFBG	467

NIT-AGUTF	468

MON -NITAGUTF	469

NIT-AGPLRET	470

MON-NPRETAG	471

MON-NPRETLI	472

xx


-------
Introduction

MON -NPRETFLI	473

NIT-STOR1	474

NIT-STOR2	475

PHOS input	476

PHOS-FLAGS	478

PHOS-AD-FLAGS	480

PHOS-FSTGEN	481

PHOS-FSTPM	482

PHOS-CMAX	483

PHOS-SVALPM	484

PHOS-UPTAKE	485

MON-PHOSUPT	486

PHOS-YIELD	487

MON-PUPT-FR1	488

MON-PUPT-FR2	489

PHOS-STOR1	490

PHOS-STOR2	491

TRACER input	492

TRAC-ID	493

TRAC-AD-FLAGS	494

TRAC-TOPSTOR	495

TRAC-SUBSTOR	496

IMPLND Block	497

General input	498

ACTIVITY	499

PRINT-INFO	500

GEN-INFO	502

ATEMP input	504

SNOW input	505

IWATER input	506

IWAT-PARM1	507

IWAT-PARM2	509

IWAT-PARM3	510

MON-RETN	511

MON-M AWING	512

IWAT-STATE1	513

SOLIDS input	514

SLD-PARM1	515

SLD-PARM2	516

MON-SACCUM	517

MON-REMOV	518

SLD-STOR	519

IWTGAS input	520

IWT-PARM1	521

IWT-PARM2	522

LAT-FACTOR	523

MON-AWTF	524

MON-BWTF	525

IWT-INIT	526

IQUAL input	527

xxi


-------
HSPF Version 12

NQUALS	528

IQL-AD-FLAGS	529

QUAL-PROPS	530

QUAL-INPUT	532

MON-POTFW	534

MON-ACCUM	534

MON-SQOLIM	534

RCHRES Block	535

General input	536

ACTIVITY	537

PRINT-INFO	538

GEN-INFO	540

HYDR input	542

HYDR-PARM1	543

HYDR-PARM2	545

MON-CONVF	547

HYDR-IRRIG	548

HYDR-INIT	549

HYDR-CATEGORY	551

HYDR-CINIT	553

HYDR-CPREC	554

HYDR-CEVAP	555

HYDR-CFVOL	556

HYDR-CDEMAND	558

ADCALC input	559

ADCALC-DATA	560

CONS input	561

NCONS	562

CONS-AD-FLAGS	563

CONS-DATA	564

HTRCH input	565

HT-BED-FLAGS	566

HEAT-PARM	567

HT-BED-PARM	568

MOX-IIT-TGRND	569

HT-BED-DELH	570

HT-BED -DELTT	571

HEAT-INIT	572

SEDTRN input	573

SANDFG	574

SED-GENPARM	575

SED-HYDPARM	576

SAND-PM	577

SILT-CLAY-PM	578

SSED-INIT	580

BED-INIT	581

GQUAL input	582

GQ-GENDATA	584

GQ-AD-FLAGS	586

GQ-QALDATA	587

GQ-QALFG	588

XXll


-------
Introduction

GQ-FLG2	589

GQ-HYDPM	590

GQ-ROXPM	591

GQ-PHOTPM	592

GQ-CFGAS	594

GQ-BIOPM	595

MON-BIO	596

GQ-GENDECAY	597

GQ-SEDDECAY	598

GQ-KD	599

GQ-ADRATE	600

GQ-ADTHETA	601

GQ-SEDCONC	602

GQ-VALUES	603

MON-WATEMP	604

MON-PHVAL	605

MON-ROXYGEN	606

GQ-ALPHA	607

GQ-GAMMA	608

GQ-DELTA	609

GQ-CLDFACT	610

MON-CLOUD	611

MON-SEDCONC	612

MON-PHYTO	613

GQ-DAUGHTER	614

Input for RQUAL sections	615

BENTH-FLAG	616

SCOUR-PARMS	617

OXRX input	618

OX-FLAGS	619

OX-GENPARM	620

ELEV	621

OX-BENPARM	622

OX-CFOREA	623

OX-TSIV OGLOU	624

OX-LEN-DELTH	625

OX-TCGINV	626

OX-REAPARM	627

OX-INIT	628

NUTRX input	629

NUT-FLAGS	630

NUT-AD-FLAGS	631

CONV-VAL1	632

NUT-BENPARM	633

NUT -NITDENIT	634

NUT -NH3 VOLAT	635

NUT-BEDCONC	636

NUT-ADSPARM	637

NUT-DINIT	638

NUT-ADSINIT	639

xxiii


-------
HSPF Version 12

PLANK input	640

PLNK-FLAGS	641

PLNK-AD-FLAGS	642

SURF-EXPOSED	643

PLNK-PARM1	644

PLNK-PARM2	645

PLNK-PARM3	646

PHYTO-PARM	647

ZOO-PARM1	648

ZOO-PARM2	649

BENAL-PARM	650

PLNK-INIT	651

PHCARB input	652

PH-PARM1	653

PH-PARM2	654

PH-INIT	655

COPY Block	656

TIMESERIES	657

PLTGEN Block	658

PLOTINFO	659

GEN-LABELS	661

SCALING	662

CURV-DATA	663

DISPLY Block	665

DISPI Y-IM 01 	666

DISPLY-INF02	668

DURANL Block	670

GEN-DURDATA	671

SEASON	673

DURATIONS	674

LEVELS	675

LCONC	677

GENER Block	678

OPCODE	679

NTERMS	681

COEFFS	682

PARM	683

MUTSIN Block	684

MUTSINFO	685

BMPRAC Block	686

PRINT-INFO	687

GEN-INFO	689

FLOW-FLAG	691

FLOW-FRAC	692

CONS-FLAG	693

CONS-FRAC	694

HEAT-FLAG	695

HEAT-FRAC	696

SED-FLAG	697

SED-FRAC	698

GQ-FLAG	699

XXIV


-------
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


-------
Functional Description

Figure 22: Erosion processes

89


-------
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


-------
HSPF Version 12

SQCM=SSCM * FSO

m

©
*

o

«3

ft.
o

h~

SSCM
dissolved
chemical in
surface

storage

SSCM * FSP=SPCM

percalalion^v
to upper layer >
principal i
storage y

chemical
in

surface
outflow

USCM
dissolved

chemical in
upper layer
priii. storage

IICM=USCM * Fll

transfer

from
principal
to

xansitory
^storage^

USCM * FUP=UPCM

percolation X
to lower >

layer
storage

J

ISCM

—isen—

dissolved
chemical in
upper layer
transitory
(interflow)
storage

IOCM

m

k.

m
X
ffi

m
o
m

fc.

w

-Q
3

w

LSCM
dissolved
chemical in
lower layer
storage

LSCM * FLDP-LDPCM

deep
percolation to

inactive
groundwater

LPCM=LSCM * FLP

perco-
lation

to
active
ground
water
£tcrag<

ASCM * FAO=AOCM

chemical
in active

ASCM

dissolved

chemical in
active ground-
water storage



water
out-

1 flow J



w

Figure 26: Flow diagram showing modeled movement of chemicals in solution

114


-------
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


-------
HSPF Version 12

C, ppm

Figure 27: Freundlich isotherm calculations

118


-------
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


-------
Functional Description

Outflows and Outflow Demands

() are coordinates of points
© is row no. in RCHTAB which contains data for this level

Figure 40: Graphical representation of the work performed by subroutine ROUTE

If OINT is less than or equal to RODZ, Equations 4 and 8 cannot be solved (case 2). Physically this
means that the RCHRES will instantaneously go dry at the end of the interval with total outflow rate at
that time equal to OINT. Accordingly, the code assigns a zero value to the RCHRES volume, and the total
outflow is equal to the intercept of Equation 4 on the volume axis in Figure "Graphical representation of
the work performed by subroutine ROUTE" above. As many of the individual demands (0(*)) as possible
are satisfied in full by the available water. The remaining water is used to partially satisfy the demand of
next highest priority, and any others are not satisfied at all.

159


-------
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


-------
HSPF Version 12

{ - --) are coordinates of points
© is row no. in RCHTAB which contains data for this level

Figure 41: Graphical representation of the work performed by subroutine NOROUT

164


-------
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

196


-------
Functional Description

AC+(IO * »5) » SLOPE « D65

Figure 49: Factors in Toffaleti relations

197


-------
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 10 N

Wavelength, Solar Intensity, milli-einsteins/cm2/day
Nanometers Spring	Summer	Fall	Winter

300

1.02E-2

4.66E-4

4.19E-4

3.20E-4

303.75

1.78E-2

3.16E-3

2.87E-3

2.39E-3

308.75

2.85E-2

9.37E-3

8.51E-3

7.26E-3

313.75

3.27E-2

1.90E-2

1.73E-3

1.51E-2

318.75

4.18E-2

2.91E-2

2.66E-2

2.38E-2

323. 1

3.70E-2

2.65E-2

2.91E-2

2.36E-2

346

3.39E-1

3.29E-1

2.99E-1

2.92E-1

370

4.33E-1

4.38E-1

3.85E-1

3.44E-1

400

8 . 40E-1

8.37E-1

7.64E-1

6.96E-1

430

1. 16

1. 17

1. 07

9.80E-1

460

1.47

1.47

1.36

1.23

490

1.50

1.50

1.37

1.27

536.25

2 . 74

2 . 69

2 .46

2.26

587 . 5

2 . 90

2 .79

2 . 52

2 . 35

637 . 5

2 . 90

2 .80

2 . 60

2 . 43

687 . 5

2 .80

2 .80

2 . 60

2 . 30

756

2 .70

2 .70

2 . 50

2 .40

800

3. 00

2 . 50

2 . 30

2 . 10

Solar Intensity Values for Latitude 20 N

Wavelength, Solar Intensity, milli-einsteins/cm2/day
Nanometers Spring	Summer	Fall	Winter

300

3.51E-4

4 . 44E-4

2 . 7 4E-4

1.47E-4

303.75

2.51E-3

3.15E-3

2.20E-3

1.47E-3

308.75

8.09E-3

9.61E-3

6.89E-3

5.34E-3

313.75

1.81E-2

1.97E-2

1.48E-2

1.15E-2

318.75

2.82E-2

3.02E-2

2.33E-2

1.88E-2

323. 1

2.83E-2

3.03E-2

2.33E-2

1.88E-2

340

3.29E-1

3.47E-1

2.68E-1

2.21E-1

370

4.24E-1

4.47E-1

3.45E-1

2.86E-1

406

8.41E-1

8.83E-1

6.96E-1

5.97E-1

430

1. 17

1.23

9.80E-1

8.40E-1

460

1.47

1.55

1.24

1. 06

490

1.50

1.58

1.26

1. 09

536.25

2 . 68

2 .81

2 . 30

1. 95

587 . 5

2 .80

2 . 96

2 . 35

2 . 03

637 . 5

2 .80

2 . 90

2 . 42

2 . 07

687 . 5

2 .80

3. 00

2 .40

2 . 10

750

2 .76

2 .80

2.20

2 . 36

800

2 . 50

2 .70

2.26

1. 60

210


-------
Functional Description

Solar Intensity Values for Latitude 30 N

Wavelength, Solar Intensity, milli-einsteins/cm2/day
Nanometers Spring	Summer	Fall	Winter

300

2.30E-4

3.65E-4

1.35E-4

4.10E-5

303.75

2.13E-3

2.32E-3

1.44E-3

6.50E-4

308.73

7.26E-3

9.02E-3

4.84E-3

2.76E-3

313.75

1.65E-2

1.92E-2

1.16E-2

7.55E-3

318.75

2.64E-2

3.02E-2

1.89E-2

1.31E-2

323. 1

2.69E-2

3.04E-2

2.30E-2

1.34E-2

340

3.20E-1

3.74E-1

2.23E-1

1.70E-1

370

4.14E-1

4.37E-1

2.84E-1

2.19E-1

400

8.27E-1

9.07E-1

6.23E-1

4.75E-1

430

1. 15

1.34

8.50E-1

6.69E-1

460

1.45

1.59

1. 09

8.50E-1

490

1.48

1. 62

1. 11

8.80E-1

536.25

2 . 64

2 .89

2 . 00

1.57

587 . 5

2 . 74

3. 03

2 . 07

1. 63

637 . 5

2 .76

3. 00

2 . 09

1. 67

687 . 5

2 .80

3. 00

2 . 10

1.73

750

2 .70

2 . 90

2 . 10

1. 63

800

2 . 50

2 .80

1. 90

1. 60

Solar Intensity Values for Latitude 40 N

Wavelength, Solar Intensity, milli-einsteins/cm2/day
Nanometers Spring	Summer	Fall	Winter

300

1.09E-4

2 . 49E-4

1.09E-4

5.38E-6

303.75

1.37E-3

2 . 32E-3

1.37E-3

1.56E-4

308.75

2.96E-3

7.93E-3

5.35E-3

1.02E-3

313.75

7.99E-3

1.81E-2

1.38E-2

3.79E-3

318.75

1.38E-2

2.91E-2

2.319E-2

7.53E-3

323. 1

1.42E-2

2.97E-2

2.39E-2

8.10E-3

340

1.78E-1

3.54E-1

1.08E-1

7.52E-2

370

2.30E-1

4.58E-1

3.84E-1

1.47E-1

400

5.26E-1

9.71E-1

7.91E-1

3.38E-1

430

6.76E-1

1.28

1. 11

4.80E-1

460

8.90E-1

1.43

1.39

6.10E-1

490

9.23E-1

1. 63

1.42

6.20E-1

536.25

1. 69

2 . 92

2 . 52

1. 12

587 . 5

1.73

3. 05

2 . 62

1. 16

637 . 5

1.78

3. 00

2 . 60

1. 19

687 . 5

1.50

CO
I—1

o

4 .70

1.39

750

1.70

2 . 90

2 . 60

1.20

800

1. 60

2 . 90

2 . 50

1. 16

211


-------
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

WDM 121 Temperature	(Deg. F)

Summary for MONTH 197 6/8/

Data	interval:	120	mins

DAY AVER	Interval Number

123456789	10 11	12

1	67.7 58.0 61.3 55.1	61.3	69.0	75.6	79.8	81.8	77.4	71.4	65.9	61.2

2	67.2 57.5 55.2 54.2	60.8	69.1	76.1	80.7	82.8	77.6	70.4	64.0	58.4

3	66.7 54.1 51.5 50.2	57.8	67.2	75.1	80.4	82.8	78.6	72.8	67.5	62.8

4	72.8 59.3 57.2 56.2	63.5	72.7	80.3	85.4	87.8	84.4	79.6	75.4	71.6

5	73.0 68.8 67.0 66.1	69.8	74.3	78.2	80.7	81.9	78.6	74.1	69.9	66.3

6	68.3 63.6 61.9 61.1	65.4	70.8	75.4	78.4	79.9	74.9	68.2	62.2	56.9

7	65.2 52.8 50.4 49.2	57.0	66.7	74.8	80.3	82.8	77.4	70.1	63.5	57.7

8	66.0 53.2 50.5 49.2	57.2	67.1	75.6	81.1	83.8	78.6	71.4	65.0	59.4

9	71.4 55.1 52.5 51.2	59.9	70.8	79.9	85.9	88.8	85.2	80.2	75.8	71.9

10	76.5 68.9 67.1 66.1	71.2	77.4	82.7	86.2	87.9	84.4	79.6	75.4	71.6

11	75.9 68.8 67.0 66.1	70.9	76.9	81.9	85.3	86.9	83.4	78.6	74.4	70.6

12	75.5 67.8 66.0 65.1	70.4	76.9	82.4	86.2	87.9	83.7	78.1	73.1	68.6

13	70.7 65.2 63.2 62.2	66.2	71.3	75.7	78.6	79.9	77.0	73.2	69.7	66.6

14	68.6 64.2 62.8 62.1	66.0	70.8	74.9	77.6	78.9	74.6	68.8	63.5	58.8

15	63.4 55.3 53.2 52.2	57.9	64.9	71.0	74.9	76.9	72.2	65.9	60.3	55.4

16	63.3 51.6 49.3 48.2	54.8	63.0	70.1	74.7	76.8	73.7	69.4	65.5	62.1

17	71.5 59.5 57.9 57.1	63.8	72.1	79.1	83.7	85.8	82. 76.9 72.2 68.2

18	73.0 65.0 63.1 62.1	67.4	73.9	79.4	83.2	84.9	81.2	76.2	71.8	67.9

19	72.8 64.9 63.1 62.1	67.6	74.5	80.2	84.1	85.9	81.4	75.4	69.9	65.1

20	72.6 61.5 59.2 58.2	65.1	73.6	80.8	85.6	87.8	83.4	77.4	71.9	67.1

21	75.9 63.5 61.2 60.2	67.5	76.7	84.3	89.4	91.8	87.4	81.4	75.9	71.1

22	76.2 67.5 65.2 64.2	69.9	76.9	83.0	86.9	88.9	85.1	79.9	75.2	71.2

23	74.9 68.0 66.1 65.1	70.2	76.4	81.7	85.2	86.9	82.7	77.1	72.1	67.6

24	73.0 64.2 62.2 61.2	66.6	73.5	79.2	83.1	84.9	81.6	77.1	72.9	69.3

25	75.6 66.6 64.9 64.1	69.9	76.9	83.0	86.9	88.9	84.6	78.8	73.5	68.9

26	78.5 65.3 63.2 62.2	69.5	78.7	86.3	91.4	93.8	90.1	84.9	80.2	76.2

27	73.4 73.0 71.1 70.1	72.8	76.2	79.1	81.1	81.9	77.4	71.4	65.9	61.2

28	65.8 57.5 55.2 54.2	60.3	68.0	74.6	78.8	80.8	75.4	68.1	61.5	55.7

29	68.5 51.2 48.5 47.2	57.1	69.4	79.7	86.6	89.8	84.1	76.3	69.3	63.2

30	71.4 58.5 55.7 54.2	62.0	71.7	79.8	85.3	87.8	83.6	77.8	72.5	67.9

31	72.1 64.3 62.2 61.2	66.4	72.9	78.4	82.2	83.9	80.2	75.2	70.8	66.9
MONTH AVER: 7.12071E+01

Figure 67: Short-Span Display (Second Type)

286


-------
Functional Description

WDM 121 Temperature (Deg. F)

Annual data display: Summary for period ending 197 6/12

DAY

JAN

FEB

MAR

APR

MAY

JUN

JUL

AUG

SEP

OCT

NOV

DEC

1

27 . 6

9.4

33.1

49.2

49.4

67 . 5

67 .0

67 . 7

68 .3

68.2

45.7

11.8

2

18 .4

17 . 7

33.3

48 . 5

45.3

66.3

67 .3

67.2

68 . 9

66.8

42 .7

9.1

3

7.0

21.9

29.8

49.3

49.7

65.1

70.5

66.7

72 .7

65. 9

35.3

13.4

4

13.8

12 . 6

28 . 6

48 . 9

59.7

68 . 7

73.0

72 . 8

67 .8

58 . 5

33.0

16.5

5

20.3

15. 9

25.0

52 . 0

57 .3

71.0

72 .7

73.0

66.1

46.5

36.7

18 . 0

6

I—1
CO

o

24 . 8

25.7

50.8

49.0

71.4

72 .8

68.2

71.8

42 . 4

32 . 9

4.2

7

0.5

32 . 5

31.1

47 . 8

50 . 6

73.1

76.1

65.2

71.8

43.4

29.1

2 . 5

8

5.5

36.7

32 .7

46.1

55 .2

74 . 0

77 .4

66.0

65.4

45.5

34 .1

17 . 7

9

9 . 9

39.0

35.1

53. 6

64 .2

72 . 6

82 .0

71.4

63 .2

51.5

35.5

23.1

10

16.6

36.5

38 .8

54 .1

60 . 9

75.2

84 . 9

76.5

62 .3

56.0

25.2

9.3

11	30.4	44.2	36.4	43.6 58.8	77.2	81.9	75.9	66.3	62.6	20.3	11.3

12	26.7	46.0	32.2	48.7	57.0	78.8	77.7	75.5	68.6	59.9	20.7	11.7

13	27.5	37.1	34.0	54.8	58.5	72.2	80.9	70.7	69.0	59.5	23.9	20.4

14	30.1	41.2	33.2	64.7	63.0	72.2	81.3	68.6	68.0	57.2	27.5	29.7

15	28.5	44.0	27.5	67.6 60.1	69.6	73.8	63.4	59.1	43.5	32.8	28.4

16

13.5

34 . 6

30.7

71.1

58 .2

68.2

68 .1

63.3

60.4

39.4

36.7

35.2

17

11. 6

33. 6

44 .1

65.7

56.2

69.8

69 . 9

71.5

66.9

34 . 8

46.0

38 . 9

18

21.5

39.6

55.7

59.2

58 .3

65.5

72 .7

73.0

62 .2

32 . 9

40.8

36.5

19

20.7

39.6

55.8

48 . 4

68 .3

65.8

78 . 9

72 . 8

62 .5

40.1

35.5

27 . 7

20

18 .8

34.2

48 .1

48 . 0

71.5

66.7

76.0

72 . 6

58 . 9

37 . 4

29.7

9.7

21

25.5

27 . 7

35.7

54 . 9

65.3

67 .1

71.8

75.9

61. 9

37 . 8

27 . 6

17 .1

22

25.7

29.0

43.8

50.8

58 .8

69. 6

78 . 9

76.2

58 .2

35.5

23.1

17 .1

23

28 . 6

36.3

55 .2

50. 6

59.2

66.5

79.8

74 . 9

54 .4

38 . 8

28 .8

22 . 3

24

27.2

40.8

55.8

47 . 0

58 .1

71.1

74 .3

73.0

51.0

42 .1

41.0

23.8

25

22 . 6

47 . 5

49.3

43.4

60.1

72 . 5

71. 9

75.6

54 .3

36.9

41.7

25.1

26

10.1

44 . 8

45.5

43.8

62 .0

73.9

75.4

78 . 5

56.1

37 .1

28 .7

30.5

27

18 .1

41.2

47 .3

46.3

65 . 9

74 .1

73.8

73.4

53.7

37 . 3

10.3

22 . 3

28

22 .2

39.2

45.3

48 . 5

62 .5

72.2

73 . 9

65.8

57 . 6

40.2

6.3

3.8

29

24 .3

34 . 3

48 .1

53.2

64 .1

66.7

74 . 9

68 . 5

61.7

42.2

4.8

0.3

30

26.6



41. 9

54 . 7

65.4

66.3

75.8

71.4

64 .7

45.2

9.7

-1.9

31

23.0



43.2



64 . 9



68 .5

72 .1



42 . 9



-5.6

AVER 20.0 33.9 39.4 52.2 59.3 70.4 75.0 71.2 63.1 46.7 29.5 17.1

AVER of monthly values 4.81461E+01

Figure 68: Long-Span (Annual) Display

287


-------
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

Duration analysis operation no.	1

Analysis of Subb. 4 Outflow (cfs)

Start date: 1972/12/31 24: 0 End date: 1974/12/31 24: 0
Analysis season starts: 2/28 24: 0 Ends: 11/30 24: 0

PERCENT OF TIME TABLES (WITH RESPECT TO THE TOTAL SPAN OF TIME)

POSITIVE EXCURSIONS

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

1.000
.7308
.5128
.1790

DURATIONS

12

1.000
. 7259
. 5062
. 1674

24

1.000
.7235
.5034
.1633

. 227 3E-02 .0000E+00 .0000E + 00

NEGATIVE EXCURSIONS

DURATIONS
1	12

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

. 0000E + 00

.2692

.4872

.8210

.9977

.0000E+00
.2655
. 4813
. 8121
. 9977

24

. 0000E + 00

.2645

.4762

.8030

.9977

UNDEFINED EVENTS (NO WATER)

DURATIONS
1	12

. 0000E + 00 . 0000E+00

24

. 0000E + 00

PERCENT OF TIME TABLES (WITH RESPECT TO THE TIME SPENT IN EXCURSIONS)

POSITIVE EXCURSIONS

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

1.000
1.000
1.000
1.000
1.000

DURATIONS
1	12

1.000
. 9933
. 9871
. 9353
.0000E+00

24

1.000
. 9899
. 9817
. 9124
. 0000E + 00

NEGATIVE EXCURSIONS

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

DURATIONS

1

. 0000E + 00

1.000

1.000

1.000

1.000

12

.0000E+00
. 9862
. 9879
. 9892
1.000

24

. 0000E + 00
. 9828
. 9775
. 9780
1.000

UNDEFINED EVENTS (NO WATER)

DURATIONS
1	12

. 0000E + 00 . 0000E+00

24

. 0000E + 00

291


-------
HSPF Version 12

TIME SPENT IN EXCURSIONS

POSITIVE EXCURSIONS

DURATIONS

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

1

. 1320E + 05
9647 .
6769 .
2363 .
30.00

12

.1320E+05
9582 .
6682 .
2210.
.0000E+00

24

. 1320E + 05
9550 .
6645 .
2156.
. 0000E + 00

NEGATIVE EXCURSIONS

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

DURATIONS

1

12

. 0000E + 00 . 0000E+00
3553.	3504.

6431.	6353.

. 1084E + 05 .1072E+05
. 1317E + 05 .1317E+05
UNDEFINED EVENTS (NO WATER)

DURATIONS
1	12

. 0000E + 00 . 0000E+00

24

. 0000E + 00
3492 .
6286.
. 1060E + 05
. 1317E + 05

24

. 0000E + 00

STANDARD DEVIATION OF TIME SPENT IN EXCURSIONS

POSITIVE EXCURSIONS

DURATIONS

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

1

. 0000E + 00
922 . 9
321. 6
71. 65
.7423

12

.0000E+00
2032 .
581.1
132 .1
.0000E+00

24

. 0000E + 00
2181.
602 . 0
128 . 7
. 0000E + 00

NEGATIVE EXCURSIONS

LEVELS

.0000E+00

10.00

20.00

50.00

500.0

DURATIONS
1	12

. 0000E + 00
107.2
127 . 0
167 . 6
1202 .

.0000E+00
113.8
140.0
188 .1
1202 .

24

. 0000E + 00

113.3

141.4
191. 6
1202 .

UNDEFINED EVENTS (NO WATER)

DURATIONS
1	12

. 0000E + 00 . 0000E+00

24

. 0000E + 00

SUMMARY

TOTAL LENGTH OF DEFINED EVENTS: 13200. INTERVALS
TOTAL LENGTH OF UNDEFINED EVENTS:	0 . INTERVALS

TOTAL LENGTH OF ANALYSIS: 550. DAYS

292


-------
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


-------
HSPF Version 12

QUAL-INPUT

Nonseasonal PQUAL 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 POTFS ACQOP SQOLIM WSQOP IOQC AOQC***

1 7 1.21 17.2	1.1 0.02	2.0 1.70 15.2 17.1

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

8F8.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

POTFS

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



000001



000001

none

qty/ac

Engl





000002



000002

none

qty/ha

Metric

WSQOP

1

. 64

0

.01

none

in/hr

Engl



4

1.7

0

.25

none

mm/hr

Metric

IOQC

0

.0

0

.0

none

qty/ft3

Engl



0

.0

0

.0

none

qty/1

Metric

AOQC

0

.0

0

.0

none

qty/ft3

Engl



0

.0

0

.0

none

qty/1

Metric

412


-------
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>	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

</pre><hr><pre>
-------
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>	YMIN

<ymax>	YMAX

<ivlin>	IVLIN

<thresh>	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

</pre><hr><pre>
-------
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	><lin><int><col> <tr>

(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

<label>

LABEL

4A4

none

none

none

<lin>

LINTYP

15

0

none

none

<int>

INTEQ

15

0

0

13

<col>

COLCOD

15

0

0

10

<tr>

TRAN

A4

SUM

none

none

663

</pre><hr><pre>
-------
HSPF Version 12

Explanation

Note: This table must be repeated for each time series on the pltgen file, i.e., there must be NPT + NMN
of these tables.

LABEL is a descriptive label for this particular curve (time series). It also appears in the header of the
FEQ DTSF file if TYPEFG=2 in Table-Type PLOTINFO.

LINTYP describes the type of line to be drawn for this curve. It also determines the frequency of plotted
symbols:

A zero value means points are connected by straight lines; no symbols are drawn at individual data
points.

A positive value means points are connected by straight lines; the magnitude determines the frequency
of plotted symbols (e.g., 4 means plot a symbol at every 4th point obtained from the pltgen file).

A negative value means no connecting lines are drawn. Only symbols are plotted; the absolute value
determines the frequency (as above).

INTEQ is the integer equivalent of the symbols to be plotted for this curve (i.e., indicates which symbol
to use). It is only meaningful if LINTYP is not zero.

COLCOD is the color code for this curve. The meaning depends on how the stand-alone plot program is
set up; e.g., 1 might mean red pen, 2 blue pen, etc.

TRAN is the transformation code used to aggregate data from the basic interval (INDELT) to the
PLTGEN file interval. Valid values are: SUM, AVER, MAX, MIN, and LAST.

664

</pre><hr><pre>
-------
Users Control Input

DISPLY 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

DISPLY

Table-type DISPLY-INFOl
[Table-type DISPLY-INF02]

END DISPLY

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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 DISPLY module summarizes a time series and presents the results in neatly formatted tables. Data
can be displayed at any HSPF-supported interval. See DISPLY in Functional Description for further
information.

665

</pre><hr><pre>
-------
HSPF Version 12

DISPLY-INFOl

Contains most of the information necessary to generate data displays.

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

DISPLY-INFOl

<-range><	title	> <tr><piv> d<fil><pyr> d<fil><ynd>

(repeats until all operations of this type are covered)

END DISPLY-INFOl

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

DISPLY-INFOl

#thru#***<	Title	>

•A-**

¦k -k -k

1	Daily precip in TSS #20 (in)

2	Simulated soil temp (Deg C)
END DISPLY-INFOl

<-short-span->

<	disply	>

TRAN PIVL DIG1 FIL1

AVER

1

21

<annual summary ->
PYR DIG2 FIL2 YRND
1 2 20 6
1 1 22 6

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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>

TITLE(*)

7A4

none

none

none

<tr>

TRAN

A4

SUM

none

none

<piv>

PIVL

15

0

0

1440

d

DIGIT1

A1

0

0

7

<fil>

FILE1

15

6

6

99

<pyr>

PYRFG

15

0

0

1

d

DIGIT2

A1

0

0

7

<fil>

FILE2

15

6

6

99

<ynd>

PYREND

15

9

1

12

666

</pre><hr><pre>
-------
Users Control Input

Explanation

TITLE is the title that will be printed at the top of each page of the display.

TRAN is the transformation code, used to aggregate data from the basic interval (time step) to the various
display intervals (for both short- and long-span displays). Valid values are: SUM, AVER, MAX, MIN,
LAST.

PIVL is the number of basic time steps (DELT minutes each) to be aggregated to get to the interval of the
data printed in a short-span display (In the above example, if DELT were 15 minutes for DISPLY
operation #2, then the data in the short-span summary tables would be displayed at an interval of 1 hour
(PIVL=4). If PIVL=0, a short-span display is not produced.

DIGIT 1 and DIGIT2 are the number of decimal digits to be used to print data in the short-span and long-
span displays, respectively. Note that it is up to the user to ensure that this value falls in the valid range 0-
7. HSPF does not check this.

FILE1 and FILE2 are the file unit numbers of the files to which short-and long- span displays will be
output; the file names are specified (and associated with the file unit numbers) in the FILES Block.

PYRFG indicates whether or not a long-span display (annual summary of daily values) is required. Value
of 1 means it is, 0 means it is not.

PYREND is the calendar month which will appear at the right-hand extremity of an annual summary.

This enables the user to decide whether the data should be displayed on a calendar year or some other
(e.g., water year) basis.

667

</pre><hr><pre>
-------
HSPF Version 12

DISPLY-INF02

Additional optional information for module DISPLY.

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

DISPLY-INF02

<-range><—mult—><	add—X-threshlX-thresh2>

(repeats until all operations of this type are covered)

END DISPLY-INF02

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

DISPLY-INF02

#thru# Convert DegC to F Display negative data ***

Mult	Add THRSH1	***

2 5	1.8	32.0	-999.

END DISPLY-INF02

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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

<mult>

A

F10.0

1.0

none

none

none

Both

<add>

B

F10.0

o
o

none

none

none

Both

<threshl>

THRESH1

F10.0

o
o

none

none

none

Both

<thresh2>

THRESH2

F10.0

O 1
O 1

none

none

none

Both

668

</pre><hr><pre>
-------
Users Control Input

Explanation

This table is only required if the user wants to use the conversion or threshold options.

A and B are parameters used to convert the data from internal units to display units:

Display value = A*(internal value) + B

The conversion is done before any aggregation of data to larger time steps (i.e., larger than the simulation
time interval) is performed. Note that the default values of A and B result in no change.

THRSH1 and THRSH2 are threshold values for the short-span and long-span displays, respectively
(THRSH2 is not presently used). THRSH1 can be used to reduce the quantity of printout produced in a
short-span display; it functions as follows: When the individual values in a row of the display have been
aggregated to get the "row value" (hour- or day-value, depending on the display interval), if the row-value
is greater than THRSH1 the row is printed, else it is omitted. Thus, for example, the default of 0.0 will
ensure that rows of data containing all zeros are omitted.

669

</pre><hr><pre>
-------
HSPF Version 12

DURANL 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

DURANL

Table-type	GEN-DURDATA

[Table-type	SEASON]

[Table-type	DURATIONS]

[Table-type	LEVELS]

[Table-type	LCONC]

END DURANL

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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 DURANL module performs duration and excursion analysis on a time series. For example, it
analyzes the frequency with which N consecutive values in the time series exceed a specified set of
values, called "levels". N is the "duration" of the excursion; up to 10 durations may be used in one
duration analysis operation. The user may specify that only those data falling within a specified time in
each year (analysis season) be processed. See DURANL in Functional Description.

670

</pre><hr><pre>
-------
Users Control Input

GEN-DURDATA

General information for duration analysis

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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-DURDATA

<-range><	title	><-nd><-nl><-pr><-pu>

(repeats until all operations of this type are covered)

END GEN-DURDATA

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

GEN-DURDATA

#thru#<***	title—

¦k -k -k

1	Simulated DO in Reach 4 0

END GEN-DURDATA

-> NDUR NLEV PRFG	LCNUM

PUNIT	LCOUT

5 2	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

<title>

<nd>

<nl>

<pr>

<pu>

<lcn>

<lco>

TITLE(*)

NDUR

NLEV

PRFG

PUNIT

LCNUM

LCOUT

10A4

15

15

15

15

15

15

none

1

1

1

6

0

0

none

1

1

1

1

0

0

none
10
20
7

99

5

1

671

</pre><hr><pre>
-------
HSPF Version 12

Explanation

TITLE is the 40-character title which the user assigns to the duration analysis operation; usually,
something which identifies the time series being analyzed.

NDUR is the number of durations for which the time series will be analyzed.

NLEV is the number of user-specified levels which will be used in analyzing the time series.

PRFG is a flag which governs the quantity of information printed out. A value of 1 results in minimal
(basic) output. Increasing the value (up to the maximum of 7) results in increased detail of output. See
DURANL in Functional Description for details.

PUNIT is the file unit number to which the output of the duration analysis operation will be written; the
file name is specified (and associated with the file unit number) in the FILES Block. Each duration
analysis operation must have a unique file unit number.

LCNUM indicates the number of lethal concentration curves to be used in the analysis. A zero means no
lethality analysis is to be performed.

LCOUT is a flag which governs the printout of intermediate lethal event information (l=on).

672

</pre><hr><pre>
-------
Users Control Input

SEASON

The analysis season for the durational analysis

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

SEASON

<-range>	<	start—>	<	end	>

(repeats until all operations of this type are covered)

END SEASON

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

SEASON

¦k -k -k

#thru#***
1 10
END SEASON

Start

mo da hr mn
02

End

mo da hr mn
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

<start>	SESONS(2-5) 4(IX,12) see below

<end>	SESONE(2-5) 4(IX,12) see below

Explanation

This table is used if one wishes to specify an analysis season; only data falling between the specified
starting and ending month/day/hour/minute (in each year) will be considered in the analysis.

Note:

1.	The defaults, minima, maxima and other values for specifying the starting and ending date/times
are the same as those given in the discussion of the GLOBAL Block. If any fields in the starting
date/time are blank they default to the earliest meaningful value; for the ending date/time they
default to the latest possible values. Thus, the analysis season in the example above includes the
entire month of February.

2.	Although it is not meaningful to provide for a "year" in the fields documented above (since the
analysis season applies to every year in the run), the four spaces preceding both the <start> and
<end> fields should be left blank because the system does, in fact, read the year and expects it to
be blank or zero.

3.	If this table is omitted, the defaults imply that the analysis season extends from January 1 through
December 31.

673

</pre><hr><pre>
-------
HSPF Version 12

DURATIONS

Durations to be used in the analysis

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

DURATIONS

<-range><-dl><	others	>

(repeats until all operations of this type are covered)

END DURATIONS

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

DURATIONS

#thru#***<	Durations	>



¦k -k -k

2

3

4

5

1

2 1

10

15

20

40

3

1

20

21

22



END DURATIONS

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol	Fortran name Format Def	Min	Max

<dl>	DURAT(l)	15	1	1	1

<others>	DURAT(2-10) 915	2	2	none

Explanation

DURAT(*) is an array which contains the NDUR different durations for which the time series will be
analyzed (NDUR wis specified in Table-type GEN-DURDATA). The durations are expressed in
multiples of the internal time step specified in the OPN SEQUENCE Block. Thus, if DELT= 5 minutes
and the duration is 3, the time series will be analyzed with a window of 15 minutes. The analysis
algorithm requires that the first duration be 1 time step, but the others can have any integer value.

674

</pre><hr><pre>
-------
Users Control Input

LEVELS

Levels to be used in the analysis

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

	>

>

(repeats until all operations of this type are covered)

END LEVELS

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

LEVELS

<-range><

<-range><

first 14
last 6 -

LEVELS

** 2

3

4

5

6

7

8 9 10 11 12

13

14

**16

17

18

19

20

21







-30.

-10 .

0.

10 .

20.

40 .

80. 100. 200.1000. 2.E3

3 . E3

5.E3

2 . E4

3 . E4















** 2

3

4

5











-20.

0 .

20.

50 .











15

1

1

#thr

2

END LEVELS

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

<firstl4>
<last6>

LEVEL(2-15)
LEVEL(16-21)

14F5.0
6F5.0

o o
o o

none
none

none
none

675

</pre><hr><pre>
-------
HSPF Version 12

Explanation

LEVEL(2 through 21) contains the 20 possible user-specified levels for which the input time series will
be analyzed. (LEVEL(l) and LEVEL(22) are reserved for system use, and this does not affect the user
since only LEVEL(2) through (21) can be specified). The actual number of levels (NLEV) is specified in
Table-type GEN-DURDATA. If NLEV is greater than 14, the entry for a given operation must be
continued to the next line; up to 2 lines may be required to cover all the levels. In the example above,
operation 1 has 16 user-specified levels and thus requires 2 lines, but operation 2 only requires 1 line
because it has only 4 user-specified levels.

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 operation 1 in above example).

2.	The <range> specification must be repeated for each line onto which the entry is continued.

Note that the levels must be specified in ascending order. The system checks that this requirement is not
violated.

676

</pre><hr><pre>
-------
Users Control Input

LCONC

Lethal concentrations

kkkkkkkkkkkkkkkkk

1

12345678901234567

kkkkkkkkkkkkkkkkk

Layout

k k k k k k

LCONC

<-range><	first-7	>

<-range><	last-3	>

(repeats until all operations of this type are covered)

END LCONC

k k k k k k k

Example

k k k k k k k

LCONC

#	- #***	LCI

#	- #***	LC8
12	1 .

1 2	20 .

END LCONC

kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

Details

Symbol

Fortran name

Format

Def

Min

Max

<first-7>
<last-3>

LCONC(1-7,I)
LCONC(8-10,I)

7F10.0
3F10.0

o o
o o

none
none

none
none

Explanation

LCONC(*) is an array which contains the NDUR different lethal levels which are used in a lethal
concentration analysis. If no lethality analysis is being done, this table may be omitted.

There must be one of these tables for each lethal concentration curve, i.e., there should be LCNUM of
these tables.

to be used in the analysis

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

LC2

LC3

LC4

LC5

LC6

LC7

LC9

LC10









3 .

6.

8 .

15 .

5 .

8 .

30 .

60 .









677

</pre><hr><pre>
-------
HSPF Version 12

GENER 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

GENER

Table-type OPCODE
[Table-type NTERMS]
[Table-type COEFFS]
[Table-type PARM]
END GENER

only required if OPCODE
only required if OPCODE
only required if OPCODE

= 9, 10, 11, 24, 25, or 26

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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 GENER module generates a time series from one or two input time series. Usually, only Table-type
OPCODE is required. However, if OPCODE = 8 (power series), you need to supply the number of terms
in the power series and the values of the coefficients. If OPCODE = 9, 10, 11, 24, 25, or 26, then Table-
type PARM is required to input the constant required in the operation.

678

</pre><hr><pre>
-------
Users Control Input

OPCODE

Operation code for time series generation

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

OPCODE

<-range><opn>

(repeats until all operations of this type are covered)

END OPCODE

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

OPCODE

#thru# OP- ***

CODE ***

13 8
5	20

END OPCODE

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format Def

Min

Max

<opn>

OPCODE

15 none

1

26

679

</pre><hr><pre>
-------
HSPF Version 12

Explanation

OPCODE is the operation code. If A and B are the input time series and C is the generated time series, the
functions performed for the allowable range of values of OPCODE are:

OPCODE

Definition

1

C= Abs(A)

2

C= Sqrt(A)

3

C= Trunc(A)

4

C= Ceil(A)

5

C= Floor(A)

6

C= loge(A)

7

C= log 10(A)

8

C= K(l)+K(2)*A+K(3)*A**2+(up to 7 terms)

9

C= K**A

10

C= A**K

11

C= A+K

12

C= Sin(A)

13

C= Cos(A)

14

C= Tan(A)

15

C= Sum(A)

16

C= A+B

17

C= A-B

18

C= A*B

19

C= A/B

20

C= Max (A,B)

21

C= Min (A,B)

22

C= A**B

23

C= cumulative departure of A below B

24

C=K

25

C= Max (A,K)

26

C= Min (A,K)

If OPCODE is less than 15, or OPCODE equals 25 or 26, only one input time series is required; if
OPCODE is 24, no input time series are required; otherwise two input time series are required. Note that
the operation is performed on the data when they are in internal form (timestep=DELT, units= internal
units). See GENERin Functional Description.

680

</pre><hr><pre>
-------
Users Control Input

NTERMS

Number of terms in power series

¦k-k-k-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

NTERMS

<-range><-nt>

(repeats until all operations of this type are covered)

END NTERMS

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

NTERMS

#thru#NTERM ***

12 4
END NTERMS

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

<nt>

NTERMS

15

2

1

7

Explanation

This table is only relevant if OPCODE=8. NTERMS is the total number of terms

C= K(1)+K(2)*A+K(3)*A**2 etc.

The default value of 2 was chosen because this option is most often used to perform a linear
transformation.

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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

in the power series:

681

</pre><hr><pre>
-------
HSPF Version 12

COEFFS

Coefficients in generating power function

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

COEFFS

<-range><	coef f s	>

(repeats until all operations of this type are covered)

END COEFFS

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

COEFFS

#thru# *** K1	K2	K3

1 7	-2.0	1.5	0.2

END COEFFS

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

<coeffs>

K (*)

7F10.0

o
o

none

none

Explanation

This table is only relevant if OPCODE=8. K(1 through NTERMS) are the coefficients in the power
function:

C= K(1)+K(2)*A+K(3)*A**2+ etc.

682

</pre><hr><pre>
-------
Users Control Input

PARM

Constant for GENER operation

¦k-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

PARM

<-range><—con	>

(repeats until all operations of this type are covered)

END PARM

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

PARM

# - # ***	K

1 7	2.5

END 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

<con>

K

F10.0

1.0

none

none

Explanation

This table is only relevant if OPCODE is 9, 10, 11, 24, 25, or 26.
K is the constant required in the operation.

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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

683

</pre><hr><pre>
-------
HSPF Version 12

MUTSIN 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

MUTSIN

Table-type MUTSINFO
END MUTSIN

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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 MUTSIN module is used to copy one or more time series from a PLTGEN file or its equivalent to
one or more targets. The targets may be data sets in the WDM file (specified in the EXT-TARGETS
Block) or input time series in other operations (specified in the NETWORK Block). See MUTSIN in
Functional Description.

684

</pre><hr><pre>
-------
Users Control Input

MUTSINFO

Information about 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

12	3

12345 67 8 9012345 67 8 9012345 67 8 9012345

•A-**********************************

Layout

¦k -k -k -k -k -k

MUTSINFO

<-range><mfl><npt><nmn><nli><mis>

(repeats until all operations of this type are covered)

END MUTSINFO

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

MUTSINFO

# - # MFL NPT NMN NLI MSFG ***

1	30 1 1 25 0

END MUTSINFO

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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

<mfl>

MUTFL

15

30

30

99

<npt>

NPT

15

0

0

20

<nmn>

NMN

15

0

0

20

<nli>

NLINES

15

25

1

none

<mis>

MISSFG

15

0

0

3

Explanation

MUTFL is the file unit number of the PLTGEN-format file being input; the file name is specified (and
associated with the file unit number) in the FILES Block.

NPT is the number of point-valued time series to be input.

NMN is the number of mean-valued time series to be input. NPT + NMN must be less than or equal to 20.
NLINES is the number of lines to skip at the beginning of the file.

MISSFG is the missing data action flag.

0	- stop on missing data

1	- fill missing data with 0.0

2	- fill missing data with -1.0E30

3	- fill missing data with next value

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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

685

</pre><hr><pre>
-------
HSPF Version 12

BMPRAC 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

BMPRAC

[Table-type	PRINT-INFO]

Table-type	GEN-INFO

[Table-type	FLOW-FLAG]

[Table-type	FLOW-FRAC]

[Table-type	CONS-FLAG]

[Table-type	CONS-FRAC]

[Table-type	HEAT-FLAG]

[Table-type	HEAT-FRAC]

[Table-type	SED-FLAG]

[Table-type	SED-FRAC]

[Table-type	GQ-FLAG]

[Table-type	GQ-FRAC]

[Table-type	OXY-FLAG]

[Table-type	OXY-FRAC]

[Table-type	NUT-FLAG]

[Table-type	DNUT-FRAC]

[Table-type	ADSNUT-FRAC]

[Table-type	PLANK-FLAG]

[Table-type	PLANK-FRAC]

[Table-type	PH-FLAG]

[Table-type	PH-FRAC]

END BMPRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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 BMPRAC module requires the user to specify removal fractions or pointers to MONTH-DATA
block tables for each constituent active in the RUN.

Some general information is needed. The first two tables are parallels of the GEN-INFO and PRINT-
INFO tables used by PERLND, IMPLND and RCHRES. No ACTIVITY table is needed; instead, if a
member of the timeseries group INFLOW is absent, either because that constituent is unaffected by the
BMP (and therefore bypasses the MASS-LINK block) or because the appropriate section of the source
land use is turned off, then both the computed total outflow and the computed total removal for that
constituent are computed and reported as zero.

686

</pre><hr><pre>
-------
Users Control Input

PRINT-INFO

Printout information for BMPRAC

"k'k'k'k'k'k'k'k'k'k'k'k'k'k'k

1	8

678901234567890

"k'k'k'k'k'k'k'k'k'k'k'k'k'k'k

PRINT-INFO

<-range><	print-flags	><piv><pyr>

(repeats until all operations of this type are covered)

END PRINT-INFO

k k k k k k k

Example

kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

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

kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

Layout

k k k k k k

PRINT-INFO

BMPRAC Printout level flags	***

x - x FLOW CONS HEAT SED GQ OXY NUT PLNK PH PIVL PYR ***
1 7 5 5	1 9

END PRINT-INFO

kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

Details

Symbol

Fortran name

Format

Def

Min

Max

<print-flags>

PFLAG

915

4

2

6

<pivl>

PIVL

15

1

1

1440

<pyr>

PYREND

15

9

1

12

687

</pre><hr><pre>
-------
HSPF Version 12

Explanation

Table of printout level flags for BMPRAC. 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.

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.

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.

688

</pre><hr><pre>
-------
Users Control Input

GEN-INFO

General information for BMPRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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><	bmp-id	Xbmp><ncoXngq>	<tin><tou><pueXpum>

(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	BMP

BMPRAC	Type

x _ x<	>

102	RCH 101 DRY DETENT	1

END GEN-INFO

Unit Systems Printer ***
NCON NGQ	t-series Engl Metr ***

in out	***

0 1	1 1 61

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol	Fortran name Format Def	Min	Max

<bmp-id>

BMP ID

5A4

none

none

none

<bmp>

BMPTYP

15

1

1

1

<nco>

NCONS

15

0

0

10

<ngq>

NGQUAL

15

0

0

3

<tin>

IUNITS

15

1

1

2

<tou>

OUNITS

15

1

1

2

<pue>

PUNIT(1)

15

0

0

99

<pum>

PUNIT(2)

15

0

0

99

689

</pre><hr><pre>
-------
HSPF Version 12

Explanation

BMPID is the name/identifier of the BMPRAC, it is limited to 20 characters

BMPTYP is the type of BMP implementation. 1 means simple removal fractions. No other type is
currently supported.

NCONS is the number of conservative constituents simulated.

NGQUAL is the number of generalized constituents (quals) being simulated.

IUNITS indicates the system of units for data in the input time series; 1 means English units, 2 means
Metric units.

OUNITS indicates the system of units for data in the output time series; 1 means English units, 2 means
Metric units.

PUNIT(l) indicates the destination of printout in English units. A value of 0 means no printout is
required in English units. A non-zero value means printout is required in English units and the value is
the file unit number of the file to which the printout is to be written. Note that printout for each BMP can
be obtained in either the English or Metric systems, or both (irrespective of the system used to supply the
inputs).

PUNIT(2) indicates the destination of printout in Metric units. A value of 0 means no printout is required
in Metric units. A non-zero value means printout is required in Metric units and the value is the file unit
number of the file to which the printout is to be written. Note that printout for each BMP can be obtained
in either the English or Metric systems, or both (irrespective of the system used to supply the inputs).

690

</pre><hr><pre>
-------
Users Control Input

FLOW-FLAG

Flow removal 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

FLOW-FLAG
<-range><vlf>

(repeats until all operations of this type are covered)

END FLOW-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

FLOW-FLAG

BMPRAC VOFG***
x - x	***

2	2

END FLOW-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

<volf>	VOLFFG	15	0	0	999

Explanation

Value of 0 indicates that the BMP removal factor for flow is constant, given in table FLOW-FRAC. A
value greater than 0 indicates the index number of the table in the MONTH-DATA block to be used to
specify the monthly removal factors.

691

</pre><hr><pre>
-------
HSPF Version 12

FLOW-FRAC

Flow removal 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

FLOW-FRAC

<-range><-volfrc->

(repeats until all operations of this type are covered)

END FLOW-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

FLOW-FRAC

BMPRAC VOLFRC***
x - x	***

1	.10

END FLOW-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

Cvolfrc>

VOLFRC

F10.0

o
o

o
o

1.0

Explanation

VOLFRC is the BMP removal fraction for flow.

692

</pre><hr><pre>
-------
Users Control Input

CONS-FLAG

Conservative removal 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

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

¦k -k -k -k -k -k

CONS-FLAG

<-range><clf><c2f><c3f><c4f><c5f><c6f><c7 f><c8f><c9fxc0f>

(repeats until all operations of this type are covered)

END CONS-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

CONS-FLAG

BMPRAC C1F C2F
x - x
2	2

END CONS-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

1	8

678901234567890

C3F C4F C5F C6F C7F C8F C9F C0F***

•k ~k ~k

Details

Symbol	Fortran name Format Def	Min	Max

<cXf>	CONFFG(*)	1015 0	0	999

Explanation

Value of 0 indicates that the BMP removal factor for conservative constituent 'X' is constant, given in
table CONS-FRAC. A value greater than 0 indicates the index number of the table in the MONTH-
DATA block to be used to specify the monthly removal factors.

693

</pre><hr><pre>
-------
HSPF Version 12

CONS-FRAC

Conservative removal fractions and related 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

CONS-FRAC

<-range><	conid	> <cunits>< -cfrac->

(repeats until all operations of this type are covered)

END CONS-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

CONS-FRAC
BMPRAC

x - xName	Units

1

END CONS-FRAC

¦k -k -k

Frac***

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details
Symbol

<conid>
<cunits>
<cfrac>

Fortran name Format Def

CONID

CQTYID

CONFRC

Min

Max

5A4	none none none

2A4	none none none

F10.0 0.0	0.0	1.0

Explanation

This table must be repeated NCONS times, once for each conservative constituent.

CONID is the name/identifier of the conservative constituent, limited to 20 characters.

CQTYID is an 8 character identifier for the units in which the inflows and outflows of constituent will be
expressed, e.g., "kg". The names and units should be the same as used in RCHRES for the same
constituent.

CONFRC is the BMP removal fraction for each constituent.

694

</pre><hr><pre>
-------
Users Control Input

HEAT-FLAG

Heat removal 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

HEAT-FLAG
<-range><htf>

(repeats until all operations of this type are covered)

END HEAT-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

HEAT-FLAG

BMPRAC HTFG***
x - x	***

2	2

END HEAT-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

<htf>	HTFFG	15	0	0	999

Explanation

Value of 0 indicates that the BMP removal factor for heat is constant, given in table HEAT-FRAC. A
value greater than 0 indicates the index number of the table in the MONTH-DATA block to be used to
specify the monthly removal factors.

695

</pre><hr><pre>
-------
HSPF Version 12

HEAT-FRAC

Heat removal fraction

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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-FRAC

<-range>< -htfrc->

(repeats until all operations of this type are covered)

END HEAT-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

HEAT-FRAC

BMPRAC	HTFRC***

x - x	***

1	.10

END HEAT-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

<htfrc>

HTFRC

F10.0

o
o

o
o

1.0

Explanation

HTFRC is the BMP removal fraction for heat.

696

</pre><hr><pre>
-------
Users Control Input

SED-FLAG

Sediment removal 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

SED-FLAG

<-range><saf><sif><clf>

(repeats until all operations of this type are covered)

END SED-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

SED-FLAG

BMPRAC Sand Silt Clay***
x - x	***

2	2

END HEAT-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

<saf>	SEDFG(l)	15	0	0	999

<saf>	SEDFG(2)	15	0	0	999

<clf>	SEDFG(3)	15	0	0	999

Explanation

For SEDFG(l), a value of 0 indicates that the BMP removal factor for sand is constant, given in table
SED-FRAC. A value greater than 0 indicates the index number of the table in the MONTH-DATA block
to be used to specify the monthly removal factors.

SEDFG(2) and SEDFG(3) have the same meanings for silt and clay, respectively.

697

</pre><hr><pre>
-------
HSPF Version 12

SED-FRAC

Sediment removal 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

SED-FRAC

<-range>< sndfrc-><-sltfrc-X-clyfrc->

(repeats until all operations of this type are covered)

END SED-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

SED-FRAC

BMPRAC SANDFRC SILTFRC CLAYFRC***
x - x	***

1	.10	.05	.00

END SED-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol	Fortran name Format Def	Min	Max

<sndfrc>	SEDFRC(l)	F10.0 0.0	0.0	1.0

<sltfrc>	SEDFRC(2)	F10.0 0.0	0.0	1.0

<clyfrc>	SEDFRC(3)	F10.0 0.0	0.0	1.0

Explanation

SEDFRC(l) is the BMP removal fraction for sand.
SEDFRC(2) is the BMP removal fraction for silt.
SEDFRC(3) is the BMP removal fraction for clay.

698

</pre><hr><pre>
-------
Users Control Input

GQ-FLAG

General quality constituent removal 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

GQ-FLAG

<-range><qld><qls><qll><qlc><q2d><q2s><q21><q2c><q3d><q3s><q31Xq3c>

(repeats until all operations of this type are covered)

END GQ-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

GQ-FLAG

BMPRACX	Qual 1	><	Qual 2	><	Qual 3	>***

x - x Soln Sand Silt Clay Soln Sand Silt Clay Soln Sand Silt Clay***
2	2

END GQ-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

<qXd>

GQFFG(1,5,9)

15

0

0

999

<qXs>

GQFFG(2,6,10)

15

0

0

999

<qXl>

GQFFG(3,7,11)

15

0

0

999

<qXc>

GQFFG(4,8,12)

15

0

0

999

Explanation

For GQFFG(l), GQFFG(5) and GQFFG(9), a value of 0 indicates that the BMP removal factor for qual 1,
2, or 3, respectively, in solution is constant, given in table GQ-FRAC. A value greater than 0 indicates the
index number of the table in the MONTH-DATA block to be used to specify the monthly removal factors.

GQFFG(2), GQFFG(6),and GQFFG(IO) have the same meanings for qual 1, 2, or 3, respectively,
adsorbed to sand.

GQFFG(3), GQFFG(7),and GQFFG(11) have the same meanings for qual 1, 2, or 3, respectively,
adsorbed to silt.

GQFFG(4), GQFFG(8),and GQFFG(12) have the same meanings for qual 1, 2, or 3, respectively,
adsorbed to clay.

699

</pre><hr><pre>
-------
HSPF Version 12

GQ-FRAC

General quality constituent removal fractions and associated 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

GQ-FRAC

<-range><	gqid	><gunits><gslnfrc-><gsndfrc-><gsltfrc-Xgclyfrc->

(repeats until all operations of this type are covered)

END GQ-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

GQ-FRAC

BMPRAC	***

x - xName	***	Units	SolnFrac SandFrac SiltFrac ClayFrac

1	ATRAZINE	LBS	0.1	0.8	0.5	0.2

END GQ-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

<gqid>

GQID

5A4

none

none

none

<gunits>

GQTYID

2A4

none

none

none

<gslnfrc>

GQDFRC(*)

F10.0

0.0

0.0

1.0

<gsndfrc>

GQSFRC(1,*)

F10.0

0.0

0.0

1.0

<gsltfrc>

GQSFRC(2,*)

F10.0

0.0

0.0

1.0

<gclyfrc>

GQSFRC(3,*)

F10.0

0.0

0.0

1.0

700

</pre><hr><pre>
-------
Users Control Input

Explanation

This table must be repeated NGQUAL times (see table GEN-INFO).

GQID is a 20 character identifier for the general quality constituent. The name should be consistent with
the name used in RCHRES for this constituent.

GQTYID is an 8 character identifier for the units in which the inflows and outflows of the general quality
constituent will be expressed, e.g., "kg". The units should be consistent with the units used in RCHRES
for the comparable general quality constituent.

GQDFRC(*) is the BMP removal fraction for the dissolved form of the general quality constituent.

GQSFRC(1,*) is the BMP removal fraction for the adsorbed to sand form of the general quality
constituent.

GQSFRC(2,*) is the BMP removal fraction for the adsorbed to silt form of the general quality
constituent.

GQSFRC(3,*) is the BMP removal fraction for the adsorbed to clay form of the general quality
constituent.

701

</pre><hr><pre>
-------
HSPF Version 12

OXY-FLAG

Dissolved Oxygen/BOD removal 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

OXY-FLAG

<-range><dof><bof>

(repeats until all operations of this type are covered)

END OXY-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

OXY-FLAG

BMPRAC DOFG BOFG***
x - x	***

2	2

END OXY-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

<dof>

OXFFG(l)

15

0

0

999

<bof>

OXFFG(2)

15

0

0

999

Explanation

Value of 0 indicates that the BMP removal factor for dissolved oxygen is constant, given in table OXY-
FRAC. A value greater than 0 indicates the index number of the table in the MONTH-DATA block to be
used to specify the monthly removal factors.

Value of 0 indicates that the BMP removal factor for biochemical oxygen demand is constant, given in
table OXY-FRAC. A value greater than 0 indicates the index number of the table in the MONTH-DATA
block to be used to specify the monthly removal factors.

702

</pre><hr><pre>
-------
Users Control Input

OXY-FRAC

Dissolved Oxygen/BOD removal 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

OXY-FRAC

<-range>< -dofrc-X-bodfrc->

(repeats until all operations of this type are covered)

END OXY-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

OXY-FRAC

BMPRAC	DOFRC BODFRC***

x - x	***

1	.10	.20

END OXY-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

<dofrc>
<bodfrc>

OXYFRC(1)
OXYFRC(2)

F10.0
F10.0

o o
o o

o o
o o

I—1 I—1

o o

Explanation

OXYFRC(l) is the BMP removal fraction for dissolved oxygen.
OXYFRC(2) is the BMP removal fraction for biochemical oxygen demand

703

</pre><hr><pre>
-------
HSPF Version 12

NUT-FLAG

Nutrient removal 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-FLAG

<-range><s3f><stf ><s2 f><s4f XasfXalf XacfXpsf XplfXpcf >

(repeats until all operations of this type are covered)

END NUT-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

NUT-FLAG

BMPRACX	Solution	X	Ads-NH4	X	Ads-PCM	>***

x - x N03 TAM N02 P04 Sand Silt Clay Sand Silt Clay***

2	2

END NUT-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

<s3f>

NUTFFG(

1)

15

0

0

999

<stf>

NUTFFG(

2)

15

0

0

999

<s2 f>

NUTFFG(

3)

15

0

0

999

<s4 f >

NUTFFG(

4)

15

0

0

999

<asf>

NUTFFG(

5)

15

0

0

999

<alf>

NUTFFG(

6)

15

0

0

999

<acf>

NUTFFG(

7)

15

0

0

999

<ps f >

NUTFFG(

8)

15

0

0

999

<plf>

NUTFFG(

9)

15

0

0

999

<pc f >

NUTFFG(

10)

15

0

0

999

704

</pre><hr><pre>
-------
Users Control Input

Explanation

NUTFFG(1 through 10) - A value of 0 indicates that the BMP removal factor for the associated
constituent is constant, given in the corresponding removal fraction table. A value greater than 0 indicates
the index number of the table in the MONTH-DATA block to be used to specify monthly removal factors.
The constituents and their corresponding removal fraction tables are:

Flag

Constituent

Table For Monthly Values

NUTFFG(l)

nitrate

DNUT-FRAC

NUTFFG(2)

dissolved ammonia

DNUT-FRAC

NUTFFG(3)

nitrite

DNUT-FRAC

NUTFFG(4)

dissolved phosphate

DNUT-FRAC

NUTFFG(5)

ammonia adsorbed to sand

ADSNUT-FRAC

NUTFFG(6)

ammonia adsorbed to silt

ADSNUT-FRAC

NUTFFG(7)

ammonia adsorbed to clay

ADSNUT-FRAC

NUTFFG(8)

phosphate adsorbed to sand

ADSNUT-FRAC

NUTFFG(9)

phosphate adsorbed to silt

ADSNUT-FRAC

NUTFFG(IO)

phosphate adsorbed to clay

ADSNUT-FRAC

705

</pre><hr><pre>
-------
HSPF Version 12

DNUT-FRAC

Dissolved nutrient removal 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

DNUT-FRAC

<-range>< no3frc-><-tamfrc-X-no2 frc-X-po4 frc->

(repeats until all operations of this type are covered)

END DNUT-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

DNUT-FRAC

BMPRAC	Removal

x - x	N03

1	.20

END DNUT-FRAC

fractions	***

TAM	N02	P04***

.15	.20	.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

<no3frc>

DNUFRC(1)

F10.0

o
o

o
o

1.0

<tamfrc>

DNUFRC(2)

F10.0

o
o

o
o

1.0

<no2frc>

DNUFRC(3)

F10.0

o
o

o
o

1.0

<po4frc>

DNUFRC(4)

F10.0

o
o

o
o

1.0

Explanation

DNUFRC(l) is the BMP removal fraction for dissolved nitrate.
DNUFRC(2) is the BMP removal fraction for total ammonia.
DNUFRC(3) is the BMP removal fraction for dissolved nitrite.
DNUFRC(4) is the BMP removal fraction for dissolved orthophosphate.

706

</pre><hr><pre>
-------
Users Control Input

ADSNUT-FRAC

Adsorbed nutrient removal 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

ADSNUT-FRAC

<-range><nh4sfrc-><nh41frc-><nh4cfrc-><po4sfrc-><po41frc-Xpo4cfrc->

(repeats until all operations of this type are covered)

END ADSNUT-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

ADSNUT-FRAC

Removal fractions	***

BMPRAC	Ammonia	Phosphate	***

x - x	Sand	Silt	Clay	Sand	Silt	Clay ***

1	.50	.30	.20	.65	.40	.25

END ADSNUT-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol	Fortran name Format Def	Min	Max

<nh4sfrc>

SNUFRC

1)

F10.0

0

0

0

0

1.0

<nh41frc>

SNUFRC

2)

F10.0

0

0

0

0

1.0

<nh4cfrc>

SNUFRC

3)

F10.0

0

0

0

0

1.0

<po4sfrc>

SNUFRC

4)

F10.0

0

0

0

0

1.0

<po41frc>

SNUFRC

5)

F10.0

0

0

0

0

1.0

<po4cfrc>

SNUFRC

6)

F10.0

0

0

0

0

1.0

Explanation

SNUFRC(1)-SNUFRC(3) are the BMP removal fractions for ammonia adsorbed to sand, silt, and clay,
respectively.

SNUFRC(4)-SNUFRC(6) are the BMP removal fractions for phosphate adsorbed to sand, silt and clay,
respectively.

707

</pre><hr><pre>
-------
HSPF Version 12

PLANK-FLAG

Plankton component removal 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

PLANK-FLAG

<-range><phy><zoo><orn><orpXorc>

(repeats until all operations of this type are covered)

END PLANK-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

PLANK-FLAG

BMPRAC Removal Fractions
x - x Phyt Zoo ORN ORP ORC
2	2

END PLANK-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

<phy>

PLKFFG(

1)

15

0

0

999

<zoo>

PLKFFG(

2)

15

0

0

999

<orn>

PLKFFG(

3)

15

0

0

999

<orp>

PLKFFG(

4)

15

0

0

999

<orc>

PLKFFG(

5)

15

0

0

999

Explanation

PLKFFG(1 through 5) - A value of 0 indicates that the BMP removal factor for the associated constituent
is constant, given in table PLANK-FRAC. A value greater than 0 indicates the index number of the table
in the MONTH-DATA block to be used to specify monthly removal factors. The constituents are:

Flag

Constituent

PLKFFG(l)

phytoplankton

PLKFFG(2)

zooplankton

PLKFFG(3)

dead refractory organic nitrogen

PLKFFG(4)

dead refractory organic phosphorus

PLKFFG(5)

dead refractory organic carbon

¦k -k -k

708

</pre><hr><pre>
-------
Users Control Input

PLANK-FRAC

Plankton component removal 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

PLANK-FRAC

<-range>< phyfrc-X-zoofrc ><-ornfrc-><-orpfrc-X-orcfrc->

(repeats until all operations of this type are covered)

END PLANK-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

PLANK-FRAC

BMPRAC	Removal Fractions	***

x - x	Phyt	Zoo	ORN	ORP	ORC***

1	.10	.25	.30	.25	.25

END PLANK-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol	Fortran name Format Def	Min	Max

<phyfrc>

PLKFRC

1)

F10.0

0

0

0

0

1.0

<zoofrc>

PLKFRC

2)

F10.0

0

0

0

0

1.0

<ornfrc>

PLKFRC

3)

F10.0

0

0

0

0

1.0

<orpfrc>

PLKFRC

4)

F10.0

0

0

0

0

1.0

<orcfrc>

PLKFRC

5)

F10.0

0

0

0

0

1.0

Explanation

PLKFRC(l) is the BMP removal fraction for phytoplankton.

PLKFRC(2) is the BMP removal fraction for zooplankton.

PLKFRC(3) is the BMP removal fraction for dead refractory organic nitrogen.

PLKFRC(4) is the BMP removal fraction for dead refractory organic phosphorus.

PLKFRC(5) is the BMP removal fraction for dead refractory organic carbon.

709

</pre><hr><pre>
-------
HSPF Version 12

PH-FLAG

pH and Inorganic Carbon removal 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

PH-FLAG

<-range><tic><co2>

(repeats until all operations of this type are covered)

END PH-FLAG

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

PH-FLAG

BMPRAC Monthly variable flags***
x - x TIC C02	***

2	2

END PH-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

<tic>

PHFFG(l)

15

0

0

999

<co2>

PHFFG(2)

15

0

0

999

Explanation

A PHFFG(l) value of 0 indicates that the BMP removal factor for total inorganic carbon is constant,
given in table PH-FRAC. A value greater than 0 indicates the index number of the table in the MONTH-
DATA block to be used to specify the monthly removal factors.

A PHFFG(2) value of 0 indicates that the BMP removal factor for dissolved carbon dioxide is constant,
given in table PH-FRAC. A value greater than 0 indicates the index number of the table in the MONTH-
DATA block to be used to specify the monthly removal factors.

710

</pre><hr><pre>
-------
Users Control Input

PH-FRAC

pH and Inorganic Carbon removal 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

PH-FRAC

<-range>< ticfrc-X-co2frc->

(repeats until all operations of this type are covered)
END PH-FRAC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

PH-FRAC

BMPRAC Removal fractions ***
x - x	TIC	C02***

1	.10	0.

END PH-FRAC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max

Cticfrc>
<co2frc>

PHFRC(1)
PHFRC(2)

F10.0
F10.0

o o
o o

o o
o o

I—1 I—1

o o

Explanation

PHFRC(l) is the BMP removal fraction for total inorganic carbon.
PHFRC(2) is the BMP removal fraction for dissolved C02.

711

</pre><hr><pre>
-------
HSPF Version 12

REPORT 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

REPORT

Table-type
Table-type
Table-type
Table-type
Table-type
END REPORT

REPORT-FLAGS
REPORT-TITLE
REPORT-SRC
REPORT-CON
REPORT-SUMM

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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 REPORT module requires each of the tables referenced above if the simulation contains a REPORT.
See the Functional Description for REPORT for details about the optional user-defined report format file.

712

</pre><hr><pre>
-------
Users Control Input

REPORT-FLAGS

General information for REPORT

¦k-k-k-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

REPORT-FLAGS

<-range><rf lXncoXnsrXf rm><cwi><pwi><pli><pcoXpyr>

(repeats until all operations of this type are covered)

END REPORT-FLAGS

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

REPORT-FLAGS
Rept-opn

x - x REPT NCON NSRC
1	31 14 7

END REPORT-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

<rf 1>

REPTFL

15

30

10

99

<nco>

NCON

15

1

1

20

<nsr>

NSRC

15

1

1

25

<frm>

FORMFG

15

1

0

99

<cwi>

CWID

15

10

-2

20

<pwi>

PWID

15

80

20

1000

<pli>

PLIN

15

40

5

none

<pco>

PCOD

15

5

3

5

<pyr>

PYREND

15

9

1

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

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

FORM CWID PWID PLIN PCOD PYR***
1 12 80 50 5 12

713

</pre><hr><pre>
-------
HSPF Version 12

Explanation

REPTFL is the file unit number for the report output file.

NCON is the number of constituents that are reported for each source. Note that, for example, the
concentration and mass loading of the same substance count as separate constituents if they occur in the
same report.

NSRC is the number of sources (e.g., PERLND and IMPLND segments, point sources, atmospheric
deposition to reach) to be reported.

FORMFG specifies the format for the report:

0	- database records

1	- unit-area loading table

2	- total loading table

3	- general summary table

10+ - user-defined format (this option requires input format file whose file unit number in the FILES
block equals FORMFG).

See Functional Description, REPORT, Looping for complete descriptions of formats 1-3, and Special
Format for a description of the database format. Formats 4-9 are reserved for future additional pre-defined
formats.

CWID is the column width for the reported tables:

8-20 - actual width

-1 - write tab-delimited file

-2 - write comma-delimited file.

PWID is the page width in characters, used only for the general flux table format (FORMFG=3).

PLIN is the page length in lines. Not used for user-defined format (FORMFG >= 10).

PCODE is the print interval code for the report:

3	- daily

4	- monthly

5	- annual

PYREND is the month ending the print year for the report.

714

</pre><hr><pre>
-------
Users Control Input

REPORT-TITLE

Title of REPORT

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

l

123456789012345678

•A-*****************

Layout

¦k -k -k -k -k -k

REPORT-TITLE

<-range><	title	>

(repeats until all operations of this type are covered)

END REPORT-TITLE

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

REPORT-TITLE
Rept-opn	***

x - x Title ***

1 2 PER ACRE LOADINGS BY LAND USE FOR EACH SEGMENT
END REPORT-TITLE

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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>

TITLE

15A4

none

none

none

Explanation

TITLE is the 60 character title of the report; it appears at the top of each page.

******************************************************************
2	3	4	5	6	7	8

9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

715

</pre><hr><pre>
-------
HSPF Version 12

REPORT-SRC

Source names

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

REPORT-SRC

<-range><— source-name	>

(repeats until all operations of this type are covered)

END REPORT-SRC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

REPORT-SRC

Rept-opn	***

x - x Source Name***

1	URBAN

1	FOREST

1	CROPLAND

END REPORT-SRC

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol	Fortran name Format Def	Min	Max

<source-name> SRCID	5A4	none none none

Explanation

SRCID is a 20-character name for each source; it appears as a header in the report.
NSRC (from REPORT-FLAGS) lines are needed for each operation.

716

</pre><hr><pre>
-------
Users Control Input

REPORT-CON

Constituent names and

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

l

123456789012345678

•A-*****************

Layout

¦k -k -k -k -k -k

REPORT-CON

<-range><	con-name	><trn><sdg><dcp>

(repeats until all operations of this type are covered)

END REPORT-CON

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

REPORT-CON
Rept-opn

x - x Con Name
1 2 Nitrate
1 2 Ammonia
END REPORT-CON

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max



<con-name>

CONID

5A4

none

none

none



<trn>

TRAN

A4

SUM

none

none

(see below)

<sdg>

SIGD

15

5

2

5



<dcp>

DECPLA

15

2

0

3



Explanation

CONID is a 20-character name for each constituent; it appears as a header in the report.

TRAN is the transformation code used to aggregate data from the run interval to the REPORT interval
defined by PCODE in Table-type REPORT-FLAGS. Valid values are: SUM, AVER, MAX, MIN and
LAST.

SIGD is the number of significant digits to be used for output to the report.

DECPLA is the number of decimal places to be used for output to the report.

In this table, NCON (from REPORT-FLAGS) lines are required for each REPORT operation.

related 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

2	3	4	5	6	7	8

9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

TRAN SIGD DECP***
SUM	5 2

SUM	5 2

111

</pre><hr><pre>
-------
HSPF Version 12

REPORT-SUMM

Summary specifications

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

REPORT-SUMM

<-range><—src-sum-header—> <st> < -tim-sum-header -> <tt><stt>

(repeats until all operations of this type are covered)
END REPORT-SUMM

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

REPORT-SUMM

Rept-opn	***

x - x Source Sum Header Strn Time Sum Header	Ttrn Sttr***

1 2 Total	SUM Average	AVER 1

END REPORT-SUMM

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

Fortran name

Format

Def

Min

Max



<src-sum-head>

SRCHED

5A4

none

none

none



<st>

SRCTRN

A4

SUM

none

none

(see below)

<tim-sum-head>

TIMHED

5A4

none

none

none



<tt>

TIMTRN

A4

SUM

none

none

(see below)

<stt>

STTRFG

15

2

1

2



718

</pre><hr><pre>
-------
Users Control Input

Explanation

These parameters describe how the reported values are summarized when aggregated across time and
across sources.

SRCHED is the header used to identify the summary over all sources.

SRCTRN is the transformation code used to aggregate data across all sources. Valid values are: SUM,
AVER, MAX, MIN, LAST and PCT. PCT behaves the same as SUM, except that all of the source values
and the summary value are divided by the summary value and converted to a percentage.

TIMHED is the header used to identify the summary over the REPORT time intervals.

TIMTRN is the transformation code used to aggregate data from the REPORT intervals to their summary.
This value is independent of TRAN in REPORT-CON, which is used to aggregate from the run interval
to the REPORT interval. Valid values are: SUM, AVER, MAX, MIN, and LAST.

STTRFG indicates how to compute the double-summary value (over all sources and over all REPORT
intervals). If STTRFG=1, then SRCTRN is applied to the time summaries for each source. If STTRFG=2,
then TIMTRN is applied to the source summaries for each REPORT interval.

For example, in an annual report, SRCTRN is SUM (compute the sum of all sources each year) and
TIMTRN is MAX (compute the maximum annual value for each source).



1994

1995

1996

MAX

Forest

25.0

35.0

20.0

35.0

Urban

100.0

50.0

85.0

100.0

Cropland

60.0

75.0

120.0

120.0

SUM

185.0

160.0

225.0

255.0 or 225.0

If STTRFG=1, then the double-summary value is the sum of the column of maximum annual values, or
255. If STTRFG=2, then it is the maximum of the row of annual totals, or 225.

If both SRCTRN and TIMTRN are linear operators (i.e. SUM or AVER), then the double summary is the
same regardless of the value of STTRFG.

719

</pre><hr><pre>
-------
HSPF Version 12

FT ABLE S 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

FTABLES

FTABLE <t>

	<	ftab-parms	>

	<	 row-of-values 	>

line above repeats until function has been described through desired range

END FTABLE<t>



Any number of FTABLES may appear in

the block

END FTABLES



¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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

<t> NUMBR 13

User's ID number for this FTABLE.

<ftab-parms> Fparms(4) 415

Up to 4 control parameters may be



supplied for an Ftable, e.g., number of



rows, number of columns, etc. Exact



details depend on the FTABLE concerned.

<row-of-values> VAL(*) variable

Each column is dedicated to one of the



variables in the function. Each row



contains a full set of corresponding



values of these variables, e.g., depth,



surface area, volume, and outflow for



a RCHRES.

Explanation

An FTABLE is used to specify, in discrete form, a functional relationship between two or more variables.
For example, in the RCHRES module, it is assumed that there is a fixed relationship between depth,
surface area, volume, and volume-dependent (F(vol)) discharge component. An FTABLE is used to
document this non-analytic function in numerical form. Each column of the FTABLE is dedicated to one
of the above variables, and each row contains corresponding values of the set. That is, each row contains
the surface area, volume, and discharge for a given depth. The number of rows in the FTABLE will
depend on the range of depth to be covered and the desired resolution of the function.

720

</pre><hr><pre>
-------
Users Control Input

FTABLES for the PERLND Application Module

FTABLE for PWATER section

One of the optional methods for computing surface runoff from a PERLND using the High Water Table
algorithms is to use a simple FTABLE to define a fraction of the surface storage which runs off in a given
interval, depending on the depth of storage. This method is selected by setting RTOPFG=3 in Table-type
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

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

FTABLE <t>
<-nr><-nc>

<-depth—><— frac—>

The above row repeats until values have been supplied to cover the entire
cross-section at the desired resolution

END FTABLE<t>

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

FTABLE	31

rows cols	***

3 2
depth outflow ***
(in)	frac ***

0.0	0.0

1.0	10.0

5.0	40.0

END FTABLE 31

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

721

</pre><hr><pre>
-------
HSPF Version 12

Details

Symbol

Name(s)

Format

Comment



<t>

see FTABLES

13

ID No. of FTABLE



<nr>

NROWS

15

Number of rows in FTABLE



<nc>

NCOLS

15

Number of columns in FTABLE.

Must be 2

<depth>

Depth

F10.0

Depth of surface storage;
Units: English = in; Metric =

mm

<frac>

Runoff frac

F10.0

Fraction of storage that runs

off

per hour.

Explanation

This FTABLE lists depth and outflow rate expressed as a fraction of the surface storage that flows out
each hour. HSPF interpolates between the specified values to obtain the flow fraction for intermediate
values of depth.

The FTABLE must satisfy the following conditions:

1.	(NCOLS*NROWS) must not exceed 100

2.	NCOLS must be 2

3.	There must be at least one row in the FTABLE

4.	The first row must have depth = 0.0

5.	No negative values are permitted

6.	The depth field may not decrease as the row number increases

722

</pre><hr><pre>
-------
Users Control Input

FT ABLE S for the RCHRES Application Module

FTABLE for HYDR section

The geometric and hydraulic properties of a RCHRES are summarized in a function table (FTABLE).
Every RCHRES must be associated with one FTABLE; the association is done in Table-type HYDR-
PARM2. Usually, every RCHRES will have its own FTABLE; however, if RCHRESs are identical they
can share the same FTABLE.

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

FTABLE <t>

<-nr><-nc>

<-depth—><—area—><-volume-><	 f (VOL)-values	>

The above row repeats until values have been supplied to cover the entire
cross-section at the desired resolution

END FTABLE<t>

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

FTABLE
rows cols
3 5
depth
(ft)
0.0
5.0
20.0

103

area	volume

(acres)	(acre-ft)

0.0	0.0

10.0	25.0

120.0	1000.0

outflowl
( ft3/s)
0.0
20.5
995.0

outflow2 ***
( ft3/s) ***
0.0
10.2
200.1

END FTABLE103

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

723

</pre><hr><pre>
-------
HSPF Version 12

Details

Symbol

Name(s)

Format

Comment

<t>

see FTABLES

13

ID No. of FTABLE

<nr>

NROWS

15

Number of rows in FTABLE

<nc>

NCOLS

15

Number of columns in FTABLE

<depth>

Depth

F10.0

Depth of RCHRES;

Units: English = ft; Metric = m

<area>

Surface area

F10.0

Surface area of RCHRES;

Units: English = acres; Metric = ha

<volume>

Volume

F10.0

Volume of RCHRES; The volume in the
first row must be 0.0; Units:

English= acre.ft; Metric= Mm3 (10**6 m3)

<f(vol)-
values>

F (V)

(NCOLS-3)*
F10.0

Units: English = ft3/s; Metric = m3/s

Explanation

This FTABLE lists depth, surface area and, optionally, one or more other values (typically discharge
rates) as functions of volume. HSPF interpolates between the specified values to obtain the geometric and
hydraulic characteristics for intermediate values of volume.

The FTABLE must satisfy the following conditions:

1.	(NCOLS*NROWS) must not exceed 100

2.	NCOLS must be between 3 and 8

3.	There must be at least one row in the FTABLE

4.	The first row must have volume = 0.0

5.	No negative values are permitted

6.	The depth and volume fields may not decrease as the row number increases

In the example given above, we have a reach with two outflows, both of which are functions of volume.
Thus, there are 5 columns in the FTABLE.

The values for this type of FTABLE can either be supplied directly by the user or generated by a
subsidiary program from more basic information (e.g., by backwater analysis or Manning's equation for
assumed uniform flow).

724

</pre><hr><pre>
-------
Users Control Input

TIME SERIES LINKAGES

General Discussion

In the EXTERNAL SOURCES, NETWORK, EXTERNAL TARGETS, and SCHEMATIC/MASS-LINK
blocks, the user specifies those time series which are to be passed between pairs of operations in the same
INGRP or between individual operations and external sources/ targets (WDM Data sets, DSS Data
records, or sequential files). The blocks are arranged in the form of tables, each containing one or more
entries (rows). Each entry contains source information, a multiplication factor, a transformation function,
and target information.

The entries in these blocks may be in any order.

When a time series associated with a data set in a WDM file is referred to, the user supplies the data-set
number and the data-set name. This information must agree with data supplied when the data set was
created. WDM data sets and associated attributes are created using utility software such as WDMUtil and
ANNIE. The user should refer to the documentation for these programs for additional information.

Time series may also be associated with DSS data records in up to five different DSS files. Each record,
or group of records, is identified by a pathname, which is specified in the PATHNAMES block, where it
is associated with a data-set number in the context of the current UCI file. No data-set name is specified.

If a DSS record is accessed as an external target, it is not necessary that the record, or even the file, exist
before the run. DSS records used as external sources, however, must be already present in the specified
DSS file.

The user specifies time series which are input to, or output from, an operating module by supplying a
group name (<sgrp>, <tgrp>) and a member name plus one or two subscripts (<smem><m#>,
<tmem><m#>). The member information must be compatible with data given in the Time Series Catalog
for the applicable operating module and group.

The user may route the same source to several targets by making several separate entries in a block, each
referring to the same source, or by making use of the "range" feature provided in the <tvol>< range>
field. This latter feature does not apply to entries in the EXT TARGETS Block. In either case the
implication is that data from the source will be used repetitively, and each time will be multiplied by the
specified factor and added to whatever else has already been routed to the specified target. Conversely,
several sources may be routed to a single target, except in the EXT TARGETS Block. This happens
when several entries specify different sources but the same target. Here, the implication is that the data
obtained from the several sources must be accumulated (added) before being used by the target.

725

</pre><hr><pre>
-------
HSPF Version 12

WDM File Concepts

The WDM file is a binary, direct-access file that is organized into discrete data sets. Each data set
consists of data as well as "attributes" that describe the data. Disk space for a WDM file is allocated as
needed in 20-kilobyte increments. Space from deleted data sets within a WDM file is reused as new data
are added to the file. Thus the WDM file needs no special maintenance processing.

HSPF accesses WDM files for both input and output time series data. HSPF requires that a data set be
created in an existing WDM file prior to any run that writes to the data set. Maintenance of WDM files
and creation of new data sets is accomplished using the USGS's ANNIE software or the EPA program
WDMUtil.

Within the HSPF UCI file, a WDM data set is referred to by its data-set number and its name (i.e., its
TSTYPE attribute), which is a four-character alpha-numeric identifier. As stated above, WDM data-set
attributes are created when the data set is first created using utility software. The attributes that are
associated with time series data sets can be divided into two types: 1) those that describe how the data are
stored in the data set, and 2) those that are purely descriptive or provide information about the data.
Examples of the second type are station name (STANAM), station ID (STAID), latitude and longitude
(LATDEG, LNGDEG), and data-set description (DESCRP). Attributes of the first type are more critical,
and are considered "required" attributes for time series data sets. These attributes are defined below:

TCODE - Time units code for defining the time interval of the data set (1-seconds, 2-minutes, 3-hours, 4-
days, 5-months, 6-years); valid values in HSPF are 2, 3, 4, and 5.

TSSTEP - Time interval of data set in TCODE units (used in combination with TCODE)

TSFORM - Form of data; valid values in HSPF context are: (1-mean over time step, 2-total over time
step, 3-instantaneous); 1 and 2 correspond to "mean" time series, and 3 corresponds to "point" time
series.

TSBYR - Starting year of data set; defaults to 1900; generally should be set to a year just prior to start of
data.

TGROUP - Unit for group pointers (3-hours, 4-days, 5-months, 6-years, 7-centuries); it may affect speed
of data retrievals and total amount of data storage available in data set; recommended values are:

Time step	Length of record Recommended TGROUP

1 second - 1 minute	<=100 days	4 (days)

5 minute - daily	<=8 years	5 (months)

5 minute - daily	>8 years	6 (years)

daily	<=100 years	6 (years)

TSFILL - Filler value for missing data; default = 0.0.

COMPFG - Compression flag (1-data are compressed, 2-data are not compressed)

TOLR - Compression tolerance; data values within TOLR are compressed.

VBTIME - Variable time step flag; must be 1 (all data at same time step) for HSPF.

726

</pre><hr><pre>
-------
Users Control Input

DSS File Concepts

DSS Pathnames

DSS files access time series data in a somewhat different manner than WDM files. The latter refers to a
time series by a single data-set number. DSS files refer to time series by "pathnames", which follow
different conventions for different kinds of data. HSPF uses only one of the allowed kinds, i.e., "Regular"
Time Series. The PATHNAMES block is used to temporarily assign or associate a data-set number with
each time series needed in the run.

An entire DSS time series is not necessarily stored in one logical piece in the DSS file. Data are broken
up into separate records with definite sizes and starting dates, which depend on the time step of the data.
For instance, hourly data are stored in records each containing one month of values and starting with the
first hour of the month. Daily data, on the other hand, are stored yearly, in records starting on January
1st.

The pathname can consist of up to 80 characters; because of limitations on UCI line length, HSPF only
allows 64 characters in DSS pathnames. Pathnames are separated into six parts (delimited by slashes "/"),
which are referenced by the characters "A" through "F". For a "regular" time series, the conventions for
the contents of the six parts are:

A River basin or project name

B Location or gage identifier

C Data variable, e.g., FLOW, PRECIP

D Starting date for block of data in the format 01JAN1980. This part is not used by HSPF, and
should be left empty.

E Time interval - valid values are: 5MIN, 10MIN, 15MIN, 30MIN, 1HOUR, 2HOUR, 3HOUR,
4HOUR, 6HOUR, 12HOUR, 1DAY, 1WEEK, 1MON, 1YEAR

F Additional user-defined descriptive information, e.g., OBSERVED, PLAN A

Any single part may contain up to 32 characters, but the total including slashes must remain less than 80
for general DSS use, and less than 64 characters for HSPF (leaving the D part empty). A typical HSPF
pathname might be:

/PATUXENT/BRIGHTON DAM/DIVERSION//1 DAY/OB SERVED-CFS/

Note the double slash indicating the empty D part. The D part may be provided by the user, but HSPF
ignores it; this allows the DSS system to generate it, as needed, based on the starting and ending dates of
the run. For additional information, users should refer to the HECDSS Users Guide (US Army Corps of
Engineers Hydrologic Engineering Center, April 1990).

727

</pre><hr><pre>
-------
HSPF Version 12

DSS Data Types

Each DSS data record also may have a data type string and/or a units string stored with it. Units strings
are ignored by HSPF. Datatype strings are used to determine whether the time series is point-valued or
mean-valued in the context of HSPF. Valid values of the data type string are:

INST-VAL - point-valued: instantaneous at end of interval
PER-AVER - mean-valued: average over interval
PER-CUM - mean-valued: total over interval

A fourth type, INST-CUM, which is used for mass curves, is not valid for HSPF. The data type string for
each time series (input or output) must be specified in the PATHNAMES block.

The data type should not change over time (i.e., between subsequent records) for a given time series. If a
data record already exists before the run, any value specified in the PATHNAMES block must match the
stored value, if it exists. If a data record is created by the run, it is stored with the value given in the
PATHNAMES block, if any. If neither the record itself nor the PATHNAMES block specifies a data
type, the data is treated by the program as a mean-valued time series.

728

</pre><hr><pre>
-------
Users Control Input

EXT SOURCES Block

External Sources

In this block the user specifies those time series which are to be supplied to operations in a RUN from
sources external to it; external sources are WDM data sets, DSS data sets, and sequential (SEQ) data 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

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

EXT SOURCES

<svol><s#> <exsm>qf <ss><sg><-mfact—><tr> <tvol>< range> <tgrp> <tmem><m#>
or

<sfmt>f#

Above line repeats until all external sources have been specified

END EXT SOURCES

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

EXT SOURCES

<-Volume-> <Member> SsysSgap<—Mult—>Tran <-Target vols> <-Grp> <-Member->

<Name> # <Name> # tem strg<-factor->strg <Name>	#	# <Name> # #

SEQ 3 HYDDAY ENGL 1.0 RCHRES	1	EXTNL ICON

WDM1 22 PREC METRZERO SUM IMPLND	2	EXTNL PREC

DSS 132 ENGL SAME PLTGEN	10	INPUT POINT 1
END EXT SOURCES

¦k -k -k

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

729

</pre><hr><pre>
-------
HSPF Version 12

Details

Symbol FORTRAN
Name(s)

Start Format
Column

Comment

<svol> SVOL

< s # >	SVOLNO

<exsm> SMEMN

12

A6 External source volume. Valid values are

WDMn (Watershed Data Management System File,
where n is 1-4 or blank), DSS (Data
Storage System), and SEQ (sequential file).

14 Data-set number if SVOL = WDMn, or DSS;
file unit number if SVOL = SEQ

A4 Data-set TSTYP attribute if SVOL = WDMn;
blank for SVOL = DSS

<sfmt> SFCLAS

qf

f#

QLFG

SFNO

12 A6 SFCLAS is a string indicating the class of format
used in the sequential file.

18 12 Quality-of-data flag if SVOL = WDMn; specifies
the minimum quality of WDM data which will be
accepted by HSPF; valid values = 0-31; default = 31

18 12 SFNO identifies an object-time format supplied in
the FORMATS Block. Default: standard format.

< s s >	SSYST

<sg>	SGAPST

<mfact> MFACTR

21 A4 Unit system of data in the source. Valid values are
ENGL and METR; default = ENGL

25 A4 String indicating how missing lines in the

sequential file, missing data in a DSS file, or
WDM data of insufficient quality will be
regarded; Valid values are ZERO (assign value 0) and
UNDF (assign undefined value). Defaults to UNDF.
See below for explanation.

29 F10.0 The factor by which data from the source will be
multiplied before being added to the target.

Default = 1.0

<tr>	TRAN	39 A4 String indicating which transformation function to

use in transferring time series from source to
target. See Time Series Transform Functions
for valid values and defaults.

<tvol> TVOL	44 A6

< range> TOPFST 51 13
TOPLST 55 13

<tgrp> TGRPN	59 A6

<tmem> TMEMN	66 A6

<m#>	TMEMSB(2) 72 2A2

TVOL is the Operation-type of the target.

TOPFST & TOPLST specify the range of operations
which are targets (e.g., PERLND 1 5). If TOPLST
field is blank, the target is a single operation.

Group to which the target time series belong(s).

Target time series member name.

Target time series member name subscripts;

may be 2-character CATEGORY tag if applicable;

must be integer otherwise. See Time Series Catalog.

730

</pre><hr><pre>
-------
Users Control Input

Explanation

If an entry specifies the source volume as SEQ, it is referring to a time series coming from a sequential
data file. The entry must therefore supply the file unit number and format information for the file.

If an entry specifies the source volume as WDMn or DSS, the user is referring to a time series contained
in the corresponding direct access data file: a Watershed Data Management System file, or an HEC Data
Storage System file. If the "n" portion of a WDM file reference is left blank, the program (by default)
looks in the first WDM file only.

When data are read from a WDM data set, the user may optionally supply a data quality flag (QLFG),
which will be compared with the data quality "tag" associated with all WDM time series data. Any data
having lower quality than specified (value greater than QLFG) will be rejected and assigned the value
specified by the WDM attribute TSFILL (if defined for the data set), or alternatively, if TSFILL is not
available, by SGAPST.

When data are read from a sequential file the user supplies:

1.	A "format class code". It fixes the nature and sequence of data in a typical record (e.g., day and
hour, followed by 12 hourly values).

2.	The number of an object-time format, situated in the FORMATS Block. It fixes the exact format
of the data in a record. A default format can be selected by supplying the number 0, or leaving
the field blank.

The format classes and associated default formats presently supported in the HSPF system are
documented in Sequential and PLTGEN/MUTSIN File Formats.

Note: All character strings must be left-justified in their fields except WDM data set names (<exsm>)
which must be justified in the same way that they were when the data-set label or WDM attribute TSTYP
was created.

731

</pre><hr><pre>
-------
HSPF Version 12

NETWORK Block

In this block the user specifies those time series which will be passed between operations via the internal
scratch pad (INPAD). If there are no such linkages the block can be omitted. For many applications,
particularly large or complex watersheds that have many entries in the NETWORK block, the alternative
use of the SCHEMATIC/MASS-LINK blocks may provide a simpler and more conceptual format for
specifying the linkages in the NETWORK 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

NETWORK

<svol><o#> <sgrp> <smem><m#X-mfact—><tr> <tvol>< range> <tgrp> <tmem><m#>

Above line repeats until all network entries have been made
END NETWORK

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

NETWORK

<-Volume-> <-Grp>	<-Member-><—Mult—>Tran	<-Target	vols>	<-Grp> <-Member-> ***

<Name> #	<Name> # #<-factor->strg	<Name>	# #	<Name> # # ***

RCHRES 1 HYDR	ROVOL	0.5	RCHRES	2	EXTNL IVOL

RCHRES 2 HYDR	ROVOL	RCHRES	5	EXTNL IVOL

RCHRES 4 HYDR	ROVOL	RCHRES	5	EXTNL IVOL
END NETWORK

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

122

</pre><hr><pre>
-------
Users Control Input

Details

Symbol FORTRAN Start Format	Comment

Name(s) Column

<svol>

SVOL

1

A6

SVOL Is the Operation-type of the source operation

<o#>

SVOLNO

7

14

Source Operation-type number (e.g., PERLND 5)

<sgrp>

SGRPN

12

A6

Group to which the source time series belong(s).

<smem>

SMEMN

19

A6

Source time series member name;
see Time Series Catalog.

<m#>

SMEMSB(2)

25

2A2

Source member name subscripts;

may be 2-character CATEGORY tag if applicable;
must be integer otherwise. See Time Series Catalog

<mfact>

MFACTR

29

F10.0

The factor by which data from the source will be
multiplied before being added to the target.
Default (blank field)= 1.0

<tr>

TRAN

39

A4

String indicating which transformation function to
use in transferring time series from source to
target. See Time Series Transform Functions for
defaults, etc.

<tvol>

TVOL

44

A6

Operation-type of the target.

< range>

TOPFST,
TOPLST

51
55

13
13

TOPFST & TOPLST specify the range of operations
which are targets (e.g., PERLND 1 5). If TOPLST
field is blank, the target is a single operation.

<tgrp>

TGRPN

59

A6

Group to which the target time series belong(s).

<tmem>

TMEMN

66

A6

Target member name; see Time Series Catalog.

<m#>

TMEMSB(2)

72

2A2

Target member name subscripts;

may be 2-character CATEGORY tag if applicable;
must be integer otherwise. See Time Series Catalog

Explanation

The example above shows how this block is used to specify the connectivity of a set of reaches of stream
channel (RCHRES 1 flows to RCHRES 2, RCHRES 2 and 4 flow to RCHRES 5). It can also be used to
specify the flow of time series data from utility operations to simulation operations and vice versa. The
network can be extremely complex, or non-existent (e.g., if the RUN involves only one operation).

Because the time series are transferred via the INPAD, each source and target pair must be in the same
INGRP.

733

</pre><hr><pre>
-------
HSPF Version 12

SCHEMATIC and MASS-LINK Blocks

The SCHEMATIC and MASS-LINK blocks work in tandem to allow the user to specify the watershed
structure and linkages in a more efficient and conceptual manner than is possible using the NETWORK
block.

The SCHEMATIC block contains global specifications of the watershed structure, i.e., connections of
land segments to stream reaches and reach-reach connections. This block permits the user to input the
area of a land segment that is tributary to a stream reach in a single entry, instead of including the area in
multiple entries in the NETWORK block. Each entry in the SCHEMATIC block refers to a table in the
MASS-LINK block where the detailed time series connections for that entry are specified.

The MASS-LINK block contains the specific time series to be transferred from one operation to another.
This block also contains any required units conversion factors or other multiplication factors that may be
needed in addition to the area. For example, when runoff from a land segment is transferred to a stream
reach, a conversion factor of 1/12 (0.08333) is needed to convert the runoff from inches to acre-feet if the
area units are acres. (The corresponding factor for metric units is 10-5 if the area units are hectares.)

Each MASS-LINK table contains the set of time series transfers that are to be associated with one or more
of the linkages in the SCHEMATIC block. The HSPF program combines the schematic linkages with the
mass time series transfers and automatically generates all of the necessary time series connections; these
time series connections are automatically included in the NETWORK block by the program.

The example shown below illustrates the use of these blocks. In this example, the watershed consists of
three pervious land segments and two stream reaches. One of the land segments contributes loadings to
both reaches. Loadings of flow, sediment, heat and one dissolved pesticide are being transferred from the
land to the stream, and the sediment loading from the land surface is assumed to consist of 10% sand,
35% silt and 55% clay. The SCHEMATIC and MASS-LINK blocks to accomplish the required
connections are shown below:

734

</pre><hr><pre>
-------
Users Control 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

SCHEMATIC
<-Source->
<Name> #
PERLND
PERLND
PERLND
PERLND
RCHRES

<—Area—>
<-factor->
200 .
120 .
235 .
360 .

<-Target->
<Name> #
RCHRES
RCHRES
RCHRES
RCHRES
RCHRES

MSLK
Tbl#
1
1
1

1

2

•A-**
¦k -k -k

Mems
# #

END SCHEMATIC

MASS-LINK

<Volume>

<-Grp>

(D

£

(D

S

1

V

-X—Mult—>

<-Target>

<-Grp>

(D
(D

S

1

V

<Name>



<Name>

#

#<-factor->

<Name>



<Name>

#

MASS-LINK

1













PERLND

PWATER

PERO



0.0833333

RCHRES

INFLOW

IVOL



PERLND

SEDMNT

SOSED

1

0.10

RCHRES

INFLOW

ISED

1

PERLND

SEDMNT

SOSED

1

0.35

RCHRES

INFLOW

ISED

2

PERLND

SEDMNT

SOSED

1

0.55

RCHRES

INFLOW

ISED

3

PERLND

PWTGAS

POHT





RCHRES

INFLOW

I HEAT



PERLND

PEST

TOPST





RCHRES

INFLOW

IDQUAL

1

END MASS-LINK

1

MASS-LINK	2

RCHRES	ROFLOW

END MASS-LINK 2
END MASS-LINK

RCHRES

INFLOW

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-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 SCHEMATIC block contains the global watershed linkages, i.e., PLS 1 provides loadings to Reach
1, PLS 2 provides loadings to Reaches 1 and 2, PLS 3 provides loadings to Reach 2, and Reach 1 is
upstream of Reach 2. The areas of PLS's 1 and 3 are 200 acres and 360 acres, respectively, and the area
of PLS 2 is 355 acres, of which 120 acres are tributary to Reach 1 and 235 acres are tributary to Reach 2.

The MASS-LINK block contains details of the individual time series connections that need to be
specified for each of the watershed linkages. Each of the four PLS-to-Reach entries in the SCHEMATIC
block refers to MASS-LINK Table 1, which contains six time series connections from the PLS to the
Reach. The Reach 1-to-Reach 2 entry refers to MASS-LINK Table 2; this table contains the ROFLOW-
INFLOW connection, which is automatically expanded by the program to generate all necessary time
series connections from one reach to another.

The time series connections in the MASS-LINK block are combined with the SCHEMATIC linkages to
generate the full set of connections needed in the simulation. In this process, the program sets up a set of
connections for each [SCHEMATIC entry]/[MASS-LINK table] pair. The multiplication factor for each
connection is obtained by combining the 'area' factor from the SCHEMATIC block and the 'units/other
conversion' factor from the MASS-LINK block. The explicit time series connections generated by HSPF
and included in the NETWORK Block for this example are shown below:

735

</pre><hr><pre>
-------
HSPF Version 12

NETWORK























**** PLS

1

to RCH

1

















PERLND

1

PWATER

PERO



16. 66

SAME

RCHRES

1

INFLOW

IVOL



PERLND

1

SEDMNT

SOSED

1

20.

SAME

RCHRES

1

INFLOW

ISED

1

PERLND

1

SEDMNT

SOSED

1

70.

SAME

RCHRES

1

INFLOW

ISED

2

PERLND

1

SEDMNT

SOSED

1

110.

SAME

RCHRES

1

INFLOW

ISED

3

PERLND

1

PWTGAS

POHT



200.

SAME

RCHRES

1

INFLOW

I HEAT



PERLND

1

PEST

TOPST



200.

SAME

RCHRES

1

INFLOW

IDQUAL

1

**** PLS

2

to RCH

1

















PERLND

2

PWATER

PERO



10.

SAME

RCHRES

1

INFLOW

IVOL



PERLND

2

SEDMNT

SOSED

1

12 .

SAME

RCHRES

1

INFLOW

ISED

1

PERLND

2

SEDMNT

SOSED

1

42 .

SAME

RCHRES

1

INFLOW

ISED

2

PERLND

2

SEDMNT

SOSED

1

66.

SAME

RCHRES

1

INFLOW

ISED

3

PERLND

2

PWTGAS

POHT



120.

SAME

RCHRES

1

INFLOW

I HEAT



PERLND

2

PEST

TOPST



120.

SAME

RCHRES

1

INFLOW

IDQUAL

1

**** PLS

2

to RCH

2

















PERLND

2

PWATER

PERO



19.58

SAME

RCHRES

2

INFLOW

IVOL



PERLND

2

SEDMNT

SOSED

1

23.50

SAME

RCHRES

2

INFLOW

ISED

1

PERLND

2

SEDMNT

SOSED

1

82.25

SAME

RCHRES

2

INFLOW

ISED

2

PERLND

2

SEDMNT

SOSED

1

129.25

SAME

RCHRES

2

INFLOW

ISED

3

PERLND

2

PWTGAS

POHT



235.

SAME

RCHRES

2

INFLOW

I HEAT



PERLND

2

PEST

TOPST



235.

SAME

RCHRES

2

INFLOW

IDQUAL

1

**** PLS

3

to RCH

2

















PERLND

3

PWATER

PERO



30.

SAME

RCHRES

2

INFLOW

IVOL



PERLND

3

SEDMNT

SOSED

1

36.

SAME

RCHRES

2

INFLOW

ISED

1

PERLND

3

SEDMNT

SOSED

1

126.

SAME

RCHRES

2

INFLOW

ISED

2

PERLND

3

SEDMNT

SOSED

1

198 .

SAME

RCHRES

2

INFLOW

ISED

3

PERLND

3

PWTGAS

POHT



360.

SAME

RCHRES

2

INFLOW

I HEAT



PERLND

3

PEST

TOPST



360.

SAME

RCHRES

2

INFLOW

IDQUAL

1

**** RCH

1

to RCH

2 (HYDR, HTRCH, SEDTRN, and GQUAL

sections are

active)

i

RCHRES

1

ROFLOW

ROVOL



1.0

SAME

RCHRES

2

INFLOW

IVOL



RCHRES

1

ROFLOW

ROHEAT



1.0

SAME

RCHRES

2

INFLOW

I HEAT



RCHRES

1

ROFLOW

ROSED

1

1.0

SAME

RCHRES

2

INFLOW

ISED

1

RCHRES

1

ROFLOW

ROSED

2

1.0

SAME

RCHRES

2

INFLOW

ISED

2

RCHRES

1

ROFLOW

ROSED

3

1.0

SAME

RCHRES

2

INFLOW

ISED

3

RCHRES

1

ROFLOW

RODQAL



1.0

SAME

RCHRES

2

INFLOW

IDQAL

1

RCHRES

1

ROFLOW

ROSQAL

1 1

1.0

SAME

RCHRES

2

INFLOW

ISQAL

1

RCHRES

1

ROFLOW

ROSQAL

2 1

1.0

SAME

RCHRES

2

INFLOW

ISQAL

2

RCHRES

1

ROFLOW

ROSQAL

3 1

1.0

SAME

RCHRES

2

INFLOW

ISQAL

3

END NETWORK

736

</pre><hr><pre>
-------
Users Control Input

SCHEMATIC Block

In this block the user specifies the global linkages of land segments with stream reaches and between
stream reaches. Each of these linkages is combined with the detailed time series connections specified in
one of the MASS-LINK tables to generate a complete set of time series connections for the linkage.

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

SCHEMATIC

<svol>< #>	<-afact—>	<tvol>< #> <ML#>	<m#>

Above line repeats until all network entries have been made
END SCHEMATIC

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

SCHEMATIC

<-Source->

<—Area—>

<-Target-

->

MSLK ***

Mems

<Name> #

<-factor->

<Name>

#

Tbl# ***

# #

PERLND 1

200.

RCHRES

2

1



PERLND 2

300.

RCHRES

5

1



RCHRES 4

1.

RCHRES

5

2



END SCHEMATIC

-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

737

</pre><hr><pre>
-------
HSPF Version 12

Details
Symbol

FORTRAN Start Format
Name(s) Column

Comment

<svol>
< #>

<tvol>
< #>

<ml#>

<m#>

SVOL
SVOLNO

<afact> AFACTR

1 A6 SVOL is the Operation-type of the source operation.

7 14 SVOLNO is the source Operation-type number
(e.g., PERLND 5)

29 F10.0 The area factor by which data from the source
will be multiplied before being added to the
target. This factor will be combined with the
factor in the MASS-LINK Block.

Default (blank field)= 1.0

TVOL	44

TVOLNO	50

MSLKNO	57

TMEMSB(2)	72

A6 TVOL is the Operation-type of the target.

14 TVOLNO is the target Operation-type number
(e.g., RCHRES 5)

14 MASS-LINK table number that will be used to

generate the NETWORK entries for this linkage.

2A2 Target member name subscripts;

may be 2-character CATEGORY tag if applicable;
must be integer otherwise. See Time Series Catalog.
These optional subscripts, when present, override
any corresponding value(s) in the MASS-LINK block
referred to by MSLKNO above.

738

</pre><hr><pre>
-------
Users Control Input

MASS-LINK Block

In this block the user specifies those time series connections which will be combined with the linkages in
the SCHEMATIC Block to generate a set of time series connections in the NETWORK 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

MASS-LINK

MASS-LINK	#

<svol>	<sgrp> <smem><m#X-mfact—>	<tvol>	<tgrp> <tmem><m#>

Above line repeats until all mass-link entries have been made

END MASS-LINK #
END MASS-LINK

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

MASS-LINK
MASS-LINK

1

<-Volume-> <-Grp> <-Member-><—Mult—>
<Name>	<Name> # #<-factor->

PERLND	PWATER PERO	0.08333

SEDMNT SOSED

POQUAL 1
1

PERLND
PERLND	PQUAL

END MASS-LINK

<-Target vols> <-Grp> <-Member->
<Name> # #	<Name> # #

RCHRES	INFLOW IVOL

RCHRES	INFLOW ISED 1

RCHRES	INFLOW OXIF 2

•A-**
¦k -k -k

END MASS-LINK

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

739

</pre><hr><pre>
-------
HSPF Version 12

Details
Symbol

FORTRAN
Name(s)

Start Format
Column

Comment

<svol> SVOL	1 A6 SVOL is the Operation-type of the source operation.

<sgrp> SGRPN	12 A6 Group to which the source time series belong(s).

<smem> SMEMN	19 A6 Source member name.

<m#>	SMEMSB(2) 25 2A2 Source member name subscripts;

may be 2-character CATEGORY tag if applicable;
must be integer otherwise. See Time Series Catalog

29 F10.0 The factor by which data from the source will be
multiplied before being added to the target.

Default (blank field)= 1.0

TVOL	44 A6 TVOL is the Operation-type of the target.

TGRPN	59 A6 Group to which the target time series belong(s).

TMEMN	66 A6 Target member name.

TMEMSB(2) 72 2A2 Target member name subscripts;

may be 2-character CATEGORY tag if applicable;
must be integer otherwise. See Time Series Catalog
These values may be overridden, or defaulted here
and replaced by member subscripts in the SCHEMATIC
block entry that refers to this MASS-LINK table.

<mfact> MFACTR

<tvol>
<tgrp>
<tmem>
<m#>

740

</pre><hr><pre>
-------
Users Control Input

EXT TARGETS Block

External Targets

In this block the user specifies those time series which will be output from the operations in a RUN, to
data sets in the WDM or DSS Files. If there are no such transfers the block may be omitted.

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

EXT TARGETS

<svol><o#> <sgrp> <smem><m#X-mfact—><tr> <tvol><t#> <extm>qf <ts> <ag> <am>
Above line repeats until all external targets have been specified
END EXT TARGETS

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

EXT TARGETS

<-Volume-> <-Grp> <-Member-><—Mult—>Tran <-Volume-> <Member> Tsys Aggr Amd ***

<Name> #

RCHRES 6 GQUAL
PERLND 301 NITR
END EXT TARGETS

<Name> # #<-factor->strg <Name>
DQAL 3	1. AVER WDM4

PONITR	SUM DSS

# <Name>qf tem strg strg***
25 CONC	ENGL AGGR REPL

122	ENGL	REPL

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

741

</pre><hr><pre>
-------
HSPF Version 12

Details
Symbol

FORTRAN Start Format
Name(s) Column

Comment

<svol>

<o#>

<sgrp>

<smem>

<m#>

SVOL
SVOLNO
SGRPN
SMEMN

1
7
12
19

A6
14
A6
A6

SMEMSB(2) 25 2A2

<mfact> MFACTR 2 9 F10.0

<tr>

TRAN	39 A4

<tvol> TVOL	44 A6

<t#>	TVOLNO 50 14

<extm> TMEMN	55 A4

qf

<ts>

QLFG	61 12

TSYST	64 A4

SVOL Is the Operation-type of the source operation

SVOLNO is the source Operation-type number
(e.g., PERLND 5)

Group to which the source time series belong(s).

Source member name.

Source member name subscripts;

may be 2-character CATEGORY tag if applicable;
must be integer otherwise. See Time Series Catalog

The factor by which data from the source will be
multiplied before being added to the target.
Default (blank field)= 1.0

String indicating which transformation function to
use in transferring time series from source to
target. See Time Series Transform Functions for
defaults.

External target volume. Valid values are WDMn
(Watershed Data Management System file, where n
is 1-4 or blank) and DSS (Data Storage System).

Data-set Number (if TVOL = WDMn, or DSS).

Data-set TSTYP attribute
(Blank if TVOL = DSS.)

(if TVOL = WDMn).

Quality-of-data (if TVOL = WDM); specifies the
quality tag to be attached to data placed in a
WDM data set; valid values = 0 - 31; default = 0

Unit system of data to be written to WDM or DSS
data set; valid values = ENGL and METR;
default = ENGL.

<ag>

<am>

AGGST	69 A4

AMDST	74 A4

String indicating whether the data should be
aggregated when placed in a WDM data set having
a time step greater than the source time step;
valid value is AGGR; default is no aggregation.
String indicating how the target data set is
accessed. Valid values are: ADD or REPL for a
WDM or DSS file. See below for explanation.

742

</pre><hr><pre>
-------
Users Control Input

Explanation

This block is similar to the EXT SOURCES Block, but serves the opposite purpose. Thus, the entries
have similar formats (but are reversed). In addition, each entry in the EXT TARGETS Block has the
<am> field, which indicates how the target data set will be accessed. The user should be aware of the
differences between these options when the target data set is in a WDM or DSS file. The valid values and
the meaning of each are:

ADD

For a WDM data set, this option is designed to add data when no pre-existing data are present for
any period after the starting time of the run, including times after the time span of the run.

For a DSS data record, this option preserves pre-existing data before and after the beginning of the
run, and requires that no data pre-exist during the time span of the run.

REPL

For a WDM data set, this option will result in the overwriting of any existing data which follows
the starting time of the run, including data after the time span of the run.

For a DSS data record, pre-existing data during the time span of the run is overwritten, but pre-
existing data before and after the run are preserved.

In summary, for a WDM data set, the ADD option is used to add data when no pre-existing data are
present after the starting time of the run, while the REPL option results in overwriting existing data, both
during and after the time span of the run.

Data placed in a WDM data set will normally have a time step equal to the time step of the run, even if
the data set has a different time step than the run. However, the user may optionally specify that
aggregation occur if the target data-set time step is an integer multiple (2 or greater) of the run time step.
The time step of a WDM data set is specified by the TCODE and TSSTEP attributes of the data set.
Disaggregation is not permitted when placing data in WDM data sets.

For a DSS data record, only data during the actual time span of the run are affected. The ADD option
specifies that such data cannot pre-exist, while the REPL option allows any pre-existing data to be
overwritten.

Warning: In the EXT TARGETS block, it is not permissible to route several sources to the same
external target. If you want to combine several time series and write the result to an external target, first
use a utility operation (e.g., COPY) to combine the data, and then use this block to route the result to the
external target.

743

</pre><hr><pre>
-------
HSPF Version 12

PATHNAMES Block

In this block the user associates data-set numbers with the time series to be accessed from DSS (HEC
Data Storage System) files, and specifies the datatypes of the time series.

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

12345678
12345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 9012345 67 8 90

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Layout

¦k -k -k -k -k -k

PATHNAMES

<ds>f# <ctype-> <	pathname	>

Above line repeats until all external targets have been specified
END PATHNAMES

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

PATHNAMES

<dS > f # t yp0 — ^ <^~k "k "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^1113.1110

41 1 PER-CUM /TEST/FARM COOP WS/EVAP//1DAY/OBSERVED-INCHES|DAY/

END PATHNAMES

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol FORTRAN Start Format	Comment

Name(s) Column

<ds>
f#

DSSDSN
DSSFL

<ctype-> CTYPE
pathname CPATH

1 14 DSSDSN is the temporary data-set number assigned to

the DSS record(s) which make up the time series.
5 12 DSSFL is the index number for the DSS file

containing these data record(s); it is assigned
to each DSS file in the FILES block
8 A8 Data type string for the data record(s). Valid
values are: INST-VAL, PER-AVER, PER-CUM.

17 A64 Pathname for DSS record(s). It is recommended

that the D part be left empty, as it is generated
by HSPF as needed.

Explanation

This section is required if any time series data are to be accessed from DSS files. In this section, unique
ID numbers are assigned to "data sets" in the DSS file(s); these ID numbers are used in the EXT-
SOURCES and EXT-TARGETS blocks to specify (i.e., identify) the data sets.

See General Discussion above for further discussion of DSS concepts.

744

</pre><hr><pre>
-------
Users Control Input

Time Series Transform Functions

Whenever time series are transferred from a source to a target, a "transformation" takes place. The user
can specify the transformation function in field <tr>; if it is blank, the default function is supplied. The
range of permissible functions is:

Interval	Source	Target	<	 Functions 	>

relation	Type	Type	Defaults	Others

SDELT

=

TDELT

Point

to

Point

SAME

none







Mean

to

Mean

SAME

none







Point

to

Mean

AVER

none

SDELT

>

TDELT

Point

to

Point

INTP/AVER (a)

none



(b)



Mean

to

Mean

DIV

SAME







Point

to

Mean

AVER

none

SDELT

<

TDELT

Point

to

Point

LAST/AVER (a)

none







Mean

to

Mean

SUM

AVER, MAX, MIN







Point

to

Mean

AVER

SUM, MAX, MIN

Key: SDELT Time interval of source time series
TDELT Time interval of target time series

(a)	Second default keyword applies to WDM source time series and all DSS external time series.

(b)	This interval relation is invalid for WDM target; i.e., output disaggregation is not permitted
to WDM data sets

Notes:

1.	See below (Note 2 and next page) for explanations of the transform keywords.

2.	For WDM data sets, TDELT and SDELT refer to the time step defined by the WDM attributes
TCODE and TSSTEP; however, data may be stored in the data set at other time steps.

3.	For WDM or DSS data sets, the functions AVER and SAME imply either AVER or SAME; and
the functions SUM and DIV imply either SUM or DIV, whichever is appropriate for the actual
time step of the data.

4.	The type of WDM data sets is determined by the attribute TSFORM. If TSFORM = 1 or 2, the
type is MEAN; if TSFORM = 3, the type is POINT.

5.	The type of sequential (SEQ) time series is not defined; consequently, these time series are
assumed to have the same type as the target time series.

6.	The type of DSS data records is determined from the data type string. (See WDM File Concepts
above for discussion.) If none is specified, the time series is assumed to be mean-valued.

7.	Keywords less than 4 characters long must be left-justified in the field.

8.	For further information, see Appendix II - Time Series Concepts and the Time Series Catalog.

745

</pre><hr><pre>
-------
HSPF Version 12

The time series transform functions given above are completed before the multiplication factor given in
the EXTERNAL SOURCES, EXTERNAL TARGETS and NETWORK blocks are applied. These
transform functions are defined as follows:

AVER - Compute the integral of the source time series over each target time step, divide by the target
time step and assign the value to the time step in the target time series. See Appendix II for the definition
of the integral of a time series.

DIV - Divide each mean value of the source time series by the ratio of the source time step to the target
time step and assign the results to each of the target time steps contained in the source time step.

INTP - Interpolate linearly between adjacent point values in the source time series and assign the
interpolated values to each time point in the target time series.

LAST - Take the value at the last time point of the source time series which belongs to the time step of
the target time series and assign the value to the time step of the target time series. See Appendix II for a
definition of the meaning of "belonging".

MAX - Find the maximum value of the source time series for all points belonging to the target time step
(point-value time series) or find the maximum value of the source time series for all time steps contained
within the target time step (mean-value time series). Assign the maximum value to the time step of the
target time series. The definition of "belonging" (given in Appendix II) was motivated by the desire to
make MAX and MIN unique for point-value time series.

MIN - Find the minimum value of the source time series for all points belonging to the target time step
(point-value time series) or find the minimum value of the source time series for all time steps contained
within the target time series (mean-value time series). Assign the minimum value to the time step of the
target time series.

SAME - Take the value at each time step or time point of the source time series and assign the value to
the corresponding time point (point-value time series), the corresponding time step (mean-value time
series), or all the contained time steps (mean-value time series with time step less than the source time
step) of the target time series.

SUM - For point-value source time series: Compute the sum of the values for all points in the source time
series belonging to the target series time step plus the value of the source time series at the initial point of
the target time step and assign the sum to the target time step. For mean- value source time series:
Compute the sum of the values for all time steps in the source time series contained within the target
series time step and assign the sum to the target time step.

746

</pre><hr><pre>
-------
Users Control Input

Time Series Catalog

This section documents all the time series which are required by, and which can be output by, all of the
operating modules in HSPF.

The time series are arranged in groups. Thus, to specify an operation-associated time series in the EXT
SOURCES, NETWORK or EXT TARGETS Blocks, the user supplies a group name followed, optionally,
by a member name and subscripts.

The time series documented in this section can be separated into three categories:

1.	Input only. Some time series can only be input to their operating module (e.g., member PREC of
group EXTNL in module PERLND).

2.	Input or output. Some time series can either be input to their operating module or output from it,
depending on the options in effect. For example, if snow accumulation and melt on a Pervious
Land-segment (PLS) is being simulated in a given RUN, time series WYIELD in group SNOW
can be output to the WDM file. Then, if section SNOW is inactive but section PWATER is
active in a subsequent RUN, the same time series WYIELD may be specified as an input to the
PERLND module. This feature makes it possible to calibrate an application module in an
incremental manner. First, the outputs from section 1 are calibrated to the field data; then the
outputs from section 2 are calibrated using outputs from section 1 as inputs, etc. Sections
calibrated in earlier runs need not be re-run if the needed outputs from them have been stored.

3.	Output only. Some time series can be computed by and output from their operating module, but
never serve as inputs to it (e.g., member ALBEDO of group SNOW in module PERLND).

In order to run an operating module, the user must ensure that all of the input time series which it requires
are made available to it. This is done by making appropriate entries in the EXT SOURCES or
NETWORK or MASS-LINK/SCHEMATIC blocks. To ascertain which time series are required, one
should consult the Time Series Catalog for the appropriate module. For example, assume that sediment
production and washoff/scour from a PLS are being simulated using the snow and water budget results
from a previous RUN. In this scenario, section SEDMNT would be active, but sections ATEMP, SNOW
and PWATER would not be active. Then, Group SEDMNT in PERLND below shows the following:

1.	member (time series) PREC of group EXTNL is a required input time series (member SLSED is
optional)

2.	members RAINF and SNOCOV of group SNOW are required inputs, because section SNOW is
inactive

3.	members SURO and SURS of group PWATER are required inputs, because section PWATER is
inactive

The user can obtain further details on the above time series by consulting the table for the appropriate
group (e.g., Table 4.7( 1). 1 for group EXTNL). Group SEDMNT shows which time series are computed in
the SEDMNT section of the PERLND module and may therefore be output (members DETS through
SOSDB).

747

</pre><hr><pre>
-------
HSPF Version 12

Therefore, in the EXT SOURCES and/or NETWORK and/or MASS-LINK/SCHEMATIC blocks, entries
must appear which specify members PREC, RAINF, etc., (groups EXTNL, SNOW, PWATER) as targets
to which source time series are routed. Also, in the NETWORK and/or EXT TARGETS blocks, entries
may appear which specify one or more of members DETS through SOSDB (of group SEDMNT) as
source time series, which are routed to other operations or to the WDM file (for example).

The tables which follow are otherwise self explanatory, except for the abbreviation "ivld" which appears
frequently in the "Units" fields. It means "interval of the data" (to distinguish it from the internal, or
simulation interval). Thus, if a WDM or DSS data set containing 1-hour precipitation data is input to an
operation with a DELT of two hours, ivld is 1 hour.

748

</pre><hr><pre>
-------
Users Control Input

Connection of Surface and Instream Application Modules

In HSPF, the operational connection between the land surface and instream simulation modules is
accomplished through the NETWORK Block and/or the SCHEMATIC/MASS-LINK Blocks. Time
series of runoff, sediment, and pollutant loadings generated on the land surface are passed to the receiving
stream for subsequent transport and transformation instream. This connection of the IMPLND and/or
PERLND modules with the RCHRES module requires explicit definition of corresponding time series in
the linked modules. A one-to-one correspondence exists between several land segment outflow time
series and corresponding stream reach inflow time series (e.g., runoff, sediment, dissolved oxygen, etc.);
however in order to maintain flexibility, some of the time series are more general, and no unique
correspondence exists. Also, in some cases, a process or material simulated in the stream will have no
corresponding land surface quantity. For example, the inflow of plankton to a stream occurs only from
upstream reaches and not from a land segment.

749

</pre><hr><pre>
-------
HSPF Version 12

Connection of Two Land Segment Modules

Land segment modules may also be linked together to represent an upslope land area that drains through a
downslope land area before reaching a channel. Both PERLND and IMPLND operations may be linked
in this way, although only the surface outflows of a PERLND can be routed normally if the receiving
operation is an IMPLND.

There are two different ways that lateral flows are handled in HSPF. Some constituents, such as water
and nutrients, are simulated using a mass balance approach, while others, such as heat and dissolved
gases, are simulated using only an outflow concentration. The time series catalog entries for lateral
inflows in group EXTNL (in both PERLND and IMPLND) indicate whether they require a concentration
or a mass flux.

These connections are accomplished using the SCHEMATIC and MASS-LINK blocks in a manner
similar to that outlined in Connection of Surface and Instream Application Modules above. However,
separate MASS-LINK tables are recommended for the two types of constituents, in order to avoid
complications. SCHEMATIC block entries for the mass-balance constituents should use the ratio of the
land areas as the area factor. Entries for the concentration constituents should let the area factor default to
unity. The MASS-LINK blocks link the outflow time series for each constituent to the corresponding
lateral inflow time series. If the two operations are of the same type and have the same module sections
active, then there is a one-to-one correspondence between output and input time series. In other cases, the
user will have to determine the appropriate linkages.

Normally, surface outflows are linked to surface lateral inflows, and baseflow outflows to baseflow lateral
inflows. Interflow outflows can be divided among surface, interflow, and (for mass constituents only)
upper and lower zone lateral inflows. This is accomplished by using fractions in the MASS-LINK block.

750

</pre><hr><pre>
-------
Users Control Input

Atmospheric Deposition of Water Quality Constituents

Input time series are available in HSPF to aid in the simulation of atmospheric deposition of quality
constituents. 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 alternatively, as a set of monthly values that is used for each year of the
simulation. The specific atmospheric deposition time series for each operational module (PERLND,
IMPLND, RCHRES) are documented in the EXTNL table of the Time Series Catalog for that module.

An additional use of these atmospheric deposition time series is the specification of agricultural chemical
and fertilizer inputs to the soil. These input time series thus provide an alternative to the SPEC-
ACTIONS block as a means for changing soil storages of chemicals in the AGCHEM sections of the
program. For this purpose, "deposition" to the upper soil layer in addition to the surface soil layer is
available in PERLND 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 or the time series inputs are simpler to construct.

751

</pre><hr><pre>
-------
HSPF Version 12

Catalog for PERLND module

The time series groups associated with PERLND are shown in the figure below. The members contained
within each group are documented in the following tables.

KEY;

Group containing time series which are always input

	> Group containing time aeriM wfifeft an always output

^	Group containing time series which can be input or output

Figure 72: Groups of time series associated with the PERLND Module

752

</pre><hr><pre>
-------
Users Control Input

Group EXTNL

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

The time series always external (input o:
These time series are divided into three
deposition, and lateral inflows.

Meteorologic:

GATMP

1

1

Deg F

Deg C

PREC

1

1

in/ivld

mm/ivld

DTMPG

1

1

Deg F

Deg C

WINMOV

1

1

mi/ivld

km/ivld

SOLRAD

1

1

Ly/ivld

Ly/ivld

CLOUD

1

1

tenths

tenths

PETINP

1

1

in/ivld

mm/ivld

IRRINP

1

1

in/ivld

mm/ivld

Atmospheric

deposition:





PQADFX

NQ

1

qty/

qty/







ac.ivld

ha.ivld

PQADCN

NQ

1

qty/ft3

qty/1

PEADFX

NPST

3

lb/

kg/







ac.ivld

ha.ivld

PEADCN

NPST

3

mg/1

mg/1

NIADFX

3

2

lb/

kg/







ac.ivld

ha.ivld

NIADCN

3

2

mg/1

mg/1

PHADFX

2

2

lb/

kg/







ac.ivld

ha.ivld

PHADCN

2

2

mg/1

mg/1

.ly) to module PERLND are shown below,
groups: meteorologic data, atmospheric

Measured air temperature
Measured precipitation
Measured dewpoint temperature
Measured wind movement
Measured solar radiation
Cloud cover (range: 0-10)
Input potential E-T
Input irrigation demand

Dry or total atmospheric deposition
of QUALOF

Concentration of QUALOF in rain
for wet atmospheric deposition
Dry or total atmospheric deposition
of pesticide. The first subscript
indicates the pesticide; the second
indicates the species: crystalline,
adsorbed, or solution
Concentration of pesticide in rain
for wet atmospheric deposition.
Subscripts same as above.

Dry or total atmospheric deposition
of nitrogen. First subscript indi-
cates species: N03, NH3, organic N;
the second subscript indicates the
affected soil layer: surface or
upper.

Concentration of nitrogen in rain
for wet atmospheric deposition.
Subscripts as above.

Dry or total atmospheric deposition
of phosphorus. The first subscript
indicates species: P04, organic P;
the second subscript indicates the
affected soil layer (see above)
Concentration of phosphorus in
rain for wet atmospheric deposition.
Subscripts as above.

753

</pre><hr><pre>
-------
HSPF Version 12

TRADFX

2

1

- lb/

kg/

Dry or total atmospheric deposition







ac.ivld

ha.ivld

of tracer substance. Subscript in-











dicates affected soil layer (see











above)

TRADCN

2

1

- mg/1

mg/1

Concentration of tracer in rain.











Subscript as above.

Lateral

inflows:







SURLI

1

1

in/ivld

mm/ivld

Surface lateral inflow

UZLI

1

1

in/ivld

mm/ivld

Upper zone lateral inflow

IFWLI

1

1

in/ivld

mm/ivld

Interflow lateral inflow

LZLI

1

1

in/ivld

mm/ivld

Lower zone lateral inflow

AGWLI

1

1

in/ivld

mm/ivld

Active groundwater lateral inflow

SLSED

1

1

tons/

tonnes/

Lateral input of sediment







ac.ivld

ha.ivld



SLITMP

1

1

deg F

deg C

Surface lateral inflow temperature

ALITMP

1

1

deg F

deg C

Interflow lateral inflow temperature

ILITMP

1

1

deg F

deg C

Baseflow lateral inflow temperature

SLIDOX

1

1

- mg/1

mg/1

Surface lateral inflow DO cone

ILIDOX

1

1

- mg/1

mg/1

Interflow lateral inflow DO cone

ALIDOX

1

1

- mg/1

mg/1

Baseflow lateral inflow DO cone

SLIC02

1

1

- mg/1

mg/1

Surface lateral inflow C02 cone

ILIC02

1

1

- mg/1

mg/1

Interflow lateral inflow C02 cone

ALIC02

1

1

- mg/1

mg/1

Baseflow lateral inflow C02 cone

SLIQSP

NQSD

1

qty/ton

qty/

QUALSD potency factor on lateral









tonne

inflow of sediment

SLIQO

NQOF

1

- qty/

qty/

QUALOF lateral inflow







ac.ivld

ha.ivld



ILIQC

NQIF

1

qty/ft3

qty/1

QUALIF cone in lateral inflow

ALIQC

NQGW

1

qty/ft3

qty/1

QUALGW cone in lateral inflow

LIPSS

5*

NPST

- lb/

kg/

Dissolved pesticide lateral inflow







ac.ivld

ha.ivld



LISDPS

2

NPST

- lb/

kg/

Sed-associated pesticide lateral







ac.ivld

ha.ivld

inflow: 1) crystalline











2) adsorbed

LIAMS

5*

1

- lb/

kg/

Dissolved ammonia lateral inflow







ac.ivld

ha.ivld



LIN03

5*

1

- lb/

kg/

Nitrate lateral inflow







ac.ivld

ha.ivld



LISLN

5*

1

- lb/

kg/

Dissolved labile org N lateral







ac.ivld

ha.ivld

inflow

LISRN

5*

1

- lb/

kg/

Dissolved refractory org N lateral







ac.ivld

ha.ivld

inflow

LISEDN

3

1

- lb/

kg/

Sediment-associated N lateral inflow







ac.ivld

ha.ivld

1) labile organic











2) adsorbed ammonia











3) refractory organic

LIP4S

5*

1

- lb/

kg/

Dissolved phosphate lateral inflow







ac.ivld

ha.ivld



LISEDP

2

1

- lb/

kg/

Sediment-associated P lateral inflow







ac.ivld

ha.ivld

1) organic











2) adsorbed phosphate

LITRS

5*

1

- lb/

kg/

Tracer lateral inflow

* The subscripts "5" indicate that inflows are added to the following storages: 1)
surface; 2) upper principal; 3) interflow; 4) lower; 4) groundwater.

754

</pre><hr><pre>
-------
Users Control Input

Group ATEMP

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section ATEMP:

AIRTMP 1 1 - Deg F	Deg C	Estimated surface air temperature

over the Land-segment

Input time series required to compute the above:

Group EXTNL	always required

GATMP	gage air temperature

PREC	precipitation

755

</pre><hr><pre>
-------
HSPF Version 12

Group SNOW

<	Member	>	K

Max subscr	i

Name	values	n

1 2	d

Units
(external)

Description/comment

Metr

Engl

Time series computed by module section SNOW:

PACK
PACKF

m
in

mm
mm

PACKW

1

1

k

in

mm

PACKI

1

1

k

in

mm

PDEPTH

1

1

k

in

mm

COVINX

1

1

k

in

mm

NEGHTS

1

1

k

in

mm

XLNMLT

1

1

k

in

mm

RDENPF

1

1

k

none

none

SKYCLR

1

1

k

none

none

SNOCOV

1

1

k

none

none

DULL

1

1

k

none

none

ALBEDO

1

1

k

none

none

PAKTMP

1

1

k

Deg F

Deg C

SNOTMP

1

1

k

Deg F

Deg C

DEWTMP

1

1

k

Deg F

Deg C

SNOWF

1

1

-

in/ivld

mm/ivld

PRAIN

1

1

-

in/ivld

mm/ivld

SNOWE

1

1

—

in/ivld

mm/ivld

WYIELD

1

1

"

in/ivld

mm/ivld

MELT

1

1

"

in/ivld

mm/ivld

RAINF

1

1

_

in/ivld

mm/ivld

Total contents of pack (water equiv)

Frozen contents of pack, ie. snow +

ice (water equivalent)

Liquid water in pack

Ice in pack (water equivalent)

Pack depth

Snow cover index (water equivalent)
Negative heat storage (water
equivalent)

Maximum increment to ice in pack
Relative density of frozen contents
of pack (PACKF/PDEPTH)

Fraction of sky assumed clear
Fraction of Land-segment covered by
pack

Dullness index of the pack (available
only if SNOPFG= 0)

Albedo of the pack (available only if
SNOPFG= 0)

Mean temperature of the pack

Max air temperature for snowfall to

occur

Effective dewpoint temperature
Snowfall, water equivalent
Rainfall directly onto the snowpack
Evaporation from PACKF
(sublimation), water equivalent
(available only if SNOPFG= 0)

Water yielded by the pack (released
to the land-surface)

Quantity of melt from PACKF (water
equivalent)

Rainfall

Input time series required to compute the above:

Group EXTNL
PREC
DTMPG

WINMOV
SOLRAD
CLOUD
Group ATEMP
AIRTMP

always required

required if SNOPFG=	0

optional if SNOPFG=	1

required if SNOPFG=	0

required if SNOPFG=	0

optional if SNOPFG=	0
required if section ATEMP inactive
air temperature

756

</pre><hr><pre>
-------
Users Control Input

Group PWATER

<	 Member

	>

K

Units





Max

subscr

i

(external)

Description/comment

Name

values

n









1

2

d

Engl

Metr



Time series

computed by module

section PWATER:

PERS

1

1

¦k

in

mm

Total water stored in the PLS

CEPS

1

1

¦k

in

mm

Interception storage

SURS

1

1

¦k

in

mm

Surface (overland flow) storage

UZS

1

1

¦k

in

mm

Upper zone storage

IFWS

1

1

¦k

in

mm

Interflow storage

LZS

1

1

¦k

in

mm

Lower zone storage

AGWS

1

1

¦k

in

mm

Active groundwater storage

TGWS

1

1

¦k

in

mm

Total groundwater storage (HWTFG=1)

GWEL

1

1

¦k

ft

m

Groundwater elevation (HWTFG=1)

GWVS

1

1

¦k

in

mm

Groundwater variable storage index

INFFAC

1

1

¦k

none

none

Adjustment factor for infiltration













index due to frozen ground (CSNOFG=

PETADJ

1

1

¦k

none

none

Adjustment factor for potential ET

RZWS

1

1

¦k

in

mm

Root zone water storage (IRRGFG=2)

RPARM

1

1

-

in/ivld

mm/ivld

Current value of maximum lower zone













E-T opportunity

SUPY

1

1

-

in/ivld

mm/ivld

Water supply to soil surface (If













CSNOFG = 0, same as precipitation.)

SURO

1

1

-

in/ivld

mm/ivld

Surface outflow

IFWO

1

1

-

in/ivld

mm/ivld

Interflow outflow

AGWO

1

1

-

in/ivld

mm/ivld

Active groundwater outflow

PERO

1

1

-

in/ivld

mm/ivld

Total outflow from PLS

IGWI

1

1

-

in/ivld

mm/ivld

Inflow to inactive (deep) GW

PET

1

1

-

in/ivld

mm/ivld

Potential E-T, adjusted for snow













cover and air temperature

CEPE

1

1

-

in/ivld

mm/ivld

Evap. from interception storage

SURET

1

1

-

in/ivld

mm/ivld

Evap. from surface storage (HWTFG=1

UZET

1

1

-

in/ivld

mm/ivld

E-T from upper zone

LZET

1

1

-

in/ivld

mm/ivld

E-T from lower zone

AGWET

1

1

-

in/ivld

mm/ivld

E-T from active groundwater storage

BASET

1

1

-

in/ivld

mm/ivld

E-T taken from active groundwater













outflow (baseflow)

TAET

1

1

-

in/ivld

mm/ivld

Total simulated E-T

IFWI

1

1

-

in/ivld

mm/ivld

Interflow inflow (excluding any













lateral inflow)

UZI

1

1

-

in/ivld

mm/ivld

Upper zone inflow

INFIL

1

1

-

in/ivld

mm/ivld

Infiltration to the soil

PERC

1

1

-

in/ivld

mm/ivld

Percolation from upper to lower

LZI

1

1

~

in/ivld

mm/ivld

z one

Lower zone inflow

AGWI

1

1

-

in/ivld

mm/ivld

Active groundwater inflow













(excluding any lateral inflow)

SURI

1

1

-

in/ivld

mm/ivld

Surface inflow (including any













lateral inflow)

IRRDEM

1

1

-

in/ivld

mm/ivld

Irrigation demand (IRRGFG > 0)

IRSHRT

1

1

-

in/ivld

mm/ivld

Irrigation shortfall (IRRGFG > 0)

757

</pre><hr><pre>
-------
HSPF Version 12

IRDRAW 3 1 - in/ivld mm/ivld

IRRAPP 6 1- in/ivld mm/ivld

Input time series required to compute the

Group EXTNL
PETINP
IRRINP
PREC

SURLI
UZLI
IFWLI
LZLI
AGWLI

Group ATEMP
AIRTMP

Group SNOW
RAINF
SNOCOV
WYIELD
PACKI

Group PSTEMP
LGTMP

Withdrawal of irrigation water from:
1) imports; 2) groundwater; 3) RCHRES
(IRRGFG > 0)

Application of irrigation water to:
1) interception storage; 2) soil
surface; 3) upper zone; 4) lower zone;
5) groundwater; 6) total

above:

only required when IRRGFG=1

required if snow not considered

(CSNOFG= 0)

optional

optional

optional

optional

optional

only required if section ATEMP
is inactive and CSNOFG= 1

only required if section SNOW is
inactive and snow is considered
(CSNOFG= 1)

only required if ICEFG= 1

only required if section PSTEMP
is inactive and IFFCFG= 2

758

</pre><hr><pre>
-------
Users Control Input

Group SEDMNT

<	Member	> K	Units

Max subscr i (external)
Name	values n

Description/comment



1

2

d Engl

Metr



Time

series

computed by module

section SEDMNT:

Land-

segment

-wide

values:





DETS

1

1

* tons/ac

tonnes/ha

Storage of detached sediment

STCAP

1

1

* tons/

tonnes/

Sediment transport capacity







ac.ivld

ha.ivld

by surface runoff

COVER

1

1

* none

none

Cover fraction

WSSD

1

1

tons/

tonnes/

Washoff of detached sediment







ac.ivld

ha.ivld



SCRSD

1

1

tons/

tonnes/

Scour of matrix (attached) soil







ac.ivld

ha.ivld



SOSED

1

1

tons/

tonnes/

Total removal of soil and sediment







ac.ivld

ha.ivld



DET

1

1

tons/

tonnes/

Quantity of sediment detached from







ac.ivld

ha.ivld

soil matrix by rainfall impact

NVSI

1

1

tons/

tonnes/

Net vertical sediment input

Input time series required to compute the above:

always required
optional

Group EXTNL
PREC
SLSED

Group SNOW
RAINF
SNOCOV

Group PWATER
SURO
SURS

only required if section SNOW
is inactive and snow is considered
(CSNOFG= 1)

only required if section PWATER
is inactive

759

</pre><hr><pre>
-------
HSPF Version 12

Group PSTEMP

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section PSTEMP:

AIRTC

1

1

Deg

F

Deg C

Air temperature on the PLS

SLTMP

1

1

Deg

F

Deg C

Surface layer soil temperature

ULTMP

1

1

Deg

F

Deg C

Upper layer soil temperature

LGTMP

1

1

Deg

F

Deg C

Lower and groundwater layer













soil temperature

Input

time

series

required

to

compute the

above:

Group

ATEMP









only required if section ATEMP

AIRTMP	inactive

760

</pre><hr><pre>
-------
Users Control Input

Group PWTGAS

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section PWTGAS:

SOTMP

1

1

¦k

Deg F

Deg C

Temperature of surface outflow

IOTMP

1

1

k

Deg F

Deg C

Temperature of interflow outflow

AOTMP

1

1

k

Deg F

Deg C

Temperature of active groundwater
outflow

SODOX

1

1

k

mg/1

mg/1

DO concentration in surface outflow

S0C02

1

1

k

mg/1

mg/1

C02 concentration in surface
outflow

IODOX

1

1

k

mg/1

mg/1

DO concentration in interflow
outflow

I0C02

1

1

k

mg/1

mg/1

C02 concentration in interflow
outflow

AODOX

1

1

k

mg/1

mg/1

DO concentration in active
groundwater outflow

A0C02

1

1

k

mg/1

mg/1

C02 concentration in active
groundwater outflow

SOHT

1

1



BTU/
ac.ivld

kcal/
ha.ivld

Heat energy in surface outflow
(relative to freezing point)

IOHT

1

1

~

BTU/
ac.ivld

kcal/
ha.ivld

Heat energy in interflow outflow

AOHT

1

1

—

BTU/
ac.ivld

kcal/
ha.ivld

Heat energy in active groundwater
outflow

POHT

1

1

—

BTU/
ac.ivld

kcal/
ha.ivld

Heat energy in total outflow from
PLS

SODOXM

1

1

—

lb/

ac.ivld

kg/

ha.ivld

Flux of DO in surface outflow

S0C02M

1

1

—

lb/

ac.ivld

kg/

ha.ivld

Flux of C02 in surface outflow

IODOXM

1

1

—

lb/

ac.ivld

kg/

ha.ivld

Flux of DO in interflow outflow

I0C02M

1

1

—

lb/

ac.ivld

kg/

ha.ivld

Flux of C02 in interflow outflow

AODOXM

1

1

—

lb/

ac.ivld

kg/

ha.ivld

Flux of DO in active groundwater
outflow

A0C02M

1

1

—

lb/

ac.ivld

kg/

ha.ivld

Flux of C02 in active groundwater
outflow

PODOXM

1

1

—

lb/

ac.ivld

kg/

ha.ivld

DO in total outflow from PLS

P0C02M

1

1

~

lb/

ac.ivld

kg/

ha.ivld

C02 in total outflow from PLS

761

</pre><hr><pre>
-------
HSPF Version 12

Input time series required to compute

Group EXTNL

SURLI,SLITMP,SLIDOX, SLIC02
IFWLI,ILITMP,ILIDOX,ILIC02
AGWLI,ALITMP,ALIDOX,ALIC02

Group SNOW
WYIELD

Group PWATER
SURO
IFWO
AGWO

Group PSTEMP
SLTMP
ULTMP
LGTMP

above:

optional
optional
optional

only required if section SNOW is
inactive and snow is considered
(CSNOFG= 1)

only required if section PWATER is
inactive

only required if section PSTEMP
is inactive

762

</pre><hr><pre>
-------
Users Control Input

Group PQUAL

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section PQUAL:

SQO

NQOF

1

* qty/ac

qty/ha

Storage of QUALOF on the surface

IOQC

NQIF

1

qty/ft3

qty/1

QUALIF outflow concentration

AOQC

NQGW

1

qty/ft3

qty/1

QUALGW outflow concentration

SOQSP

NQSD

1

qty/ton

qty/

tonne

QUALSD outflow potency factor

WASHQS

NQSD

1

- qty/

ac.ivld

qty/

ha.ivld

Removal of QUALSD by association
with detached sediment washoff

SCRQS

NQSD

1

- qty/

ac.ivld

qty/

ha.ivld

Removal of QUALSD by association
with scour of matrix soil

SOQS

NQSD

1

- qty/

ac.ivld

qty/

ha.ivld

Total flux of QUALSD from surface

SOQO

NQOF

1

- qty/

ac.ivld

qty/

ha.ivld

Washoff of QUALOF from surface

SOQOC

NQOF

1

qty/ft3

qty/1

Concentration of QUALOF in surface
outflow

SOQUAL

NQ

1

- qty/

ac.ivld

qty/

ha.ivld

Total outflow of QUAL from the
surface

SOQC

NQ

1

qty/ft3

qty/1

Concentration of QUAL (QUALSD+
QUALOF) in surface outflow

IOQUAL

NQIF

1

- qty/

ac.ivld

qty/

ha.ivld

Outflow of QUAL in interflow
(QUALIF)

AOQUAL

NQGW

1

- qty/

ac.ivld

qty/

ha.ivld

Outflow of QUAL in active ground-
water outflow (QUALGW)

POQUAL

NQ

1

- qty/

ac.ivld

qty/

ha.ivld

Total flux of QUAL from the PLS

POQC

NQ

1

qty/ft3

qty/1

Concentration of QUAL (total) in
total outflow from PLS

PQADDR

NQ

1

- qty/

ac.ivld

qty/

ha.ivld

Dry atmospheric deposition of QUAL

PQADWT

NQ

1

- qty/

ac.ivld

qty/

ha.ivld

Wet atmospheric deposition of QUAL

PQADEP

NQ

1

- qty/

ac.ivld

qty/

ha.ivld

Total atmospheric deposition
of QUAL

ISQO

NQ

1

- qty/

ac.ivld

qty/

ha.ivld

Total inflow of QUAL

763

</pre><hr><pre>
-------
HSPF Version 12

Input time series required to compute

Group EXTNL
PQADFX

PQADCN
PREC

SLSED,SLIQSP
SLIQO

IFWLI,ILIQC
AGWLI,ALIQC

Group PWATER
SURO

IFWO
AGWO
PERO

Group SEDMNT
WSSD
SCRSD

above:

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated
optional
optional
optional
optional

only required if PWATER is inactive
only required if one or more QUALs
are QUALOFs, or if SOQC is required
for one or more QUALs
only required if one or more QUALs
are QUALIFs

only required if one or more QUALs
are QUALGWs

only required if POQC is required
for one or more QUALs

only required if section SEDMNT
is inactive and one or more QUALs
are QUALSD's

764

</pre><hr><pre>
-------
Users Control Input

Group MSTLAY

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section MSTLAY:

MST	5 1 * lb/ac	kg/ha	Water in surface, upper principal,

upper auxiliary, lower, and
groundwater storages
FRAC	8 1 * /ivl	/ivl	Fractional fluxes through soil:

FSO, FSP, FII, FUP, FIO, FLP, FLDP, FAO

Input time series required to compute

Group PWATER:

SURI,LZS,IGWI,AGWI,AGWS,AGWO,
SURS,SURO,INFIL,IFWI, UZI, UZS,
PERC,IFWS,IFWO

the above:

only required if section PWATER
is inactive

765

</pre><hr><pre>
-------
HSPF Version 12

Group PEST

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section PEST:

SPS

3

NPST

¦k

lb/ac

kg/ha

Amount of pesticide in
surface storage

UPS

3

NPST

¦k

lb/ac

kg/ha

Amount of pesticide in upper
principal storage

IPS

NPST 1

¦k

lb/ac

kg/ha

Amount of pesticide in upper













auxiliary (interflow) storage

LPS

3

NPST

¦k

lb/ac

kg/ha

Amount of pesticide in lower
layer storage

APS

3

NPST

¦k

lb/ac

kg/ha

Amount of pesticide in active
groundwater layer storage

TPS

3

NPST

¦k

lb/ac

kg/ha

Total amount of pesticide in the

soil

Note: SPS,UPS,LPS,APS and TPS give the storage of each pesticide by species.

The

first subscript indicates the species: crystalline, adsorbed, or solution, The
second indicates the pesticide. For example, UPS(2,3) is the quantity of adsorbed
pesticide in the upper layer principal storage, for the 3rd pesticide. The second
subscript for IPS has a maximum value of one because only solution pesticide is
modeled in the upper layer auxiliary (interflow) layer.

TOTPST	NPST 1

PEADDR	NPST 3

PEADWT	NPST 3

PEADEP	NPST 3

TSPSS

SSPSS

5 NPST

3 NPST

SDEGPS	NPST	1
layer

UDEGPS	NPST	1

LDEGPS	NPST	1

ADEGPS	NPST	1

TDEGPS	NPST	1

lb/ac	kg/ha	Total amount of pesticide in the

soil (sum of all species).

lb/ac.ivld kg/ha.ivld Dry atmospheric deposition of

pesticide. The second subscript
indicates the species: crystalline,
adsorbed, or solution.
"	"	Wet deposition of pesticide form.

Subscripts as above.
"	"	Wet deposition of pesticide form.

Subscripts as above.

lb/ac.ivld kg/ha.ivld Fluxes of solution pesticide for

the topsoil layers: SOPSS,SPPSS,
UPPSS,IIPSS,IOPSS
"	"	Fluxes of solution pesticide for

the subsoil layers: LPPSS,LDPPSS,
AOPSS

lb/ac.ivld kg/ha.ivld Amount of degradation in surface

"	"	Amount of degradation in upper layer

"	"	Amount of degradation in lower layer

"	"	Amount of degradation in groundwater

"	"	Total amount of degradation in soil

766

</pre><hr><pre>
-------
Users Control Input

SDPS

2 NPST

SOSDPS NPST 1
POPST NPST 1
TOPST NPST 1

lb/ac.ivld kg/ha.ivld Outflow of sediment-associated

pesticide (SDPSY and SDPSA for each
pesticide)

"	"	Total outflow of sediment-associated

pesticide (SDPSY + SDPSA)

"	"	Total outflow of solution pesticide

from the PLS

"	"	Total outflow of pesticide from

the PLS

Note: The subscript with maximum value NPST selects the particular pesticide.
For example, POPST(2,1) is the outflow from the PLS of the second
pesticide (in solution).

Input time series required to compute the above:

Group EXTNL
PEADFX

PEADCN
PREC
LIPSS
LISDPS

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated
optional
optional

Group SEDMNT
SOSED

only required if section SEDMNT
is inactive

Group PSTEMP
SLTMP
ULTMP
LGTMP

only required if section PSTEMP
is inactive and ADOPFG = 1

Group MSTLAY
MST
FRAC

only required if section MSTLAY
is inactive

767

</pre><hr><pre>
-------
HSPF Version 12

Group NITR

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series computed by module section NITR:

AGPLTN 1 1 * lb/ac	kg/ha	N in above-ground plant storage

LITTRN 11*"	"	N in litter storage

The above time series are available only if ALPNFG= 1

SN
UN
LN
AN
TN

1	*	lb/ac	kg/ha	N in surface layer storage

1	* "	"	N in upper layer principal storage

1	* "	"	N in lower layer storage

1	* "	"	N in groundwater layer storage

1	* "	"	Total N in soil, by species

In the above, the first subscript selects the species of N: 1 means particulate
labile organic N, 2 means adsorbed ammonium, 3 means solution ammonium, 4 means
nitrate, 5 means plant N, 6 means solution labile organic N, 7 means particulate
refractory organic N, 8 means solution refractory organic N

IN

1 * lb/ac	kg/ha	N in upper layer auxiliary

(interflow) storage

In the above, the first subscript selects the species of N: 1 means solution
ammonium, 2 means nitrate, 3 means solution labile organic N, 4 means solution
refractory organic N (only soluble species are modelled in this storage)

TNIT	5

TOTNIT	1

NDFCT	5

NITIF	4

NIADDR	3

1

lb/ac

lb/ac

lb/ac

kg/ha

kg/ha

kg/ha

Total N stored in each layer (all
species): 1-surface, 2-upper, 3-lower,
4-active groundwater, 5-total

Total N stored in the PLS
species)

(all

NIADWT 3
NIADEP 3

Deficit in yield-based plant uptake
of N from the each soil layer:
1-surface, 2-upper, 3-lower,
4-active groundwater, 5-total

lb/ac.ivld kg/ha.ivld Special Action application of:

1- NH3, 2- N03, 3- Organic N, 4- Total
lb/ac.ivld kg/ha.ivld Dry atmospheric deposition of

nitrogen. The first subscript
indicates the species: N03, NH3,
organic N; the second subscript
indicates the affected soil layer:
surface or upper.

"	"	Wet atmospheric deposition of

nitrogen. Subscripts as above.

"	"	Total atmospheric deposition of

nitrogen. Subscripts as above.

768

</pre><hr><pre>
-------
Users Control Input

TSAMS	5 1 - lb/ac.ivld kg/ha.ivld Fluxes of solution ammonium in

the topsoil

TSN03	5 1-"	"	Fluxes of nitrate in the topsoil

TSSLN	5 1-"	"	Fluxes of solution labile organic N

in the topsoil

TSSRN	5 1-"	"	Fluxes of solution refractory

organic N in the topsoil

In the above, the first subscript selects the flux:

1	means outflow with surface water outflow

2	means percolation from surface to upper layer principal storage

3	means percolation from upper layer principal storage to lower layer storage

4	means flow from upper layer principal to upper layer auxiliary (interflow)
storage

5	means outflow from PLS with water from upper layer auxiliary (interflow)
storage

SSAMS	3 1 - lb/ac.ivld kg/ha.ivld Fluxes of solution ammonium in

the subsoil

SSN03	3 1-"	"	Fluxes of nitrate in the subsoil

SSSLN	3 1-"	"	Fluxes of solution labile organic

N in the subsoil

SSSRN	3 1-"	"	Fluxes of solution refractory

organic N in the subsoil

In the above, the first subscript selects the flux:

1	means percolation from the lower layer to the active groundwater storage

2	means deep percolation, from the lower layer to inactive groundwater

3	means outflow from the PLS with water from the active groundwater storage

NUPTG	4 1 - lb/ac.ivld kg/ha.ivld Yield-based plant uptake target for

N from each soil layer: 1-surface,
2-upper, 3-lower, 4-active groundwater

Reaction Fluxes by layer:

DENIF

5

1

- lb/ac.ivld kg/ha.ivld Denitrification





AMNIT

5

1

" " Ammonia nitrification





AMIMB

5

1

" " Ammonia immobilization





ORNMN

5

1

" " Organic N mineralization





NFIXFX

5

1

- N fixation flux





AMVOL

5

1

" " Ammonia volatilization





REFRON

5

1

" " Refractory N conversion





NUMB

5

1

" " Nitrate immobilization





NIUPA

5

1

" " N03 uptake to above-ground

plant

N

AMU PA

5

1

" " NH3 uptake to above-ground

plant

N

NIUPB

5

1

" " N03 uptake to below-ground

plant

N

AMUPB

5

1

" " NH3 uptake to below-ground

plant

N

RTLBN

5

1

" " Below-ground plant N return to









labile organic N





RTRBN

5

1

" " Below-ground plant N return to



refractory organic N

In the above, the first subscript selects soil layer: 1-surface, 2-upper, 3-lower,
4-active groundwater, 5-total

769

</pre><hr><pre>
-------
HSPF Version 12

RETAGN

1

1

RTLLN

3

1

RTRLN

3

1

TDENIF

1

1

SEDN

3

1

SOSEDN

1

1

P0N03

1

1

PONH4

1

1

POORN

1

1

PONITR

1

1

lb/ac.ivld kg/ha.ivld Return of above-ground plant N to

litter layer

"	"	Return of litter N to labile organic

N in 1- surface layer, 2- upper layer,
3- total

"	"	Return of litter N to refractory

organic N in 1- surface layer,

2- upper layer, 3- total
"	"	Total denitrification in the PLS

"	"	Outflows of sediment-associated N:

1- labile organic N, 2- adsorbed
ammonium 3- refractory organic N
"	"	Total outflow of sediment-associated

N (organic N + adsorbed ammonium)
"	"	Total outflow of N03 from the PLS

"	"	Total outflow of NH4 from the PLS

"	"	Total outflow of ORGN from the PLS

Total outflow of N (N03+NH4+0RGN)
from the PLS.

Input time series required to compute the above:

Group EXTNL
NIADFX

NIADCN

PREC

LIAMS

LIN03

LISLN

LISRN

LISEDN

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated
optional
optional
optional
optional
optional

Group SEDMNT
SOSED

only required if section SEDMNT
is inactive

Group PSTEMP
SLTMP
ULTMP
LGTMP

only required if section PSTEMP
is inactive and ADOPFG = 1

Group MSTLAY
MST
FRAC

only required if section MSTLAY
is inactive

770

</pre><hr><pre>
-------
Users Control Input

Group PHOS

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Pame	values	n

1 2	d	Engl Metr

Time series computed by module section PHOS:

SP
UP
LP
AP
TP

lb/ac

kg/ha

P in surface layer storage
P in upper layer principal storage
P in lower layer storage
P in groundwater layer storage
Total P in soil, by species

In the above, the first subscript selects the species of P:

1 means organic P, 2 means adsorbed phosphate, 3 means solution phosphate, 4 means
plant P derived from this layer

IP

1

1

lb/ac

kg/ha

P in upper layer auxiliary storage
(interflow) (solution P04)
only soluble species are modeled in this storage)

TPHO

TOTPHO 1

PDFCT

PHOIF

PHADDR 2

PHADWT 2
PHADEP 2

TSP4S	5

1 * lb/ac	kg/ha	Total P stored in each soil layer (all

species): 1-surface, 2-upper, 3-lower,
4-active groundwater, 5-total

1 * lb/ac	kg/ha	Total P stored in the PLS (all

species)

1 * lb/ac	kg/ha	Deficit in yield-based plant uptake

of P from the each soil layer:
1-surface, 2-upper, 3-lower,

4-active groundwater, 5-total

1	- lb/ac.ivld kg/ha.ivld Special Action application of:

1- P04, 2- Organic P, 3- Total

2	- lb/ac.ivld kg/ha.ivld Dry atmospheric deposition of

phosphorus. The first subscript
indicates the species: P04 or
organic P; the second subscript
indicates the affected soil layer:
surface or upper.

2 -	"	"	Wet atmospheric deposition of

phosphorus. Subscripts as above.

2 -	"	"	Total atmospheric deposition of

phosphorus. Subscripts as above.

1 - lb/ac.ivld kg/ha.ivld Fluxes of solution phosphate in the

in the topsoil.

In the above, the first subscript selects the flux:

1	means outflow with surface water outflow

2	means percolation from surface to upper layer principal storage

3	means percolation from upper layer principal storage to lower layer storage

771

</pre><hr><pre>
-------
HSPF Version 12

4	means flow from upper layer principal to upper layer auxiliary (interflow)
storage

5	means outflow from PLS with water from upper layer auxiliary (interflow) storage

SSP4S

1 - lb/ac.ivld kg/ha.ivld Fluxes of solution phosphate

in the subsoil.

In the above, the first subscript selects the flux:

1	means percolation from the lower layer to the active groundwater storage

2	means deep percolation, from the lower layer to inactive groundwater

3	means outflow from the PLS with water from the active groundwater storage

PUPTG

1 - lb/ac.ivld kg/ha.ivld Yield-based plant uptake target for

P from each soil layer: 1-surface,
2-upper, 3-lower, 4-active groundwater

P4IMB
ORPMN

Phosphate immobilization: 1-surface,
2-upper, 3-lower, 4-active groundwater
Organic P mineralization: 1-surface,
2-upper, 3-lower, 4-active groundwater

SEDP	2 1 - lb/ac.ivld kg/ha.ivld Outflows of sediment-associated P:

1- means organic P, 2- adsorbed P04
SOSEDP 11-"	"	Total outflow of sediment-associated

P (organic P + adsorbed phosphate)

POPHOS

Total outflow of P from the PLS.

Input time series required to compute the above:

Group EXTNL
P HAD FX

PHADCN
PREC
LIP4S
LISEDP

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated
optional
optional

Group SEDMNT
SOSED

only required if section SEDMNT
is inactive

Group PSTEMP
SLTMP
ULTMP
LGTMP

only required if section PSTEMP
is inactive and ADOPFG = 1

Group MSTLAY
MST
FRAC

only required if section MSTLAY
is inactive

772

</pre><hr><pre>
-------
Users Control Input

Group TRACER

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series computed by module section TRACER:

STRSU
UTRSU
ITRSU
LTRSU
ATRSU
TRSU

* lb/ac

kg/ha	Tracer in surface layer storage

Tracer in upper principal storage
Tracer in upper auxiliary storage
Tracer in lower layer storage
Tracer in groundwater layer storage
Total tracer stored in the PLS

TRADDR 2 1

TRADWT 2 1
TRADEP 2 1

TSTRS

1

lb/ac.ivld kg/ha.ivld Dry atmospheric deposition of tracer.

The subscript indicates soil layer:
surface or upper.

"	"	Wet atmospheric deposition of

tracer. Subscripts as above.

"	"	Total atmospheric deposition of

tracer. Subscripts as above.

lb/ac.ivld kg/ha.ivld Fluxes of tracer in topsoil

In the above, the first subscript indicates the flux:

1	means outflow with surface water outflow

2	means percolation from surface to upper layer principal storage

3	means percolation from upper layer principal to lower layer storage

4	means flow from upper principal to upper auxiliary (interflow) storage

5	means outflow from the PLS from upper layer transitory (interflow) storage

SSTRS

1

lb/ac.ivld kg/ha.ivld Fluxes of tracer in subsoil

In the above, the first subscript indicates the flux:

1	means percolation from lower layer to active groundwater storage

2	means deep percolation, from lower layer to inactive groundwater

3	means outflow from the PLS from the active groundwater storage

POTRS

1

1

lb/ac.ivld kg/ha.ivld Total outflow of tracer from the PLS

Input time series required to compute the above:
Group EXTNL
TRADFX

TRADCN

PREC

LITRS

Group MSTLAY
MST
FRAC

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated
optional

only required if MSTLAY, PEST, NITR
and PHOS are all inactive; else
these time series will already
have been supplied

773

</pre><hr><pre>
-------
HSPF Version 12

Catalog for IMPLND module

The time series groups associated with this application module are shown in the figure below. The
members contained within each group are documented in the tables which follow.

KEY:

Group containing time series which are always input

	^ Group containing time series which are always output

^ ~ Group containing time series which can be input or output

Figure 73: Groups of time series associated with the IMPLND Module

774

</pre><hr><pre>
-------
Users Control Input

Group EXTNL

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

The time series always external (input only) to module IMPLND are shown below.
These time series are divided into three groups: meteorologic data, atmospheric
deposition, and lateral inflows.

Meteorologic:

GATMP

1

1

Deg F

Deg C

PREC

1

1

in/ivld

mm/ivld

DTMPG

1

1

Deg F

Deg C

WINMOV

1

1

mi/ivld

km/ivld

SOLRAD

1

1

Ly/ivld

Ly/ivld

CLOUD

1

1

tenths

tenths

PETINP

1

1

in/ivld

mm/ivld

Atmospheric deposition:





IQADFX

10

1

qty/

qty/







ac.ivld

ha.ivld

IQADCN

10

1

qty/ft3

qty/1

Lateral

inflows:





SURLI

1

1

in/ivld

mm/ivld

SLSLD

1

1

tons/

tonnes/







ac.ivld

ha.ivld

SLITMP

1

1

deg F

deg C

SLIDOX

1

1

mg/1

mg/1

SLIC02

1

1

mg/1

mg/1

SLIQSP

NQSD

1

qty/ton

qty/









tonne

SLIQO

NQOF

1

qty/

qty/







ac.ivld

ha.ivld

Measured air temperature
Measured precipitation
Measured dewpoint temperature
Measured wind movement
Measured solar radiation
Cloud cover (range: 0-10)
Input potential E-T

Dry or total atmospheric deposition
of QUALOF

Concentration of QUALOF in precip
for wet atmospheric deposition

Surface lateral inflow
Lateral input of solids

Lateral inflow temperature

Lateral inflow DO cone

Lateral inflow C02 cone

QUALSD potency factor on lateral

inflow

Lateral input of QUALOF

775

</pre><hr><pre>
-------
HSPF Version 12

Group ATEMP

Identical to group ATEMP in module PERLND. Refer to ATEMP in PERLND.
Group SNOW

Identical to group SNOW in module PERLND. Refer to SNOW in PERLND.

776

</pre><hr><pre>
-------
Users Control Input

Group IWATER

<	

Member

	>

K

Units





Max

subscr

i

(external)

Description/comment

Name

values

n









1

2

d

Engl

Metr



Time series

computed by module

section IWATER:

IMPS

1

1

¦k

in

mm

Total water stored in the ILS

RETS

1

1

¦k

in

mm

Retention storage

SURS

1

1

¦k

in

mm

Surface (overland flow) storage

PETADJ

1

1

¦k

none

none

Adjustment factor for potential ET

SUPY

1

1

-

in/ivld

mm/ivld

Water supply to soil surface (If

CSNOFG

























is 0, same as precipitation.)

SURO

1

1

-

in/ivld

mm/ivld

Surface outflow

PET

1

1

-

in/ivld

mm/ivld

Potential E-T, adjusted for snow













cover and air temperature

IMPEV

1

1

-

in/ivld

mm/ivld

Total simulated E-T

SURI

1

1

-

in/ivld

mm/ivld

Surface inflow (including any













lateral inflow if RTLIFG=1)

Input

time series

required to compute the

above:

Group EXTNL
PETINP
PREC

SURLI

required if snow not considered

(CSNOFG= 0)

optional

Group ATEMP
AIRTMP

only required if section ATEMP
is inactive and CSNOFG= 1

Group SNOW
RAINF
SNOCOV
WYIELD

only required if section SNOW is
inactive and snow is considered
(CSNOFG= 1)

777

</pre><hr><pre>
-------
HSPF Version 12

Group SOLIDS

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section SOLIDS:

SLDS	1 1 * tons/ac tonnes/ha Storage of solids on surface

SOSLD	1 1 - tons/	tonnes/ Washoff of solids from surface

ac.ivld ha.ivld

Input time series required to compute the above:

Group EXTNL	always required

PREC

SLSLD	optional

Group IWATER	only required if section IWATER

SURO	is inactive

SURS

778

</pre><hr><pre>
-------
Users Control Input

Group IWTGAS

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section IWTGAS:

SOTMP

1

1

k

Deg F

Deg C

Temperature of surface outflow

SODOX

1

1

k

mg/1

mg/1

DO concentration in surface outflow

S0C02

1

1

k

mg/1

mg/1

C02 concentration in surface













outflow

SOHT

1

1

-

BTU/

kcal/

Heat energy in surface outflow









ac.ivld

ha.ivld

(relative to freezing point)

SODOXM

1

1

-

lb/

kg/

Flux of DO in surface outflow









ac.ivld

ha.ivld



S0C02M

1

1

-

lb/

kg/

Flux of C02 in surface outflow









ac.ivld

ha.ivld



Input time series required to compute the

Group EXTNL

SURLI,SLITMP,SLIDOX, SLIC02

Group ATEMP
AIRTMP

Group SNOW
WYIELD

Group IWATER
SURO

above:

optional

only required if section ATEMP
is inactive

only required if section SNOW
is inactive and snow is considered
(CSNOFG= 1)

only required if section IWATER
is inactive

779

</pre><hr><pre>
-------
HSPF Version 12

Group IQUAL

<	Member	>

Max subscr
Name	values

1 2

K
i
n
d

Units
(external)

Description/comment

Engl	Metr

Time series computed by module section IQUAL:

SQO

NQOF

1

* qty/ac

qty/ha

Storage of QUALOF on the surface

SOQSP

NQSD

1

qty/ton

qty/

QUALSD outflow potency factor









tonne



SOQS

NQSD

1

- qty/

qty/

Total flux of QUALSD from surface







ac.ivld

ha.ivld



SOQO

NQOF

1

- qty/

qty/

Washoff of QUALOF from surface







ac.ivld

ha.ivld



SOQOC

NQOF

1

qty/ft3

qty/1

Concentration of QUALOF in surface











outflow

SOQUAL

NQ

1

- qty/

qty/

Total outflow of QUAL from the







ac.ivld

ha.ivld

surface

SOQC

NQ

1

qty/ft3

qty/1

Concentration of QUAL in surface











outflow (QUALSD+QUALOF)

IQADDR

NQ

1

- qty/

qty/

Dry atmospheric deposition of QUAL







ac.ivld

ha.ivld



IQADWT

NQ

1

- qty/

qty/

Wet atmospheric deposition of QUAL







ac.ivld

ha.ivld



IQADEP

NQ

1

- qty/

qty/

Total atmospheric deposition of QUAL







ac.ivld

ha.ivld



Input time series required to compute the above:

Group EXTNL
IQADFX

IQADCN
PREC

SLIQSP,SLSLD
SLIQO

Group IWATER

SURO

Group SOLIDS
SOSLD

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated
optional
optional

only required if section IWATER
is inactive

only required if one or more QUALs
are QUALOFs, or if SOQC is required
for one or more QUALs

only required if section SOLIDS
is inactive and one or more QUALs
are QUALSDs

780

</pre><hr><pre>
-------
Users Control Input

Catalog for RCHRES module

The time series groups associated with this application module are shown in the figure below.

The members contained within each group are documented in the following tables.

Note: exit-specific, output time series are computed (available) only when NEXITS is greater than 1.

KEY;

•4|	©roup containing limw series which are always input

	Group containing time series which are always output

	~ Group containing tim# at fit® which can b* input or output

Figure 74: Groups of time series associated with the RCHRES Module

781

</pre><hr><pre>
-------
HSPF Version 12

Group EXTNL

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series external to module RCHRES (input only):

Meteorological:

PREC

1

1

in/ivld

mm/ivld

Precip on surface of the RCHRES











(requires AUX1FG = 1)

POTEV

1

1

in/ivld

mm/ivld

Potential evaporation from the











surface (requires AUX1FG = 1)

SOLRAD

1

1

Ly/ivld

Ly/ivld

Solar radiation

CLOUD

1

1

tenths

tenths

Cloud cover (range 0-10)

DEWTMP

1

1

DegF

DegC

Dewpoint

GATMP

1

1

DegF

DegC

Air temperature at met. station

WIND

1

1

miles/

km/

Wind movement







ivld

ivld



Atmospheric Deposition:

COADFX	NCONS 1

COADCN	NCONS 1

GQADFX	NGQUAL 1

GQADCN	NGQUAL 1

NUADFX	3 1

NUADCN	3 1

P LAD FX	3 1

PLADCN	3 1

qty/	qty/

ac/ivld ha/ivld

qty/

ac/ivld

concu/1

lb/

ac.ivld

mg/1

lb/

ac/ivld
mg/1

qty/

ha/ivld

concu/1

kg/

ha.ivld

mg/1

kg/

ha/ivld
mg/1

Dry or total atmospheric deposition
of conservative

Concentration of conservative in
rain for wet atmospheric
deposition

Dry or total atmospheric deposition
of qual

Concentration of qual in rain for
for wet atmospheric deposition
Dry or total atmospheric deposition
of inorganic nutrient. Subscript
indicates: N03, NH3, P04.
Concentration of nutrient in rain
for wet atmospheric deposition
Dry or total atmospheric deposition
of organics. Subscript indicates:
nitrogen, phosphorus, carbon
Concentration of organic in rain
for wet atmospheric deposition.
Subscript same as above.

782

</pre><hr><pre>
-------
Users Control Input

Other:

COLIND NEXITS 1

OUTDGT	NEXITS	1

COTDGT	NEXITS	CAT

IVOL	1	1

CIVOL CAT	1

ICON
TGRND

PHVAL
ROC

BIO

NCONS 1
1 1

ft3/s

ft3/s

ac.ft/
ivld
ac.ft/
ivld

m3/s

m3/s

Mm3/
ivld
Mm3/
ivld

NGQUAL 1

qty/ivld qty/ivld
DegF	DegC

moles/1 moles/1
mg(bio)/l mg(bio)/l

Time series indicating which
(pair of) columns in RCHTAB are
used to evaluate f(VOL) component
of outflow demand

g(t) component of outflow demand if
no CATEGORY block is present.
g(t) component of outflow demand by
category if CATEGORY block is present
Inflow to the RCHRES if no CATEGORY
block is present (Mm3 = 10**6 m3)
Inflow of water belonging to each
category if CATEGORY block is present
Inflow of conservative constituents
Temperature of ground beneath
stream bed

pH (used in Section GQUAL)

Free radical oxygen concentration

(used in Section GQUAL)

Biomass active in biodegradation

(used in Section GQUAL)

Note: CAT = one of the two-character ID tags from the CATEGORY block

783

</pre><hr><pre>
-------
HSPF Version 12

Group HYDR

<	 Member -

	

->

K

Units









Max subscr

i

(external)





Description/comment

Name

values



n













1

2



d

Engl

Metr







Time series computed by module section

HYDR



VOL

1

1



k

ac. ft

Mm3





Volume of water in the RCHRES

CVOL

CAT

1



k

ac. ft

Mm3





Volume of water of each category

AUX1FG must

be

1

for

next 5

members

to

be

computed:

DEP

1

1



k

ft

m





Depth at specified location

STAGE

1

1



k

ft

m





Stage (DEP+STCOR)

AVDEP

1

1



k

ft

m





Average depth (volume/surface area)

TWID

1

1



k

ft

m





Mean topwidth (surface area/length)

HRAD

1

1



k

ft

m





Hydraulic radius

SAREA

1

1



k

ac

ha





Surface area

AUX2FG must

be

1

for

next 2

members

to

be

computed:

AWEL

1

1



k

ft/s

m/s





Average velocity (RO/VOL)

AVSECT

1

1



k

ft2

m2





Average cross-sectional area of



















RCHRES (VOL/length)

AUX3FG must

be

1

for

next 2

members

to

be

computed:

US TAR

1

1



k

ft/s

m/s





Shear velocity

TAU

1

1



k

lb/ft2

kg/m2





Bed shear stress

RO

1

1



k

ft3/s

m3/s





Total rate of outflow from RCHRES

CRO

CAT

1



k

ft3/s

m3/s





Rates of outflow of each category

0

NEXITS

1



k

ft3/s

m3/s





Rates of outflow through individual



















exits (available only if NEXITS > 1)

CO

NEXITS

CAT

k

ft3/s

m3/s





Rates of outflow through individual



















exits of each category (available only



















if NEXITS > 1)

CDFVOL

NEXITS

CAT

k

ac. ft

Mm3





Current cumulative deficit of each



















category demand by exit

IVOL

1

1



-

ac.ft/

Mm3/





Sum of inflows to the RCHRES











ivld

ivld







CIVOL

CAT

1



-

ac.ft/

Mm3/





Sum of inflows of water belonging











ivld

ivld





to each category

PRSUPY

1

1



-

ac.ft/

Mm3/





Volume of water contributed by











ivld

ivld





precipitation on surface

VOLEV

1

1



-

ac.ft/

Mm3/





Volume of water lost by evaporation











ivld

ivld







ROVOL

1

1



-

ac.ft/

Mm3/





Total volume of outflow from RCHRES











ivld

ivld







CROVOL

CAT

1



-

ac.ft/

Mm3/





Total volume of outflow from RCHRES











ivld

ivld





of each category

OVOL

NEXITS

1



-

ac.ft/

Mm3/





Volume of outflow through individual











ivld

ivld





exits (available only if NEXITS > 1)

COVOL

NEXITS

CAT

-

ac.ft/

Mm3/





Volume of outflow through individual











ivld

ivld





exits of each category (available only



















if NEXITS > 1)

RIRDEM

1

1



-

ac.ft/

Mm3/





Irrigation withdrawal demanded by all











ivld

ivld





PERLNDs from the RCHRES

RIRSHT

1

1



-

ac.ft/

Mm3/





Shortage in irrigation withdrawal,











ivld

ivld





i.e. total demand RIRDEM minus actual

withdrawal OVOL(IREXIT)

784

</pre><hr><pre>
-------
Users Control Input

Input time series required to compute the above:

Group EXTNL

IVOL (also in group INFLOW)

optional - not used if CATEGORY
block is present

optional - used only if CATEGORY

block is present

optional

optional

required only if ODFVFG is negative
for one or more outflow demands
required only if ODGTFG is >0 for
one or more outflow demands
required only if ODGTFG is >0 for
one or more outflow demands

CIVOL (also in group INFLOW)

PREC

POTEV

COLIND

OUTDGT

COTDGT

Notes: 1. Mm3 = 10**6 m3

2.	Exit-specific time series are computed only if NEXITS > 1

3.	CAT = one of the two-character tags from the CATEGORY block

If there are any active categories, then the total inflow to a reach is the sum of
all category inflows. These inflows are input as time series CIVOL, and IVOL is
calculated (by the program) as their sum instead of being input.

785

</pre><hr><pre>
-------
HSPF Version 12

Group ADCALC

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section ADCALC:

None of the computed time series can be output; they are passed internally to any
active "quality" sections of the RCHRES module

Input time series required to compute the above:

Group HYDR	only required if section HYDR

VOL	is inactive
0

786

</pre><hr><pre>
-------
Users Control Input

Group CONS

<	Member	>	K

Max subscr	i

Name	values	n

1 2	d

Units
(external)

Description/comment

Engl	Metr

Time series computed by module section CONS:

CON

NCONS

1

concid

concid

ICON

NCONS

1

qty/ivld

qty/ivld

COADDR

NCONS

1

qty/ivld

qty/ivld

COADWT

NCONS

1

qty/ivld

qty/ivld

COADEP

NCONS

1

qty/ivld

qty/ivld

ROCON NCONS
OCON NEXITS

1

NCONS -

qty/ivld
qty/ivld

qty/ivld
qty/ivld

Concentration of conservative
constituents

Sum of inflows of conservative
constituents

Dry atmospheric deposition of
conservative

Wet atmospheric deposition of
conservative

Total atmospheric deposition of
conservative

Total outflow of conservatives
Outflow of conservatives through
individual exits (available only if
NEXITS > 1)

Input time series required to compute the above:

Group EXTNL
COADFX

COADCN
PREC

ICON (also in group INFLOW)

Group HYDR
SAREA

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated
optional

only required if section HYDR
is inactive and atmospheric
deposition is being simulated

787

</pre><hr><pre>
-------
HSPF Version 12

Group HTRCH

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series computed by module section HTRCH:

TW

AIRTMP
I HEAT
HTEXCH
ROHEAT

OHEAT NEXITS 1

HTCF4

BTU/ivld kcal/ivld

BTU/ivld kcal/ivld

DegF	DegC	Simulated water temperature

DegF	DegC	Air temperature, adjusted for elev.

difference between gage and RCHRES
Sum of inflows of heat (relative
to freezing)

Net heat exchanged with atmosphere
and stream bed
"	"	Total outflow of thermal energy

through active exits
"	"	Outflow of thermal energy through

individual exits (available only if
NEXITS > 1)

BTU/ft2/ kcal/m2/ Components of heat exchange per
ivld	ivld	unit area of surface: 1) total,

2) solar radiation, 3) longwave
radiation, 4) evaporation, 5)
conduction, 6) percipitation,
7) bed exchange
(positive = gain of heat).

Input time series required to compute the above:

Group INFLOW
I HEAT

Group EXTNL
SOLRAD
PREC
CLOUD
DEWTMP
GATMP
WIND

optional
optional

always required

optional

Group HYDR
AVDEP

only required if section HYDR
is inactive

788

</pre><hr><pre>
-------
Users Control Input

Group SEDTRN

<	Member	>	K	Units

Max subscr	i	(external) Description/comment

Name	values	n

1 2	d	Engl Metr

Time series computed by module section SEDTRN

SSED

4

1

"*¦

mg/1

mg/1

Suspended sediment concentrations

RSED

10

1

¦k

ton

tonne

Sediment storages

TSED

4

1

¦k

ton

tonne

Total sediment storages by fraction

BEDDEP

1

1

¦k

ft

m

Bed depth (thickness)

ISED

4

1

-

ton/ivld

tonne/ivld

Sum of inflows of sediment

DEPSCR

4

1

—

ton/ivld

tonne/ivld

Deposition (positive) or
scour (negative)

ROSED

4

1

—

\\

\\

Total outflows of sediment
from the RCHRES

OSED

NEXITS

4

—

\\

\\

Outflows of sediment through
individual exits (available

only if NEXITS > 1)

Note: In the above, the subscript with maximum value =4 selects the sediment
fraction - 1 for sand, 2 for silt, 3 for clay, and 4 for the sum of sand silt and
clay. The subscript with maximum value =10 selects the following: 1 suspended
sand, 2 suspended silt, 3 suspended clay, 4 bed sand, 5 bed silt 6 bed clay, 7
total sand, 8 total silt, 9 total clay, and 10 total of 7,8,9.

Input time series required to compute the above:

Group INFLOW
ISED(*)

inflows of sand, silt, and clay
to the RCHRES; optional

Group HYDR
TAU
AVDEP
AWEL
RO

HRAD
TWID

only required if Section HYDR is
inactive

only required if SANDFG = 1 or 2

Group HTRCH
TW

only required if Section HTRCH is
inactive and SANDFG = 1 or 2

789

</pre><hr><pre>
-------
HSPF Version 12

Group GQUAL

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series computed by module section GQUAL:

DQAL NGQUAL 1
SQAL	6 NGQUAL

*	concu/1 concu/1

*	concu/mg concu/mg

RDQAL NGQUAL 1 * qty	qty

RSQAL 12 NGQUAL * qty	qty

RRQAL NGQUAL 1 * qty	qty

IDQAL NGQUAL 1 - qty/ivld qty/ivld
ISQAL 4 NGQUAL - qty/ivld qty/ivld

TIQAL NGQUAL 1
PDQAL NGQUAL 1

GQADDR NGQUAL 1
GQADWT NGQUAL 1
GQADEP NGQUAL 1
DDQAL 7 NGQUAL

qty/ivld
qty/ivld

qty/ivld
qty/ivld
qty/ivld
qty/ivld

qty/ivld
qty/ivld

qty/ivld
qty/ivld
qty/ivld
qty/ivld

RODQAL NGQUAL 1
DSQAL 4 NGQUAL

ROSQAL 4 NGQUAL

qty/ivld qty/ivld
qty/ivld qty/ivld

qty/ivld qty/ivld

TROQAL NGQUAL 1 - qty/ivld qty/ivld
SQDEC 7 NGQUAL	qty/ivld qty/ivld

Dissolved concentration of qual.
Concentration of qual on sediment.
First subscript selects:

1 susp sand 2 susp silt 3 susp clay
4 bed sand 5 bed silt 6 bed clay
Total storage of qual in dissolved
form

Storage of sediment-associated qual.
First subscript selects:

I	susp sand, 2 susp silt, 3 susp clay,

4	susp total, 5 bed sand, 6 bed silt,
7 bed clay, 8 bed total,

9 total on sand, 10 total on silt,

II	total on clay, 12 grand total
Total storage of qual in the RCHRES
Sum of inflows of dissolved qual
Sum of inflows of qual associated
with: 1 Sand, 2 Silt, 3 Clay, 4 Total
Total inflow of qual

Input to this qual in this RCHRES,
from decay of parent quals
Dry atmospheric deposition of qual
Wet atmospheric deposition of qual
Total atmospheric deposition of qual
Decay of dissolved qual. First
subscript selects decay path:
1 hydrolysis 2 oxidation
3 photolysis 4 volatilization

5	biodegradation 6 general (other)
7 total of 1-6 .

Total outflow of dissolved qual
from the RCHRES

Deposition/scour of qual. First

subscript selects carrier:

1 sand 2 silt 3 clay 4 total

Total outflow of sediment-associated

qual from RCHRES.

First subscript selects carrier:

1 sand 2 silt 3 clay 4 total

Total outflow of qual

Decay of sediment-associated qual

on: 1 susp sand 2 susp silt

3 susp clay 4 bed sand

5 bed silt 6 bed clay 7 total

790

</pre><hr><pre>
-------
Users Control Input

ADQAL

7 NGQUAL

qty/ivld qty/ivld

ODQAL NEXITS NGQUAL- qty/ivld qty/ivld

OSQAL NEXITS NGQ3 - qty/ivld qty/ivld

TOSQAL NEXITS NGQUAL- qty/ivld qty/ivld

Adsorption/desorption between
dissolved state and: 1 susp sand
2 susp silt 3 susp clay 4 bed sand
5 bed silt 6 bed clay 7 total
Outflow of dissolved qual through
individual exits, (available only if
NEXITS > 1)

Outflows of sediment-associated
qual through individual exits.

Second subscript selects:

1	sand, first qual

2	silt, first qual

3	clay, first qual (NGQ3=

4	sand, second qual NGQUAL*3) etc.
(available only if NEXITS > 1)

Total outflows (sand+silt+clay) of
sediment-associated qual through
individual exits

Input time series required to compute

Group INFLOW
IDQAL
ISQAL(*)

Group EXTNL
GQADFX

GQADCN
PREC

PHVAL

ROC

BIO (I)

CLOUD
WIND

Group HYDR

AVDEP
AWEL

SAREA

Group HTRCH
TW

Group PLANK

PHYTO
Group SEDTRN

SSED(4)

above:

optional
optional

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated

if there is hydrolysis, PHFLAG=1,
and Section PHCARB is inactive
if there is free radical oxidation,
and ROXFG=1

if qual number I undergoes
biodegradation and GQPM2(7,I)=1
if there is photolysis, and CLDFG=1
if there is volatilization and water
body is a lake (LKFG=1)
only required if Section HYDR
is inactive
See below

if volatilization is on and water
body is a flowing stream (LKFG=0)
only required if atmospheric
deposition is being simulated
only required if Section HTRCH
inactive and TEMPFG=1
only required if Section PLANK is
inactive

if there is photolysis and PHYTFG=1
only required if Section SEDTRN is
inactive

if there is photolysis and SDFG=1

Note: AVDEP is required if Section H'
1. There is photolysis
or 2. There is volatilization
a. The water body is a
or b. The water body is a

DR is inactive and:

and
lake

free-flowing stream and REAMFG>1

791

</pre><hr><pre>
-------
HSPF Version 12

RQUAL Groups

OXRX, NUTRX, PLANK, PHCARB

Group OXRX

<	

Member 	>

K

Units





Max subscr

i

(external)

Description/comment

Name

values

n









1 2

d

Engl

Metr



Time

series computed by module

section OXRX



DOX

1 1

k

mg/1

mg/1

DO concentration

BOD

1 1

k

mg/1

mg/1

BOD concentration

SAT DO

1 1

k

mg/1

mg/1

Saturation DO concentration

OXIF

2 1

-

lb/ivld

kg/ivld

Sum of inflows of: 1-DO, 2-BOD

0XCF1

2 1

-

lb/ivld

kg/ivld

Total outflows of DO (0XCF1(1,1))











and BOD (0XCF1(2,1)) from the RCHRES

0XCF2

NEXITS 2

-

lb/ivld

kg/ivld

Outflows of DO and BOD through

individual exits (available only if
NEXITS > 1)

In the above, the first subscript selects the exit. The second selects the
constituent: 1 means DO, 2 means BOD.

OXCF3	8 1 - lb/ivld kg/ivld Dissolved oxygen process fluxes:

1-	reaeration (+/-)

2-	BOD decay (-)

3-	benthal demand (-)

4-	nitrification (-)

5-	phytoplankton (+/-)

6-	zooplankton (-)

7-	benthic algae (+/-)

8-	total (+/-)

OXCF4	8 1 - lb/ivld kg/ivld BOD process fluxes:

1-	BOD decay (-)

2-	benthal release (+)

3-	sinking (-)

4-	denitrification (+)

5-	phytoplankton (+)

6-	zooplankton (+)

7-	benthic algae (+)

8-	total (+/-)

Process fluxes are reported as positive if they increase the consituent, and
negative if they decrease it.

792

</pre><hr><pre>
-------
Users Control Input

Input time series required to compute

Group INFLOW
IDOX
IBOD
Group EXTNL

WIND
Group HYDR
AVDEP
AVDEP
Group HTRCH
TW

the above:

optional
optional

only needed if LKFG=1 (lake)
only required if section HYDR
is inactive

only required if section HTRCH
is inactive

793

</pre><hr><pre>
-------
HSPF Version 12

Group NUTRX

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series computed by module section NUTRX:

DNUST

SNH4
SP04
DNUST2
RSNH4

NUIF1
NUIF2

TNUIF
NUADDR

NUADWT
NUADEP
NUCF1
NUCF2

3
3
6
12

RSP04 12
NUST	4

TNUCF1 4
NUCF3	4

*	mg/1

*	mg/kg

*	mg/kg

*	lbs

*	lbs

*	lbs

*	lbs

mg/1

mg/kg
mg/kg
kg
kg

kg
kg

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

Dissolved nutrient concentrations;
Subscript 1: 1=N03, 2=TAM, 3=N02,
4=P04, 5=NH4+, 6=NH3.

Particulate NH4-N concentrations;
Subscript 1: l=sand, 2=silt, 3=clay
Particulate P04-P concentrations;
Subscript 1: l=sand, 2=silt, 3=clay
Dissolved nutrient storages; same
subscript values as DNUST
Particulate NH4-N storages; 1-3=
suspended sand, silt, clay, 4=total
suspended, 5-7=bed sand, silt, clay,
8=total bed, 9-ll=total sand, total
silt, total clay, 12=grand total
Particulate P04-P storages; same
subscript values as RSNH4
Total nutrient storages in RCHRES,
(dissolved + particulate);

Subscript 1: 1=N03, 2=TAM, 3=N02,
4=P04

Sum of dissolved inflows of nutrient
Same subscript values as NUST
Sum of inflows of l=particulate NH4,
2=particulate P04 on l=sand, 2=silt,
3=clay, 4=total

Sum of total inflows of nutrient:
Same subscript values as NUST
Dry atmospheric deposition of
nutrient; Subscript 1: 1=N03, 2=TAM,
3=P04

Wet atmospheric deposition of
nutrient; Subscript same as NUADDR
Total atmospheric deposition of
nutrient; Subscript same as NUADDR
Total outflow of dissolved nutrient;
Same subscript values as NUST
Total outflow of particulate NH4 and
P04; Subscript 1: l=(on) sand,
2=silt, 3=clay, 4=total;

Subscript 2:1= NH4, 2 = P04
Total outflow of nutrient;

Same subscript values as NUST
Scour/deposition fluxes of
particulate NH4 and PCM;

+ = scour, - = deposition;
same subscript values as NUCF2

794

</pre><hr><pre>
-------
Users Control Input

NUCF4	7 1- lb/ivld kg/ivld Process fluxes for N03;

1-	nitrification (+)

2-	denitrification (-)

3-	BOD decay (+)

4-	phytoplankton growth/respir. (+/-)

5-	zooplankton death/respir. (+)

6-	benthic algae growth/respir. (+/-)

7-	total (+/-)

NUCF5	8 1 - lb/ivld kg/ivld Process fluxes for TAM;

1-	nitrification (-)

2-	volatilization (-)

3-	benthal release (+)

4-	BOD decay(+)

5-	phytoplankton growth/respir. (+/-)

6-	zooplankton death/respir. (+)

7-	benthic algae growth/respir. (+/-)

8-	total (+/-)

NUCF6	1 1 - lb/ivld kg/ivld Process flux for N02;

Nitrification (+/-)

NUCF7	6 1 - lb/ivld kg/ivld Process fluxes for P04;

1-	benthal release (+)

2-	BOD decay (+)

3-	phytoplankton growth/respir. (+/-)

4-	zooplankton death/respir. (+)

5-	benthic algae growth/respir. (+/-)

6-	total (+/-)

Process fluxes are reported as positive if they increase the constituent, and
negative if they decrease it.

NUCF8	4	2	-	lb/ivld	kg/ivld

NUCF9 NEXITS	4	-	lb/ivld	kg/ivld

0SNH4 NEXITS	4	-	lb/ivld	kg/ivld

0SP04 NEXITS	4	-	lb/ivld	kg/ivld

TNUCF2 NEXITS	4	-	lb/ivld	kg/ivld

Adsorption (+) or desorption (-) of
NH4 and P04; Subscript 1: l=sand,
2=silt, 3=clay;

Subscript 2: 1=NH4, 2=P04
Outflow of dissolved nutrients
through individual exits;

Subscript 1 selects exit,

Subscript 2: same as NUCF2
(available only if NEXITS > 1)
Outflows of particulate NH4;
Subscript 1 selects exit,

Subscript 2: l=sand, 2=silt, 3=clay,
4=total

(available only if NEXITS > 1)
Outflows of particulate P04-P;
Subscript values same as 0SNH4
(available only if NEXITS > 1)

Total outflows of nutrients
through individual exits;

Subscript 1 selects exit,

Subscript 2: same as NUCF2
(available only if NEXITS > 1)

795

</pre><hr><pre>
-------
HSPF Version 12

Input time series required to compute the above:

Group INFLOW

IN03, ITAM, IN02,
IP04, ISNH4,ISP04

all optional

Group EXTNL
NUADFX

NUADCN
PREC

Group HYDR
SAREA

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated

only required if section HYDR
is inactive and atmospheric
deposition is being simulated

Group HTRCH
TW

only required if section HTRCH
is inactive

Group SEDTRN

RSED, SSED, OSED,
ROSED, DEPSCR

only required if Section SEDTRN is
inactive and if particulate NH4 or
P04 is simulated

NOTE: Ammonia, nitrite and ortho-phosphate may, or may not, be simulated,
depending on the values the user assigns to TAMFG, N02FG and P04FG. If a
constituent is not simulated, those time series associated with it in this list
should be ignored.

796

</pre><hr><pre>
-------
Users Control Input

Group PLANK

<	Member	>	K

Max subscr	i

Name	values	n

1 2	d

Units
(external)

Description/comment

Metr

Engl

Time series computed by module section PLANK:

PHYTO

1

1

k

mg/1

mg/1

Phytoplankton concentration

ZOO

1

1

k

organism/1

organism/1

Zooplankton population

BENAL

1

1

k

mg/m2

mg/m2

Benthic algae

PHYCLA

1

1

k

ug/1

ug/1

Phytoplankton as chlorophyll a

BALCLA

1

1

k

ug/m2

ug/m2

Benthic algae as chlorophyll a

PKST3

7

1

k

mg/1

mg/1

Concentrations of organics:

PKST4

PKIF

TPKIF

PKCF1

TPKCF1

1-	dead refractory organic N (ORN)

2-	dead refractory organic P (ORP)

3-	dead refractory organic C (ORC)

4-	total organic N (TORN)

5-	total organic P (TORP)

6-	total organic C (TORC)

7-	potential BOD (POTBOD)
Concentrations of l=Total N and
2=Total P

Sum of inflows of: l=Phyto, 2=Zoo,
3=0RN, 4=0RP, 5=0RC
Sum of inflows of: 1=T0RN, 2=T0RP,
3=T0RC, 4=Total N, 5=Total P
Total outflows from the RCHRES of:
l=Phyto, 2=Zoo, 3=0RN, 4=0RP, 5=0RC
Total outflows from the RCHRES of:
1=T0RN, 2=T0RP, 3=T0RC, 4=Total N,
5=Total P

Outflows through individual exits
of: l=Phyto, 2=Zoo, 3=0RN, 4=0RP,

5=0RC

(available only if NEXITS > 1)

Outflows through individual exits
of: 1=T0RN, 2=T0RP, 3=T0RC,

4=Total N, 5=Total P
(available only if NEXITS > 1)

PLADDR 3 1 - lb/ivld kg/ivld Dry atmospheric deposition of organics
PLADWT 3 1 - lb/ivld kg/ivld Wet atmospheric deposition of organics
PLADEP 3 1 - lb/ivld kg/ivld Total atmospheric deposition of

organics

In the above, the first subscript selects the constituent:

1 for ORN, 2 for ORP, 3 for ORC

PKCF2 NEXITS 5

TPKCF2 NEXITS 5

mg/1	mg/1

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

lb/ivld	kg/ivld

797

</pre><hr><pre>
-------
HSPF Version 12

PKCF5	5 1 - lb/ivld kg/ivld

PKCF6	3 1 - lb/ivld kg/ivld

PKCF7	3 1 - lb/ivld kg/ivld

PKCF8	5 1 - lb/ivld kg/ivld

PKCF9	5 1 - lb/ivld kg/ivld

PKCF10 5 1 - lb/ivld kg/ivld

Process fluxes are reported as positive if
negative if they decrease it.

Process fluxes for phytoplankton

1-	sinking (-)

2-	zoolankton predation (-)

3-	death (-)

4-	growth/respiration (+/-)

5-	total (+/-)

Process fluxes for zooplankton

1-	growth/respiration (+/-)

2-	death (-)

3-	total (+/-)

Process fluxes for benthic algae

1-	growth/respiration (+/-)

2-	death (-)

3-	total (+/-)

Process fluxes for dead refractory
organic N

1-	sinking (-)

2-	phytoplankton death (+)

3-	zooplankton death/excretion (+)

4-	benthic algae death (+)

5-	total (+/-)

Process fluxes for dead refractory
organic P

1-	sinking (-)

2-	phytoplankton death (+)

3-	zooplankton death/excretion (+)

4-	benthic algae death (+)

5-	total (+/-)

Process fluxes for dead refractory
organic C

1-	sinking (-)

2-	phytoplankton death (+)

3-	zooplankton death/excretion (+)

4-	benthic algae death (+)

5-	total (+/-)

they increase the constituent, and

798

</pre><hr><pre>
-------
Users Control Input

Input time series required to compute the above:

Group INFLOW
IPHYTO, IZOO,
IORP, IORC

IORN,

all are optional

Group EXTNL
SOLRAD
P LAD FX

PLADCN
PREC

Group HYDR
SAREA

required

only required if dry atmospheric
deposition is being simulated
|- only required if wet atmospheric
| deposition is being simulated

only required if section HYDR
is inactive and atmospheric
deposition is being simulated

Group HTRCH
TW

only required if section HTRCH
is inactive

Group SEDTRN
SSED(4)

only required if section SEDTRN
is inactive and SDLTFG=1

NOTE: Phytoplankton, zooplankton and benthic algae may, or may not, be simulated,
depending on the values the user assigns to PHYFG, ZOOFG and BALFG. If a
constituent is not simulated, those time series associated with it in this list
should be ignored.

799

</pre><hr><pre>
-------
HSPF Version 12

Group PHCARB

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series computed by module section PHCARB:

PHST

SATC02 1
PHIF	2

PHCF1	2

PHCF2 NEXITS

mg/1	mg/1

mg/1	mg/1

pH	pH

1 * mg/1	mg/1

1 - lb/ivld	kg/ivld

1	- lb/ivld	kg/ivld

2	- lb/ivld	kg/ivld

(TIC)

Concentrations of:

1-	Total inorganic carbon

2-	Carbon dioxide (C02)

3-	pH

Saturation C02 concentration

Sum of inflows of carbon

Total outflows of carbon

Outflows of carbon through individual

exits (available only if NEXITS > 1)

The above subscripts with limit 2 mean: 1- TIC, 2- C02

PHCF3

lb/ivld kg/ivld

Process fluxes for C02

1-	BOD decay (+)

2-	phytoplankton growth/respir.

3-	zooplankton respiration (+)

4-	benthic algae growth/respir.

5-	benthal release (+)

6-	C02 invasion (+/-)

7-	total (+/-)

(+/-
(+/-

Input time series required to compute the above:

Group INFLOW
ITIC
IC02

optional
optional

Group CONS
CON(ALKCON)

only required if section CONS is
inactive

concentration units must be mg/1 as
CaC03

Group HTRCH
TW

only required if section HTRCH
is inactive

800

</pre><hr><pre>
-------
Users Control Input

Groups INFLOW, ROFLOW, and OFLOW

The members in these groups represent the total inflow, total outflow and outflow through individual
RCHRES exits of every simulated constituent. These groups were included in the catalog to make it
easier for users to specify the linkages representing time series passed from one RCHRES to another. For
example, assume the RCHRES's in a run have sections HYDR, HTRCH and OXRX active, and the
NETWORK Block contains:

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

NETWORK

<-Volume-> <-Grp> <-Member-><—Mult—>Tran <-Target vols> <-Grp> <-Member-> ***
<Name> #	<Name> # #<-factor->strg <Name> # #	<Name> # # ***

RCHRES 1 ROFLOW	RCHRES 2	INFLOW

RCHRES 2 OFLOW	2	RCHRES 3	INFLOW

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

These entries mean that the entire outflow from RCHRES 1 goes to RCHRES 2, and
that the outflow through exit 2 of RCHRES 2 goes to RCHRES 3. Because the "member
name" fields have been left blank, HSPF will automatically expand the above
entries, generating an entry for each member which is active in this run. In this
case, there will be 4 generated entries because 4 constituents are being simulated
(water, heat, DO and BOD). The second set of generated entries would be:

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

NETWORK

























A
1

(D

i—1

0
>

1

V

<-Grp>

QJ

£

(D

s

1

V

r-

X-

-Mult—>Tran

<-Target

vols>

<-Grp>

<-Member



<Name> #



<Name>

#

#<-

factor->strg

<Name>

#

#



<Name>

#

-k -k -k

RCHRES 2

OFLOW

OVOL

2

1

1.0

RCHRES

3



INFLOW

IVOL

1

1

RCHRES 2

OFLOW

OHEAT

2

1

1.0

RCHRES

3



INFLOW

I HEAT

1

1

RCHRES 2

OFLOW

OXCF2

2

1

1.0

RCHRES

3



INFLOW

OX IF

1

1

RCHRES 2

OFLOW

OXCF2

2

2

1.0

RCHRES

3



INFLOW

OX IF

2

1

-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

-K

-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X

¦¦k-k-k-k-k-k-k-k

¦k -k -k -k -k -k

-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X
-X

¦k -k -k -k -k -k -k

Thus, the user can specify the linkage between two RCHRES's with a single entry,
instead of having to supply an entry for every constituent passed between them.

801

</pre><hr><pre>
-------
HSPF Version 12

GROUP INFLOW

The members in this group represent the inflows to a RCHRES. Note that each member listed below is
"available" for use only if the module section to which it belongs is active.

<	

Member —

	>

K

Units









Max subscr

i

(external)

Module

Constituent

Name

values

n





section





1

2

d

Engl

Metr





IVOL

1

1

-

ac.ft/

Mm3/

HYDR

Water









ivld

ivld



(Note: Mm3=10**6 m3)

CIVOL

CAT

1

-

ac.ft/

Mm3/

HYDR

Water, by Category









ivld

ivld



(Note: CAT=Category tag)

ICON

NCONS

1

-

qty/

qty/

CONS

Conservatives









ivld

ivld





I HEAT

1

1

-

BTU/

kcal/

HTRCH

Heat (relative to









ivld

ivld



freezing)

ISED

3

1

-

ton/

tonne/

SEDTRN

Sand, silt, and clay









ivld

ivld





IDQAL

NGQUAL

1

-

qty/

qty/

GQUAL

Dissolved general









ivld

ivld



quality constituents

ISQAL

3 NGQUAL

-

qty/

qty/

GQUAL

General quality const-









ivld

ivld



ituent associated with:















1 Sand, 2 Silt, 3 Clay

OXIF

2

1

-

lb/ivld

kg/ivld

OXRX

l=DO, 2=BOD

NUIF1

4

1

-

lb/

kg/

NUTRX

1=N03, 2=TAM, 3=N02,









ivld

ivld



4 = P04

NUIF2

3

2

-

lb/

kg/

NUTRX

l=particulate NH4,









ivld

ivld



2=particulate P04 on















l=sand, 2=silt, 3=clay

PKIF

5

1

-

lb/

kg/

PLANK

l=Phyto, 2=Zoo, 3=ORN,









ivld

ivld



4=ORP, 5=ORC

PHIF

2

1

-

lb/ivld

kg/ivld

PHCARB

1=TIC, 2=C02

Note: ISED, ISQAL, and NUIF2 have smaller limits than in groups SEDTRN, GQUAL, and
NUTRX, respectively. The extra slots are totals of the constituents in question
(e.g., sand + silt + clay). They are not needed in group INFLOW, because the
program sums the inflows automatically.

802

</pre><hr><pre>
-------
Users Control Input

Group ROFLOW

The members in this group represent the total outflow from a RCHRES. Note that a member is
"available" for use only if the module section to which it belongs is active.

<	 Member —

	>

K

Units







Max subscr

i

(external)

Module

Constituent



values

n



section





1

2

d

Engl Metr





ROVOL

1

1







Water

CROVOL

CAT

1







Water, by category













(CAT=Category ID tag)

ROCON

NCONS

1







Conservatives

ROHEAT

1

1







Heat

ROSED

3

1







Sand, silt, and clay









See data for





RODQAL

NGQUAL

1



corresponding



Dissolved general qual.









member in group





ROSQAL

3 NGQUAL



INFLOW



Sediment-associated qual.

OXCF1

2

1







DO, BOD

NUCF1

4

1







N03, TAM, N02, P04

NUCF2

3

2







Particulate NH4 and P04













(sand, silt, clay)

PKCF1

5

1







Phyto, Zoo, ORN, ORP, ORC

PHCF1

2

1







TIC, C02

Note: ROSED, ROSQAL, and NUCF2 have smaller limits than in groups SEDTRN, GQUAL,
and NUTRX, respectively. The extra slots are totals of the constituents in
question (e.g., sand + silt + clay). They are not needed in group ROFLOW, because
the program sums the outflows automatically.

803

</pre><hr><pre>
-------
HSPF Version 12

Group OFLOW

The members in this group represent the outflows through the individual exits of a RCHRES. Note that a
member is available for use only if the module section to which it belongs is active. Also, these time
series are available for use only if the number of exit gates (NEXITS) is greater than 1.

For each member, the RCHRES exit is selected by the value given to the first subscript.

<	

Member -

	> K

Units







Max subscr i

(external)

Module

Constituent

Name

values n



section





1

2 d

Engl Metr





OVOL

NEXITS

1





Water

CROVOL

NEXITS

CAT





Water, by category











(CAT=Category ID tag)

OCON

NEXITS

NCONS





Conservatives

OHEAT

NEXITS

1





Heat

OSED

NEXITS

3





Sand, silt, and clay

ODQAL

NEXITS

NGQUAL

See data for



Dissolved general qual.







corresponding





OSQAL

NEXITS

NGQ3

member in group



Sediment-associated qual.







INFLOW





OXCF2

NEXITS

2





DO, BOD

NUCF9

NEXITS

4





N03, NH3, N02, P04

OSNH4

NEXITS

3





Particulate NH4











(sand, silt, clay)

0SP04

NEXITS

3





Particulate P04











(sand, silt, clay)

PKCF2

NEXITS

5





Phyto, Zoo, ORN, ORP, ORC

PHCF2

NEXITS

2





TIC, C02

Note: OSED, OSNH4, and 0SP04 have smaller limits than in groups SEDTRN and NUTRX,
respectively. The extra slots are totals of the constituents in question (e.g.,
sand + silt + clay). They are not needed in group OFLOW, because the program sums
the outflows automatically.

804

</pre><hr><pre>
-------
Users Control Input

Catalog for COPY module

The members contained within each group are documented in the tables which follow.

Group INPUT

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series input to module COPY:

POINT NPT 1
MEAN	NMN 1

anything
anything

Point-valued input time series
Mean-valued input time series

Group OUTPUT

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series output by module COPY:

POINT NPT 1
MEAN	NMN 1

anything
anything

Point-valued output time series
Mean-valued output time series

Input time series required to produce the above:

Group INPUT
POINT
MEAN

required if NPT> 0
required if NMN> 0

805

</pre><hr><pre>
-------
HSPF Version 12

Catalog for PLTGEN module

There is only one time series group associated with this module; group INPUT, which contains all point-
valued and/or mean-valued members that are to be plotted. This module does not have an output group
because all its output goes to the PLTGEN file, which is documented in Functional Description.

Group INPUT

<	

Member 	>

K

Units





Max subscr

i

(external)

Description/comment

Name

values

n







1 2

d

Engl Metr



Time

series input

to module PLTGEN:



POINT

NPT 1

"k

anything

Point-valued input time series

MEAN

NMN 1

~

anything

Mean-valued input time series

806

</pre><hr><pre>
-------
Users Control Input

Catalog for DISPLY module

There is only one time series group (INPUT) with one member (TIMSER) associated with this module
since the module displays only one time series at a time. This module does not have an output group
because all its output goes to the output text file.

Group INPUT

<	Member	>

K

Units



Max subscr

i

(external)

Description/comment

Name values

n





1 2

d

Engl Metr



Time series input

to module DISPLY:



TIMSER 1 1

-

anything

A mean-valued input time series

807

</pre><hr><pre>
-------
HSPF Version 12

Catalog for DURANL module

There is only one time series group (INPUT) with one member (TIMSER) associated with this module
since the module analyzes only one time series at a time. This module does not have an output group
because all its output goes to an output text file. The format is documented in DURANL in Functional
Description.

Group INPUT

<	Member	>

K

Units



Max subscr

i

(external)

Description/comment

Name values

n





1 2

d

Engl Metr



Time series input

to module DURANL:



TIMSER 1 1

-

anything

A mean-valued input time series

808

</pre><hr><pre>
-------
Users Control Input

Catalog for GENER module

This module has both input and output groups, like module COPY.

The members contained within each group are documented in the tables which follow.

Group INPUT

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series input to module GENER:

ONE
TWO

anything
anything

First input time series
Second input time series

Group OUTPUT

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series output by module GENER:

TIMSER 1 1 -	anything	Output time series (mean-valued)

Input time series required to produce the above:

Group INPUT
ONE
TWO

Always required, unless OPCODE=24.
Only required if generation option
needs two inputs.

809

</pre><hr><pre>
-------
HSPF Version 12

Catalog for MUTSIN module

This module has only an output group, since all its input is read from a text file.
The members contained within each group are documented in the tables which follow.

Group OUTPUT

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

Time series output by module MUTSIN

POINT NPT 1
MEAN	NMN 1

anything
anything

Point-valued output time series
Mean-valued output time series

810

</pre><hr><pre>
-------
Users Control Input

Catalog for BMPRAC module

This module has both input and output groups, like module RCHRES.

The members contained within each group are documented in the tables which follow.

Group INFLOW

The members in this group represent the inflows to a BMPRAC.

<	Member	>	K

Max subscr	i

Name	values	n

1 2	d Engl

Units
external)

Description/comment

Metr

IVOL

CIVOL
ICON
I HEAT
ISED
IDQAL

ISQAL

I OX

IDNUT

ISNUT

IPLK
IPH
Note:

1

1

CAT	1

NCONS	1

1	1

3	1

NGQUAL	1

ac.ft/ivld Mm3/ivld

Water

(Note: Mm3=10**6 m3)

ac.ft/ivld Mm3/ivld Water by category
qty/ivld qty/ivld Conservatives

kcal/ivld Heat (relative to freezing)
tonne/ivld Sediment (sand, silt, clay)

BTU/ivld
ton/ivld
qty/ivld

3 NGQUAL - qty/ivld

lb/ivld
lb/ivld
lb/ivld

lb/ivld
lb/ivld

qty/ivld Dissolved general quality
constituents

qty/ivld General quality constituent

assoc. with 1 Sand, 2 Silt, 3 Clay

kg/ivld 1 DO, 2 BOD

kg/ivld 1 N03, 2 TAM, 3 N02, 4 P04

kg/ivld 1 particulate NH4, 2 particulate P04
on 1 Sand, 2 Silt, 3 Clay

kg/ivld 1 Phyto, 2 Zoo, 3 ORN, 4 ORP, 5 ORC

kg/ivld 1 TIC, 2 C02

CAT = one of the two-character ID tags from the CATEGORY block.

811

</pre><hr><pre>
-------
HSPF Version 12

Group RECEIV

The members of this group represent total inflows to the module. This group simply echoes the contents
of the INFLOW group. These members are available as output for use as input to other modules. This
simplifies the UCI by reducing the number of connections required.

The member names, array limits, units, and definitions are all identical to the INFLOW group.

812

</pre><hr><pre>
-------
Users Control Input

Group ROFLOW

The members of this group represent outflows from a BMPRAC.

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

ROVOL

1

1

CROVOL CAT	1

ROCON NCONS	1

ROHEAT 1	1

ROSED	3	1

RODQAL NGQUAL	1

ROSQAL

ROOX

RODNUT

ROSNUT

ROPLK
ROPH

ac.ft/ivld Mm3/ivld Water

(Note: Mm3=10**6 m3)

ac.ft/ivld Mm3/ivld Water by category

qty/ivld qty/ivld Conservatives

kcal/ivld Heat (relative to freezing)

tonne/ivld Sediment (sand, silt, clay)

3 NGQUAL

BTU/ivld
ton/ivld
qty/ivld

qty/ivld

lb/ivld
lb/ivld
lb/ivld

lb/ivld
lb/ivld

qty/ivld Dissolved general quality
constituents

qty/ivld General quality constituent

assoc. with 1 Sand, 2 Silt, 3 Clay

kg/ivld 1 DO, 2 BOD

kg/ivld 1 N03, 2 TAM, 3 N02, 4 P04

kg/ivld 1 particulate NH4, 2 particulate P04
on 1 Sand, 2 Silt, 3 Clay

kg/ivld 1 Phyto, 2 Zoo, 3 ORN, 4 ORP, 5 ORC

kg/ivld 1 TIC, 2 C02

Note: CAT = one of the two-character ID tags from the CATEGORY block.

813

</pre><hr><pre>
-------
HSPF Version 12

Group REMOVE

The members of this group represent removals by a BMPRAC.

<	Member	>	K	Units

Max subscr	i	(external)

Name	values	n

1 2	d	Engl Metr

Description/comment

RMVOL

1

1

CRMVOL CAT	1

RMCON NCONS	1

RMHEAT 1	1

RMSED	3	1

RMDQAL NGQUAL	1

RMSQAL

RMOX
RMDNUT
RMSNUT

RMPLK
RMPH

ac.ft/ivld Mm3/ivld Water

(Note: Mm3=10**6 m3)

ac.ft/ivld Mm3/ivld Water by category

qty/ivld qty/ivld Conservatives

kcal/ivld Heat (relative to freezing)

tonne/ivld Sediment (sand, silt, clay)

3 NGQUAL

BTU/ivld
ton/ivld
qty/ivld

qty/ivld

lb/ivld
lb/ivld
lb/ivld

lb/ivld
lb/ivld

qty/ivld Dissolved general quality
constituents

qty/ivld General quality constituent

assoc. with 1 Sand, 2 Silt, 3 Clay

kg/ivld 1 DO, 2 BOD

kg/ivld 1 N03, 2 TAM, 3 N02, 4 P04

kg/ivld 1 particulate NH4, 2 particulate P04
on 1 Sand, 2 Silt, 3 Clay

kg/ivld 1 Phyto, 2 Zoo, 3 ORN, 4 ORP, 5 ORC

kg/ivld 1 TIC, 2 C02

Note: CAT = one of the two-character ID tags from the CATEGORY block.

814

</pre><hr><pre>
-------
Users Control Input

Catalog for REPORT module

This module has only one time series group (INPUT) with one member (TIMSER). This module does
not have an output group because all its output goes to a text file.

Group INPUT

<	Member	>

K

Units



Max subscr

i

(external)

Description/comment

Name values

n





1 2

d

Engl Metr



Time series input

to module REPORT:



TIMSER 50 99

-

anything

A mean-valued input time series

815

</pre><hr><pre>
-------
HSPF Version 12

FORMATS 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

FORMATS

¦k -k -k

<ft><	obj-fmt	

*** line immed above repeats until all formats have been covered

END FORMATS

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

Details

Symbol

FORTRAN	Format

Name(s)

Comment

<ft>

<obj-fmt>

FMTCOD

FORM(19)

14

19A4

Identifying number which corresponds to
format number in EXT SOURCES or TARGETS
Blocks.

Standard FORTRAN object-time format.

Explanation

This block is only required if a user wishes to override the default format for reading data on a sequential
file.

816

</pre><hr><pre>
-------
Users Control Input

Sequential and PLTGEN/MUTSIN File Formats

Two types of ASCII file formats are available for transfer of data into/out of HSPF. "Sequential" files
allow transfer into HSPF, and PLTGEN/MUTSIN files allow transfer into and out of HSPF. These file
formats are documented below.

Sequential (SEQ) files

Six different format classes are available for different time intervals: five-minute, fifteen-minute, hourly,
daily, semimonthly, and monthly. The user can override the default formats listed below by supplying
replacements in the FORMATS BLOCK. However, the sequence of information within each record
cannot be altered.

Sequential files may use either two- or four-digit years. However, if using the default format, the first
two classes listed below accept only two-digit years. If a two-digit year is used, then the century of the
start of the data is assumed to match the century of the start of the run, unless the data starts just before a
century boundary (90 <= year <= 99) and the run starts just after it (mod(year,100) < 10). The century is
tracked appropriately as the year passes from 99 to 00.

817

</pre><hr><pre>
-------
HSPF Version 12

Format class HYDFIV - Sequential

This file format is used for the input of 5-minute data. The sequence of information is:

1.	Alpha-numeric station number or identifier (this field is not read)

2.	Last two digits of calendar year (four-digit year allowed in user-specified format)

3.	Month

4.	Day

5.	Card number 1 is for midnight to 3 am.

2	is for 3 am to 6 am.

3	is for 6 am to 9 am.

4	is for 9 am to noon.

5	is for noon to 3 pm.

6	is for 3 pm to 6 pm.

7	is for 6 pm to 9 pm.

8	is for 9 pm to midnight.

6.	36 fields for 5-minute data.

The default format is: (1X,3I2,I1,36F2.0) Note that only a two-digit year is used, but a user-specified
format (see FORMATS block) may use either two- or four-digit years.

Format class HYDFIF - Sequential

This file format is used for the input of 15-minute data. The sequence of information is:

1.	Alpha-numeric station number or identifier (this field is not read).

2.	Last two digits of calendar year (four-digit year allowed in user-specified format)

3.	Month

4.	Day

5.	Card number (same as for HYDFIV above)

6.	12 fields for 15-minute data

The default format is: (1X,3I2,I1,12F6.0) Note that only a two-digit year is used, but a user-specified
format (see FORMATS block) may use either two- or four-digit years.

818

</pre><hr><pre>
-------
Users Control Input

Format class HYDHR - Sequential

This file format is used for input of hourly observations. The sequence of information is:

1.	Alpha-numeric station number or identifier. (This field is not read)

2.	Year (four-digit year or two-digit year)

3.	Month

4.	Day

5.	Card no: 1 is for a.m. hours

2 is for p.m. hours

6.	Twelve fields for hourly data

The default format is: (8X,I4,1X,I2,1X,I2,1X,I1,12F5.0)

Format class HYDDAY - Sequential

This file format is used for input of daily observations. The sequence of information is:

1.	Alpha-numeric station number or identifier. (This field is not read)

2.	Year (four-digit year or two-digit year)

3.	Month

4.	Card no: 1 is for days 1-10

2	is for days 11-20

3	is for days 21-

5.	Ten fields, for the daily data (11 fields for card number 3)

The default format is: (5X,I4,I2,I1,11F6.0).

819

</pre><hr><pre>
-------
HSPF Version 12

Format class HYDSMN - Sequential

This file format is used for input of semi-monthly observations. The sequence of information is:

1.	Alpha-numeric station number or identifier. (This field is not read)

2.	Year (four-digit year or two-digit year)

3.	Card no: 1 for January through June

2 for July through December

4.	Twelve semi-monthly fields
The default format is: (5X,I4,I1,12F5.0)

Semi-monthly values are distributed to daily values with a transformation function of SAME.

Format class HYDMON - Sequential

This file format is used for input of monthly observations. The sequence of information is:

1.	Alpha-numeric station number or identifier. (This field is not read)

2.	Year (four-digit year or two-digit year)

3.	Twelve monthly fields

The default format is: (4X,I4,12F6.0)

Monthly values are distributed to daily values with a transformation function of SAME.

820

</pre><hr><pre>
-------
Users Control Input

PLTGEN/MUTSIN File Format

Time series data can be transferred to or from ASCII/text files having the PLTGEN/MUTSIN format, i.e.,
the format of files created by the PLTGEN module and readable by the MUTSIN module. This file
contains a header, which is 25 or more lines for PLTGEN and at least one line for MUTSIN. Each line of
data contains a date-time and between one and twenty data values (curves). The sequence of information
for each data line is as follows:

1.

Identifier (four characters)

2.

Year

3.

Month

4.

Day

5.

Hour

6.

Minute

7.

Value for curve 1, for this date/time

8. Value for curve 2, for this date/time, etc. (repeats until data for all curves are supplied)
Format: A4,1X,I5,4I3,20(2X,G12.5)

821

</pre><hr><pre>
-------
HSPF Version 12

SPEC-ACTIONS 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

SPEC-ACTIONS
Action line:

<addrss>-
dc ds	d t	or

coperxf x-lxx xyrxmxdxhxmxx>

Distribute line:

ds ct tc ts
<kwrd>< ><><><> <dff> <1

User-defined/multiple variable line:

cnt	act

<kwrd> <unam>< > <varixl><2><3> <frc> < >

or

<addrss>	

	<uvqn>

or tc ts num
-value—> <><><>

act

<varixl><2><3> <frc> < >

User-defined variable quantity line:

lc Is ac as agfn

<kwrd> <uqnm> <oper> <#> <vari><l><2><3xtxmultfact> <>< > <>< > < >

or

<addrss>	

Condition line (free format):

IF ( ( <quan> <comp> <quan> ) <logop> ( <quan> <comp> <quan>
ELSE IF ( <quan> <comp> <quan> ) THEN
ELSE
END IF

THEN

(repeats until all special actions have been specified)
END SPEC-ACTIONS

822

</pre><hr><pre>
-------
Users Control Input

Example

¦k -k -k -k -k -k -k

SPEC-ACTIONS
*** Distributions

*** kwd ds ct tc ts dff	fl f2 f3 f4 f5 f6 f7 f8 f9 flO

<****>< ><><><> <	> <	><	><	><	><	><	><	><	><	><	>

DISTRB 1 3 DY 7 ACCUM 0.25 0.5 0.25

*** User-Defined Target Variable Names
***	addr

¦k -k -k		

*** kwd varnam ct vari si s2 s3 frac oper

<****> <	><-> <	><-><-><-> <	> <—>

UVNAME MANURE 3 SAMSU	0.7 QUAN

SORGN	0 . 3 QUAN

addr

<	>

vari si s2 s3 frac oper

<	><-><-><-> <	> <—>

SN03	0.2 QUAN

*** User-Defined Variable Quantity Lines
***	addr

¦k -k -k		

*** kwd varnam optyp opn vari si s2 s3 tp multiply lc Is ac as agfn ***
<****> <	> <	> <_> <	><_><_><_><_><	> <><-> <><-> <—> ***

UVQUAN puncom RCHRES 2 CVOL tx

<

*** Action Lines

•A-**

¦k -k -k

***optyp range dc ds yr mo da hr mn d
<****><-><—><>< ><—><-><-><-><-><><

PERLND 1 DY 11991/03/15 16:00 1
IF (puncom > 10000) THEN

RCHRES 2
END IF

END SPEC-ACTIONS

¦k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k

addr	uvquan

	> <	>

vari si s2 s3 ac value tc ts num

<	><-><-><-><-><	> <><><>

MANURE	+=	10.0 YR 15

CVOL

pw

+=

puncom

Explanation

In the SPEC-ACTIONS block, the user can change the values of program variables at specified dates and
times. This permits one to model such things as: 1) human intervention, i.e., plowing or application of
fertilizer and pesticide; 2) changes to parameters in ways not possible with the standard inputs; and 3)
conditional actions, i.e., those that are dependent on the value of another program variable.

Special Actions can be performed on variables in the PERLND, IMPLND, RCHRES, COPY, PLTGEN,
and GENER modules. The user's input is contained in the SPEC-ACTIONS block of the UCI file. It is
specified in the five different types of lines shown above and described fully in the following sections.
Output is printed in the Run Interpreter Output (echo) file, and consists of two types: 1) a listing of all
Special Actions as interpreted by the program, and 2) a summary of each Special Action (value of
affected variable before and after the action) as it is implemented during the run.

823

</pre><hr><pre>
-------
HSPF Version 12

Details of Action line (including REPEAT function)

Symbol

Fortran
name(s)

Format

Comment

<oper>

OPTYP

A6

operation type - valid values are







PERLND, IMPLND, RCHRES, or PLTGEN

<f>

TOPFST

13

first operation to act upon

A
1

H

V

TOPLST

14

last operation to act upon, 0 or blank







means use first operation only

dc

CTCODE (1)

A2

code specifying time units of deferral of







action when an applicable logic condition







fails - (MI,HR,DY,MO,YR)

ds

TSTEP(l)

13

number of CTCODE(1) intervals to defer







the action

<yr>

DATIM(l)

14

year (see starting date field in GLOBAL







block for more information) if the date







is left blank, then the action is







performed every interval of the run

<m>

DATIM(2)

IX, 12

month

<d>

DATIM(3)

IX, 12

day

<h>

DATIM(4)

IX, 12

hour

<m>

DATIM(5)

IX, 12

minute

d

DSIND

12

ID number of "DISTRB" line, blank if none

t

TYPCOD

12

2-INTEGER, 3-REAL, 4-DOUBLE PRECISION

<vari>

VNAME

A6

variable to act upon, left-justified

<1><2><3>

CSUB(1-3)

3A3

subscripts for VNAME, blank if none







may be 2-character CATEGORY tag if







applicable; must be integer otherwise

<addrss>

ADDR

18

memory location (in the OSV) of variable







(optional method to specify variable)

<a>

ACTCOD

A3

action code: id number (#) or character







(ch). T= target variable, A=action value:







# ch effect # ch effect







I—1
II

i-3

II

>

t\)

+

II

i-3

II

i-3
+

>







3 -= T= T- A 4 *= T= T*A







5 /= T= T/A 6 MIN T= Min(T,A)







7 MAX T= Max(T,A) 8 ABS T= Abs(A)







9 INT T= Int(A) 10 A= T= T^A







11 LN T= Ln(A) 12 LOG T= LoglO(A)







13 MOD T= Mod ( T, A)

<value>

RVAL or

F10.0

"value" of the action to be taken -



IVAL

110

see notes below

<uvqn>

UVQNAM

A6

name of User-defined variable quantity







containing the "value" of the action

tc

CTCODE(2)

A2

code specifying time units of "repeat"







action - (MI, HR, DY, MO,YR)

ts

TSTEP(2)

13

number of CTCODE(2) intervals to skip







before repeating the action

num

NUMINC

13

number of times to repeat action

824

</pre><hr><pre>
-------
Users Control Input

Details of Distribution line

Symbol

Fortran

Format

Comment



name(s)





<kwrd>

-

A6

keyword (DISTRB) - specifies current line







as a "Distribution" line

ds

DSIND

13

index number - corresponds to the value







specified on the standard line

ct

CNT

13

number of separate actions or applications







to divide the total application into

tc

CTCODE

A2

code specifying time units of the interval







between separate applications or actions -







(valid values: MI,HR,DY,MO,YR)

ts

TSTEP

13

number of CTCODE intervals between







separate applications (see CTCODE below)

<dff>

CDEFFG

A5

deferral flag - indicates how to treat







deferral of the action under a conditional







situation - (valid values: SKIP, SHIFT,







ACCUM; default = SKIP)

<frc>

FRACT(CNT

') 10F5

fractions for each of the separate







applications

Details of

User-defined

Variable Name line

Symbol

Fortran

Format

Comment



name(s)





<kwrd>

-

A6

keyword (UVNAME) - specifies current line







as a "User-defined variable name" line

<unam>

UNAME

A6

user-defined variable name

cnt

CNT

13

number of actual variables included in







aggregate group

Following

inputs repeat

CNT times (

[continuation lines if CNT>2)

<vari>

VNAME

A6

actual variable name

<1><2><3>

CSUB(1-3)

3A3

subscripts for VNAME, blank if none







may be 2-character CATEGORY tag if







applicable; must be integer otherwise

<addrss>

ADDR

14

address of actual variable

<frc>

FRAC

F5.2

fraction of total application allocated







to each of the actual variables

act

ACTCD

A4

action code - QUAN, MOVT, M0V1, M0V2







(see notes on UVNAME action code options)

825

</pre><hr><pre>
-------
HSPF Version 12

Details of User-defined Variable Quantity line

Symbol

Fortran
name(s)

Format

Comment



<kwrd>

-

A6

keyword (UVQUAN) - specifies current line







as a "User-defined variable

quantity" line

<uqnm>

UVQNAM

A6

user-defined variable quantity name

<oper>

OPTYP

A6

operation type of base variable

<#>

OPTNO

13

operation type number of variable

<vari>

VNAME

A6

actual variable name of variable

<1><2><3>

CSUB(1-3)

3A3

subscripts for VNAME, blank

if none







may be 2-character CATEGORY

tag if







applicable; must be integer

otherwise

<addrss>

ADDR

14

address of actual variable



<t>

TYPCOD

12

2-INTEGER, 3-REAL, 4-DOUBLE

PRECISION

<multfact>

UVQMUL

F10.0

multiplier to apply to base

variable

lc

CTCODE(1)

A2

code specifying time units

of the period







to lag base variable









(valid values: MI,HR,DY,MO,

YR)

Is

TSTEP(l)

13

number of CTCODE intervals

to lag







base variable



ac

CTCODE(2)

A2

code specifying time units

of the period







to aggregate base variable









(valid values: MI,HR,DY,MO,

YR)

as

TSTEP(l)

13

number of CTCODE intervals

to aggregate







base variable



agfn

CTRAN

A4

transformation function to

use for







aggregation of base variable







(valid values: SUM, AVER, MAX, MIN.)

826

</pre><hr><pre>
-------
Users Control Input

Details of Free-Format Conditional lines

Symbol	Fortran	Format Comment

name(s)

IF	-	-	Keyword specifying the beginning of a

logical condition

<quan>	CITEM	free(10) May be either a UVQUAN name (format A6)

or a numeric value (format up to F10.0)
<comp>	CCODE	free(2) Numerical comparison operator. Valid

values are:

= equal
/= not equal

>	greater than

>= greater than or equal

>	less than

>= less than or equal
<logop>	CLOGOP	free(3) Logical operator: AND or OR

THEN	-	-	Keyword specifying the end of a logical

condition

ELSE	-	-	Keyword specifying that following special

actions are an alternative to previous IFs
and ELSE IFs

ELSE IF	-	-	Keyword specifying that following special

actions are an alternative to previous IFs
and ELSE IFs, provided that the additional
condition is also satisfied. Exactly one
space must occur between the two words.
END IF	-	-	Keyword specifying the end of a logical

block. Exactly one space must occur
between the two words.

*** free(N) denotes that the field may be any length up to N characters, and may appear in any column,
subject to a maximum line length of 80 characters.

Other Notes:

The <value> field contains quantitative data for the action to be taken. If the variable or array element to
be acted on is an integer (TYPCOD=2) <value> is read as an integer (IVAL); If it is REAL or DOUBLE
PRECISION (TYPCOD=3 or 4), <value> is read as a real number (RVAL). Note that the value must be
given in the units used internally for the quantity concerned, because no conversion is performed when it
is read in. You can find the internal units by looking up the quantity in the Operations Status Vector (for
the module concerned), contained in the supplementary document "Data Structures for HSPF Version 12"
(AQUA TERRA, 2000). For example:

1.	Pesticide storage (in module PERLND) has units of lb/ac (English) and kg/ha (Metric); the same
units are used internally and externally.

2.	Sediment storage (in module PERLND) has internal units of tons/acre (in both English and
Metric systems) but the external units (English and Metric) are tons/acre and tonnes/ha
respectively.

827

</pre><hr><pre>
-------
HSPF Version 12

Repeat definition

This feature allows a single Special Action to be repeated at regular intervals. The input that defines the
repetition is contained entirely on the standard action line. The date-time specified on the line is the
starting date-time. The repetition is specified by: 1) CTCODE(2), which defines the time units of the
interval between repetitions, 2) TSTEP(2), which defines the number of CTCODE(2) time steps between
repetitions, and 3) NUMINC, which is the number of times to perform the action (for example: if
NUMINC is 3, the action will be performed three times, i.e., on the specified date-time and two
repetitions).

Distribute definition

This option allows a single Special Action to be split into multiple actions. The primary purpose is to
distribute a chemical application over time so that it is not all applied to the land segment at once. The
additional information needed to define the distribution is specified on an associated line in the Special
Actions block. An ID number (DSIND) is included on the standard Special Actions line which points to
the associated line. This line contains: 1) the keyword "DISTRB", which identifies the line as a
"distribution" definition line, 2) DSIND, the ID number corresponding to the value on the standard line,
3) CNT, the number of separate applications to divide the total application into, 4) CTCODE and TSTEP,
which define the time interval between applications (see discussion of REPEAT definition above), and 5)
FRACT(CNT), the fraction of the total application represented by each of the separate applications. Note,
the total application is given by <value> (or RVAL), which is specified on the standard Special Action
line.

User-defined variable (UVNAME)

This option allows the user to define a single name (UVNAME) for one or more standard variables to be
used as the target of a Special Action. If a UVNAME is applied to multiple standard variables, then any
action line referring to that UVNAME as a target will cause multiple Special Actions to occur. This line
contains: 1) a user defined name (UNAME), limited to six characters; 2) the number (count) of standard
variables that are included in the set; 3) the variable names; 4) the fractions of the total Special Action
quantity that will be applied to each variable; and 5) and an optional action code. (See below.)

828

</pre><hr><pre>
-------
Users Control Input

UVNAME action code options

QUAN - Specify multiple Special Action variables in one line. Each quantity specified in the UVNAME
line is multiplied by the quantity in the corresponding standard line to generate the final quantity applied
to each of the variables specified in the UVNAME line. This option is designed primarily to allow a total
chemical amount to be applied to multiple soil layers with a single line. This is the default.

MOVT - Redistribute current total quantity contained in multiple variables using predetermined factors.
Each quantity specified in the UVNAME line is multiplied by the total quantity obtained by summing the
current values of the individual variables specified in the UVNAME line. This option is designed to
simulate a plowing operation that completely mixes all material in two or more zones. This would be
accomplished by using quantities that are the fractions of soil or depth in the individual layers. (This
option does not use the "quantity" or Action Code specified in standard line.)

MOV1, MOV2 - Redistribute two quantities in following manner: Variable No. 1 is computed by
multiplying current value of variable No. 2 by quantity associated with Variable 1 in the UVNAME line.
Variable No. 2 is computed by multiplying current value of Variable No. 2 by quantity associated with
Variable No. 2 in the UVNAME line plus the current value of Variable No. 1. This option is designed to
simulate a plowing operation that transfers the material in the surface zone to the upper zone, and results
in the new surface zone having the original concentration of the upper zone. This would be
accomplished by using the following two quantities: 1) ratio of amount of soil (or depth) in surface layer
to amount in upper layer, and 2) subtract surface layer soil amount from upper layer soil amount and
divide the result by the upper layer soil amount. (This option does not use the "quantity" or Action Code
specified in standard line.)

829

</pre><hr><pre>
-------
HSPF Version 12

User-defined variable quantity (UVQUAN)

This option creates a variable quantity which can be used either as an action value for a Special Action or
as a value to be compared in a condition. A UVQUAN refers to a single "base variable" in a single
operation. By default, the UVQUAN contains the last-calculated value of that base variable. Optionally,
it may contain a lagged value (e.g., 5 hours ago); an aggregated value (e.g., the average over the previous
day); or a combination (e.g., the sum over three days ending 24 hours ago). The resulting value can also
be multiplied by a constant factor. It is important to note the difference between a UVQUAN and a
UVNAME. A UVQUAN is a value, just like a constant. A UVNAME is a target address for a special
action.

Logical conditions

Special Actions may depend on whether a user-specified logical condition is true or false, and can be
either skipped or deferred if it is false. They can be grouped into logical blocks by placing IF, ELSE IF,
ELSE, and END IF lines appropriately among the action lines. For example, actions placed between an
IF line and the next logical delimiter are executed only if the condition specified on the IF line is true on
the date and time of the each action.

A simple logical condition is defined as a comparison between two numerical values. Either or both of
these values may be UVQUANs. For example:

month <= 2
6226.0 <= tstage
tfish < faradj

are all simple logical conditions. Complex conditions are built by connecting simple conditions together
with the logical operators AND and OR:

[month = 10 OR (tstage >= 6226.0 AND {month >= 11 OR month <=2} )]

Parentheses are used to specify the order of evaluation, just as in a programming language. By default,
the logical operators are evaluated from right to left, but it is good practice to use them in all cases to
ensure clarity. There are three types: round (), square [], and curly {}. They are equivalent, but the
program requires that matching left-right pairs must be of the same type, in order to help the user prevent
unintended effects in complicated conditions.

IF lines consist of the keyword IF, a logical condition, and the keyword THEN. The IF keyword may
appear anywhere on the line, as long as it is the first non-blank. The condition may be simple or complex,
and may span multiple physical lines. When an IF line is found, HSPF keeps reading lines until the
THEN keyword is found. ELSE IF lines are processed in the same manner. ELSE and END IF are
expected to appear alone on a line, and anything after the keyword is ignored. Note that the "ELSE IF"
and "END IF" keywords must contain exactly one space between the two words.

830

</pre><hr><pre>
-------
Users Control Input

The following example illustrates how HSPF decides whether to perform a special action. Each condition
may be simple or complex. Note the effect of nesting IF-END IF blocks. They may be nested up to ten
levels deep.

*** Condition A
IF month >= 9 THEN
*** Action 1

RCHRES130
*** Action 2
RCHRES130

*** Condition B
IF (tstage > 6226.0) THEN
*** Action 3

RCHRES100	4 CVOL tx	+=	PUNCOM

*** Condition C

ELSE IF (tstage > 6225.0) THEN
*** Action 4
RCHRES100

ELSE
*** Action5
RCHRES130
*** Action6
RCHRES130
END IF

*** Action7
RCHRES130

*** Condition D
ELSE IF month >= 6 THEN
*** Action8

RCHRES130	4 CVOL tc	+=	TAVLQ

*** Condition E
ELSE IF (tfis
*** Action9

RCHRES130
*** ActionlO
RCHRES130

ELSE
*** Actionll
RCHRES130
END IF

*** Actionl2
RCHRES130

831

4 CVOL pw	+=	TAVLQ

4 CVOL tx	-=	TAVLQ

4	CVOL pw	+=	PUNCOM

4	CVOL na	-=	PUNCOM

4	CVOL ac	+=	PUNCOM

4	CVOL sp	+=	TAVLQ

h <= 0.0) THEN

1991/04/29 12:00 4	CVOL	pw	+=	PUNCOM

1991/05/01 12:00 4	CVOL	tx	-=	PUNCOM

4	CVOL	na	-=	TAVLQ

4	CVOL	ac	+=	TAVLQ

</pre><hr><pre>
-------
HSPF Version 12

In this example:

Actions 1, 2, and 7 are performed only if Condition A is true.

Action 3 is performed only if Conditions A and B are both true.

Action 4 is performed only if Conditions A and C are true and Condition B is false.

Actions 5 and 6 are performed only if Condition A is true and Conditions B and C are false.

Action 8 is performed only if Condition A is false and Condition D is true.

Actions 9 and 10 are performed only if Conditions A and D are false and Condition E is true.

Action 11 is performed only if Conditions A, D, and E are false.

Action 12 is always performed.

Evaluation Order

Each IF or ELSE IF line is evaluated a maximum of once per interval, at the time of execution of the first
Special Action that depends on it in that interval. The UVQUAN values used for the numerical
comparisons are computed from the base variables at the point of evaluation, taking into account Special
Actions appearing before the Condition line, but not those after it.

Assume that in the example above, month = 10, tstage = 6224.5, and tfish = 0. HSPF will:

1)	Fetch the value of month.

2)	Evaluate Condition A as true.

3)	Perform Action 1, since A is true.

4)	Perform Action 2, since A is true.

5)	Fetch the value of tstage.

6)	Evaluate Condition B as false.

7)	Skip Action 3, since B is false.

8)	Re-fetch the value of tstage.

9)	Evaluate Condition C as false.

10)	Skip Action 4, since C is false.

11)	Perform Actions 5 and 6, since A is true, while B and C are both false.

12)	Perform Action 7, since A is true.

13)	Skip Action 8, since A is true. Note that Condition D does not need to be evaluated because the
action is skipped regardless of D's value.

14)	Ignore Actions 9 and 10, since they do not occur on this date.

15)	Skip Action 11, since A is true. Conditions D and E can be ignored.

16)	Perform Action 12, which is unconditional.

The use of dated special actions within logical blocks requires caution. For instance, for Actions 9 and 10
above, it is possible that the value of tfish changes between April 29 and May 1 such that one of the
Actions is performed while the other is not, even though they have the same logical conditions. The user
must make sure that this is the intended result.

Another situation requiring care is a Special Action that alters one of the variables which define the
logical conditions upon which that Action depends. For instance, if Action 4 above changed the value of
the UVQUAN tstage to 6224.0 by altering its base variable, then Actions 5 and 6 will still not be executed
that interval, since Condition C is not re-evaluated until the following interval.

832

</pre><hr><pre>
-------
Users Control Input

MONTH-DATA 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

MONTH-DATA

MONTH-DATA	<t>

<val-><val-><val-><val-><val-><val-><val-><val-><val-><val-><val-Xval->
END MONTH-DATA <t>

Up to 50 MONTH-DATA tables may appear in the block
END MONTH-DATA

¦k -k -k -k -k -k -k

Example

¦k -k -k -k -k -k -k

MONTH-DATA

MONTH-DATA	3

*** atmospheric deposition fluxes (kg/ha/month) of N03-N

1.3 1.5 2.0 2.1 2.2 2.2 3.0 2.3 2.0 2.0 1.7 1.4
END MONTH-DATA 3

END MONTH-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	Format	Comment

Name(s)

<t>	NUMBR	13	Users identifying number for this

MONTH-DATA table

<val->	MTHVAL(12) 12F6.0	Monthly values

Explanation

A MONTH-DATA table is used to specify monthly-varying values for parameters that do not have
specific input tables for that purpose.

833

</pre><hr><pre>
-------
HSPF Version 12

CATEGORY 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

CATEGORY

<cat> <	catnam	>

Above line repeats until all categories have been specified

END CATEGORY

Example

¦k -k -k -k -k -k -k

CATEGORY

tag

¦k -k -k

<>

<	catnam	> ***

UN

UNCOMMITTED

WP

WESTPAC CREDIT

CU

CUI-UI CREDIT

CA

CALIF CREDIT

TX

TAHOE EXCHANGE

END 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 Start Format	Comment

Name(s) Column

<cat> CAT	4	A2	Category tag: a two-character identifier

used wherever a subscript is called for.
First character must be a letter. Tags are

case-sensitive,	and must be unique.
<catnam> CATNAM 7 A16 Category name

Explanation

In this block the user declares and names active water categories.

The CATEGORY block is used to facilitate the modeling of water rights in the HYDR section of
RCHRES. Each RCHRES in the run tracks the categories of all inflows, storages, demands, and
outflows. Up to 100 categories may be specified. (See the discussion of Water Rights Categories in
Section HYDR of Module RCHRES in Functional Description).

834

</pre><hr><pre>
-------
Appendix I - Glossary of Terms

Appendix I - Glossary of Terms

The glossary which follows is not exhaustive. Its function is to introduce terms which may be new and to
assign definite meanings to ambiguous terms. It is not a dictionary. The goal is not to provide formally
correct definitions but to supply explanations adequate for practical purposes. Thus in some cases, the
definition of a term is followed by a further explanatory note.

The list that follows is arranged alphabetically. Any word enclosed in parentheses may optionally be
omitted from a term in everyday use, provided that the context ensures that its use is implied.

ANNIE

An interactive program designed for management of WDM files and their data. ANNIE functions
include file creation, data set management, and data analysis, modification, and display.

APPLICATION MODULE

A module which simulates processes which occur in the real world (e.g., PERLND, IMPLND,

RCHRES).

BUFFER

A portion of machine memory space used for the temporary storage of input or output-bound data.

COMPUTATIONAL ELEMENT

See "element."

CONCEPTUAL DATA STREAM

A stream of related data that are independent of any physical input-output device.

COPY

A utility module used to copy time series data. COPY is typically used to transfer data from a sequential
file to the WDM file or DSS file.

DATA SET (TIME SERIES)

A data set in the WDM or DSS file.

DATA STORAGE SYSTEM (DSS) FILE

A direct-access, binary file containing multiple time series data sets. This file supports interfacing of
HSPF with U.S. Army Hydrologic Engineering Center (HEC) software and data formatted for HEC
programs. DSS files are created and maintained by the DSSUTIL program and related software from
HEC.

DIRECT ACCESS FILE

A disk file whose records are read from or written to a specific location within the file. Any record in the
file may be accessed at any time. Contrast with sequential file.

DIRECTED GRAPH

A group of processing units arranged with unidirectional paths between them. No bi-directional paths or
cycles are allowed.

DISPLY

A utility module used to print time series data in a tabular format and summaries of the data.

835

</pre><hr><pre>
-------
HSPF Version 12

DSS

see DATA STORAGE SYSTEM
DURANL

A utility module used to examine the behavior of a time series, computing a variety of statistics related to
it's excursions above and below certain specified levels.

ELEMENT

A collection of nodes and/or zones, e.g., segment no. 1, reach no. 20.

ELEMENT TYPE

A name which describes elements having a common set of attributes, for example, Pervious Land-
segment, Reach/Mixed Reservoir.

EXECUTABLE PROGRAM

A self contained computing procedure. It consists of a main program and its required subprograms.
FEEDBACK ELEMENT

An element which is situated in a loop in a network or which is connected to another element by one or
more bi-directional flux linkages.

FEEDBACK REGION

A group of connected feedback elements. Information and constituent transfers across the boundaries of
a feedback region are uni-directional, but internal fluxes can be bi-directional.

FLOWCHART

A schematic two-dimensional representation of the logic in a program or program unit. The level of
detail in a flowchart depends on its purpose.

FLUX

The rate of transfer of fluid, particles or energy across a given surface.

FUNCTION (as used in program design, not in Fortran language)

A transformation which receives input and returns output in a predictable manner. Most functions within
a program can be classified into one of three types: input, process, or output. Usually, there is a hierarchy
of functions—high level functions contain subordinate functions.

GENER

A utility module used to perform any one of several transformations on one or more input time series.
IMPLND

An application module which simulates the water quantity and quality processes which occur on an
impervious land segment.

INGRP

A group of HSPF operations which share the same internal scratch pad (INPAD), and which can
therefore be connected by transferring time series between operations.

INPAD

see INTERNAL SCRATCH PAD
INPAD AREA

The space available in memory for the storage of time series data in the INPAD. It is the difference
between the area of the common block SCRTCH and the longest OSV in the INGRP.

836

</pre><hr><pre>
-------
Appendix I - Glossary of Terms

INPAD WIDTH

The number of time intervals which are present in the INPAD during a run. This is the INPAD area
divided by the maximum number of rows of the time series data.

INPUT TIME SERIES

Time series which are read in a given simulation run.

INSPAN

see INTERNAL SCRATCH PAD SPAN
INTERNAL SCRATCH PAD (INPAD)

The space in memory where time series data are accessed by modules. It functions as a large buffer for
this data.

INTERNAL SCRATCH PAD SPAN (INSPAN)

The real world time which corresponds to the INPAD width.

IVL

See SIMULATION INTERVAL
JOB

The work performed by HSPF in response to the instructions found in a complete set of User's Control
Input.

KIND

A descriptor which implies either point or mean with regard to a time series.

MEAN-VALUED DATA

Data which represents the behavior of a time series over time intervals rather than at specific points in
time.

MIXED RESERVOIR

A water body which is assumed to be completely mixed.

MODEL

A set of algorithms, set in a logical structure, which represents a process. A model is implemented using
modules of code.

MODULE

A set of program units which performs a clearly defined function.

MODULE SECTION

A part of an Application Module which can be executed independently of the other parts, e.g., SEDMNT
in module PERLND.

MUTSIN

A utility module used to read a sequential external file which has the same format as the file produced by
the PLTGEN module. MUTSIN makes the time series data on the external file available for use by other
modules.

837

</pre><hr><pre>
-------
HSPF Version 12

NETWORK

A group of connected processing units. Information and/or constituents flow between processing units
through uni-directional linkages. That is, no processing unit may pass output which indirectly influences
itself (no feedback loops). These constraints make it possible to operate on each processing unit
separately, considering them in an "upstream" to "downstream" order.

NODE

A point in space where the value of a spatially variable function can be determined.

OPERATING MODULE (OM)

A set of HSPF program units which perform a series of process functions for a specified time on a given
set of input time series and produce a specified set of output time series.

OPERATION

In HSPF: execution of code which transforms a set of input time series into a set of output time series,
for example, execution of an application module or a utility module. See "simulation operation," "utility
operation."

OPERATIONS STATUS VECTOR (OSV)

The data structure for an operating module. The OSV contains all the information (parameters, state
variables) needed to describe the status of an operation and to restart it after an interruption.

OPERATIONS SUPERVISOR (OSUPER)

The HSPF program section which oversees the execution of operating modules and related time series
movement.

OSV

see OPERATIONS STATUS VECTOR
OUTPUT TIME SERIES

Time series which are generated during a simulation run. They do not have to be stored in the WDM or
DSS.

PARAMETER

A variable used in a function which determines the transformation of the input to the function to the
output of the function.

PERLND

An application module which simulates the water quantity and quality processes which occur on a
pervious land segment.

PERVIOUS LAND SEGMENT (PLS)

A segment of land with a pervious surface.

PHYSICAL PROCESS
A process occurring in the real world.

PLS

see PERVIOUS LAND SEGMENT
PLTGEN

A utility module used to write a sequential external file containing up to 10 time series and related
commands for a stand-alone plotting program.

838

</pre><hr><pre>
-------
Appendix I - Glossary of Terms

POINT-VALUED DATA

Data which represents the behavior of a time series at specific points in time rather than over time
intervals.

PROCESS

In the real world: A continuing activity, for example, percolation, chemical reaction. See "physical
process."

PROCESSING UNIT (PU)

An element or group of related elements which is simulated for a period of time. Input comes from
external sources or Processing Units which have completed simulating for the given period of time.
Output goes to other processing units or external files.

PROGRAM

A complete set of code, consisting of one or more program units, the first of which is the "main" program
unit.

PU

see PROCESSING UNIT
RCHRES

An application module which simulates the water quantity and quality processes which occur in a reach
of open or closed channel or a completely mixed lake.

REACH

A free-flowing portion of a stream, simulated in HSPF using storage routing.

RUN

A set of operations which are performed serially and cover the same period of time.
RUN INTERPRETER

The HSPF section which reads and interprets the User's Control Input. It sets up internal information
that instructs the system regarding the sequence of operations to be performed, stores parameters and state
variables for each operation in the OSV, writes instructions related to the movement of time series data
and performs other minor functions.

SECTION

see MODULE SECTION
SEGMENT

A portion of the land assured to have areally uniform properties.

SEQUENTIAL FILE

A file whose records are organized on the basis of their successive physical positions. A record may be
accessed only after the previous record has been accessed.

SIMPLE ELEMENT

An element which is not a feedback element.

SIMULATION

Imitation of the behavior of a prototype, using a model. We implement the model on a computer using
an application module.

839

</pre><hr><pre>
-------
HSPF Version 12

SIMULATION INTERVAL

The internal time step used in an operation.

SIMULATION MODULE
See APPLICATION MODULE

SIMULATION (OPERATION)

Simulation of a specified prototype for a specified period.

STATE VARIABLE

A variable containing the current value of a storage or other measurable quantity. It may change through
time.

STRUCTURE CHART

A diagram which documents the result of structured (program) design. It indicates the program units,
their relationships (including hierarchy) and, optionally, the data passed between them.

TIME SERIES

A series of chronologically ordered values giving a discrete representation of the variation in time of a
given quantity.

(TIME SERIES) DATA SET
A data set in the WDM or DSS file.

TIME SERIES MANAGEMENT SYSTEM (TSMS)

The code sections of HSPF which are concerned with manipulation of time series or the files used to
store time series. It includes TSGET and TSPUT.

TIME SERIES STORE (TSS)

An obsolete direct access file that was used for medium/long term storage of time series. Support for the
TSS system has ceased, and it has been removed from the program. It has been replaced by the WDM (or
DSS) file.

TIME SERIES STORE MANAGEMENT (TSSM)

The HSPF module which (in previous versions) maintained a User's Time Series Store (TSS) and
performed maintenance tasks associated with the data sets in it. TSSM has been removed from the
program.

TSPUT

The HSPF module which moves time series data from the INPAD to a WDM file or DSS file.

TSGET

The HSPF module which moves time series data from a WDM file, DSS file, or sequential file to the
INPAD.

TSS

see TIME SERIES STORE
TSSM or TSSMGR

see TIME SERIES STORE MANAGEMENT
UCI

see USER'S CONTROL INPUT

840

</pre><hr><pre>
-------
Appendix I - Glossary of Terms

USER'S CONTROL INPUT

The file in which the user specifies the operations to be performed in a run, the parameters and initial
conditions for each operation, and the time series to be passed between them. HSPF reads this from an
ASCII file.

UTILITY MODULE

A module which performs operations on time series which are peripheral to the simulation of physical
processes, for example, data input, plot generation, statistical analysis.

UTILITY OPERATION
Execution of a utility module.

VOLUME

A source (WDM, DSS, sequential file or INPAD) or target (WDM or DSS) for time series data.
WATERSHED DATA MANAGEMENT (WDM) FILE

A direct-access, binary file containing multiple time series data sets. This file is the primary storage file
for HSPF time series data. WDM files are created and maintained by the WDMUtil and ANNIE
programs and related-software.

WDM

see WATERSHED DATA MANAGEMENT FILE
WORLD VIEW

A representation of the real world which includes simplifying assumptions of physical processes.

ZONE

A finite portion of the real world. It is usually associated with the integral of a spatially variable
quantity.

841

</pre><hr><pre>
-------
</pre><hr><pre>
-------
Appendix II - Time Series Concepts

Appendix II - Time Series Concepts

A time series is a sequence of values ordered in time. The interval of time between successive values is
called the time step or the time increment or the time interval of the time series. The time step for a time
series is often a constant value but may also be variable. The implementation in HSPF restricts the
variability in a manner discussed below. The values in the time series may represent the behavior of a
process at a point in time or an average over the time step of the time series. A time series whose values
represent behavior at points in time is called a point-valued time series and is represented symbolically by
Linear interpolation is used to define intermediate values in a point-valued time series. A time series
whose values represent average or aggregated behavior over the time step is called a mean-valued time
series and is represented symbolically as The meaning of "average" and "mean" is taken in a wide
sense and includes any value assumed to be representative of behavior of the time series over the time
step, rather than at a specific point in time.

The following figure shows the difference between the point and mean value time series in graphic form.
It is important to note that only one value is needed to represent the behavior of a mean-valued time series
for one time step. We visualize the value as being assigned to a time step in this case. On the other hand,
two values are needed to represent the behavior of a point-valued time series over the same interval. We
visualize the values as being assigned to the time points in this case. Each time point at which a value of
the series is given in a point-valued time series is viewed as "belonging" to the time step which it ends.
Time points belonging to all time steps contained within a larger time step are viewed as belonging to the
larger time step also. For example, all time points in a point-valued time series except the first time point
belong to the time interval spanning the time series duration. The first time point of a point-valued time
series is viewed as belonging to the time step immediately preceding the first time step of the time series.
This precise definition of belongingness for a time point is needed to avoid confusion in defining
operations on the time series.

A number of operations on time series, discussed in the Time Series Linkages section, preserve the
integral of the time series between any two time points which end time steps in the time series. The
integral may be visualized as the area under the broken line graph formed by connecting adjacent values
in the point-valued time series or the area under the histogram representing the mean-valued time series.
The trapezoidal rule applied to the point-valued time series yields the exact value of the integral whereas
the simple rectangular rule yields the exact value for the mean-valued time series.

Time is given as year/month/day/hour/minute to completely specify either a time interval or a time point.
The date/time given by the internal clock uses the "contained within" principle for all levels of the
date/time. That is, each smaller interval is contained within the next larger interval. This is the
conventional usage for year/month/day but is not conventional for the hour/ minute. For example, the
date string 1977/01/02 labels the second day of the first month of the 1977th year. On the other hand, in
conventional usage the time string 10:15 refers to the end of the 15th minute after (not within) the 10th
hour of the day. This change in meaning is eliminated in the internal date/ time clock for HSPF. In the
internal system, time string 10/15 labels the 15th minute of (ie. within) the 10th hour of the day. A
comparable time to 10:15 in the conventional sense would be 11/15; that is, the 15th minute of the 11th
hour of the day.

In summary, the internal clock convention labels time intervals at all levels of date/time whereas
conventional usage labels time intervals for year/month/day but labels time points for hour/minute. In
HSPF, time points are then referenced uniquely by the minute which ends at the time point in question.

843

</pre><hr><pre>
-------
HSPF Version 12

Point-valued time series

I
I
I
I
I
I
I

0

1

|	o	o

I

I	O

I	o	o	o

I
I
I

I	1	1	1	1	1	1_

0	1	2	3	4	5	6

Time point numbers

Mean-valued time series

X

Time point # —> 0	12	3	4	5	6

Time step # —>	12	3	4	5	6

Figure 75: Comparison between point- and mean-valued time series

The time steps in a time series are labelled with the minute which ends the time step. Thus, the values in
a mean-valued time series are treated logically as having occurred at the end time point of the time step.
Note that for purposes of the internal clock and for description of internal concepts each time point has
one and only one label. This means that we refer to the instant in time forming the boundary between two
days using the label associated with the first day even though our interest is centered on the second day.
This convention is called the ending time convention.

844

</pre><hr><pre>
-------
Appendix II - Time Series Concepts

A starting time convention is used externally for some purposes because traditional usage requires both
conventions depending on the context of the statement about time. Users are more comfortable using the
traditional clock and both a starting time and an ending time convention. The starting time convention is
used when the start of some time span is in mind and the ending time convention is used when the end of
some time span is in mind.

The time span associated with a time series must be defined. Logically, a time series is of infinite length.
Realistically, every time series has a finite length and may be broken into short segments for convenience
in recording the values on some medium such as the printed page, a magnetic tape, a data card or a
magnetic disk. These shorter segments are made necessary by various software and hardware constraints.
Therefore, a time span is associated with each medium used to record or store the time series.

A further practical complication is created by the variety of representations used for time series. The
user's most likely mental image is a line drawn in some coordinate system on the printed page. This
method of representing time series is most convenient for the user but a series of discrete numbers is most
convenient for the digital computer. The time series of indefinite length must be subdivided into shorter
time spans to fit the card images or the records on the tape or disk. In some cases data for the time series
may be incomplete (some values not present) or, in some cases, many of the values are zero so that not all
values for the time series are stored on the medium. In such cases a date/time indicator is given on the
record. As an example, consider the format used for data records produced by the National Weather
Service. The date/time information on each record of the medium permits the reconstruction of the
complete time series (except for the missing values) even though not all values are recorded on the
medium. However, conventions must be established so that missing records on a given recording
medium are properly interpreted. For example, are the missing data merely zeros or did they occur
because of instrument malfunction? If the data are missing, a "filler" should be inserted when the data are
placed on the WDM or DSS so that it can be changed at a later time or so that such missing periods can
be properly handled by other parts of the HSPF system. The filler value is called the TSFILL attribute in
the WDM system.

845

</pre><hr><pre>
-------</pre></td></tr></table></body></html>