Wiki

Clone wiki

CHaMP / ISEMP Life Cycle Model / Home

Overview

A model for salmon population dynamics has been coded in the R programming language. Provides an analytical framework for habitat action effectiveness monitoring.

The model implements the Beverton-Holt spawner-recruit salmon population dynamics model (Beverton and Holt 1957). Inputs describing one or more sites within a watershed, survival estimates by life stage, etc., are user specified model inputs, as are measures of uncertainty in parameter estimates, and estimates of natural parameter spatial, temporal, and pure variability. Initial salmonid populations, by life stage, are also user specified. The model calculates fish populations by life stage over for each subsequent year up to a user specified number of years. Hatchery fish introductions into a watershed, and parameters describing the relative robustness and fecundity of hatchery fish and their descendants, can also be user specified.

Included in the model is the option for user specified levels of stochasticity, applied at various levels. This stochasticity serves two functions: 1) estimation of uncertainty of model results stemming from uncertainty of input parameters; and 2) estimation of temporal, spatial, and pure variability in the results stemming from temporal, spatial, and pure variability in the input parameters. Stochasticity at all levels is user specified, and structured so as to give rise to natural correlations among input parameters. These correlation structures enable a stochastic model much more reflective of natural processes than could be achieved by assuming independence across all parameters.

Also included in the model is the ability to include time based trends and/or step function changes for all user specified parameters. Such changes may reflect, for example, changes in watershed management that lead to gradual increases in forested lands within a watershed, or discrete changes, such as a change in dam management, leading to a step function shift in seasonal water flows.

Multiple sites may be modeled simultaneously. “Sites”, in this model, refer to a user-defined spatial scale over which the user wishes to define the input parameters. A site may be a reach within a tributary, a tributary within a watershed, a watershed within a subbasin, etc. The advantages of concurrent modeling of multiple sites, as opposed to modeling one site at a time, are two-fold: First, sites within a watershed are likely not independent; a low water year for a single site is likely a low water year for all sites within a watershed; this model can account for such correlations. Secondly, modeling multiple sites concurrently allows for inclusion of cross-site migration, where fish at various life stages have some user specified non-zero probability of migrating to a different site within a watershed. In addition, modeling multiple sites concurrently allows summarization of results at whatever spatial level he or she chooses, after the completion of the simulation (i.e. results may be summarized by site, stream, river, watershed, etc).

The model has been structured such that it is flexible enough to handle different species of salmonids (though they cannot be modeled simultaneously). This includes steelhead, which are generally more complex than other salmonid species, as far as modeling the transitions from one life stage to the next.

Using the CHaMP/ISEMP Life Cycle Model

Running the CHaMP/ISEMP life cycle model requires filling out a series of input files describing capacities by life stage, density independent survival by life stage, site-site migration, as well as a large number of other input parameters. Full instructions are provided in the file "Watershed Model User's Guide", and example input files to be used as templates are included in the controlled files available with the source code.

Note that methods for estimating input parameters are not included here.

Files Included

Documentation

  • Watershed Model User's Guide.docx: This file provides instructions for using the Watershed life cycle model, as well as complete descriptions of the calculations and stochastic processes modeled.
  • Watershed Model Introduction.docx: This is quick introduction to the program, describing the input files and system requirements for running the life cycle model.

R Code

  • Watershed.R: This is the main scripts that the user uses to run the watershed model. All other functions are called from this script. This is the only script the user needs to open when running the model.
  • Watershed_ReadData.R: This script contains functions used to read the input files.
  • Watershed_MonteCarlo.R: This scripts contains functions to select parameter values from random distributions as specified in the input files. These parameter values may be temporally and spatially correlated as specified in the input files.
  • Watershed_BevHolt.R This scripts contains the main Beverton-Holt equations and related calculations to estimate population dynamics for the given set of user defined inputs. This is the main engine of the program.
  • Watershed_PostProcessing.R: This script generates plots and output .csv files of the results.

Input File Examples / Templates

A series of inputs files for a simple model are included as examples / templates. These are specific to the Middle Fork John Day, but could be easily modified and re-named for other watersheds. It is not advised for users to start from scratch, but rather to modify existing input files, as the cell locations must remain exactly the same for all simulations.

Note: The file "Watershed_Header_File.csv" is required to have that name. All other file names may be user defined, but must be listed in the file "Watershed_Header_File.csv".

  • Watershed_Header_File.csv: Contains basic run information including the number of sites being modeled, the number of time steps to run, the stochastic elements to include in the model, and the names of additional input files to be read.
  • MiddleFork_JohnDay_Inits.csv: Contains initial population numbers, by life stage, to begin the simulation. It is not critical that the true values are known, but rather this file must at least provide some initial non-zero values and the program can be run until a steady state population is reached.
  • MiddleFork_JohnDay_Inputs_base.csv: Site level survival, capacity, movement probabilities, etc., inputs specific to a single sub-population within the watershed being modeled.
  • Cross_Site_Migration_T1.csv: Specification of location-location movement percentages within a watershed. Note this doesn't describe normal movement (smolting, spawing), but rather migration from location to location within juvenile life stages, or straying away from the natal location while spawning.

Updated