CRiSP1.6 Passage Online Help
Columbia River Salmon Passage Model


|Tools & Models| |CRiSP Passage| |Manual| |Table of Contents|

Introduction

The Columbia River Salmon Passage model (CRiSP.1) tracks the downstream migration and survival of migratory fish through the tributaries and dams of the Columbia and Snake Rivers to the estuary. CRiSP.1 describes in detail the movement and survival of individual stocks of natural and hatchery-spawned juvenile salmonids and steelhead through hundreds of miles of river and the major dams. Constructed from basic principles of fish ecology and river operation, CRiSP.1 provides a synthesis of current knowledge on how the major hydroelectric system in the country interacts with one of its major fisheries. Biologists, managers and others interested in the river system can use this interactive tool to evaluate the effects of river operations on smolt survival.

There are five major uses of the model:

  1. educate users on the state of knowledge of the system
  2. develop experiments
  3. evaluate sensitivity of fish survival to different system factors
  4. predict survival and travel time for use in life-cycle models and inseason management
  5. estimate uncertainty in predictions.

There are two modes in which CRiSP.1 can be executed. Scenario Mode illustrates the interactions of model variables. Monte Carlo Mode, which is stochastic, provides measures of variability and uncertainty in predicting passage survival. Using Monte Carlo Mode, estimates of probability distributions for survival and travel time can be determined for any stock between any two points in the river system.

CRiSP.1 has advanced programming features including:

The model is designed to run on Windows 95/NT operating systems or Sun SPARC workstations running Solaris2.X operating system. CRiSP.1 has been tested in both environments.

CRiSP.1 was developed at Columbia Basin Research, School of Fisheries, University of Washington, under a contract from Environment, Fish and Wildlife, Bonneville Power Administration (BPA).

The model is being applied to the Columbia River. As a result, the files describing the river and release points of fish into the river are an essential part of the model. A list of references pertaining to model theory and calibration can be found in the Theory, Calibration and Validation Manual.

General Description

CRiSP.1 models passage and survival of multiple salmon substocks through the Snake and Columbia rivers and their tributaries and the Columbia River Estuary.


Map of Columbia and Snake Rivers

The model recognizes and accounts for the following aspects of the life-cycles of migratory fish and their interaction with the river system in which they live.

Fish survival through reservoirs depends on:

Fish migration rate depends on:

Fish passage through dams depends on:


Cross-section of a dam showing fish passage routes. Fish collected
in bypass systems are returned to the tailrace or transported downstream.

CRiSP.1 in Context with Other Models

CRiSP.1 is one of several models describing the passage of juvenile salmon through the Columbia Basin system. The major mainstem passage models and their time steps are outlined below. All of these models describe fish survival through the river system but differ in the details included. The simplest model is PAM and the most complex is CRiSP.1.6. With increasing complexity, the other models fall in between. CRiSP.0 is close to PAM, FLUSH lies in the middle and CREM and RESPRED are in turn more complex.

Simple and complex models each have advantages and disadvantages and the choice depends in part on the types of questions being addressed. Simple models are easy to understand and do not require large amounts of data since they are generally developed to the degree of resolution of the available data. Unfortunately, since they are designed to fit existing data, the variables are identified from past studies and there is no formal process to assess if chosen variables are insignificant or the driving variables. Simple models, being empirical and based on existing data, typically fit the available data but it is not clear that they would still represent the system if the system were to change.

In general, complex models are based on underlying mechanisms which are inferred from analogous systems. As such, they often can be extended beyond the data of the system they are modeling. Mechanistic models are particularly useful for developing hypotheses that are to be tested through experimentation. A disadvantage of such models is that they require a considerable effort to understand and calibrate, and there is a chance that the underlying mechanisms may be misapplied or inappropriate, this can also be the case with simple empirical models.

The tags of "simple and empirical" vs. "complex and mechanistic" are, in fact, only points along a continuum. Even the simplest models have some underlying mechanism and complex models, at some level of detail, contain empirical descriptions in which the parameters have no mechanistic foundation and are applied because they fit data or a desired mathematical form. The level of detail at which a model switches to empirical formulations distinguishes its degree of mechanism.

All of the existing mainstem fish passage models leave out some variables which may be important. The simplest models, such as PAM and CRiSP.0, rely solely on flow to describe survival and are of limited value for investigating other factors. Although FLUSH and CRiSP.1.6 consider the effects of fish age on survival, none of the models considers differences in fish conditions, fish bioenergetics, or the river and tributary carrying capacities.

CRiSP.1.6 Highlights: Updates, Changes and New Features

Version 1.6 of the CRiSP Model includes many updates, changes and new features. Yearly Input Data Files from previous versions of the model can be converted into the new version data files by reading the files into CRiSP.1.6 and writing the data out to your local system. We recommend using the CRiSP.1.6 calibrated values. Changes to the model in version 1.6 include improvements to the internal operation of the model and the graphical user interface (GUI). The following list highlights many of the improvements to the model.

Fish Passage in CRiSP.1

Species and Stocks

The species and stocks of fish entering the river system are arbitrarily defined. Species are identified as:

Stocks are identified by their species, spawning stream, and season. The number of fish released at each site is identified on a daily basis. Each release group has a unique set of passage parameters and corresponding model results are tabulated separately.

Note. Wild and hatchery migrants do not necessarily need to be defined as separate stocks if separate tracking is not desired, but definition as separate stocks is required if you assign them different parameter values (e.g. different vulnerability to predation, swimming behavior, etc.). If you want to keep track of different stocks as different releases with the same parameters, CRiSP.1 tracks each release separately in both Monte Carlo Mode and Scenario Mode.

Passage Algorithms

CRiSP.1 calculates arrival of all fish on each day to each river segment (a section of river between confluences, dams, or headwaters) before calculating passage of fish to the next downstream segment. With this set of arrival information, it is possible to assign rules for fish transportation based on a percentage of the total run that will arrive at a dam. Thus, CRiSP.1 moves fish downstream a segment at a time, adding smolts coming from tributaries or hatcheries on a daily basis. The number of fish leaving a river segment on any given day depends on:

Dam operations control important variables of CRiSP.1. The three major variables are daily total flows, spills, and fish transportation.

Dam passage survival depends on the pathway fish take through a dam. At all dams, fish arriving at the forebay can pass over the spillway or through the powerhouse. The fraction of fish entering the spillway depends on:

Fish entering the powerhouse can pass through the turbines or be guided by traveling screens. The propensity of a population to be guided is represented by a fish guidance efficiency (fge) which can be set constant or varied over a season for each project and population. (See FGE and FGE Equation sections for more details.) Mortality depends on the pathway chosen which accrues for spillway passage, collection, and turbine passage. Dam activities are calculated on a six hour basis and summed over a day to provide a daily fish input to the next reservoir.

Bypassed fish at specified dams may be transported in barges or trucks to any point in the river downstream of the collection site. Bypassed fish not transported are released into the tailrace. CRiSP.1 removes transported fish at a dam, computes a mortality, and releases fish at the transportation site at a later time as determined by a transportation velocity. Whether collected fish are transported depends on rules developed to simulate actual transportation decisions. Transportation factors are set with the Transport Tool and include:

Survival and Migration

Survival and migration of fish in CRiSP.1 can be modeled in two modes: Scenario Mode and Monte Carlo Mode.

Scenario Mode runs one year with as many releases as desired. It can be used to gain insight on the effects of changes in system parameters on the survival and migration of fish during a single water year. In this mode, natural unregulated inflows are specified. These flow into the mainstem rivers and storage reservoirs at headwaters. System operation and fish biological parameters can be varied stochastically according to user specifications.

Monte Carlo Mode runs CRiSP.1 with as many releases as desired for one or more combinations of water year and system operations. The main variable changed in each run is river flow. Flows are specified at the project (dam), not headwaters. In each run, a different flow regime and other model parameters are used. Fish survival is determined for each run and the distribution of survivals from all runs provides an estimate of the probability distribution of survival under the specified conditions. Flow is generated from runs of the hydroregulation models maintained by the Army Corps of Engineers (HYSSR) and the BPA (HYDROSIM). The hydroregulation models use historical water data and a projection of electrical demand to simulate system flows, which are designated flow.archive files. These files give period-averaged flows at operating projects which are modulated by CRiSP.1 to represent daily flows. CRiSP.1 uses the modulated flows along with yearly input data files describing the system operations and fish biological parameters to produce histograms of survival.


Interaction of hydroregulation model and CRiSP.1 in Monte Carlo Mode

CRiSP.1 Submodels

CRiSP.1 integrates a number of submodels that describe interactions of isolated components. Together they represent the complete model. These elements include submodels for: fish travel time, reservoir mortality, dam passage, total dissolved gas supersaturation, and flow/velocity relationship. The structure of CRiSP.1 allows you to select different formulations of these submodels at run time. In this sense, CRiSP.1 can be configured for simple interactions or it can be set up to consider many ecological interactions. CRiSP.1, as it is presently calibrated, has an intermediate level of complexity: age dependent travel time is implemented, but other age dependent factors are switched off. A brief description of submodels follows.

Travel Time

The smolt migration submodel, which moves and spreads releases of fish down river, incorporates flow, river geometry, fish age and date of release. The arrival of fish at a given point in the river is expressed through a probability distribution. All travel time factors can be applied or they can be switched off individually, resulting in a simplified migration model.

The underlying fish migration theory was developed from ecological principles. Each fish stock travels at a particular velocity relative to the water velocity. The relative velocity can be set to vary with fish age. In addition, within a single release, fish spread as they move down the river.

Predation Rate

The predation rate submodel distinguishes mortality in the reservoir, and the forebay and tailrace of dams. The rate of predation can depend on temperature, diel distribution of light, smolt age, predator density, and reservoir elevation.

Gas Bubble Disease

CRiSP.1 incorporates a separate component of mortality due to gas bubble disease which is produced by total dissolved gas supersaturation. The mortality rate is species specific and is adjusted to reflect the effect of fish length and population depth distribution.

Dam Passage

Timing of fish passage at dams is developed in terms of a species dependent distribution factor and the distribution of fish in the forebay, which can change with daily and seasonal light levels. Fish guidance efficiency can be held constant over a season or it can vary with fish age and reservoir level.

Transportation Passage

Transportation of fish at collection dams is in accordance with the methods implemented by the U.S. Army Corps of Engineers. The start and termination of transportation and separation of fish according to species can be determined for any dam under the same rules used to manage the transportation program. Time in transportation and transportation mortality can also be set.

Total Dissolved Gas Supersaturation

Total dissolved gas supersaturation, resulting from spill at dams, can be described with gas production equations which are an empirical fit of spill data and monitoring data collected by the U.S. Army Corps of Engineers. Alternatively, supersaturation can be described by other empirical models (not calibrated) or by a mechanistic submodel that includes information on the geometry of the spill bay and physics of gas entrainment.

Flow

Flow is modeled in two ways: it can be specified at dams using results of system hydroregulation models or it can be described in terms of daily flows at system headwaters. When flow is described in headwater streams, the flow submodel generates a random set of seasonal flows that have statistical properties in accordance with the available water over a year. In this fashion, the model statistically reproduces flow for wet, average and dry years. The user controls the mainstem river flows by adjusting the outflow of the storage reservoirs within their volume constraints.

Water Velocity

Water velocity is used in CRiSP.1 as one of the elements defining fish migration. Velocity is determined from flow, reservoir geometry and reservoir elevation.

Reservoir Drawdown

Reservoir elevation is set on a daily basis from elevation information in the system hydroregulation models or from user specified files. As water levels drop, part of the reservoir may become a free-flowing stream.

Stochastic Processes

CRiSP.1 can be run in a Monte Carlo Mode in which flows and model parameters vary within prescribed limits. In this mode, survival to any point in the river can be determined as a probability distribution.

Geographical Extent

CRiSP.1 can describe a river to any desired level of detail by changing a single file containing the latitude and longitude of river segments, dams and release sites. In its present configuration, three river description files are available. One file contains an abbreviated river map with the major tributaries and about thirty representative release sites, although more can be added easily. The two other river description files contain drawdown alternatives. See the River Description File section for more information.

Calibration Issues

The CRiSP.1 submodels are individually calibrated. Thus CRiSP.1 was not directly calibrated from mark-recapture survival studies. Instead, such studies provided a check on the calibrations of the individual mechanisms of the model (model validation). Notes on the submodel calibrations are detailed below.

Travel Time

The travel time submodel was calibrated for subyearling chinook, yearling chinook, and steelhead using tagging data from the entire river system and over the entire migration season. Two separate calibration processes were applied: one to measure the spread of fish as they moved through the reservoir, and the other to measure the change in relative migration velocity with fish age. The first used marked, individual stock releases over a short period of time, and the second used marked and recaptured fish over entire seasons.

Predation Rate

Predator-prey interactions in CRiSP.1 were calibrated with information from predation studies in John Day Reservoir and information on predator densities for each of the major reservoirs.

Gas Bubble Disease

The rate of mortality due to gas bubble trauma was calibrated from dose-response studies conducted in both field and laboratory conditions.

Dam Passage

Diel passage elements of CRiSP.1 were calibrated from hydroacoustic and radio-tagging studies at dams. Fish guidance efficiency and spill efficiency were calibrated from a number of studies at a variety of dams. Fish guidance efficiency can be set to change with fish age and reservoir level or it can be set constant over the year. Mortalities in dam passage were determined from mark-recapture studies at dams.

Transportation Passage

Separation of large and small fish in transportation was applied from general information on the efficiency of the separators in the transportation facilities at dams. A transportation mortality was determined for each species, based on transport-benefit studies. In addition, time to transport fish through the river system was specified.

Total Dissolved Gas Supersaturation

Total dissolved gas supersaturation models were calibrated with data from the Army Corps and includes information collected in the 1992 drawdown study in Lower Granite and Little Goose reservoirs, as well as monitoring data from recent aggressive spill programs.

Flow

Headwater flows in Scenario Mode were calibrated from information on stream flows provided by the U.S. Geological Survey. In Monte Carlo Mode, the modulators of the period average hydroregulation model flows were calibrated against historical daily flow records at dams.

Water Velocity

Water velocity requires information on reservoir and geometry. The relationship between geometry and elevation and free stream velocities were determined from Lower Granite Reservoir drawdown studies.

Stochastic Processes

The ranges for variables used in the Monte Carlo Mode have been calibrated to available data in the above mentioned studies.

Getting Started

The cross-platform Help provides instructions for using Columbia River Salmon Passage model (CRiSP.1) on both Unix and Windows 95/NT operating systems. Any differences in the commands used or the operation of CRiSP.1 between the operating systems are noted in the text. Help is designed to meet the needs of a wide variety of users, from a novice user of Solaris2.X or Windows 95/NT operating systems to programmers familiar with the C++ language in which the CRiSP.1 model was written.

Installation

CRiSP.1 is designed to run on a Sun SPARC workstation running Solaris2.X or on a personal computer running Windows 95/NT operating systems. CRiSP.1 should run as expected on Windows 98, 2000, ME, and XP. The first step is to install the model on your computer.

Internet Access and Communication

CRiSP Passage information and files are available to users via the World Wide Web (web). Questions about CRiSP.1 can be sent to the CRiSP Passage email address listed below.

Windows 95/NT Installation

Minimum System Requirements

