Contact: Sam Williamson
SALMOD is a computer model that simulates the dynamics of freshwater salmonid populations, both anadromous and resident. The conceptual model was developed in a workshop setting (Williamson et al. 1993) using fish experts concerned with Trinity River chinook restoration. The model builds on the foundation laid by similar models (see Cheslak and Jacobson 1990). The model's premise is that egg and fish mortality are directly related to spatially and temporally variable micro- and macrohabitat limitations, which themselves are related to the timing and amount of streamflow and other meteorological variables. Habitat quality and capacity are characterized by the hydraulic and thermal properties of individual mesohabitats, which we use as spatial "computation units" in the model. The model tracks a population of spatially distinct cohorts that originate as eggs and grow from one life stage to another as a function of local water temperature. Individual cohorts either remain in the computational unit in which they emerged or move, in whole or in part, to nearby units (see McCormick et al. 1998). Model processes include spawning (with redd superimposition and incubation losses), growth (including egg maturation), mortality, and movement (freshet-induced, habitat-induced, and seasonal). Model processes are implemented such that the user (modeler) has the ability to more-or-less program the model on the fly to create the dynamics thought to animate the population. SALMOD then tabulates the various causes of mortality and the whereabouts of fish.
SALMOD's premise is that physical habitat components (flow dependent micro-habitat and water temperature) are the principal factors limiting the freshwater production. The question of food resources looms as a large question. This model essentially assumes (1) that a stream's underlying food production and delivery processes are inherent to the stream, (2) that production and delivery have been accounted for in the quantification of mesohabitat versus flow relationships through depth, velocity, substrate, and cover requirements, and (3) that these relationships will not be altered by the flow and temperature scenarios explored by the model. In particular, acceptable or preferred habitats are assumed to be those that maximize fitness, including the benefits of maximizing growth potential and minimizing predation risk. Therefore, mesohabitat types with more quantifiably suitable habitat have a higher capacity than those that do not. When these assumptions are not appropriate, SALMOD should either not be the model of choice, or be modified to incorporate new relationships.
SALMOD is best explained by describing its fundamental structure in terms of temporal, spatial, and biological resolution. These three components are not independent; the size of any computational unit (spatial resolution) has a direct bearing on the distance a fish of a given size (biological resolution) needs to move within one time step (temporal resolution) to encounter alternate habitat conditions. The scale of resolution also affects the way model processes are envisioned and implemented, their assumptions, and their limitations.
Temporal Resolution. We employ a weekly time step for one or more biological years. Biological years typically (but not mandatorily) start with the first week of spawning. All rate parameters (e.g., growth and mortality) are weekly values unless otherwise stated. Physical state variables (e.g., streamflow and water temperature) are represented by weekly averages.
Spatial Resolution. Spatial resolution is consistent with the mesohabitat inventory approach, in which the study area is classified and mapped as discrete mesohabitat types, intermediate between micro- and macrohabitat, that tend to behave similarly in response to discharge fluctuations. Classification is based primarily on channel structure and slope, modified by the general distribution of microhabitat, including cover. These mesohabitat units become the model's computational units.
Streamflow, water temperature, and mesohabitat type are the physical state variables included in this model. The stream can be divided into flow and temperature segments, (i.e., where flows and temperatures are roughly homogeneous) either by distance or by computational unit. Flow and temperature data are organized by river segments and by time step for each segment. Habitat quality is defined by a flow versus habitat relationship for each mesohabitat type.
Currently, SALMOD only sees a linear stream, with no tributaries or branches possible. However, various options control what happens to fish moving out of the collection of computational units defining the study area, either upstream or down.
Biological Resolution. The biological resolution is fairly standard in the sense that we employ a typical categorization of fish life history related to physical morphology, behavior, and reproductive potential. Fish in the simulated population are tracked by cohorts within computational units. Each cohort is classified by life stages, and class within life stages. Life stages 1-4 are adult life stages, defined and ordered as: Male Adult, Male Spawner, Female Adult, and Female Spawner. Adult life stages cannot be further divided. Juvenile life stages can be divided into classes. Life stage 5 is reserved for egg life stages, and is classified by percent development (deposition  to emergence ). Life stages six through twelve are non-adult life stages classified by size. The number of juvenile size classes and their definition can vary, but at least 1 size class must be used to describe each non-adult life stage. As a cohort grows, its life stage and size class attributes are modified when it graduates (or matures) to the next size class or life stage.
The various rate parameters (e.g., growth, mortality) can depend on life stage and class. Non-adult cohorts are tracked individually within a computational unit, but any given cohort's identity may be lost when part or the entire cohort moves into a different computational unit.
SALMOD represents the freshwater population dynamics of three life history variants: (1) an anadromous fish species that returns to the stream as an adult to spawn, (2) a resident population of salmonids that complete their entire life cycle in freshwater, or (3) a multiyear variant where juvenile fish remain in the stream for more than one year. The focus is on biological processes that affect the early lifestages of the species. The model simulates (1) spawning, (2) egg development and growth, (3) movement, induced by freshets, time of year, or living space constraints, and (4) various types of mortality. In the anadromous variant, adults die after spawning and smolts do not graduate to the adult stage; instead they exit the study area. Thus the population is re-initialized for each biological year. Life history patterns where the juveniles spend more than one year in freshwater are simulated with the multiyear variant; this option is much like the anadromous variant except that juvenile fish remain in the stream beyond a single biological year. In the resident variant, adults do not die after spawning and a juvenile lifestage (e.g., yearlings) may mature to adults capable of spawning.
SALMOD has, to date, been applied in four study areas: (1) a fall chinook population in a portion of the Trinity River, California, (2) rainbow and brown trout in the Poudre River, Colorado, (3) Atlantic salmon in the Narraguagus River, Maine, and (4) with four races of chinook on the Sacramento River, California. We are also in the process of collecting data sufficient to begin an application on the Klamath River, California. Among the uses are (1) determination of the population consequences of alternative flow (and temperature) regimes, (2) understanding of the relative magnitude of mortality in determining the timing and degree of habitat "bottlenecks", (3) designing flow regimes to mitigate those bottlenecks, and (4) exploring the effectiveness of stocking programs. Example graphical output is shown in replacement figures below.
Figure 1: Example number of juvenile chinook in Trinity River.
Figure 2: Example mortality of eggs and juvenile chinook in Trinity River.
The SALMOD program is implemented in FORTRAN 90 with a user interface that has been written in C++. The model is almost 100% data-driven, giving the client thorough control over the definition of the life history descriptors and the linking of the life history to the model processes. Data input has been designed to be flexible using a "free format" approach to input data arrays, thus facilitating data import from a wide variety of data base management and spreadsheet software. Data output consists of a variety of graphs and tables. Like the input data formats, output data are arranged to expedite and encourage transfer to other postprocessing software for subsequent analysis or display.