Download and Install

  1. Download the current version of CRiSP.1 (Win32) from the Columbia Basin Research web site (http://www.cbr.washington.edu/crisp/crisp.html). With a 28.8 modem, downloading the model takes approximately 30 minutes.
  2. Save to the directory of your choice when downloading.
  3. Double click on the self-extracting file crisp1.exe icon or launch crisp1.exe from a Run dialog box.
  4. A "WinZip Self-Extractor" dialog box will open. Select a destination directory for the install directory (Install) and subdirectories (Disk1 - Disk5).
  5. Click Unzip to start the extracting process.
    Note. You can leave the check mark on "Overwrite Files Without Prompting" to shorten the upgrade process.
  6. When the extracting process finishes, click OK.
  7. Click Close to quit the "WinZip Self-Extractor" dialog box.
  8. Change to the specified unzip destination directory.
  9. Open the Install/Disk1 directory and double-click on the setup.exe icon.
  10. Follow the on-screen instructions.
  11. When you have finished installing CRiSP Passage, you can delete the Install directory and the self-extracting file crisp1.exe.

Unix Installation

Minimum System Requirements

Download and Install

  1. Download the current version of CRiSP.1 (Unix) from the Columbia Basin Research web site (http://www.cbr.washington.edu/crisp/crisp.html). The tar file includes all help files, sample data files, and executable files.
  2. Save to the directory of your choice when downloading.
  3. To extract the files, copy the tar file into your desired installation directory and type the following commands:
       gunzip r1.6.0.tar.gz
            tar -xf r1.6.0.tar
    
  4. This will create the directory "r1.6.0" containing all the data files and executable files.
  5. When you have finished installing CRiSP Passage, you can delete the r1.6.0.tar file.

Required Files

There are four files required to run CRiSP.1 in both Scenario and Monte Carlo modes:

In the simplest file arrangement, all files are placed in the same folder (or directory). For example, the configuration below shows these files contained within the folder named CRiSP Passage. By default, output files are written to the directory from which CRiSP.1 was executed (the CRiSP.1 "home directory"). On Windows 95/NT operating systems, this is the source directory for crisp1.exe. When saving files to the local system, you can override the default directory to specify any output directory. On the Unix system, the files can be written out to any directory for which the you have write permissions. For more information about these files and other input and output files, see the CRiSP.1 Files section.


Windows 95/NT installation of CRiSP.1

Starting CRiSP.1

Starting from the Desktop (Windows 95/NT)

There are several ways to start CRiSP.1 using the graphical interface from your Desktop.

Wait for the CRiSP.1 Graphical User Interface and River Map to appear. Basic information about CRiSP.1, model parameters, and running CRiSP.1 are covered in later sections.


Main Panel and River Map

Starting from the Command Prompt

To start CRiSP.1 from a command prompt, the model must be in the current directory (or, on Unix only, in the path). At a command prompt, type a command with the following syntax:

crisp1 [-l{wmrd}] [-bsmi] [-r river_desc] [-f data_file] [-o output_file] [-c output_control_file] [-u]

The arguments delimited by "[ ]" are all optional and can be given in any order. If an argument is not present, the default value is used.

Example commands that open the CRiSP.1 Graphical User Interface

       crisp1
        crisp1 -lmw -r columbia_drawdown.desc -f new.dat
        crisp1 -f test.dat

Example commands that run CRiSP.1 in batch mode

       crisp1 -b -o batch.ctrl
        crisp1 -b -c batch.dat
        crisp1 -bsi -f realtime.alt.dat
        crisp1 -b -u

Running in Batch Mode

The CRiSP Passage model can be executed in batch mode for either Monte Carlo or Scenario runs. See the Starting from the Command Prompt section for command options. The following are special instructions on running in batch mode for both Unix and Windows 95/NT operating systems.

Unix

On the Unix system, batch mode runs can be executed from the command prompt using any of the options detailed in the Starting from the Command Prompt section. There are a few special considerations for running CRiSP.1 in batch mode on Unix systems. The CRiSP.1 Unix distribution includes the program crisp1bat, which is the simulation engine of CRiSP.1 without the graphical user interface. Using this program, you can run CRiSP.1 in batch mode without having to set the DISPLAY environment variable. This makes it possible to run the CRiSP.1 model in batch mode from a dial-up connection or from a detached process, i.e. left running after logging off the workstation. The crisp1bat program uses the same command prompt arguments as crisp1, except that the -b is assumed.

Example commands

       crisp1bat -o batch.ctrl
        crisp1bat -c batch.dat
        crisp1bat -u

Windows 95/NT

There are a few special considerations for running CRiSP.1 in batch (non-graphics) mode on Windows 95/NT systems. These derive from the architecture of Windows 95 and Windows NT, which make sharp distinctions between MS-DOS-based programs and Windows-based programs.

If you are running CRiSP.1 from the MS-DOS prompt, you have two choices: 1) redirect the program's standard and error output streams to text files or 2) have standard and error output streams write to the MS-DOS shell.

Example command to redirect the output streams to text files

       crisp1 -bs -f base.dat >output.txt 2>error.txt

Example command to redirect both of the output streams to the same file

       crisp1 -bs -f base.dat 1>output.txt 2>&1

To let the batch mode program's output streams write to the MS-DOS shell, you must use a second program called crisp1b that runs crisp1 in batch mode and is equivalent to crisp1 -b.

       crisp1b -s -f base.dat

For this to work properly, the files crisp1.exe and crisp1b.exe must reside in the same directory.

Warning. It would be a mistake to run the crisp1b program and then redirect its standard output streams.

CRiSP.1 Files

River Description File: columbia.desc

The River Description File (columbia.desc) contains all the information necessary to define the physical river system from the ocean to the various headwaters. This includes latitudes and longitudes of all possible release sites, dams, and river segments as well as many of the physical parameters of these features. All menus and input and output tools automatically configure from the information in this file. See the Technical Details section on the River Description File Structure for details on file structure, rules of construction, and parameter definitions. The Parameter Glossary contains definitions of the parameters and tokens found in this file.

The columbia.desc file is an ASCII file that you can edit and contains the following information:

The default columbia.desc file contains an abbreviated description of the Columbia Basin river system with about thirty fish release points and major dams. Some rivers in the basin are not represented in this map (for example, Imnaha River or Grande Ronde River).

Additional River Description Files are also available in the CRiSP.1 distribution. They have been modified to reflect changes in the river that could occur under certain proposed management actions. The file columbia_snakedraw.desc does not have any of the Snake River dams in it. This simulates a Snake River drawdown in order to make the Snake River free-flowing. It has four dams removed that are in the default columbia.desc file: Lower Granite, Little Goose, Lower Monumental, and Ice Harbor dams. The file columbia_drawdown.desc is similar to columbia_snakedraw.desc. In addition to the removal of the four Snake River dams, it also has the John Day dam removed. This represents the most drawdown being considered. Five dams are removed that are in the default columbia.desc file. A River Description File can only be read when CRiSP.1 is initially started. In order to use one of the alternative files, you must start CRiSP.1 from a command prompt with the -r flag. See the Starting from the Command Prompt section for more information.


Columbia River map showing potential release sites, dams, and rivers

Yearly Input Data File: base.dat

The Yearly Input Data File (base.dat) contains all model parameter data for a single year run. If no other yearly input data file is specified when CRiSP.1 is started, the model will initially read the file base.dat. The CRiSP.1 Graphical User Interface menus are used to create and modify the parameter data for a run or for storage in data files. The data can be saved as either a single file or as a group of parameter data files corresponding to predefined data groupings. These files can be read into the model individually or in a group prior to a run. See the Reading Data into CRiSP.1 section for further details. A file containing all model parameter data is designated .dat and is referred to as a yearly input data file.

Parameter Data File Name Extensions

The Model Parameter Data Files section discusses the data and file name extensions in further detail. A yearly input data file containing all the data used in CRiSP.1 may be over 1M in size, depending on the number of releases and tributaries defined in the river. Typical data files are about 200K in size. See Technical Details section on the Yearly Input Data File Structure for details on file structure, rules of construction, and parameter definitions. The Parameter Glossary contains definitions of the parameters and tokens found in this file.

Model Parameter Data Files

CRiSP.1 contains eight predefined model parameter data file name extensions. The model parameter data files are subsets of the data in CRiSP.1. All data in CRiSP.1 can be contained in these eight parameter data file types. All eight files combined would contain the same information as a Yearly Input Data File (.dat). By using Save As and a predefined extension, specific model parameter data groupings can be saved to a file for future use. In a similar manner, specific model parameter data groupings can be read into CRiSP.1 by using Open. See the Reading Data into CRiSP.1 section for further details. All eight parameter data files can be written out simultaneously using a Control File.

The following is a list of data parameters stored in each file as determined by the file name extension. Following each extension is a short description and in parentheses is the GUI menu location for editing these parameters.

Control File

A Control File allows you to write out or read in a set of parameter data files. In this manner, subsets of model parameter data can be replaced while other elements are unchanged. Control files are designated by the extension .ctrl.

Control files contain a list of Model Parameter Data Files which are identified in the lines below the Control File line (see file sample). You can save to disk all eight parameter data files with the same base name as the Control File by selecting Control Files (*.ctrl) for Save as type (Unix users will need to specify the file name extension) from FileSave As.

When reading control files into CRiSP.1, the parameter data files specified in a Control File can have different base names. By editing the Control File, you can mix parameter data files from different alternatives and sessions. You can use any text editor to edit a Control File. Each specific combination of parameter data files listed in a Control File can be read into CRiSP.1 by selecting the control file you want from FileOpen.

Sample Control File with a list parameter data files from different alternatives.

#===================================================#
# CRiSP Control File                CRiSP v1.6.0 (Solaris 2.x)
#
#Written on Fri Jun 25 11:53:20 1999

#===================================================#
version 6
include session.beh
include session1.res
include session3.spill
include session.flow
include session2.dam
include session.rls
include session4.river
include session.cnf

Flow Archive File: flow.archive

The Flow Archive File (flow.archive) contains flow, spill and elevation data generated from hydroregulation models such as SAM, HYSSR or HYDROSIM. The flow archive file can be used in Monte Carlo Mode as the source for flow, planned spill, and elevation. Information contained in a flow.archive file includes:

See Technical Details section on the Flow Archive File Structure for details on file structure and parameter definitions.

Output Files and Directories

A CRiSP.1 run generates and stores various information in output files and directories. Without making any selections with Output Settings (Run Menu), a model run in either mode generates travel time and survival information at the Estuary. All other data output must be specified prior to the run in Output Settings or specified in the data files used during the run. The following files and directories result from model runs and are stored in the CRiSP.1 home directory.

Reading Data into CRiSP.1

By default, data stored in CRiSP.1 is replaced by data read from a file, if and only if, that data item appears in the file. For each appearing data item, this is referred to as a "replace" operation. For example, this allows you to read in new flow information from a .flow file without affecting the rest of the data currently stored in CRiSP.1.

There are three types of data that are exceptions to this rule: spill schedules, transport records, and releases. For these three types of data, a decision is made as to whether to delete existing data prior to reading the file. In all cases and all modes, once data reading has begun, multiple specifications of transport, spill, or release data are merged with each other.

In interactive (GUI) mode, CRiSP.1 performs Replace or Merge operations according to file extension and user response.

Depending on the file name extension, Replace or Merge operations are as follows:

Files which are "included" from other files are not subject to the above determinations (see the CRiSP.1 Parser section for information on file includes). Only the top-level file to be read (not included) will have its extension examined. The above list then holds for all data read from that file or from any file subsequently "included."

In batch mode runs, a replace operation is always performed. All spill, transport, and release data are first deleted, and then replaced with data appearing in the file. All other data appearing in the file is replaced as per the standard default. Note that in batch mode, since the pre-existing data consists of hard-coded defaults which may be questionable, it is advisable to make sure that files used in batch mode runs provide full coverage for all parameters.

Standard CRiSP.1 Features

Interactive operation of CRiSP.1 is through a graphical user interface (GUI) using a two-button or three-button mouse. CRiSP.1 standard features and tools are detailed in the following sections.

Standard Window Features

CRiSP.1 uses standard window features found on Windows 95/NT and Unix systems for opening, closing, resizing, and shrinking windows to an icon. If you have questions, please refer to your operating system and software documentation.

The following are definitions of mouse operations as used in this documentation.

Menus and Submenus

Both the mouse and the keyboard can be used to open and select from the menus and submenus found in CRiSP.1.

Using the mouse, you can open windows from menus and submenus.

Using the keyboard, you can open windows from menus and submenus.

Help Tools

Open context-sensitive help information by clicking or in a window. The context-sensitive help and additional information is accessible from Help in the Main Panel.

Two Level Editing and Display: Reset All, Apply All, Reset, Apply, Cancel, OK

Throughout the model, CRiSP.1 uses the concept of two level editing and display. The data being displayed on the screen may be different from the data in the underlying database. A red dot in each corner of a window indicates that the data being displayed is different from the data currently stored in the model and that changes have not been applied to the underlying database, yet. For changes to take effect, click Apply or Apply All. Modifications that have not been applied can be discarded by clicking Reset or Reset All.

Note. For example, if you open windows for all three dams for Flows / Reservoirs and modify the Outflow at each dam, you can apply the changes in two ways. If you click Apply in the Chief Joseph Dam Outflow window, that will only save the changes made to Chief Joseph Dam Outflow. If you click Apply All in any of the three dam Outflow windows, that will save changes made to Outflow at all three dams.

All input windows in CRiSP.1 contain all or a combination of the Standard Commands.


Powerhouse Schedule window (default) and before applying changes

In general, any number of windows of the same type can be active at the same time - just select the same menu item several times to create several copies of the same type of window. For input windows (dialogs and editable graphs), it is possible to have multiple windows displaying the same data at the same time. If the data is changed in one window, the others will update automatically to reflect the changes.

Yellow dots will be displayed in the corners of all output graph windows when any input data has been changed, but the model has not been re-run to create new outputs. Yellow dots do not imply correlation between the data displayed in the output window and the changes to model input.

To demonstrate this, run the program in Scenario Mode, and the open a Passage graph for the Estuary and the VVar window. After you click Apply in the VVar window, the passage graph will display yellow dots. VVar has changed, but passage has not been recalculated. Now run the model again. Passage is now up to date with respect to model inputs, so the yellow dots disappear. Please take note that yellow dots would also appear on a TDG Saturation output graph, even though VVar does not influence total dissolved gas.


Yellow Dots in Passage for Estuary window

Slider Input

Slider Input windows are one type of data input windows found in CRiSP.1. Red sliders represent parameter settings and are changed using the mouse or the keyboard as described in the following sections. CRiSP.1 variables that incorporate sliders include:

As shown below, there are several formats for Slider Input windows. The Unregulated Headwater Flow Maximum window is an example of the Slider Input window in its simplest form. The Migration Rate Variance window contains a "tab" list where the list of variables is longer than allowed for one screen (ten variables) and is accessible by clicking on the tabs (labeled A, B, etc.) at the top of the window. Also illustrated in this window is the concept of setting Mean, Low and High values for each variable. The Dam Predation Probability window illustrates a Slider Input window containing time-specific, dam-specific and species-specific settings.


Various Slider Input windows

Slider Input Window Features

Edit Single Slider Value

There are three ways to edit the value of an individual slider.

All changes made to slider values need to be applied by clicking Apply / Apply All / OK before the values will take effect.


Slider Input window and Slider Value dialog box

Some Slider Input windows contain a tab list (variable list is longer than ten items), click on a letter tab to access a portion of the list and edit the desired slider as directed above. Some Slider Input windows contain Mean, Low, and High value sliders which are separate entities and are edited separately.

There are several Slider Input windows which involve setting time-specific, dam-specific and species-specific values for each slider, and there is one Slider Input window which involves setting reach-specific and species-specific values.

Parameter values can be set individually for each species at each dam by selecting the desired species from the species menu, selecting the desired dam from the dam menu, and then following the directions above. If you make multiple changes to dam and species parameter settings, click Apply All to save all the changes made. Parameters can be grouped across Time (T), Dam (D) or Reach (R), and Species (S) by selecting the appropriate check boxes to the right of the slider. See the Edit Multiple Slider Values Simultaneously and Edit All Slider Values Simultaneously sections for directions.


Dam Predation Probability window.

Edit Multiple Slider Values Simultaneously

Editing multiple slider values simultaneously uses the "group" concept. For the majority of Slider Input windows, there is only one column of check boxes on the right side of the slider labeled G. There are several Slider Input windows in CRiSP.1 which involve setting time-specific, dam-specific or reach-specific, and species-specific values. These Slider Input windows have check box columns labeled T (time), D (dam), R (reach), and S (species). For Slider Input windows containing sliders for mean, low and high values, sliders are grouped for mean, low or high values separately.

  1. Click the corresponding check box on right side of slider window (1) for each parameter in the group,
  2. Move the pointer to any slider in the group, and
  3. Follow the directions to Edit Single Slider Value.

All changes made to slider values need to be applied by clicking Apply / Apply All / OK before the values will take effect.


Multiple sliders grouped

Edit All Slider Values Simultaneously

Editing all slider values simultaneously uses the "group" concept. For the majority of Slider Input windows, there is only one column of check boxes on the right side of the slider labeled G. For Slider Input windows containing sliders for mean, low and high values, sliders are grouped for mean, low or high values separately. There are several Slider Input windows in CRiSP.1 which involve setting time-specific, dam-specific or reach-specific, and species-specific values. These Slider Input windows have check box columns labeled T (time), D (dam), R (reach), and S (species).

  1. Click the top check box (G, T, D, R or S) on right side of slider window (1),
  2. Move the pointer to any slider in the group, and
  3. Follow the directions to Edit Single Slider Value.

All changes made to slider values need to be applied by clicking Apply / Apply All / OK before the values will take effect.


All sliders grouped with top check box

Slider Input Additional Features

Slider Input windows that involve setting time-specific, dam-specific or reach-specific, and species-specific values include the following features:

Editable Graph

Editable Graph windows allows rapid input and visualization of data that varies from day to day. Open Editable Graph windows by making a selection from a menu. Depending on the settings in the Mouse Tool, some Editable Graph windows can be opened from the River Map by clicking on a dam, reach or headwater. CRiSP.1 variables that can be set with a Editable Graph window include:

In all cases, Julian day is given as the horizontal coordinate (X-axis) with day zero corresponding to December 31. The vertical axis (Y-axis) is defined below the graph, naming the parameter and its unit of measurement.

Editable Graph Window Features

Editable Graph Viewing Features


Editable Graph window

Editable Graph Input Features

There are three ways to edit the values in a Editable Graph window.

All changes need to be applied by clicking Apply All / Apply / OK for changes to take effect.

Editable Graph Additional Features

Schedule Tool: Create a New Period and Modify an Existing Period

Schedule Tool windows allow for keyboard input of data by time periods in days or hours. Schedule Tool windows occur two ways in CRiSP.1. Every Editable Graph window includes a Schedule button which opens a companion Schedule Tool window for editing the data. In addition, CRiSP.1 contains Schedule Tool windows that exist separately from Editable Graph windows, for example, Powerhouse Schedule (Dam Menu).

Create a New Period

  1. Identify Start Day, End Day and Value for the specified period by typing in the corresponding text boxes, and
  2. click to update the display list with the new values and redraw the corresponding graph.

You can define a period to be a single day or a range of days. A single value can be applied to a range of days even if values are already specified for the days. Use the steps outlined above (create a new period) to create a new range of days.

Modify an Existing Period

  1. Click on the desired period in the Schedule Tool list to copy the values into the Start Day, End Day and Value text boxes,
  2. modify the desired values, and
  3. click to update the display list with the new values and redraw the corresponding graph.

Schedule Tool features and functions


Schedule Tool window

Julian Day Output

Julian Day Output windows allow visualization of data calculated by CRiSP.1. The viewing features are the same as the Editable Graph; however, the Julian Day Output window has no input features. Open Julian Day Output windows by making a selection from a menu. Depending on the settings in the Mouse Tool, Julian Day Output windows can be opened from the River Map by clicking on a dam or reach. CRiSP.1 includes the following dam and reach specific Julian Day Output windows:


Julian Day Output window

Julian Day Output Window Features

Julian Day Output Viewing Features

Julian Day Output Additional Features

Equation Input

Equation Input windows allow you to view and edit equation settings and parameters which are, in effect, submodels of CRiSP.1. The response of the equation to the parameters over the possible range of the independent variable is illustrated in the equation window as each parameter is changed. Note that for equation inputs, if you alter an equation and wish to use that altered equation in subsequent model runs you must click the Apply button to activate it, otherwise the model will revert to the previously-displayed equation and values.

Equation name                  | Independent variable        | Dependent variable
migration                      | Julian day                    | migration rate in miles/day
spill                           | % river spill                 | % fish passage with spill
tdg saturation                  | spill in kcfs                 | % tdg sat above 100%
gas mortality                   | % tdg sat above 100%          | % mortality/day
population density vs. depth    | depth (ft)                    | density, % of population/ft
fge                             | fish age                      | fish depth parameters
transportation mortality        | water particle travel time    | % transportation mortality

Equation Input Features


Equation Input window

Equation Input features and functions

Equation Input windows contain all or a combination of these features and functions.

CRiSP.1 Graphical User Interface

The Graphical User Interface of CRiSP.1 contains the Title Bar, Menu Bar, Toolbar, Status Bar, and River Map.


Main Panel of CRiSP.1

River Map

The River Map identifies river segments, dams, headwaters, and release sites as determined by the columbia.desc file. The majority of model variables, such as river flow or fish passage, can be accessed from any site on the map by positioning the pointer on the location and clicking a mouse button (Mouse Tool settings determine which windows open). The River Map contains the following features and functions:


River Map with river segments, dams and release sites

File

The File menu contains general model functions and features.

Open

Selecting FileOpen opens a file selection dialog box to read data files into the model. You can use this menu option to open any data file in the proper format, either manually created or saved from CRiSP.1. You can revert to all default settings and parameter values for CRiSP.1 by using this menu option to open a Yearly Input Data File (.dat). In addition, the Open command is represented by in the Toolbar. Several parameter data files can be read into CRiSP.1 simultaneously by using a Control File.

Save As

Selecting FileSave As opens a file selection dialog box to save part or all of the current database to a single file or to multiple parameter data files. The data files use a file name concatenated with predefined extensions (described in the Model Parameter Data Files section) identifying the type of data to be written out to that file. All the parameter information can be written out to separate data files by using a Control File. In addition, the Save As command is represented by in the Toolbar.

The Save As function allows you to store model parameter changes, i.e. parameter values that have been set with the various input parameter tools, on disk for reuse. This gives you the flexibility to manipulate and store all data used in CRiSP.1 except flow archive data. Each parameter data file can be written separately by naming the file and choosing from the Save as type selection menu or specifying the appropriate data file extension. Currently, the Save as type selection menu is available for Windows 95/NT only.

Print Map

Selecting FilePrint Map opens a printer control dialog to print the River Map. In addition, the Print Map command is represented by in the Toolbar.

Mouse Tool: Redefining Mouse Functions on River Map

You can define the function of the mouse buttons when used on the River Map by selecting FileMouse Tool. In addition, the Mouse Tool command is represented by in the Toolbar. Location-specific output windows can be opened by placing the pointer on the desired location on the River Map and clicking the appropriate mouse button. The Status Bar displays which Dam, Reach, or Headwater is active. The exact function of the mouse button depends on where the pointer is located, which button is pressed, and how the functions have been assigned. For example, On Release can be set to open a Release Tool or to have No Operation; the default setting opens a Release Tool window with a right-click on a Release Site. Four categories of selection are available: On Dam, On Reach, On Release, and On Headwater.

The actions of each mouse button are changed by selecting the desired function from each category. Any changes you make take effect immediately and do not need to be applied. The Middle Button selections are provided for a three-button mouse; the settings are unavailable if you are using a two-button mouse.


Mouse Tool identifies mouse button functions on the River Map

Message Log

Selecting FileMessage Log opens or restores the Log window. The Log window provides a number of messages from model runs. CRiSP.1 will alert you in the Log window if model operations encounter unexpected or incorrect model parameters. Error messages that warn of data problems that will cause CRiSP.1 to stop are always displayed in the Log window. You can choose which other types of messages will be displayed by choosing one or more of the options from the Logging menu in the Log window.

Please send email to "crisp-passage@cbr.washington.edu" if you have questions about any of the messages you get when running the model.

Log window features

Sample output showing the beginning of a Scenario Mode run summary

transportation started at Lower Granite Dam, day 92
transportation stopped at Lower Granite Dam, day 300
transportation started at Little Goose Dam, day 92
transportation stopped at Little Goose Dam, day 300
transportation started at Lower Monumental Dam, day 94
transportation stopped at Lower Monumental Dam, day 300
transportation started at McNary Dam, day 160
transportation stopped at McNary Dam, day 300
  
CRiSP1 Summary Output File
  Mon Jun 21 10:51:58 1999

        Scenario Mode
  No average flows were calculated for this simulation.
  
Statistics fields: first day, last day, total passage, mean day
        median day, mode day, std.dev day, avg.flow
        bypass out, spillway out, turbine out, transport out
        total in, bypass in, spillway in, turbine in, transport in
  
The preceding line was repeated 2 times.
Release:  Dworshak      Species:  Steelhead     Stock:  Generic Start date:  
119        Released:  1192503
  
 Survival Below Lower Granite Pool
        Passed:         1078314
        Survival:       90.4%
        stats: 120   165        1078314.38      127.03          126.33          
125.00          3.45    0.00    0.00    0.00    0.00    0.00    1179277.88      
0.00    0.00    0.00    0.00  

Exit

Selecting FileExit discards all unsaved changes and quits the CRiSP.1 program. If you have made changes to parameter values and settings in CRiSP.1 that you want to use at a later time, you should first save your changes to the appropriate parameter data file or save the whole database as a Yearly Input Data File (.dat). See the Save As section for further information on writing out settings and parameter values.

View

The View menu contains functions related to the display of the River Map.

UnZoom

Selecting ViewUnZoom clears one level of the River Map zoom stack. In addition, the UnZoom command is represented by in the Toolbar. This action can also be accomplished by clicking on an undefined area on the River Map. See the River Map section for more details.

Grid

Selecting ViewGrid turns on or off the display of the latitude / longitude (latlon) grid on the River Map. The default setting for CRiSP.1 is to display the latlon grid. In addition, the Grid command is represented by in the Toolbar.

Map

Selecting ViewMap turns on or off the display of the River Map. The default setting for CRiSP.1 is to display the River Map. In addition, the Map command is represented by in the Toolbar.

Release

The Release menu provides access to the Release Tool and its companion graph window, the Release Schedule. By opening these windows, you can create, modify, or delete releases. On the River Map, designates the location of possible releases as defined in the columbia.desc file and designates the location of existing releases as defined in a Yearly Input Data File (.dat) or a .rls file.

New: Release

Selecting a release site from ReleaseNew opens the Release Tool and its companion graph window, the Release Schedule, for creating a release at this site. The list of possible release sites is determined by the specifications in the River Description File (columbia.desc). See the Release Tool section for further details on creating, editing, and deleting releases.

Release Tool

Selecting ReleaseRelease Tool opens the Release Tool window and its companion graph window, the Release Schedule. In these windows, you can control release parameters including the timing and numbers of fish released and their level of smolt development. You can save your release specifications to a Yearly Input Data File (.dat) or a .rls file for subsequent use (see Save As).

Details on creating, editing, and deleting releases are covered in the following sections:

Open Release Tool



Create New Release

  1. Open the Release Tool window as directed in Open Release Tool,
  2. Select desired Release Site, Species, and Stock from the menus at the top of the window,
    - Release Site: Identifies release site. Select release site (menu includes both existing and possible release sites) from list.
    - Species: Identifies species of release: Chinook 0, Chinook 1, or Steelhead. Select species from list.
    - Stock: Identifies stock of release. This can be set to "Generic" or a specific stock can be selected, e.g. Catherine Creek Ch2. Select stock from list.
  3. Click Create This Release, and
  4. Set release parameters as directed in Release Tool Features.


Release Tool window

Delete Existing Release Site

  1. Open the Release Tool window as directed in Open Release Tool,
  2. select the desired Release from Existing releases,
  3. click on Delete This Release, and
  4. apply changes by clicking Apply All / Apply / OK.

After an existing release is deleted and applied, the River Map and the Existing releases menu will automatically update to reflect this change. On the River Map, the release icon will change to the possible release site icon if there are no other releases specified at that release site.

Release Tool Features

Parameters for individual releases are set in the Release Tool window. Multiple releases can be identified for any site. Setting release parameters uses the Release Tool window and the Release Schedule graph window.


Release Tool window

Release Tool features and functions

Release Schedule

Open the Release Schedule window, companion to the Release Tool window, by opening the Release Tool window. See the Open Release Tool section for details. In the Release Schedule window, you can change the number of fish released and the release range (the number of days over which the release is spread) following the Release Start day set in the Release Tool window. The range of the release and the number of fish released is displayed using Julian Day in the Release Schedule window. Please note that you are not actually setting release numbers to occur on specific days. CRiSP.1 will ignore attempts to set part or all of the release range before the Release Start day. After setting the range of the release, if you change the Release Start day in the Release Tool window, the whole release range will shift in respect to the change in that date (the length of the release range will remain the same). For example, if the range of the release is five days and the Release Start day is adjusted in the Release Tool window, the release will remain spread over five days. If you make changes in release counts or the number of days of release, you must click Apply for changes to take effect.

This is an Editable Graph window.


Release Schedule window, the Release Tool companion window

Reservoir

The Reservoir menu allows modification of predator densities, water temperature at the headwaters, and several global river parameters.

Reach Predator Density

Selecting ReservoirReach Predator Density opens a window for setting predator densities by species for each river segment. Densities are given as number of northern pikeminnows per square kilometer of reservoir, excluding the tailrace and forebay (set in DamPredator Density). This measure, based on full pool dimensions, is effectively a measure of the relative number of predators in a river segment. A segment is defined as a section of river between river elements (such as dams and confluences). Predation mortality in CRiSP.1 is related to predator abundance, predator temperature response, and a predator activity coefficient. These factors combine to determine a predation rate which is applied to the smolt population on a time-step basis. To use these parameter values during a run, select Gas and Pred Mortality as the Mortality Model in RunRuntime Settings.

This is a Slider Input window. Click on the letter tabs to page through the Reach list.

This Slider Input window includes a menu for selecting by Species. You can group sliders by: Reach (R) or Species (S).


Reach Predator Density window

Predator Distribution Coefficient

Selecting ReservoirPredator Distribution Coefficient opens a window for setting the predator distribution coefficient of the predator density/volume interaction for each river segment. The main purpose of the predator density/volume interaction is to properly scale the effect of initial predator densities on predation rate during reservoir drawdown. To use these parameter values during a run, turn on predator density / volume interaction in RunRuntime Settings.

This is a Slider Input window. Click on the letter tabs to page through the Reach list.


Predator Distribution Coefficient window

Reach Gas Theta

Selecting ReservoirReach Gas Theta opens a window for setting the mixing parameter for dissolved gas in a specified reach. Gas Theta determines the rate of mixing between the gas levels in the left-bank and right-bank flows of the river (facing downstream). These flows often have different levels of gas upon exiting a dam and become more mixed as the river flows downstream. The mixing rate is with respect to time and is set by default to be 0.075 (mile)^-1, which leads to roughly 95% mixing after 40 miles. A value of zero for Reach Gas Theta results in no mixing between the flows and a value of 10 allows for complete mixing between the flows.

This is a Slider Input window. Click on the letter tabs to page through the Reach list.


Reach Gas Theta window

Gas Distribution

Selecting ReservoirGas Distribution opens a graph of the level of dissolved gas in a reach from the start of the reach to the end. Both the left-bank flow and right-bank flow levels are marked on the same graph, with the left-bank flow in red and the right-bank flow in blue. These flows often have different levels of gas upon exiting a dam and become more mixed as the river flows downstream. The total amount of gas in the reach also decreases due to the dissipation in the reach. A slider for the graph is provided to change the Julian day for which gas is displayed. The X-axis is the distance downstream in miles from the start of the reach, mile 0. The Y-axis is the gas level measured in percent above 100, the equilibrium level. For example, if saturations vary between 100% and 110%, the Y-axis will range from 0 to 10.

This window emulates an Equation Input window, but it is display only.


Gas Distribution window

TDG Saturation > 100%: Dam

Selecting a Dam from ReservoirTDG Saturation > 100%Dam opens a histogram of the total dissolved gas (tdg) level exiting the dam for viewing only. This corresponds to the tailrace dissolved gas level. Tdg saturation for both the powerhouse flow (red) and spill flow (blue) levels are marked on the same graph. These flows often have different levels of gas upon exiting a dam because of the gas production from spill. Consult the table below to determine whether the spill side is left or right, looking downstream, at a specific dam. Histograms of the daily tdg level are displayed in percent above 100, the equilibrium level. For example, if saturations vary between 100% and 110%, the Y-axis will range from 0 to 10.

      DAM                            spill side
        Chief Joseph                    right
        Wells                           left
        Rocky Reach                     left
        Rock Island                     right
        Wanapum                         right
        Priest Rapids                   right
        McNary                          right
        John Day                        right
        The Dalles                      right
        Bonneville                      right
        Dworshak                        left
        Hells Canyon                    right
        Lower Granite                   right
        Little Goose                    right
        Lower Monumental                left
        Ice Harbor                      right

This is a Julian Day Output window.


TDG Saturation > 100% for Ice Harbor Dam

TDG Saturation > 100%: Reach

Selecting a Reach from ReservoirTDG Saturation > 100%Reach opens a histogram of the level of total dissolved gas (tdg) exiting the reach for viewing only. Tdg saturation for both the left-bank flow (red) and right-bank flow (blue) levels are marked on the same graph. These flows often have different levels of gas upon exiting a dam because of the gas production from spill. As the water flows downstream, the level of total dissolved gas decreases due to dissipation across the air-water surface. For reaches directly above a dam, this corresponds to the forebay dissolved gas level. Histograms of the daily tdg level are displayed in percent above 100, the equilibrium level. For example, if saturations vary between 100% and 110%, the Y-axis will range from 0 to 10 with the Julian date on the X-axis.

This is a Julian Day Output window.


TDG Saturation > 100% for Columbia above Snake Confluence

Water Temperature: Dam

Selecting a Dam from ReservoirWater TemperatureDam opens a histogram of water temperature at the dam for viewing only. Water temperature is set on a daily basis in the headwaters. River temperatures in downstream segments are computed according to the fractions of the incoming flow which are derived from different headwaters in the segment and the temperature of the headwaters on a given day.

This is a Julian Day Output window.


Water Temperature for Dworshak Dam

Water Temperature: Reach

Selecting a Reach from ReservoirWater TemperatureReach opens a histogram of water temperature in the reach for viewing only. Water temperature is set on a daily basis in the headwaters. River temperatures in downstream segments are computed according to the fractions of the incoming flow which are derived from different headwaters in the segment and the temperature of the headwaters on a given day.

This is a Julian Day Output window.


Water Temperature for Clearwater River

Headwater Temperature

Selecting a Headwater from ReservoirHeadwater Temperature opens a window for setting water temperature for the selected headwater. Headwater temperature is specified on a daily basis. Daily water temperature at a headwater is read in to CRiSP.1 as input from the Yearly Input Data File (.dat). This window can be opened by right-clicking on a headwater on the River Map (unless you reconfigure the Mouse Tool).

This is an Editable Graph window.


Headwater Temperature for Clearwater Headwater

Velocity: River velocity in a reach

Selecting a Reach from ReservoirVelocity opens a histogram of the daily river velocity in miles per day for the reach for viewing only. The river velocity through a reach is calculated based on water elevation, bathymetry, and the daily flow level in the segment. Bathymetry data is read in to CRiSP.1 from the River Description File (columbia.desc).

This is a Julian Day Output window.


Velocity for Columbia Gorge

River Parameters

Selecting ReservoirRiver Parameters opens a window for setting several parameters that are applied throughout the river system and do not depend on species or day. The model is fairly sensitive to changes in these parameters; caution is recommended when making changes to these parameters.

This is a Slider Input window.


River parameters window

Behavior

The Behavior menu allows you to set coefficients that model the rate of migration and survival. These parameters are species-specific and are applied uniformly in all reservoirs.

Predation Coef: Reach Activity, Forebay, and Tailrace

Predation coefficients effect the rate of predation activity by northern pikeminnows on smolt for a given predator density. The coefficients are species specific and are defined separately for reaches, dam forebays and dam tailraces. Predation mortality in CRiSP.1 is related to predator abundance, predator temperature response, and a predator activity coefficient. These factors combine to determine a predation rate which is applied to the smolt population on a time-step basis.

BehaviorPredation CoefReach Activity opens a window for setting the predator activity coefficient which scales the maximal consumption rate to represent in situ conditions where predator-prey encounters may be less frequent, alternative prey may exist, and predators may not be feeding to satiation. Functions with settings in Reach Predator Density and Predation Temperature Response Equation to set a rate of predation mortality. To use these parameter values during a run, select Gas and Pred Mortality for the Mortality Model in RunRuntime Settings. This is a Slider Input window.

Selecting BehaviorPredation CoefForebay or BehaviorPredation CoefTailrace opens a Slider Input window for setting the predation coefficients in dam forebays or tailraces, respectively, which effect the rate of predation activity on a species as they travel through that segment.

Each Slider Input window contains three sliders for setting mean, low, and high values by species. When the low and high values are set to zero, or when the low and high are set to the mean value, CRiSP.1 uses the mean value at all times (the term becomes deterministic). When the low and high values are not equal, CRiSP.1 uses the mean, low and high values to randomly generate a value when executed with variance suppression turned off in the Runtime Settings window under the Run Menu. With variance suppression turned on, CRiSP.1 uses the mean value and ignores the high and low values. In either case, the mean value must lie within the central two quartiles of the distribution (i.e., the middle 50%). For example, if the low value is set to 0 and the high value is set to 100 then the mean value must be set between 25 and 75. If values are set that do not conform to this restriction, CRiSP.1 will abort the run and generate an error message in the Message Log (if open) specifying which species have bad parameters.

       ERROR: bad stochastic param reach pred coeff for Chinook 0.
                -->mean not in range 12.386550 <= mean <= 17.341249
        ERROR: aborting run due to bad parameter values.

Slider Input window features.


Predation Coefficient Reach, Forebay and Tailrace windows

VVar: Migration Variance

Selecting BehaviorVVar opens a window for setting the migration variance parameter which describes the along-stream spreading of a group of fish migrating through the river segments. This value is held constant over the year. It is also called the velocity variance parameter.

This is a Slider Input window. Click on the letter tabs to page through the species and stock list.


VVar window

Migration Rate Variance: Variance in Velocity

Selecting BehaviorMigration Rate Variance opens a window for setting the variability of the velocity of each stock. This window contains three sliders for each stock, denoting a mean, low, and high value. These values produce the envelope around the velocity for each release of each stock: a larger envelope around the mean value means that stock velocity is highly variable from model run to model run. Migration rate variation differs from VVar in that it applies to the entire stock and produces variation in velocity on a game by game basis. VVAR, conversely, operates to produce "spread" in a release over the entire course of migration.

Warning. The impact of large variance in velocity can be substantial; it is not recommended to alter the calibrated values of migration rate variance.

Migration rate variance is defined by a piecewise linear distribution within the range identified by low and high values. When the low and high values are set to zero or when the low and high are set to the mean value, CRiSP.1 uses the mean value at all times (the term becomes deterministic). When the low and high values are not equal, CRiSP.1 uses the mean, low and high values to randomly generate a value when executed with variance suppression turned off in the Runtime Settings window under the Run Menu. With variance suppression turned on, CRiSP.1 uses the mean value and ignores the high and low values. In either case, the mean value must lie within the central two quartiles of the distribution (i.e., the middle 50%). For example, if the low value is set to 0 and the high value is set to 100 then the mean value must be set between 25 and 75. If the mean value does not conform to this restriction, CRiSP.1 will abort the run and generate an error message in the Message Log (if open) specifying which species or stocks have bad values.

This is a Slider Input window. Click on the letter tabs to page through the species and stock list.


Migration Rate Variance window

Predation Temperature Response Equation

Selecting BehaviorPredation Temperature Response Equation opens a window for setting the temperature response component of predator activity which determines maximum consumption rates as a function of temperature. These functions are based on laboratory experiments. Predation mortality in CRiSP.1 is related to predator abundance, predator temperature response, and a predator activity coefficient (see the Predation Coef section for further details). These factors combine to determine a predation rate which is applied to the smolt population on a time-step basis. There are three choices for Predation Temperature Response Equation: two exponential forms and a sigmoidal form. In the sigmoidal form (the recommended equation), the variables are as follows:

This is an Equation Input window.


Predation Temperature Response Equation window

Migration Equation: Active Fish Migration Equation

Selecting BehaviorMigration Equation opens a window for setting the migration rate equations for each stock. Several migration rate equations are available, ranging from a simple model with a constant migration rate to a more complex model which relates migration rate to river velocity, date in the season, and downstream acceleration. In addition, other equations relate migration rate to fish length and temperature. For the given stock, the parameter sliders in the equation window change the shape of the migration pattern in well-defined ways.

Migration rate equations parameter definitions

In addition to parameters that vary the migration rate parameters, you may vary covariates that affect migration rate. These covariates are varied in the display only.

This is an Equation Input window.


Migration Equation window

Gas Mortality Equation

Selecting BehaviorGas Mortality Equation opens companion windows, the Gas Mortality window and the Population Density vs. Depth window. These two windows are interrelated, and together define the mortality due to gas relationship. The average gas mortality for a reach is calculated by averaging over all gas levels in a reach and also using a fish depth distribution. There is roughly a three percent per foot compensation for every foot below the surface. The average is computed by multiplying the gas mortality equation by the fish depth distribution and integrating over the length and depth of the reach. The percent mortality per day for the reach is a flow-weighted average of the mortality in each flow.

Gas Mortality

The Gas Mortality window displays the average mortality due to gas for each species in a reach specified by a set of adjustable parameters. Gas Mortality is displayed in %mortality/day versus the percent of dissolved gas saturation above 100 in the right-bank flow. The Gas Mortality Equation uses the following parameters:

The remaining parameters in this window are for display purposes only in order to describe and display attributes of a reach that affect its average gas mortality rate:

This is an Equation Input window.


Gas Mortality Window

Population Density vs. Depth

Selecting BehaviorGas Mortality Equation opens companion windows, the Gas Mortality window and the Population Density vs. Depth window. These two windows are interrelated, and together define the mortality due to gas relationship. The average gas mortality for a reach is calculated by averaging over all gas levels in a reach and also using a fish depth distribution. There is roughly a three percent per foot compensation for every foot below the surface. The average is computed by multiplying the gas mortality equation by the fish depth distribution and integrating over the length and depth of the reach. The percent mortality per day for the reach is a flow-weighted average of the mortality in each flow.

The Population Density vs. Depth window uses three parameters to describe the depth profile for each stock modeled, where:

This is an Equation Input window.


Population Density vs. Depth window

Simple Mortality Equation: FLUSH Model

Selecting BehaviorSimple Mortality Equation opens a window for setting the parameters used in the Simple Mortality Model based on the FLUSH Model (see CRiSP.1 in Context with Other Models). In the Simple Mortality Model, reservoir survival is a function of fish travel time. To use these parameter values during a run, select Simple Mortality for the Mortality Model in RunRuntime Settings. There are four choices for the Simple Mortality Equation of the form,

     Survival = 1/ ((FTT^B) * (exp(A*FTT)-1)+1

where:

This is an Equation Input window.


Simple Mortality equation window

Marmorek, D.R., et al. 1996. Plan for Analyzing and Testing Hypotheses (PATH): Final report on the retrospective analysis for fiscal year 1996. Compiled and edited by ESSA Technologies Ltd., Vancouver, B.C.

FLUSH Transport Merit Equation: FLUSH Model

Selecting BehaviorFLUSH Transport Merit Equation opens a window for setting the parameters used in the Simple Mortality Model based on the FLUSH Model (see CRiSP.1 in Context with Other Models). To use these parameter values during a run, select Simple Mortality for the Mortality Model in RunRuntime Settings. The Y-axis is the merit of transport value D and the X-axis is the percent survival. There are four choices for the FLUSH Transport Merit Equation--used in PATH for spring chinook (Marmorek 1996)--where:

This is an Equation Input window.


FLUSH Transport Merit Equation window

Marmorek, D.R., et al. 1996. Plan for Analyzing and Testing Hypotheses (PATH): Final report on the retrospective analysis for fiscal year 1996. Compiled and edited by ESSA Technologies Ltd., Vancouver, B.C.

Flow

The Flow menu controls input of flows to the river system at headwaters, removal of water for irrigation, and changes in both the reservoir and river segment elevation levels. The computation of flow in any river segment depends on the way CRiSP.1 is run.

In the Scenario Mode, flows in all river segments are determined from the flows generated in headwaters and flow inputs and losses in each river segment from irrigation. Outflows from storage reservoirs are specified according to the volume constraints of the reservoirs. Finally, river flows are produced using the downstream propagation algorithm which combines storage reservoir flows and unregulated headwater flows.

In Monte Carlo Mode, average flows over defined periods at the dams are read as input from flow archive files produced by hydroregulation models. The period average flows are then modulated to give simulated daily flows at the dams. Using this information, flows in the headwaters are calculated with an upstream propagation algorithm. Finally, flows through river segments are calculated from the headwaters with the downstream propagation algorithm.

Dams: Flow at Dams

Selecting a Dam from FlowDams opens a flow histogram at the dam for viewing only. Flows at dams are determined by input flows specified at the headwater and losses over intervening reaches. You can edit headwater Flows or reservoir Flow Loss, but not the flow at the dam. In addition, flow output windows can be opened by configuring the Mouse Tool and selecting a dam on the River Map.

This is a Julian Day Output window.


Flow at Bonneville Dam

Reaches: Flow at Reaches

Selecting a Reach from FlowReaches opens a flow histogram at the reach for viewing only. Flows at reaches are determined by input flows specified at the headwater and losses over intervening reaches. You can edit headwater Flows or reservoir Flow Loss, but not the flow at the reach. In addition, individual output windows can be opened by configuring the Mouse Tool and selecting the reach on the River Map.

This is a Julian Day Output window.


Flow at Hanford Reach

Headwaters: Flow at Headwaters

Flows

Selecting a Headwater from FlowHeadwaterFlows opens a window for setting flows for the selected headwater for Scenario Mode runs. Headwater flows are specified on a daily basis. These are combined at confluences to produce flows through all segments of the river system. Flows at dams are determined by input flows specified at the headwater and losses over intervening reaches. You can change the headwater flows or the reservoir losses, but not the flow at the dams.

The mode used to run CRiSP.1 determines how headwater flow is created. In Scenario Mode, flows can also be randomly set by using the Headwater Modulation function. In Monte Carlo Mode, headwater flows can be calculated from flows at the dams as input by the flow.archive file.

This is an Editable Graph window.


Flow Submenus

Unregulated Max

Selecting FlowHeadwaterUnregulated Max opens a window for allocating flows to unregulated headwaters, that is streams with a confluence downstream of a dam. This is a 100-year flow used to determine how flow is distributed among unregulated headwaters in the Monte Carlo Mode, when flows at the dams are specified. It is not used as a limit and will be automatically reset to the maximum flow placed, if greater than the initial value assigned. Default values are determined by relative cross-sectional areas of the streams.

This is a Slider Input window.


Headwater Unregulated Flow Maximum window

Loss: Flow Loss

Selecting a Reach from FlowLoss opens a window for setting flow loss for the selected river segment. Flow loss in each segment is the loss of flow due to withdrawal, mainly from irrigation, on a daily basis or groundwater input on a daily basis. In the Loss window, positive values represent withdrawals and negative values represent return flows.

The loss data in a segment represents the change in flow that occurs between the flow input (calculated from the flow of upstream segments) and the flow output (stored as data in the segment). Where not specified, flow loss is set to zero.

This is an Editable Graph window.


Flow Loss window for Columbia above Snake Confluence

Elevation: Reservoir Elevation

Selecting a Reach from FlowElevation opens a window for setting the elevation of the selected reach on a daily basis. For storage reservoirs, see Reservoirs. In Scenario Mode, the values set in this window are used to control the reservoir elevation. In Monte Carlo Mode, the reservoir elevation can be input from the Flow Archive File if it contains reservoir elevation, otherwise, it is taken from the specified Yearly Input Data File.

This is an Editable Graph window.

Drawdown Alternatives Information


Elevation window for McNary Pool

Reservoirs: Storage Reservoir Inputs

Selecting a Reservoir from FlowReservoirs opens two windows, Basin Volume and Outflow, for the selected storage reservoir. Flow out of storage reservoirs is set by specifying either daily outflow (in kcfs) in the Outflow window or daily volume of the storage reservoir in kilo-acre feet (kaf) in the Basin Volume window. The Basin Volume window takes into account the amount lost to outflow and the amount added by inflow and runoff. These are Editable Graph windows.

In Scenario Mode, flows from storage reservoirs such as Dworshak, Chief Joseph, and Hells Canyon are controlled through these two windows and interact with the headwater flow (accessed through the Headwaters submenu). The input flow (output flow from the headwater), outflow, and volume values set by these windows are constrained as follows:

Adjusting storage reservoir flows is an interactive process. Outflow and volume are modified according to the above constraints given the input flow. When either the Outflow or the Basin Volume are adjusted with the mouse buttons, both windows are updated immediately when the mouse button is released. These windows allow you to examine the effect of adding new storage to the system, applying a water budget using existing storage, or pulsing outflow from storage facilities. To update the effect of a new input flow on storage reservoir volume, run the Scenario Mode of CRiSP.1. The three windows -- Basin Volume, Outflow, and Flow -- will be updated according to the constraints.


Basin Volume, Outflow and Input Flow windows for Dworshak to control storage reservoir flows

Headwater Modulation: Headwater Flow

Selecting FlowHeadwater Modulation opens a window for setting overall water availability in the system relative to an average water year for Scenario Mode runs. Setting the water year level as a proportion of the mean flow and computing flows places modulated flows into all the headwaters. The slider for proportion of mean flow sets the total available water as the fraction of an average water year. The average water year (proportion of the mean flow set to 1) is the total runoff as determined from flows over the 1980's. You can determine how wet or dry the year is during a Scenario run. The proportion of mean flow can be set from 0 (extremely dry) to 2 (extremely wet). This scaling factor applies to all unregulated headwaters.

Caution. Changing this value causes flows to change, perhaps dramatically, throughout the model.

This is a Slider Input window.


Headwater Modulation window

Dam

The Dam menu includes many parameters that can be altered at each dam. These elements can be applied to specific dams and in some instances to specific species.

Transport: Transport Tool

Selecting DamTransport opens the Transport Tool. By using the Transport Tool, you can control transport parameters which include the timing and numbers of fish transported. You can specify transportation of fish from any transport point (dam) to any river segment downstream. On the River Map, the icon designates the location of possible transport sites and the icon designates the location of existing transports as defined in a Yearly Input Data File (.dat) or a .dam file.

Note. Rules of transportation are made to conform to the regulations according to the Fish Passage Plan for 1991. (Corps of Engineers Projects, US Army Corps of Engineers North Pacific Division report CENPD-PE-WM March 1991.)

Steps for creating, deleting, and editing transports are covered in the following sections:

Create New Transport

  1. Open the Transport Tool window by selecting DamTransport,
  2. select the desired Transport Dam and Release Reach,
  3. select indicator species for Terminate when (in Separation section),
  4. click Create This Transport, and
  5. Set Transport Parameters (steps 1-4 must be completed first).

After a new transport is created and applied, the River Map and the Existing Transport list will automatically update to show the newly created transport. On the River Map, the dam icon will change to the transport icon .

Delete Existing Transport

  1. Open the Transport Tool window by selecting DamTransport
  2. select the desired Transport Dam,
  3. click Delete This Transport, and
  4. apply changes by clicking Apply All or OK.

After a transport is deleted and the changes are applied, the River Map and the Existing Transport list will automatically update to reflect this change. On the River Map, the transport icon will change to the dam icon .

Set Transport Parameters

Parameters for each transport are set in the Transport Tool window. Each element of the Transport Tool window is described below. There are several ways to edit each slider in this window.


Transport Tool window

Transport Tool features and functions

Separation Success Fractions

Selecting Separation Success Fractions from the Transport Tool window allows you to set the percent of each species returned to the river at each dam when separating. See the Set Transport Parameters section for details on setting other transportation parameters.

This is a Slider Input window where the slider value for a specific species can be "grouped" for all dams using the D check box. This allows you to simultaneously set the separation probability for Chinook 0 to the same value at all dams.


Separation Success Fractions window

Transport Mortality Equation: Relating Transport Mortality to Flow

Selecting DamTransport Mortality Equation opens a window for specifying a relationship between water particle travel time (WPTT) and transport survival. The relationship is based on the assumption that changes in flow affect how well fish survive transportation. You can set four parameters in the Transport Mortality Equation window:

Between tt1 and tt2, CRiSP.1 interpolates in a linear fashion. This is an Equation Input window.


Transport Mortality Equation window

Spill Efficiency: Efficiency of Passing Fish with Spill

Selecting DamSpill Efficiency opens a window for setting parameters that describe the efficiency of passing fish with spill water at dams. Spill efficiency is set for each dam on a species-specific basis. The spill efficiency equations are of the form, Y = f (X: a, b, c, e), where:

The average efficiency is displayed by a red line in the equation window and the blue lines determine the bound for the variance as set by var. This is an Equation Input window.


Spill Efficiency equation window

Spill: Spill Fraction at Dams

Selecting a Dam from DamSpill opens a spill fraction histogram at the specified dam for viewing only. Spill refers to water that flows over the top of the dam.

Caution. Care must be taken to distinguish between the displayed day-averaged spill percentage (this window) and the percentage of instantaneous flow that is to be spilled during spill hours (set in the Spill Schedule windows).

This is a Julian Day Output window.


Spill Fraction for The Dalles Dam

Spill Schedule: Spill at Dams

Selecting DamSpill Schedule opens two companion windows, Planned Spill Days and Preferred Fish Spill Periods. You can adjust spill operations at dams using these two windows. Spill refers to water that flows over the top of the dam.

CRiSP.1 considers three types of spill: Planned Spill, Overgeneration Spill, and Forced Spill. The Scenario Mode considers Planned Spill and Forced Spill only. In the Monte Carlo Mode, Overgeneration Spill is obtained from the flow.archive file, and Planned Spill can be obtained from the flow archive file or set with the Spill Schedule windows. It is recommended that Planned Spill be set with the Spill Schedule windows--Planned Spill Days and Preferred Fish Spill Periods--when making Monte Carlo runs by selecting "user data" as the source for Planned Spill in the Monte Carlo window.

Planned Spill Days

Selecting DamSpill Schedule opens the Planned Spill Days window and its companion window Preferred Fish Spill Periods for adjusting spill operations at dams. The Planned Spill section discusses how the settings in these two windows work together. The Planned Spill Days window controls Spill Fraction, the fraction of river flow spilled on an instantaneous basis, and Planned Spill Days, the Julian days when spill fractions are planned as part of the water budget and spill allocation agreements.

This is a Schedule Tool window with the following features:

The new/modified values only take effect after clicking Apply / Apply All / OK. Click Reset / Reset All / Cancel to revert back to the last saved values.


Planned Spill Days window

Preferred Fish Spill Periods

Selecting DamSpill Schedule opens the Preferred Fish Spill Periods window and its companion window Planned Spill Days for adjusting spill operations at dams. The Planned Spill section discusses how the settings in these two windows work together. The Preferred Fish Spill Periods window controls Fish Spill Days, the Julian days when spill is allocated for fish passage, and Fish Spill Hours, the hours of the day when water will actually be spilled.

This is a Schedule Tool window with the following features:

In the figure below, fish spill is identified for days 0 to 365 and fish spill hours 0 to 24 (fish spill operates all day, all year-round). Use the Start Day, Stop Day, Start Hour, and Stop Hour text boxes to create new periods or modify existing preferred fish spill periods. In order to set periods where fish spill is not occurring, you must clear the Preferred check box and set the values for Start Day, Stop Day, Start Hour, and Stop Hour during which fish spill is not to occur. For example, if you want fish spill to only occur at night and not during the day hours (6-18):

  1. Clear the Preferred check box.
  2. Type the desired Start Day and Stop Day for the period fish spill is not to occur.
  3. Type 6 for Start Hour and 18 for Stop Hour.
  4. Click to transfer the values from the text boxes to the Spill Days and Spill Hours list.

The new/modified values only take effect after clicking Apply / Apply All / OK.


Preferred Fish Spill Periods window

Planned Spill

The separation of Planned Spill Days and Preferred Fish Spill Periods is an arbitrary convention that arose out of the 1989 Spill Agreements. In practice, the spill fraction should be indicated in the fish spill days and planned spill days should be eliminated; however, this is not the way the agreement was written.

The relationship between these spill operation variables is illustrated in the figure below. Planned Spill Days allocate a certain fraction of the river flow to be spilled during specified blocks of days as given in the water budget. Different fractions can be set for different blocks of days. Preferred Fish Spill Periods, however, indicate the actual days that spill will occur. The Fish Spill Hours specify blocks of time in each Fish Spill Day when spill occurs. In the example below, two Planned Spill Day periods are given. In the first period 50% of the daily averaged flow is planned to be spilled between Julian Day 0 and 100 and in the second period 70% spill is planned between day 125 and 300. These spills are computed as percentages of the average flow over the day. In this example, Fish Spill is identified for Julian Days 50 to 75 and 150 to 300. Spill will be 50% and 70%, respectively, of the daily averaged flows during these periods. The spill planned during days 125 and 150 will not occur. The Fish Spill Days period 150 to 300 has Fish Spill Hours 0 to 12.


Schematic of possible Planned Spill variables

Note. In the example above, the second spill period demands 70% of total river flow, but only allocates 12 hours per day to spill it in. This will produce a warning message from CRiSP.1 since the model will be unable to achieve the 70% spill requirement by spilling only 50% of the time. Users should be careful to make their spill requests consistent with realistic dam operations.

Spill Cap: Maximum Allowable Spill

Selecting DamSpill Cap opens a window for setting a maximum flow which can be passed over the spillway at each dam. Spill Cap only applies to Planned Spill; if Forced Spill (see Spill Schedule section) requires exceeding the spill cap, the cap is ignored.

This is a Slider Input window. Click on the letter tabs to page through the list of dams.


Spill Cap window

Predator Density

Selecting DamPredator Density opens a window for setting predator densities by species in the forebay and tailrace at each dam (reaches are set in ReservoirReach Predator Density). Predator numbers are expressed on a square kilometer basis. This function accounts for the increase in predator density at the dam relative to densities in the reservoirs. As forebay and tailrace depths change with pool elevations, the predator density can be specified to adjust according to the change in depth from full pool by turning on predator density / volume interaction in RunRuntime Settings.

This is a Slider Input window. Click on the letter tabs to page through the list of dams. This slider input window groups forebay values separately from tailrace values.

This Slider Input window includes menus for selecting by Dam and by Species. You can group sliders by Dam (D) or Species (S).


Dam Predator Density in forebay and tailrace

Predation Probability: Diel Predation Probability

Selecting DamPredation Probability opens a window for adjusting the predation rate to some fraction below the maximum rate for each dam and species. Since predators typically use visual cues to find and capture prey, light levels should effect the rate of predation of fish in the forebay of the dam. Since dam passage varies between day and night, CRiSP.1 allows for the probability of predation to change over a 24 hour period in dam time increments (6 hours). A diel variation in reservoir predation is not applied since CRiSP.1 only uses two time steps over the day for reservoirs.

This is a Slider Input window.

This Slider Input window includes menus for selecting by Dam and by Species. You can group sliders by: Time-Step (T), Dam (D), or Species (S).


Dam Predation Probability window

TDG Saturation Equations: Total Dissolved Gas Supersaturation

Selecting DamTDG Saturation Equations opens three gas production equation windows--Day, Night and Backup--for defining the production of total dissolved gas supersaturation due to spilling at dams. The relationship between spill in kcfs and total dissolved gas above 100% saturation in the water is illustrated in the equation windows.

Operations at many dams differ during the day and night hours as a result different gas production equations are specified for each dam. Night is defined as hours 0-6 and 18-24 in the model. If the gas production characteristics are not significantly different for Night and Day, then these equations are specified to be the same.

The Backup equation is intended to supply a third equation in case the spill value falls out of a reasonable range for the equations provided for Day and Night characteristics. For example, the linear equations work best for McNary and Bonneville under normal spill operations; however, extremely high spills could create gas levels too high in an unbounded linear equation. Spill values less than lb (lower bound) or greater than ub (upper bound) determine the switch to the Backup equation.

There are six different gas production curves to choose from in each of the gas production windows. Bounded Linear and Bounded Exponential are the new and recommended production equations. Gas spill 1, Gas spill 2, and the other two equations offer other choices for gas production characteristics but are not implemented at any dam. The Gas spill equations have been the calibrated equations in previous versions of CRiSP.1. In general, the gas production equation parameters have been calibrated to existing data sets, and we recommend that you do not alter these values.

These are Equation Input windows.


TDG Supersaturation Equation windows

Dam Gas Theta

Selecting DamDam Gas Theta opens a window for setting the mixing parameter Gas Theta for each dam. This mixing parameter determines the level of mixing between the left-bank and right-bank flows in the tailrace of the dam and the resulting gas levels in each flow upon exiting the dam. This essentially determines the amount of mixing between the spill flow and the powerhouse flow in the tailrace. See the TDG Saturation > 100%: Dam section to determine whether the spill side is left or right, looking downstream, at a specific dam. Setting Gas Theta to zero results in no mixing between the spill and powerhouse flows and a value of 10 allows for complete mixing between the flows.

Gas Theta is different from K Entrain in that it determines how much mixing is happening between the powerhouse and spill flows in the tailrace where as K Entrain determines how much more gas is added to the system. Gas Theta will result in an exchange of gas between flows but the total amount of gas remains the same.

This is a Slider Input window. Click on the letter tabs to page through the list of dams.


Dam Gas Theta window

K Entrain

Selecting DamK entrain opens a window for setting the entrainment coefficient at a dam. K entrain determines how much additional gas is added to the powerhouse flow in the tailrace as a function of the amount of water going over the spillway into the tailrace of the dam and the spill flow gas level. The higher the amount of spill the more gas that is added to the powerhouse flow with the level of total dissolved gas (tdg) in the powerhouse flow ranging from the forebay tdg level to the tdg level in the spill flow. A K entrain value of zero results in no entrainment and the powerhouse flow will exit the dam at the same gas level it entered. A value of 10 results in maximum entrainment and the powerhouse flow will exit the dam at the same gas level that the spill produced in the spill flow.

K entrain is different from the Dam Gas Theta in that it determines how much more gas is added to the system where as the mixing parameter Gas Theta determines how much mixing is happening between the powerhouse and spill flows in the tailrace. Gas Theta will result in an exchange of gas between flows but the total amount of gas remains the same.

This is a Slider Input window. Click on the letter tabs to page through the list of dams.


K Entrain window

Delay Equation: Delay at Dams

Selecting DamDelay Equation opens the Passage Delay window which displays the passage probability in six hour intervals. The Delay Equation is a CRiSP.1 submodel that delays fish at a dam depending on the species, time of day, season, and flow. The delay is expressed in terms of a passage probability, not in terms of observed passage. The probability of passage depends on the model parameters; in all cases, increasing the parameters decreases the probability of delay and thus time spent in the forebay. The parameters are:

Several factors which affect delay are included in the display. Adjusting these factors does not change model data.

This is an Equation Input window.


Dam Passage Delay window

Powerhouse Capacity

Selecting DamPowerhouse Capacity opens a window for setting how much flow each dam can put through its powerhouse before being forced to spill the remaining flow. Dams differ in their design, and different dams can accommodate differing amounts of flow through each powerhouse before being forced to spill excess flow.

This is a Slider Input window. Click on the letter tabs to page through the list of dams.


Powerhouse Capacity window

Powerhouse Schedule

Selecting DamPowerhouse Schedule opens a window for setting the days and hours in which any powerhouse is used. Dams with two powerhouses can operate on a schedule to optimize survival during the fish passage season. The strategy is to operate the highest priority powerhouse up to its hydraulic capacity, then spill water up to another level called the spill threshold (set in Powerhouse Spill Thresholds window). Above this threshold, the second powerhouse is used. If the hydraulic capacity of the second powerhouse is exceeded, excess flow is spilled. For times when the second powerhouse is not scheduled, the spill threshold is not applied and all flow exceeding the hydraulic capacity of the first powerhouse is put into spill only. In the example, the Bonneville Dam primary powerhouse (set in Powerhouse Priority window) is on all day, every day.

In the figure below, the powerhouse is set to operate all day, all year-round. Use the Start Day, Stop Day, Start Hour, and Stop Hour keyboard input boxes to create new periods or modify existing periods of activity. In order to have periods where the powerhouse is not in operation, you must clear the On check box and set Start Day, Stop Day, Start Hour, and Stop Hour for the period in which powerhouse operations are not to occur. For example, if you want the powerhouse to operate only at night and not during the day hours (6-18):

  1. Select a Dam from the Powerhouse Dam menu.
  2. Clear the On check box.
  3. Type the desired Start Day and Stop Day for the period in which powerhouse operations are not to occur.
  4. Type 6 for Start Hour and 18 for Stop Hour.
  5. Click to transfer the values from the text boxes to the Day List and Hour List.

The new/modified values only take effect after clicking Apply / Apply All / OK.

This is a Schedule Tool window.


Powerhouse Schedule window

Powerhouse Priority

Selecting DamPowerhouse Priority opens a window for setting which powerhouse is designated the primary powerhouse. There are two dams that require a primary powerhouse to be set: Bonneville Dam and Rock Island Dam.


Powerhouse Priority window

Powerhouse Spill Thresholds

Selecting DamPowerhouse Spill Thresholds opens a window for setting the maximum amount of spill allowed (in kcfs) at each primary powerhouse, set in Powerhouse Priority window, before the secondary powerhouse is used.

This is a Slider Input window.


Powerhouse Spill Thresholds window

Mortality: Mortality in Dam Passage

Selecting DamMortality opens a window for setting the fish mortality rates for each dam and species in the various passage routes: spillway, bypass, turbine, and transport. Transportation mortality can be altered using parameters available in the Transport Mortality Equation window.

The probability distribution of mortality for each passage route is defined by a piecewise linear distribution within the range identified by low and high values. When the low and high values are set to zero or when the low and high values are set to the mean value, CRiSP.1 uses the mean value at all times (the term becomes deterministic). When the low and high values are not equal, CRiSP.1 uses the mean, low and high values to randomly generate a value when executed with variance suppression turned off in Runtime Settings (Run Menu). With variance suppression turned on, CRiSP.1 uses the mean value and ignores the high and low values. In either case, the mean value must lie within the central two quartiles of the distribution (i.e., the middle 50%). For example, if the low value is set to 0 and the high value is set to 100 then the mean value must be set between 25 and 75. If the mean value does not conform to this restriction, CRiSP.1 will abort the run and generate an error message in the Message Log (if open) specifying which species at which dams have bad values.

This is a Slider Input window. In this slider input window, you can group sliders by: Dam (D) or Species (S). If you group sliders by Dam (D), you are modifying the mean, low or high value for the corresponding passage routes for the specified Species at all dams. If you group sliders by Species (S), you are modifying the mean, low or high value for the corresponding passage routes at the specified Dam for all species.


Dam Mortality window

FGE: Constant Fish Guidance Efficiency

Selecting DamFGE opens a window for defining the fish guidance efficiency of the bypass systems at dams for day and night periods.

One of two possible functional relationships can be specified for fge: constant fge or time varying fge (see FGE Equation). When age dependent fge is turned off (RunRuntime Settings), the model will use the constant fge condition and the values set in this window. Day and night fge then vary randomly on each dam time interval according to a fixed probability distribution, i.e. the distribution has no seasonal trend. Fge is specific to a given dam and species and its random variations occur for each dam time interval (6 hours).

The probability distribution of constant fge is defined by a piecewise linear distribution within the range identified by the low and high values. When the low and high values are set to zero, or when the low and high are set to the mean value, CRiSP.1 uses the mean value at all times (the term becomes deterministic). When the low and high values are not equal, CRiSP.1 uses the mean, low and high values to randomly generate a value when executed with variance suppression turned off (RunRuntime Settings). With variance suppression turned on, CRiSP.1 uses the mean value and ignores the high and low values. In either case, the mean value must lie within the central two quartiles of the distribution (i.e., the middle 50%). For example, if the low value is set to 0 and the high value is set to 100 then the mean value must be set between 25 and 75. If values are set that do not conform to this restriction, CRiSP.1 will abort the run and generate an error message in the Message Log (if open) specifying which species at which dams have bad values.

The probability distributions for day and night fge set in this window are used in the calculation of time varying fge and the night fge values are displayed in the FGE Equation window. Changes applied to the probability distributions will automatically update the display in the FGE Equation window.

This is a Slider Input window.


Fge window

FGE Equation: Time Varying FGE

Selecting DamFGE Equation opens a window for setting parameters for time varying fge which differs from constant fge set in the FGE window. In order to execute a model run using the time varying fge condition, you must turn on age dependent fge (RunRuntime Settings). When the model is run under this condition, day and night fge change randomly for each dam time interval (6 hours) according to probability distributions that change with fish age and reservoir elevation. Variations in fge from the initial condition depends on Julian day, the day since the onset of smoltification, set in the Release Tool window, and reservoir elevation for each day, set in the Elevation window. The FGE Equation window displays the values for night fge only; however, both day and night values are calculated using the parameters set in this equation window as well as the mean, low and high fge values set in the FGE window. The difference between day and night fge is determined by the sliders describing the probability distribution in the FGE window. Changes applied to the probability distribution will automatically update the display in the FGE Equation window. In the FGE Equation window, mean fge is depicted as a red line and the blues lines designate the low and high values. Fge is plotted against fish age relative to the onset of smoltification. To coordinate effects of age dependent behavioral factors in fge and the seasonal dependent reservoir level factor, you must select the Julian day of the onset of smoltification. The fge submodel parameters are as follows:

This is an Equation Input window.


Night Fge Equation window.

Passage: Passage Histograms

CRiSP.1 computes daily fish passage on a release-specific basis for all river segments and dams. In CRiSP.1, passage and survival of fish through a reservoir is expressed in terms of the fish travel time through the reservoir, the predation rate in the reservoir, and a mortality rate resulting from fish exposure to total dissolved gas supersaturation, an effect called Gas Bubble Disease. Fish enter the forebay of a dam from the reservoir and experience predation during delays due to diel and flow related processes. They leave the forebay and pass the dam mainly at night through spill, bypass or turbine routes, or the fish are diverted to barges or trucks for transportation. Once they leave the forebay, each route has an associated Mortality rate and fish returning to the river are exposed to predators in the dam tailrace before they enter the next reservoir.

The Passage menu provides access to passage histograms for each reach and dam in the model and for each of the four dam passage methods: bypass, turbine, spillway, and transport. Passage histograms are also accessible by clicking on the desired location of the River Map (unless the Mouse Tool options have been redefined). In order to view passage data and histograms, the desired passage output data must be specified before running CRiSP.1.

  1. Open Output Settings.
  2. Select desired passage points for each passage type in Output Settings for Dams or Output Settings for Reaches windows and click OK.
  3. Run CRiSP.1.
  4. Select passage type and passage point from the Passage menu to open passage histogram.
    PassagePassageDam: Opens fish passage histogram for selected dam.
    PassagePassageReach: Opens fish passage histogram for selected reach.
    PassageBypassDam: Opens fish passage histogram for fish traveling through the bypass route at the dam.
    PassageTurbineDam: Opens fish passage histogram for fish traveling through the turbines at the dam.
    PassageSpillwayDam: Opens fish passage histogram for fish traveling through the spillway at the dam.
    PassageTransportDam: Opens fish passage histogram for fish transported from the dam.

All Passage menu windows include a couple features which are not found in other Julian Day Output windows. Each passage histogram includes a species menu (1) in the upper-right corner of the window which allows you to view the survival and timing data for each species individually (Chinook 0, Chinook 1, or Steelhead) or for All species combined at the dam or reach. The default view is all species combined. Below the X-axis of the graph is the line "total passage # = %." This is the total number of fish passing the selected point--dam or reach--for each day (2) and the percentage of the total number of fish released for the entire system that pass through the selected point (3). For example, in a run where the total number of fish released is 1,000,000 and total passage at Bonneville Dam is 281,029, then the passage at Bonneville Dam is 28% of the total number of fish released. When you view passage for a specific species the percentage is of the total number of species released. If you are viewing Spillway, Bypass, Turbine, or Transport Passage, the percentage shown is the percent of the total number of fish released.


Passage for Bonneville Dam

Run

The Run menu contains selections related to running CRiSP.1 in both Scenario Mode and Monte Carlo Mode.

Run Scenario: Scenario Mode

Selecting RunRun Scenario executes a Scenario Mode run using the data currently stored in the model. The data is a combination of parameter data read into the model and any changes in settings you have applied. In addition, the Run Scenario command is represented by in the Toolbar. Scenario Mode is used for determining migration and survival for a single year at a time. The model can be run in the Scenario Mode using its default settings as determined by base.dat. Normally, the default settings are replaced by reading user-specified parameter data into the model, selecting release sites, and running CRiSP.1. The results can be viewed in Passage Histograms, and statistical results can be viewed in the Message Log or in the summary.dat file which contains results from the most recent Scenario Mode run.

Run Scenario Mode Interactively

  1. Read parameter data into CRiSP.1.
    - CRiSP.1 reads in parameter data and model settings from a base.dat file when initially opened unless otherwise specified by command line options. Other parameter data can be read into the model by selecting FileOpen or by clicking . The CRiSP.1 distribution includes the "yearly.data" directory which contains .dat files with actual data for each year from 1965 to the present. All changes applied during a session will be used in the Scenario Mode run. In order to save changes made to parameter data and settings for another session, use the Save As feature to save parameter data files or the whole database to a file.
  2. Set Releases.
    - New releases can be defined by right-clicking on a on the River Map to open a Release Tool or by selecting ReleaseNew. Existing releases are represented by on the River Map. See the Release Tool section for further information on creating, deleting, and editing releases.
  3. Set Transports.
    - Transports can be defined for any dam by selecting DamTransport. See the Transport Tool section for further information on creating and editing transports. Existing transports are represented by on the River Map.
  4. Select Output Data by selecting RunOutput Settings.
    A. Set Passage Points: CRiSP.1 computes daily fish passage on a release-specific basis through all river segments and dams. Fish survival and migration time at specific points along the river is displayed in Passage Histograms and in the Message Log after the run completes. You can request specific passage points by setting the options you want in the Output Settings for Dams and Output Settings for Reaches windows.
    B. Set Flow Observation Point: A representative river flow over the travel time of a release can be obtained by selecting the dam you want as the Flow Ind. in the Output Settings for Dams window. The average flow will be reported in the Message Log and in the summary.dat file. Only one flow point can be specified.
    C. Set Other Data: Other data such as water temperature at a dam can be requested by setting the options you want in the Output Settings for Dams, Output Settings for Reaches and Output Settings for Headwaters windows.
    Note. During a CRiSP.1 session, the selected output settings can be used for multiple runs with various parameter data files by using the Lock Output Settings option (Run menu) to lock the output settings and override any output settings contained in a parameter data file subsequently read into the model.
  5. Set Model Configurations.
    - CRiSP.1 can be run with different functions that affect the movement and survival of fish through the river system. Specific functions can be set by selecting RunRuntime Settings and setting the runtime options you want.
  6. Set Logging Options by selecting FileMessage Log.
    - Select Messages from the Logging menu in the window to write results from the run to the log window. See Message Log for other logging options.
  7. Begin Scenario Run by selecting RunRun Scenario or clicking .
    Note. The progress of Scenario Mode run calculations will be displayed in the Status Bar of the GUI, lower-left corner.
  8. View Scenario Mode Results (summary.dat).

You can produce the same output parameters from a model run during another session by saving output settings and runtime settings to a .cnf file.

Run Scenario Mode in Batch Mode

CRiSP.1 can be run in batch scenario mode from a shell which would otherwise not be able to run the model using the graphical user interface. Please see the Running in Batch Mode section for special instructions on running CRiSP.1 in batch mode.

  1. All parameter data and model settings should be set and saved to files on disk before running CRiSP.1 in batch scenario mode. See the Run Scenario Mode Interactively section for details on setting up a Scenario Mode run.
  2. You can start batch scenario mode runs from the command prompt by typing any of the following example commands.
    - Unix using crisp1
    crisp1 -bs
    - Unix using the batch mode only program, crisp1bat
    crisp1bat -s -c batch.cnf
    - Windows 95/NT using crisp1 (redirects both output streams to the same file)
    crisp1 -bs -f batch.dat 1>output.txt 2>&1
    - Windows 95/NT using crisp1b (redirects output streams to shell)
    crisp1b -s -r columbia.desc
  3. View Scenario Mode Results (summary.dat).

See the Starting from the Command Prompt section for further information on command prompt options for CRiSP.1.

Warning. Do not quit while the model is running.

Scenario Mode Results (summary.dat)

Results produced by executing CRiSP.1 in Scenario Mode are written to the summary.dat file and the Message Log which includes survival and travel time information for all selected points. Reports of parameter values used during the most recent Scenario Mode run can be generated from the Input Data Report window (Analysis menu).

To see the number of fish passing a river segment or dam each day, the cumulative number that eventually pass over the whole season, and percent survival on a species-specific basis open Passage Histograms by clicking the desired river segment or dam on the River Map.

Information generated from the run is written to the summary.dat file and the Message Log. The output begins with each Release followed by the survival information for each passage point requested (see Run Scenario Mode Interactively). Following the release survival information is a summary statement for all releases. Any other data you selected in Output Settings, e.g. water temperature, will follow all the release and survival information.

Release

Survival Below Reach or Dam Passage Point for Specific Release

Summary for all Releases

Statistics fields:

Sample portion of the summary.dat file

CRiSP1 Summary Output File
  Wed Jun 23 10:49:36 1999

        Scenario Mode
  McNary Dam was used as the average flow indicator.
  
Statistics fields: first day, last day, total passage, mean day
        median day, mode day, std.dev day, avg.flow
        bypass out, spillway out, turbine out, transport out
        total in, bypass in, spillway in, turbine in, transport in

Release:  Dworshak      Species:  Steelhead     Stock:  Generic Start date:  
119        Released:  1192503
  
 Survival Below Lower Granite Pool
        Passed:         1078314
        Survival:       90.4%
        stats: 120   165        1078314.38      127.03          126.33          
125.00          3.45    238.74          0.00    0.00    0.00    0.00    
1179277.88      0.00    0.00    0.00    0.00  
  
 Survival Below Lower Granite Dam
        Passed:         229929
        Transported Out:783159
        Vn:             0.140
        FLUSH D:        0.272
        Survival:       19.3%
        stats: 120   160        229928.91       128.20          127.24          
127.00          4.05    238.67          0.00    23894.62        230001.47       
712674.81       1054854.88      783159.00       24382.27        247313.36       
783159.00  

...

Summary for all Releases
        Released:       4411986
        Passed:         1780767
        Survival:       40.4%

Cancel Run

Selecting RunCancel Run or clicking during a run stops both Scenario Mode and Monte Carlo Mode runs. In addition, the Monte Carlo window includes a "Cancel Run" button to stop Monte Carlo Mode runs. Monte Carlo Mode runs may take a while to stop processing.

Monte Carlo: Monte Carlo Mode

Selecting RunMonte Carlo opens the Monte Carlo window for creating, deleting and editing Monte Carlo alternatives. Monte Carlo Mode runs CRiSP.1 for one or more combinations of water year and system operations. Flows are specified at dams or reaches and propagated upstream to the headwaters. In each run, a different flow regime and other model parameters are used. Fish survival is determined for each run and the distribution of survivals from all runs provides an estimate of the probability distribution of survival under the specified conditions.

The main variable changed in each run is river flow. Flow is generated from runs of the hydroregulation models maintained by the Army Corps of Engineers (HYSSR) and BPA (HYDROSIM). The hydroregulation models use historical water data and a projection of electrical demand to simulate system flows, which are designated a Flow Archive File. These files provide period-averaged flows at operating projects which are modulated by CRiSP.1 to represent daily flows. CRiSP.1 uses the modulated flows along with a Yearly Input Data File for each power year to describe the system operations and fish biological parameters to produce histograms of survival and travel time. The CRiSP.1 distribution includes the "flow.data" directory which contains weekly averaged flow files for each year from 1961 to 1994.

In Monte Carlo Mode, you can run CRiSP.1 with one or more alternatives. An alternative is a file containing the flow file name, the number of games (runs), the number of years (power years), and the name of the Yearly Input Data File to use for each power year in the alternative. The Monte Carlo window contains three panels: Alternatives to run, Alternative being edited, and Run control. In the following sections, you will find details on creating, deleting, editing and running Monte Carlo alternatives.

Create New Alternatives

  1. Select RunMonte Carlo.
  2. Click New (upper-right corner of window) to create an alternative.
  3. Type the name of new alternative in Monte Carlo Tool dialog box and click OK. The default name is altern#. It is recommended to assign a more descriptive name to the alternative to simplify later interpretation.
  4. Follow the instructions in Set Monte Carlo Parameters.

After you create a new alternative, the Alternatives to run list and the Alternative being edited list in the Monte Carlo window will update to include the new alternative. At the same time, an altern# directory has been created on disk which contains the Monte Carlo files.

See the Monte Carlo section for the list of related sections.

Delete Existing Alternatives

  1. Select RunMonte Carlo.
  2. Select the alternative to be deleted in the Alternative being edited list and click Delete.
  3. Click OK in the Monte Carlo Tool dialog box when prompted, "Really delete altern# ?"

After you delete an alternative, the Alternatives to run list and the Alternative being edited list in the Monte Carlo window will update to reflect this change. At the same time, the altern# directory will be deleted from disk.

See the Monte Carlo section for the list of related sections.

Set Monte Carlo Parameters

Parameters for each alternative are set in the Monte Carlo window. The Monte Carlo window is divided into three panels: Alternatives, Alternatives being edited and Run control. Each panel is described separately.


Monte Carlo window

Alternatives

In the Alternatives panel (upper portion of the window), you can select alternatives to run, select an alternative to edit, Create New Alternatives, and Delete Existing Alternatives. It has the following controls:

Alternative being edited

The Alternative being edited control panel displays information based on the alternative selected in the Alternative being edited list (6) in the Alternatives panel, and sets flow and other model information. It contains the following controls:

  1. Flow from (7): Specify the source of flow from an archive file or user data.

    A. If you select archive as source of flow, follow these steps:
    - flow archive: Identify the flow.archive file by typing the name of the file in the text box and click Use, or by clicking to browse your local system to select the appropriate file. This file must be in a format that CRiSP.1 can read. The CRiSP.1 distribution includes single year flow files (flow.data directory) for 1961 through 1994. Flow archive files typically contain period averaged flows and spills at dams as computed by a hydroregulation model such as HYSSR or HYDROSIM for a number of water years, or games, each identified by a year (e.g. 1938).
    - - Typically, the archive will contain specifications for spill amounts at each dam. This information, however, is also specified in the yearly input files. To avoid confusion, CRiSP.1 requires that you decide which spill information to use: the data from the archive or the data from the .dat file. In the same manner, you will also need to specify the source of the elevation information.
    - Planned spill from (8): Select source of planned spill information from period averaged data in the flow archive file (archive) or from hourly spill in yearly input (11) file (user data).
    - Elevation from (9): Select source of reservoir elevation information from period averaged elevation in a flow archive file (archive) or from daily elevation in yearly input (11) file (user data).
    - Customize games (10): Customize games with this control to run multiple games of different water years. After you select an archive, this window displays a list of all the water years in the archive, e.g. 1929:1. Type the preferred number of games for each water year (zero is acceptable). Select a water year to edit the number of times to run each year in the text box. Click to update the changes to the number of games. Click to update all water years for the number of games typed into the # games text box. Click Apply All / Apply to save changes made to the alternative.

    B. If you select user data as source of flow, follow these steps:
    - Planned spill and Elevation data are automatically read from a Yearly Input Data File. Use Spill Schedule and Elevation windows, respectively, to change the values and make sure to save your changes to the yearly input data files that will be used. The changes must be saved to disk.
    - # games (10): Set the number of games to run for each yearly input data file. Apply the changes by clicking Apply. You must first turn off variance suppression in Runtime Settings (Run menu) and save the settings to the yearly input data file being used.

  2. yearly input files (11): Specify a Yearly Input Data File to be used for each power year in the alternative. You can specify any number of years for the alternative. Yearly input data files contain all the parameters that describe fish behavior, reservoir properties, spill schedules, elevation and loss information, dam parameters, releases, and river information. You can use a Control File to "mix and match" pieces of information from various files. Once you have put together the pieces of interest, it is recommended that you write this information to a separate .dat file for later use.
    - Use # files (12): Specify the number of years to be used in the alternative by typing the number in the text box and clicking Use. The yearly input files list will update to contain the specified number of entries. If you want to specify only one year, you do not need to enter a value in this box.
    - filename (13): Select a line in the yearly input files list and identify the yearly input file by typing the name of the file in the text box or by clicking to browse the local file system to select a file. Click to update the yearly input files list with your selection. Click to update all yearly input file entries to use the file specified in the text box even if other selections have already been applied. Click Apply All / Apply to save changes made to the alternative.

Run control

The Run control panel displays information about the alternatives and the status of a Monte Carlo run. It has the following controls:

The Monte Carlo window also includes the following:

See the Monte Carlo section for the list of related sections.

Set Monte Carlo Output and Runtime Settings

When running in Monte Carlo mode, a number of results are calculated by the model, but only those requested by you will be available following the run. Before starting a Monte Carlo simulation, all output data and runtime settings must be specified.

Output Settings

To view and analyze survival and travel time information for any point in the river, the appropriate passage points must be specified before the run. Other output data also must be specified including water temperature and the average flow experienced by fish between the mean release date and mean passage date to any point in the river. There are two ways to save output data from Monte Carlo runs.

You can specify the output settings in each yearly input data file before running Monte Carlo alternatives.

  1. Select FileOpen and select a yearly input data file specified in the Monte Carlo alternative.
  2. Select RunOutput Settings and set the desired options in the Output Settings for Dams, Output Settings for Reaches and Output Settings for Headwaters windows.
  3. Select FileSave As to save the yearly input data file to disk.
  4. Repeat steps 1-3 for each yearly input data file specified in the alternative.

OR

You can Lock Output Settings during the run.

  1. Select RunOutput Settings and set the desired options in the Output Settings for Dams, Output Settings for Reaches and Output Settings for Headwaters windows.
  2. Select the Lock current output settings check box in the Monte Carlo window to override any output settings specified in the yearly input data files for each Monte Carlo simulation. This is the same as selecting RunLock Output Settings.

Runtime Settings

CRiSP.1 can be run with different functions that effect the movement and survival of fish through the river system. Any specifications for Runtime Settings must be selected, applied and saved to the appropriate yearly input data files before running Monte Carlo.

For example, if you forget to turn off variance suppression in a particular yearly input data file, you need to:

  1. Select FileOpen and select the yearly input data file being used in alternative to read the file into CRiSP.1.
  2. Select RunRuntime Settings.
  3. Turn off variance suppression and click OK.
  4. Select FileSave As to save the yearly input data file to disk.

After making all settings for parameters and output for each alternative, you are ready to Run Monte Carlo Interactively or Run Monte Carlo in Batch Mode.

See the Monte Carlo section for the list of related sections.

Run Monte Carlo Interactively

The steps to run CRiSP.1 in Monte Carlo Mode are as follows:

  1. Select RunMonte Carlo to open Monte Carlo Tool.
  2. Edit alternatives, if necessary, using the three panels of the Monte Carlo window described in Set Monte Carlo Parameters.
  3. Set Monte Carlo Output and Runtime Settings.
  4. Select each desired alternative in the Alternatives to run list; you can run multiple alternatives at the same time.
  5. Select if supplemental data is required. The Write supplemental data check box is located in the Run control panel. This will produce a summary.alt# file with all the data specified by Output Settings in the yearly input data files for each alternative in the run. In addition, you can choose to have this information also recorded in the Message Log by turning on Messages (this produces a considerable amount of information in the log window).
  6. Click Run. The Run control panel contains three progress bars: Alt Games, Alt Years, and Alternatives.
  7. View Monte Carlo Results.

Monte Carlo runs are time-consuming. A 500-game run may take several hours, or more, to run. It is recommended to select several alternatives to run, start the run, and let it run overnight. You can shrink CRiSP.1 into an icon while it is running. Do not quit while the model is running.

See the Monte Carlo section for the list of related sections.

Run Monte Carlo in Batch Mode

Monte Carlo alternatives can be run in batch mode. The steps to running CRiSP.1 in batch mode are as follows:

  1. Use the graphical user interface to Create New Alternatives and Set Monte Carlo Parameters, making sure to specify the flow archive, the yearly input data files, and the desired output data. All alternatives must be saved on disk.
  2. Create or modify a file named .crisp1-alts. The file must exist in the same directory where your CRiSP.1 program and all the alternatives reside. The model will run all the alternatives listed in the .crisp1-alts file before concluding. This file can be created using any text editing tool. It simply contains a list of the names of the alternatives to be run, one on each line. For example,
       altern1
            altern2
            ...
    
  3. Once you create your alternatives and a .crisp1-alts file in place, CRiSP.1 can be run in batch mode from a shell which would otherwise not be able to run the model using the graphical user interface. Batch mode is executed from the command prompt. Please see the Running in Batch Mode section for special instructions on batch mode operations. You can start batch Monte Carlo mode runs from the command prompt by typing any of the following example commands.
    - Unix using crisp1
    crisp1 -b -u
    - Unix using the batch mode only program, crisp1bat
    crisp1bat -c batch.cnf
    - Windows 95/NT using crisp1 (redirects both output streams to the same file)
    crisp1 -bm 1>output.txt 2>&1
    - Windows 95/NT using crisp1b (redirects output streams to shell)
    crisp1b -r columbia.desc -u
  4. View Monte Carlo Results.

See the Starting from the Command Prompt section for further information on command line options for CRiSP.1.

Monte Carlo runs are time-consuming. A 500-game run may take several hours, or more, to run. It is recommended that you select several alternatives to run, start the run, and let it run overnight. Windows 95/NT users, do not quit while the model is running.

See the Monte Carlo section for the list of related sections.

Monte Carlo Results

CRiSP.1 contains three tools in the Analysis menu for interpreting the results of Monte Carlo simulations and analyzing and comparing Monte Carlo runs.

See the Monte Carlo section for the list of related sections.

Lock Output Settings

Selecting RunLock Output Settings turns on or off the Lock Output Settings feature. When running in either Scenario or Monte Carlo mode, a number of results are calculated by the model; however, only the output data you have specified will be available following the run.

When Lock Output Settings is not selected (off), CRiSP.1 will use the output settings specified in a yearly input data file or .cnf file to determine which results will be available to view and analyze after a run. Be sure to specify the desired outputs and save them to the yearly input data files to be used in the Monte Carlo alternatives. For Scenario Mode runs, you can view the output either in histograms, e.g. Passage Histograms, or in the Message Log. For Monte Carlo Mode runs, you can view the output with the Monte Data Report and Monte Analysis under the Analysis Menu.

When selected (on), CRiSP.1 will override all output settings specified in any parameter data files read into the model or read during interactive Monte Carlo simulations. Instead, CRiSP.1 will generate output data for the current selections in the Output Settings windows for dams, reaches and headwaters. This allows a user, for example, to change the output data produced by a Monte Carlo run without editing all of the yearly data files used by that run.

In Monte Carlo Mode, this feature can be used both in batch mode and interactively. In batch mode, the command option -c output_control_file can be used to override any output settings for an individual alternative. In the interactive mode, the locking option can be set using this feature or by selecting the check box Lock current output settings in the Run control panel of the Monte Carlo window. The current output settings specified in the Output Settings windows for dams, reaches and headwaters will be used during run execution.

Output Settings: Specifying Desired Outputs

Selecting RunOutput Settings opens three windows for configuring dam, reach and headwater output to save for examination after run completion: Output Settings for Dams, Output Settings for Reaches and Output Settings for Headwaters. When running in either Scenario or Monte Carlo mode, a number of results are calculated by the model; however, only those requested by you will be available following the run. For Scenario Mode runs, you can view the output either in histograms, e.g. Passage Histograms, or in the Message Log. For Monte Carlo Mode runs, you can view the output with the Monte Data Report and Monte Analysis under the Analysis Menu.

Note. Be sure to specify the desired outputs and save them to the yearly input data files to be used in the Monte Carlo alternatives or use the Lock Output Settings feature.

Output Settings for Dams

For Dams, you can select to record output from the following parameters.

Click the check boxes to select the desired outputs. A whole row or column can be selected by clicking the all check box in a dam row (selects all parameters for that dam) or parameter column (selects all dams for that parameter). All check boxes can be selected by clicking the all column check box in the all row.


Output Settings for Dams window

Output Settings for Reaches

For Reaches, you can select to record output from the following parameters.

Click the check boxes to select the desired outputs. A whole row or column can be selected by clicking the all check box in a reach row (selects all parameters for that reach) or parameter column (selects all reaches for that parameter). All check boxes can be selected by clicking the all column check box in the all row.


Output Settings for Reaches window

Output Settings for Headwaters

For Headwaters, Flow and Water Temperature are the only available output parameters.

Click the check boxes to select the desired outputs. A whole row or column can be selected by clicking the all check box in a headwater row (selects all parameters for that headwater) or parameter column (selects all headwaters for that parameter).


Output Settings for Headwaters window

Runtime Settings: Different Model Configurations

Selecting RunRuntime Settings opens a window for specifying several functional relationships for run execution. CRiSP.1 can be run with different functions that effect the movement and survival of fish through the river system. Settings are selected or cleared by clicking the respective check box. Each relationship is described in the following sections. Any Runtime Settings you want to take effect during a Monte Carlo Mode run must be applied and saved to a yearly input data file (.dat or .cnf) specified in the Monte Carlo alternative.


Runtime Settings window

variance suppression

The variance suppression option in Runtime Settings controls the stochastic parts of the model. When variance suppression is turned on, each subsequent run of the model uses exactly the same value for parameters that would otherwise be drawn from a distribution (the term becomes deterministic). This is useful for doing quick tests of sensitivity. By default, it is turned on. Variance suppression should be turned off when running multiple games in Monte Carlo Mode. Any Runtime Settings you want to take effect during a Monte Carlo Mode run must be applied and saved to a yearly input data file (.dat or .cnf) specified in the Monte Carlo alternative.

Predation Coef, Migration Rate Variance, Mortality, and FGE are examples of stochastic parameters in CRiSP.1. Each window contains sliders for setting the mean, low, and high values by species or by dam and species. When the low and high values are set to zero or the low and high are set to the mean value, CRiSP.1 uses the mean value at all times (the term becomes deterministic). When the low and high values are not equal, CRiSP.1 uses the mean, low and high values to randomly generate a value when executed with variance suppression turned off. With variance suppression turned on, CRiSP.1 uses the mean value and ignores the high and low values. In either case, the mean value must lie within the central two quartiles of the distribution (the middle 50%). For example, if the low value is set to 0 and the high value is set to 100, the mean value must be set between 25 and 75. If values are set that do not conform to this restriction, CRiSP.1 will abort the run and generate an error message in the Message Log (if open) specifying which parameters have bad values.

ERROR: bad stochastic param reach pred coeff for Chinook 0.
                -->mean not in range 12.386550 <= mean <= 17.341249
        ERROR: aborting run due to bad parameter values.

predator density / volume interaction

The predator density/volume interaction option in Runtime Settings serves to increase the mortality rate due to predation in CRiSP.1 runs. This runtime setting allows you to specify that predator density should increase as pool volume decreases, that is when the pool is drawn down. This interaction is based on the possibility that concentrating predators in a dam forebay or tailrace increases the encounter rate between predators and prey and thus effectively increases the mortality rate.

If predator density/volume interaction is selected (on), predator density is a function of pool elevation for reservoir, forebay and tailrace regions. This setting increases the effective predator density as pools are lowered which in turn increases the predation rate. By default, this option is turned off.

Any Runtime Settings you want to take effect during a Monte Carlo Mode run must be applied and saved to a yearly input data file (.dat or .cnf) specified in the Monte Carlo alternative.

age dependent fge

The age dependent fge option in Runtime Settings specifies one of two possible functional relationships for fish guidance efficiency (fge): constant fge or time varying fge. When age dependent fge is turned off, the model will use the constant fge condition and the values set in the FGE window. Day and night fge then vary randomly on each dam time interval according to fixed probability distributions (the distribution has no seasonal trend). Fge is specific to a given dam and species and its random variations occur for each dam time interval (6 hours).

When age dependent fge is turned on, the model run varies fge at dams according to the settings in the FGE Equation window and the mean, low and high fge values set in the FGE window. When the model is run under this condition, day and night fge change randomly at each dam time interval according to probability distributions that change with fish age and reservoir elevation. Variations in fge from the initial condition depends on the day since the onset of smoltification which is set in the Release Tool window, and reservoir elevation for each day which is set with the Elevation window.

Any Runtime Settings you want to take effect during a Monte Carlo Mode run must be applied and saved to a yearly input data file (.dat or .cnf) specified in the Monte Carlo alternative.

Mortality Model

The Mortality Model option in Runtime Settings specifies which of the two mortality models to use during run execution: Gas and Pred Mortality or Simple Mortality. CRiSP.1 is currently calibrated for the Gas and Pred Mortality model.

Any Runtime Settings you want to take effect during a Monte Carlo Mode run must be applied and saved to a yearly input data file (.dat or .cnf) specified in the Monte Carlo alternative.

Analysis

The Analysis menu provides tools to analyze CRiSP.1 results.

Input Data Report: Input Report Tool

Selecting AnalysisInput Data Report opens the Input Report Tool for generating lists of model parameters. This tool provides an easy way for you to determine the precise values currently in memory in CRiSP.1 and what values would be used in a Scenario Mode run. You can write the parameters values into tables that can be viewed on the screen, saved to a file, or printed. Any groupings of data can be written into the tables using the Input Report Tool. The Parameter Glossary contains definitions for all the parameters found in the Input Report Tool except for the individual parameters used in each model equation.

A similar option is available for batch mode runs using the -o output_file argument to generate a parameter data file. See Starting from the Command Prompt section for more information.

Input Report Tool features


Input Report Tool for generating tables of model parameters

Monte Data Report: Monte Report Tool

Selecting AnalysisMonte Data Report opens the Monte Report Tool for generating summary reports from Monte Carlo runs that are tailored to individual needs.

Monte Report Tool features

The amount of time required to generate output from this tool depends on the number of alternatives and the number of games in each alternative. CRiSP.1 keeps in memory the selections made in the Monte Report Tool for the duration of the session or until selections are cleared by clicking Clear. This is to facilitate generating reports of the same parameters for multiple Monte Carlo runs. During a session, CRiSP.1 attempts to preserve sensible selections if new model runs are performed, alternatives are deleted, or the working directory is changed.


Monte Report Tool for generating model output reports

Output Window

Selections made in either in the Input Report Tool or the Monte Report Tool are displayed in the Output Window when you click View or View All. Information in the Output Window can be printed, saved to a file, or copied to a file. Line length is set in either the Input Report Tool or the Monte Report Tool window.

Output Window features


Output Window

Monte Alt. Comparison: Comparing Two Distributions

Selecting AnalysisMonte Alt. Comparison opens the Alternative Comparison window for comparing two alternatives. You can compare two alternatives to determine if the probability distributions are statistically different.

Alternative Comparison features

The Alternative Comparison window uses the Kolmogorov-Smirnov test. The null hypothesis tested is that the two distributions are drawn from the same population, i.e. they are identical. To test this hypothesis, the d statistic is used. Results from the Kolmogorov-Smirnov test are displayed in the lower-left corner of the window.

The closer the probability is to zero the more likely the two distributions are statistically different. As a typical example, we would reject the hypothesis that the two distributions are the same for probability < 0.01.


Alternative Comparison window

Monte Analysis: Monte Analysis Tool

Selecting AnalysisMonte Analysis opens the Monte Analysis Tool and its companion window the Analysis Tool graph window. Using these windows, you can visually examine the results of a Monte Carlo run. You can plot either the survival or travel time results as a straight frequency histogram or as a cumulative probability histogram.

Monte Analysis Tool features


Monte Analysis Tool

Analysis Tool

Selecting AnalysisMonte Analysis opens the Analysis Tool graph window and its companion window the Monte Analysis Tool for visually examining the results of a Monte Carlo run. The Analysis Tool graph window has the same features as a Julian Day Output window; however, Julian days are not the unit of measurement for the X-axis. Survival or travel time between the point of release and points downstream can be viewed as either a histogram or cumulative distribution based on the selections made in the Monte Analysis Tool window.

By selecting Survival or Travel Time for Data Type and clicking Plot in the Monte Analysis Tool, a frequency histogram or cumulative probability distribution of survival or travel time between release and river segment can be opened for passage points of any release.

Survival Graph

Travel Time Graph


Monte Analysis Tool Survival histogram

Help

The Help menu contains the major categories of the Help system.

The Help system window has five navigation functions:

Keyword Glossary

Parameter Glossary

The Parameter Glossary includes terms that occur in the CRiSP.1 input files: columbia.desc and base.dat. (See the River Description File Structure and Yearly Input Data File Structure sections, respectively, for further details.) Category indicates whether the Keyword or Token is part of the Dam, Reach, Headwater, Species or Global specifications in the River Description file or the Yearly Input Data file. Terms that are not in bold designate parameters not recommended for use in model operations or parameters not currently in use.

Keyword / Token [Category]: Description

Technical Details

The purpose of this section is to provide advanced information about the files used by CRiSP.1 and parameters and tokens found in each file. A novice user of CRiSP.1 does not need to be familiar with level of detail that is discussed in the following sections.

River Description File Structure

The River Description File (columbia.desc) contains all the information necessary to define the physical river system from the ocean to the various headwaters. This includes latitudes and longitudes of release sites, dams, and river segments, and many of the physical attributes of these features. Sample reach and dam designations follow as well as parameter definitions.

Rules for construction

The River Description File contains information specifying the physical characteristics of the river. The file must follow rules for construction of a river map. Rules on ordering of tokens (or keywords) include:

Reach Parameters

The following is an example of a reach designation from a River Description File (.desc).

       reach The Dalles Pool
        width 3624.5
        upper_depth      47.05
        lower_depth     70.0
        slope           87.92
        lower_elev 55
        latlon 45 36 50 N 121 7 57 W
        latlon 45 37 38 N 121 6 48 W
        latlon 45 38 25 N 121 5 37 W
        latlon 45 38 58 N 121 4 46 W
        latlon 45 39 12 N 121 3 14 W
        latlon 45 39 8 N 121 1 22 W
        latlon 45 39 11 N 121 0 9 W
        latlon 45 38 57 N 120 58 52 W
        latlon 45 39 24 N 120 57 8 W
        latlon 45 39 18 N 120 56 18 W
        latlon 45 38 58 N 120 55 24 W
        latlon 45 38 55 N 120 54 21 W
        end (The Dalles)

Keywords and descriptions for reaches

Dam Parameters

The following are examples of dam specifications from a River Description File (.desc).

Storage Basin Dam

       dam Chief Joseph Dam
        powerhouse_capacity 219
        floor_elevation         743.0
        forebay_elevation       956.0
        tailrace_elevation      786.0
        spillway_width           1320
        spill_side              right
        pergate                   2.0
        ngates                    19
        gate_width               40.0
        basin_length              180
        sgr                       1.0
        abbrev CHJ                    
        storage_basin           0.0 5185.5
        latlon 47 59 48 N 119 37 56 W
        end (Chief Joseph)

Dam with two Powerhouses

       dam Bonneville Dam                    
        powerhouse_capacity 136
        powerhouse_2_capacity 152
        floor_elevation          -16.0
        forebay_elevation         77.0
        tailrace_elevation        14.5
        bypass_elevation          65.5
        spillway_width          1080.0
        spill_side              right
        pergate                    2.9
        ngates                    18
        gate_width                60.0
        basin_length             144.5
        sgr                        1.0
        abbrev BON                    
        latlon 45 38 41 N 121 56 21 W
        end (Bonneville)

Keywords and descriptions for dam parameters

Species, Stock, Release, and River Parameters

The following are species, stock, release and river tokens found in a River Description File (.desc).

Yearly Input Data File Structure

The Yearly Input Data File (base.dat) contains the information specific to the model run you wish to perform, such as releases, dam mortality rates, fge, and so forth. Parameters are described for each species, each dam, each reach, each headwater, and each release.

During a CRiSP.1 run, information is stored according to tokens corresponding to model variables and parameters. Token structure is illustrated below where tokens are species or gas_mort_eqn. A complete list of tokens can be found in the Parameter Glossary. For parameters that change in time, the token is followed by a time series of values. The model contains two time steps: reservoir time steps (one day) and dam time steps (6 hours). Parameters at dams, therefore, are specified for 4 periods per day, while parameters in reaches (flow, loss, elevation, temperature) are specified with one value per day. (See the Time in CRiSP.1 section for further information.)

Mean, High and Low

For many parameters there will be a token that possesses one of three suffixes: mean, low, and high (e.g. day_fge_mean or day_fge_high). These describe the mean value and the two endpoints of the broken-stick distribution used to draw stochastic variables. For the sake of brevity, only one description for each collection of three such tokens is provided.

Equations

Equations have tokens ending in eqn or equation, e.g. gas_mort_eqn or fge_equation. Following each such equation will be a list of parameters. In the case of the fge equation, there are four parameters. For each parameter there are three values specified. The first represents the value used in the model, and the second two represent the minimum and maximum values allowed for parameter in CRiSP.1 You can adjust the allowed range for the parameter by editing these values. Editing these values will alter the bounds for the corresponding slider in the equation window. In the sections that follow, we only list the equation token itself, not the parameters that accompany it. The number following the token dictates the form of the equation used.

       fge_equation Chinook_1  22
                parameter 0 0.500000 0.000000 2.000000 
                parameter 1 10.000000 0.000000 100.000000 
                parameter 2 30.000000 0.000000 100.000000 
                parameter 3 30.000000 0.000000 100.000000 
        end fge_equation (Chinook_1)

Species and Stock Tokens and Parameters

The following is an example of a species specification from a Yearly Input Data file (.dat).

       species Chinook_1
                reach_pred_coef_mean 12.700000
                reach_pred_coef_low 0.000000
                reach_pred_coef_high 0.000000
                forebay_pred_coef_mean 18.000000
                forebay_pred_coef_low 0.000000
                forebay_pred_coef_high 0.000000
                tailrace_pred_coef_mean 0.000021
                tailrace_pred_coef_low 0.000000
                tailrace_pred_coef_high 0.000000
                v_var 57.45
                migr_var_coef_mean 1.00
                migr_var_coef_low 0.70
                migr_var_coef_high 1.30
                gas_mort_eqn  34
                        parameter 0 0.000021 0.000000 0.010000 
                        parameter 1 0.005980 0.000000 0.010000 
                        parameter 2 10.900000 5.000000 15.000000 
                end gas_mort_eqn ( )

                fish_depth_eqn  27
                        parameter 0 12.000000 0.010000 100.000000 
                        parameter 1 36.000000 0.010000 100.000000 
                end fish_depth_eqn ( )

                simple_mort_equation  44
                        parameter 0 14.070000 10.000000 18.000000 
                        parameter 1 0.182000 0.000000 0.300000 
                        parameter 2 0.000000 0.000000 1.000000 
                end simple_mort_equation ( )

                flush_trans_equation  45
                        parameter 0 5.825900 5.000000 6.000000 
                        parameter 1 5.353300 5.000000 6.000000 
                        parameter 2 0.980000 0.000000 1.000000 
                end flush_trans_equation ( )

                migration_eqn  24
                        parameter 0 0.643000 -10.000000 20.000000 
                        parameter 1 9.810600 0.000000 100.000000 
                        parameter 2 0.579100 0.000000 2.000000 
                        parameter 3 0.122600 0.000000 2.000000 
                        parameter 4 90.004997 50.000000 250.000000 
                        parameter 5 0.150000 0.000000 1.000000 
                end migration_eqn ( )

                pred_temp_response_eqn  38
                        parameter 0 22.265030 0.000000 100.000000 
                        parameter 1 0.572960 0.000000 2.000000 
                        parameter 2 9.861010 0.000000 30.000000 
                end pred_temp_response_eqn ( )

        end species (Chinook_1)

The following is an example of a stock specification.

       stock Catherine_Creek_Ch2
                v_var 41.37
                migr_var_coef_mean 1.00
                migr_var_coef_low 0.10
                migr_var_coef_high 0.10
                migration_eqn  24
                        parameter 0 -5.975300 -10.000000 20.000000 
                        parameter 1 4.910700 0.000000 100.000000 
                        parameter 2 2.046700 0.000000 3.000000 
                        parameter 3 0.000000 0.000000 2.000000 
                        parameter 4 100.000000 50.000000 250.000000 
                        parameter 5 0.154200 0.000000 1.000000 
                end migration_eqn ( )

                pred_temp_response_eqn  38
                        parameter 0 22.265030 0.000000 100.000000 
                        parameter 1 0.572960 0.000000 2.000000 
                        parameter 2 9.861010 0.000000 30.000000 
                end pred_temp_response_eqn ( )

        end stock (Catherine_Creek_Ch2)

Keywords and descriptions for species and stock tokens and parameters

Release Tokens and Parameters

Release parameters may or may not appear in the base.dat file. The following is an example of a release specification from a Yearly Input Data file (.dat).

       release Chinook_1 Wild_Salmon_R_Stocks 115
                stock Generic
                smolt_onset 91
                smolt_finish 91
                vitality 0.00
                vitality_change 0.00
                length 0.00
                number 20860 26662 56295 35179 
                        40586 27468 50287 46775 
                        57106 46554 43438 63271 
                        65714 64520 52087 62479 
                        58712 28651 33423 
                        [19:365] 0 
        end release (Chinook_1)

Keywords and descriptions for release tokens and parameters

Reach Tokens and Parameters

The following are examples of reach specifications from a Yearly Input Data file (.dat).

       reach Bonneville_Tailrace
                output_settings 0
                pred_mean Chinook_0  8244.910156
                pred_mean Chinook_1  1949.719971
                pred_mean Steelhead  1949.719971
                pred_dist 1.00
                gas_theta 0.075000
                delta_water_temp [*] 0.00
                loss_max 280.00
                loss_min -280.00
                loss [*] 0.00
                elevation_change [*] 0.00
        output_gas Off
        end reach (Bonneville_Tailrace)

        reach Lower_Granite_Pool
                output_settings 1
                pred_mean Chinook_0  2590.510010
                pred_mean Chinook_1  808.900024
                pred_mean Steelhead  808.900024
                pred_dist 1.00
                gas_theta 0.075000
                delta_water_temp 0.00 -0.01 0.03 -0.03 
                        -0.04 -0.01 0.02 0.00 
                        [cut]
                        0.00 0.00 -0.03 0.03 
                        0.04 -0.03 
                loss_max 100.00
                loss_min -100.00
                loss [*] 0.00
                elevation_change -3.10 -3.10 -3.20 -2.80 
                        -2.30 -1.50 -1.80 -1.60 
                        -1.70 -2.40 -2.10 -2.20 
                        [cut]
                        -1.70 -1.60 -1.50 -1.40 
                        -1.50 -1.60 -1.90 -1.80 
                        -1.70 
        output_gas On  [0:7] 1.10 [8:11] 0.90 
                        [12:15] 1.10 [16:19] 1.20 
                        [20:23] 0.20 [24:27] 0.25 
                        [cut]
                        [728:851] 3.80 [852:975] 3.00 
                        [976:1095] 2.60 [1096:1463] 0.00 
        end reach (Lower_Granite_Pool)

Keywords and descriptions for reach tokens and parameters

Dam Tokens and Parameters

The following is an example of a dam specification from a Yearly Input Data file (.dat).

       dam Bonneville_Dam
                output_settings 7
                tailrace_length 1000.00
                mod_ou_r 0.50
                mod_ou_sigma 12.00
                mod_norm_sigma 11.00
                mod_weekly_amp 0.00
                nsat_day_equation  29
                        [cut] 
                end nsat_day_equation ( )

                nsat_night_equation  29
                        [cut] 
                end nsat_night_equation ( )

                nsat_backup_equation  12
                        [cut] 
                end nsat_backup_equation ( )

                gas_theta 10.000000
                k_entrain 0.000000
                spill_mort_mean Chinook_0  0.020000
                spill_mort_low Chinook_0  0.000000
                spill_mort_high Chinook_0  0.070000
                bypass_mort_mean Chinook_0  0.020000
                bypass_mort_low Chinook_0  0.000000
                bypass_mort_high Chinook_0  0.080000
                turbine_mort_mean Chinook_0  0.070000
                turbine_mort_low Chinook_0  0.010000
                turbine_mort_high Chinook_0  0.100000
                transport_mort_mean Chinook_0  0.170000
                transport_mort_low Chinook_0  0.000000
                transport_mort_high Chinook_0  0.340000
                pred_density_forebay Chinook_0  6221.540039
                pred_density_tailrace Chinook_0  17658.000000
                mean_forebay_transit_time Chinook_0  2.000000
                separation_prob Chinook_0  0.800000
                predation_prob Chinook_0   [*] 1.000000
                day_fge_mean Chinook_0  0.160000
                day_fge_low Chinook_0  0.080000
                day_fge_high Chinook_0  0.240000
                night_fge_mean Chinook_0  0.160000
                night_fge_low Chinook_0  0.080000
                night_fge_high Chinook_0  0.240000
                spill_equation Chinook_0  1
                        [cut] 
                end spill_equation (Chinook_0)

                fge_equation Chinook_0  22
                        [cut]
                end fge_equation (Chinook_0)

                trans_mort_equation Chinook_0  28
                        [cut] 
                end trans_mort_equation (Chinook_0)

                delay_equation Chinook_0  46
                        [cut] 
                end delay_equation ( )
                [cut]
                powerhouse_capacity 136.00
                powerhouse_schedule 0:365 (0:24)
                powerhouse_priority 0
                powerhouse_threshold 0.00
                additional_powerhouse Bonneville_Dam_2
                        powerhouse_capacity 152.00
                        powerhouse_priority 1
                        powerhouse_threshold 75000.00
                        [cut]
                end additional_powerhouse (Bonneville_Dam_2)

                spill_cap 1000.00
                fish_spill 0:365 (0:24)
                planned_spill 0:7 =  0.00, 8:8 =  0.04, 9:9 =  0.08,
                        10:21 =  0.00, 22:23 =  0.05, 24:31 =  0.00,
                        [cut]
                        360:360 =  0.02, 361:361 =  0.05, 362:363 =  0.06,
                        364:365 =  0.05
                flow_min 100.00
        output_gas Off
        end dam (Bonneville_Dam)

Keywords and descriptions for dam tokens and parameters

Headwater Tokens and Parameters

The following is an example of a headwater specification from a Yearly Input Data file (.dat).

       headwater Columbia_Headwater
                output_settings 0
                mod_ou_r 0.93
                mod_hi_sigma 0.08
                mod_lo_sigma 0.06
                mod_start_hi_sigma 96
                mod_end_hi_sigma 196
                mod_coeffs_a 1.00 -0.24 0.20 0.00 -0.04 
                mod_coeffs_b 0.00 0.13 -0.10 0.10 -0.02 
                flow_mean 110.00
                flow_max 280.00
                flow 4.00 104.17 100.62 122.10 
                output_gas Off
                water_temp [0:49] 5.08 5.21 
        end headwater (Columbia_Headwater)

Keywords and descriptions for headwater tokens and parameters

Global Tokens

The following is an example of the global parameters specification from a Yearly Input Data file (.dat).

       gas_dissp_exp 0.20
        hw_flow_prop 1.00
        ufree 0.045000
        fork_threshold 0.100000
        water_travel_upper_segment Little_Goose_Pool
        water_travel_lower_segment Estuary
        water_travel_first_day 1
        water_travel_last_day 365
        runtime_settings 1
        mortality_class gas_pred

Keywords and descriptions for global tokens and parameters

Flow Archive File Structure

The Flow Archive File (flow.archive) contains flow, spill and elevation data generated from hydroregulation models such as SAM, HYSSR or HYDROSIM. The flow archive file can be used in Monte Carlo Mode as the source for flow, planned spill, and elevation data. Users are unlikely to create flow archive files from scratch, but the format of such a file is described in this section. Information contained in a flow.archive file includes:

Sample portion of flow.archive

V0.9 CRiSP Flow Archive Fri Apr  2 17:07:59 1993 SOR sos2c 

games   49       # number of games
years   1        # number of years

dams 19 BON TDA JDA MCN IHR LMN LGS LWG DWR PRD WAN RIS RRH WEL CHJ GCL ALF 
HGH LIB 

periods 14 0:31, 32:59, 60:90, 91:105, 106:120, 121:151, 152:181, 182:212, 
213:228, 229:243, 244:273, 274:304, 305:334, 335:365

#period water   power   dam       elev   plan   over      tot
#       year    year                    spill  spill     flow

DATA
JAN     1929    0       BON        0.0 0.0000 0.0000 122135.0
JAN     1929    0       TDA        0.0 0.0000 0.0000 118805.0
JAN     1929    0       JDA      263.5 0.0000 0.0000 114350.0
JAN     1929    0       MCN      339.0 0.0000 0.0000 116620.0
JAN     1929    0       IHR      438.7 0.0000 0.0000  22813.0
JAN     1929    0       LMN      538.7 0.0000 0.0000  22813.0
JAN     1929    0       LGS      636.2 0.0000 0.0000  22313.0
JAN     1929    0       LWG      735.3 0.0000 0.0000  22313.0
JAN     1929    0       DWR     1556.9 0.0000 0.0000   1200.0
JAN     1929    0       PRD        0.0 0.0000 0.0000  88937.0
JAN     1929    0       WAN        0.0 0.0000 0.0000  88747.0
JAN     1929    0       RIS        0.0 0.0000 0.0000  88687.0
JAN     1929    0       RRH        0.0 0.0000 0.0000  86847.0
JAN     1929    0       WEL        0.0 0.0000 0.0000  87018.0
JAN     1929    0       CHJ      953.2 0.0000 0.0000  85108.0
JAN     1929    0       GCL     1287.0 0.0000 0.0000  85108.0
JAN     1929    0       ALF     2051.0 0.0000 0.0000  11887.0
JAN     1929    0       HGH     3486.7 0.0000 0.0000   8400.0
JAN     1929    0       LIB     2388.6 0.0000 0.0000   7232.0
FEB     1929    0       BON        0.0 0.0000 0.0000 118790.0
FEB     1929    0       TDA        0.0 0.0000 0.0000 115170.0

Flow Archive Header

Flow Archive Data

The flow archive itself is a long array of numeric data, and contains eight columns, delimited by tabs or spaces. This array must be preceded by the text "DATA." CRiSP.1 expects the data to be in the following order.

Time in CRiSP.1

In CRiSP.1, fish move both spatially and temporally. A distribution of fish over time is typically represented by an array whose index is some unit of time. There are several different time scales and references used throughout the model.

CRiSP.1 Parser

This is a description of the CRiSP.1 data parser syntax which is used for reading data into CRiSP.1. The parser reads and interprets parameter data files.

Description

Vocabulary

Parser

The parser reads tokens in sequential order from the beginning of a file to the end. If it finds a syntax error, it tries to recover by skipping the data and continuing at the beginning of the next line. The general format of the data is: token_name value(s).

Example

       dam Dworshak_Dam
                pred_density_forebay 376.53
                pred_density_tailrace 1000.00
                tailrace_length 1000.00
                mod_ou_r 0.90
                mod_ou_sigma 2.00
                mod_norm_sigma 3.00
                mod_weekly_amp 0.00
                nsat_day_equation  18
                        parameter 0 3.310000 -10.000000 55.000000 
                        parameter 1 0.460000 -1.000000 4.000000 
                        parameter 2 -0.032000 -0.400000 0.100000 
                end nsat_day_equation ( )
        ...
                powerhouse_capacity 10.50
                powerhouse_schedule 0:365 (0:24)
        end dam (Dworshak_Dam)

Syntax

Comments

Comments start with the "#" token. When the parser encounters a #, it discards the rest of the line. You may type anything between the # and the Return <cr>.

Example

       # This file contains data for Dworshak Dam
        dam Dworshak Dam # Dworshak is on the Snake River
                abbrev DWR # storage reservoir for North Fork Clearwater
                latlon  46 30 51  N  116 17 40  W
        end (Dworshak) # another comment

Include Command

CRiSP.1 contains the command include which allows you to specify in a data file that you want the model to read data from an additional file when reading data from the top level file. The include command is followed by the name of the file that should be read at the same time. The include command can appear anywhere in the file below the file header and version number line. A parameter data file can contain several include commands. Each include command should appear on a separate line and only one file can be specified per each include command line. The file sample.dat which contains the line

       include chinook1.rls

instructs the model to read the release information contained in chinook1.rls file when the model reads sample.dat. For any parameter data file types, except a Control File, once you read the data into CRiSP.1 and save the information on disk, the include line is replaced by the actual data contained in the file. Files which are included are not subject to the same file name extension examination as the top level file (see the Reading Data into CRiSP.1 section for more information).

Menus

Some commands indicate that the tokens that come after it are part of a different set of commands or menu. For example, the dam command indicates that commands after it are subcommands. This can be thought of as switching menus or selecting a submenu. These commands must be terminated with an end command.

The End Command

The end command indicates that the current submenu is ending and to switch back to the original menu. Everything between an end token and its line ending is treated as a comment. The text between the end token and the end of the line marks which menu or submenu is ending.

Example

       dam The_Dalles_Dam
                powerhouse_capacity 375.00
                powerhouse_schedule 0:365 (0:24)
                spill_cap 235.00
                fish_spill 0:365 (0:24)
        end dam (The_Dalles_Dam)

        release Steelhead Wild_Snake_R_Stocks 141
                stock Generic
                smolt_onset 91
                smolt_finish 91
                vitality 0.00
                vitality_change 0.00
                length 0.00
                number 113188 [1:365] 0 
        end release (Steelhead)

Array Syntax

The simplest array syntax lists values for the parameter in sequential order.

       ArrayName Value Value Value ...

Example

        loss 0.00 2.06 0.00 0.00 4.63 4.80 3.73

Limits

Arrays start at element 0. The last array index is one less than the number of elements in the array (n-1). For example, the fictional array sample has 300 numbers in it. It is defined in C as float sample[300], so its first element is accessed as sample[0] and its last one as sample[299].

Index Numbers

The parser can be told to start adding values at a particular spot in the array by putting an index number in brackets to indicate the location. Instead of putting the first number after the brackets in element 0, it puts it in the element Index.

       ArrayName [Index] Value Value Value ...

In the following example, the first value 45 will be applied to the element 3.

        spill [3] 45 45 45 50

Index numbers do not have to be right after the command, and you can have more than one of them. For example, the following will set elements 0 through 2 to be 3, elements 5 through 7 to be 45, and elements 10 through 12 to be 50.

        spill 3 3 3 [5] 45 45 45 [10] 50 50 50

Ranges

A range of locations can be set to one number in an array by putting the starting index and ending index of the range separated by a ":" inside brackets. The range is set to be the single number after the brackets.

       ArrayName [BeginIndex : EndIndex] Value

In the following example, the first value 45 will be applied to elements 0 through 12.

       spill [0:12] 45

Like index numbers, ranges can appear anywhere in the array specification and you can have as many of them as you want. For example, the following will set elements 0 through 12 to be 45 and elements 13 through 50 to be 120.

       spill [0:12] 45 [13:50] 120

Global Ranges

To set one value to an entire array, put a "*" between brackets as an index. The entire array will be set to the single value after the brackets.

       ArrayName [*] Value

Example

       spill [*] 10

Combinations

You can combine any of the above techniques. For example, if you want to set all the elements of an array named sample to be 1 except for the 25th and 252nd elements, which you want to be 155, you could type:

       sample [*] 1 [25] 155 [252] 155

Most of the output routines for data use syntax similar to the following.

       ArrayName [0:20] 3.45 [21:30] 4.2 5.6 4.8345 [33:200] 5.0

The current array index after setting a range of array elements is one after the last element set. For example,

       ArrayName [0:10] 20

sets array elements 0 through 10 to be 20, and the current array index is set to 11. So,

       ArrayName [0:10] 20 99

sets the 11th element of the array to be 99.

Conflicts

It is possible to specify the same index of an array several times. When this happens, the value stored is the last value set. For example,

       sample 55 48 27 [2] 30 45 [3] 12 14 25 [4:50] 100

sets element 0 to 55, element 1 to 48, element 2 to 30 (value 27 is discarded), element 3 to 12 (value 45 is discarded), and elements 4 through 50 to 100 (values 14 and 25 are discarded). In this example,

       sample 55 46 [*] 1

all elements of sample are set to 1.

Summary of Array Syntax

   ArrayName Value Value Value...
   ArrayName [ StartIndex ] Value Value Value...
   ArrayName [ StartIndex : EndIndex ] Value
   ArrayName [*] Value

Periods

Periods (time periods) are usually used for scheduling things such as spill. They can have a value associated with them that usually indicates a degree to which something is on. Periods are analogous to sparse arrays, except that a period can have several sub-periods associated with it.

Period Ranges

A period range is denoted by the starting number followed by a ":" and then the ending number. For example,

       0:10

is a period range starting at 0 and ending at 10. If you only want a range of one number, you do not have to specify the ":" and second number.

Period Values

To associate a value to a period range, use an "=" followed by the desired value. All values are floating point numbers. For example,

       0:10 = 0.45

would associate the value 0.45 to the range 0 through 10.

Period Lists

A period list is a sequence of one or more ranges separated by commas. For example,

       0:10, 20:35, 50:360

is a period with three ranges. Ranges in a period list can have values. For example,

       0:10 = .45, 20:35 = .5, 50:360 = .25

is a period with three ranges each of which have values associated with them. This can be thought of as a sparse array.

Sub-Periods

A range can have a sub-period associated with it. A sub-period uses a format identical to a period list. Sub-periods are usually used for fine tuning when something in a period is on or off. For example,

       0:10 (0:8, 12:24), 50:360 (0:12) 

is a period with two ranges which both have sub-periods.

Period Examples

   fish_spill 0:365 (0:24)
        planned_spill 0:300 = 0.00
        fish_spill 3 (0:8)
        planned_spill 0:5 = 0.3, 6 = 0.99, 7:10 = 0
        fish_spill 0:10 (0:8), 11:20 (0:12), 100:184 (0:6, 18:24)
        planned_spill 0:105 =  0.00, 106:122 =  0.09, 123:164 =  0.53, 165:235 =  
0.41, 236:365 =  0.00

Period Format

   PeriodName period-list
        period-list = period {, period}
        period = [range | range = value] { (sub-period) }
        sub-period = period-list
        range = [Value | Value:Value]

Equations

Equations tell CRiSP.1 which type of equation to use on data and what the parameters are for those equations. The CRiSP.1 equation format is:

       EquationName EqNumber
        parameter ParameterNumber value min max
        ...
        end EquationName

where


Print Version: PDF (2M)


Home | Columbia R. DART | Status & Trends | Inseason Forecasts | Tools & Models | Research & Publications | Library | Site Map | Search
Please direct questions or comments to:
web@cbr.washington.edu
Columbia Basin Research,
School of Aquatic & Fishery Sciences,
University of Washington
Saturday, 05-Apr-2003 14:07:03 PST