# Lower Columbia River Fish Population Indexing 2021

The suggested citation for this analytic report is:

*Thorley, J.L. & Hussein, N. (2022) Lower Columbia River Fish Population
Indexing 2021. A Poisson Consulting Analysis Appendix. URL:
https://www.poissonconsulting.ca/f/1314086833.*

## Background

In the mid 1990s BC Hydro began operating Hugh L. Keenleyside (HLK) Dam to reduce dewatering of Mountain Whitefish and Rainbow Trout eggs.

The primary goal of the Lower Columbia River Fish Population Indexing program is to answer two key management questions:

What are the abundance, growth rate, survival rate, body condition, age distribution, and spatial distribution of subadult and adult Whitefish, Rainbow Trout, and Walleye in the Lower Columbia River? What is the effect of inter-annual variability in the Whitefish and Rainbow Trout flow regimes on the abundance, growth rate, survival rate, body condition, and spatial distribution of subadult and adult Whitefish, Rainbow Trout, and Walleye in the Lower Columbia River? The inter-annual variability in the Whitefish and Rainbow Trout flow regimes was quantified in terms of the percent egg dewatering as greater flow variability is associated with more egg stranding.

## Methods

### Data Preparation

The fish indexing data were provided by Okanagan Nation Alliance and Golder Associates in the form of an Access database. The discharge and temperature data were obtained from the Columbia Basin Hydrological Database maintained by Poisson Consulting. The Rainbow Trout egg dewatering estimates were provided by CLBMON-46 (Irvine, Baxter, and Thorley 2015) and the Mountain Whitefish egg stranding estimates by Golder Associates (2013).

#### Discharge

Missing hourly discharge values for Hugh-Keenleyside Dam (HLK), Brilliant Dam (BRD) and Birchbank (BIR) were estimated by first leading the BIR values by 2 hours to account for the lag. Values missing at just one of the dams were then estimated assuming \(HLK + BRD = BIR\). Negative values were set to be zero. Next, missing values spanning \(\leq\) 28 days were estimated at HLK and BRD based on linear interpolation. Finally any remaining missing values at BIR were set to be \(HLK + BRD\).

The data were prepared for analysis using R version 4.2.0 (R Core Team 2018).

### Data Analysis

Model parameters were estimated using hierarchical Bayesian methods. The parameters were produced using JAGS (Plummer 2015) and STAN (Carpenter et al. 2017). For additional information on Bayesian estimation the reader is referred to McElreath (2016).

The one exception is the length-at-age estimates which were produced using the mixdist R package (P. Macdonald 2012) which implements Maximum Likelihood with Expectation Maximization.

Unless stated otherwise, the Bayesian analyses used weakly informative normal and half-normal prior distributions (Gelman, Simpson, and Betancourt 2017). The posterior distributions were estimated from 1500 Markov Chain Monte Carlo (MCMC) samples thinned from the second halves of 3 chains (Kery and Schaub 2011, 38–40). Model convergence was confirmed by ensuring that the potential scale reduction factor \(\hat{R} \leq 1.05\) (Kery and Schaub 2011, 40) and the effective sample size (Brooks et al. 2011) \(\textrm{ESS} \geq 150\) for each of the monitored parameters (Kery and Schaub 2011, 61).

The parameters are summarised in terms of the point *estimate*, *lower*
and *upper* 95% credible limits (CLs) and the surprisal *s-value*
(Greenland 2019). The estimate is the median (50th percentile) of
the MCMC samples while the 95% CLs are the 2.5th and 97.5th percentiles.
The s-value can be considered a test of directionality. More
specifically it indicates how surprising (in bits) it would be to
discover that the true value of the parameter is in the opposite
direction to the estimate. An s-value (Chow and Greenland 2019) is the
Shannon transform (-log to base 2) of the corresponding p-value
(Kery and Schaub 2011; Greenland and Poole 2013). A surprisal value of 4.3
bits, which is equivalent to a p-value of 0.05 indicates that the
surprise would be equivalent to throwing 4.3 heads in a row. The
condition that non-essential explanatory variables have s-values \(\geq\)
4.3 bits provides a useful model selection heuristic
(Kery and Schaub 2011).

Model adequacy was assessed via posterior predictive checks (Kery and Schaub 2011). More specifically, the number of zeros and the first four central moments (mean, variance, skewness and kurtosis) for the deviance residuals were compared to the expected values by simulating new residuals. In this context the s-value indicates how surprising each metric is given the estimated posterior probability distribution for the residual variation.

Where computationally practical, the sensitivity of the parameters to the choice of prior distributions was evaluated by increasing the standard deviations of all normal, half-normal and log-normal priors by an order of magnitude and then using \(\hat{R}\) to test whether the samples where drawn from the same posterior distribution (Thorley and Andrusak 2017).

The results are displayed graphically by plotting the modeled
relationships between particular variables and the response(s) with the
remaining variables held constant. In general, continuous and discrete
fixed variables are held constant at their mean and first level values,
respectively, while random variables are held constant at their typical
values (expected values of the underlying hyperdistributions)
(Kery and Schaub 2011, 77–82). When informative the influence of
particular variables is expressed in terms of the *effect size* (i.e.,
percent or n-fold change in the response variable) with 95% credible
intervals (CIs, Bradford, Korman, and Higgins 2005).

The analyses were implemented using R version 4.2.0
(R Core Team 2020) and the
`mbr`

family of packages.

### Model Descriptions

#### Condition

The expected weight of fish of a given length were estimated from the data using an allometric mass-length model (He et al. 2008).

\[W = \alpha L^{\beta}\]

Key assumptions of the condition model include:

- The expected weight is allowed to vary with length and date.
- The expected weight is allowed to vary randomly with year.
- The relationship between weight and length is allowed to vary with date.
- The relationship between weight and length is allowed to vary randomly with year.
- The residual variation in weight is log-normally distributed.

Only previously untagged fish were included in models to avoid potential effects of tagging on body condition. Preliminary analyses indicated that the annual variation in weight was not correlated with the annual variation in the relationship between weight and length.

#### Growth

Annual growth of fish were estimated from the inter-annual recaptures using the Fabens method (Fabens 1965) for estimating the von Bertalanffy growth curve (von Bertalanffy 1938). This curve is based on the premise that:

\[ \frac{\text{d}L}{\text{d}t} = k (L_{\infty} - L)\]

where \(L\) is the length of the individual, \(k\) is the growth coefficient and \(L_{\infty}\) is the maximum length.

Integrating the above equation gives:

\[ L_t = L_{\infty} (1 - e^{-k(t - t_0)})\]

where \(L_t\) is the length at time \(t\) and \(t_0\) is the time at which the individual would have had zero length.

The Fabens form allows

\[ L_r = L_c + (L_{\infty} - L_c) (1 - e^{-kT})\]

where \(L_r\) is the length at recapture, \(L_c\) is the length at capture and \(T\) is the time between capture and recapture.

Key assumptions of the growth model include:

- The mean maximum length \(L_{\infty}\) is constant.
- The growth coefficient \(k\) is allowed to vary randomly with year.
- The residual variation in growth is normally distributed.

The growth model was only fitted to Walleye with a fork length at release less than 450 mm.

#### Movement

The extent to which sites are closed, i.e., fish remain at the same site between sessions, was evaluated with a logistic ANCOVA (Kery 2010). The model estimates the probability that intra-annual recaptures were caught at the same site versus a different one. Key assumptions of the site fidelity model include:

- The expected site fidelity is allowed to vary with fish length.
- Observed site fidelity is Bernoulli distributed.

Length as a second-order polynomial was not found to be a significant predictor for site fidelity.

The estimated probability of being caught at the same site versus a different site was then converted into the site fidelity by assuming that those fish which were recaught at a different site represented just 32 % of those that left the site. The correction factor corresponds to the proportion of the river bank that belongs to index sites.

#### Length-At-Age

The expected length-at-age of Mountain Whitefish and Rainbow Trout were estimated from annual length-frequency distributions using a finite mixture distribution model (P. D. M. Macdonald and Pitcher 1979)

There were assumed to be three distinguishable normally-distributed age-classes for Mountain Whitefish (Age-0, Age-1, Age-2 and Age-3+) two for Rainbow Trout (Age-0, Age-1, Age-2+). Initially the model was fitted to the data from all years combined. The model was then fitted to the data for each year separately with the initial values set to be the estimates from the combined values. The only constraints were that the standard deviations of the MW age-classes were identical in the combined analysis and fixed at the initial values in the individual years.

Rainbow Trout and Mountain Whitefish were categorized as Fry (Age-0), Juvenile (Age-1) and Adult (Age-2+) based on their length-based ages. All Walleye were considered to be Adults.

#### Survival

The annual adult survival rate was estimated by fitting a Cormack-Jolly-Seber model (Kery and Schaub 2011, 220–31) to inter-annual recaptures of adults.

Key assumptions of the survival model include:

- Survival varies randomly with year.
- The encounter probability for adults is allowed to vary with the total bank length sampled.

Preliminary analysis indicated that only including visits to index sites did not substantially change the results.

#### Observer Length Correction

The annual bias (inaccuracy) and error (imprecision) in observer’s fish length estimates were quantified from the divergence of the length distribution of their observed fish from the length distribution of the measured fish. More specifically, the length correction that minimised the Jensen-Shannon divergence (Lin 1991) between the two distributions provided a measure of the inaccuracy while the minimum divergence (the Jensen-Shannon divergence was calculated with log to base 2 which means it lies between 0 and 1) provided a measure of the imprecision.

#### Capture Efficiency

The probability of capture was estimated using a recapture-based binomial model (Kery and Schaub 2011, 134–36, 384–88).

Key assumptions of the capture efficiency model include:

- The capture probability varies randomly by session within year.
- The probability of a marked fish remaining at a site is the estimated site fidelity.
- The number of recaptures is described by a binomial distribution.

Preliminary analyses indicated that the direction of effect of the frequency of the electrofishing current (30, 60 or 120 Hz) was uncertain.

#### Abundance

The abundance was estimated from the catch and bias-corrected observer count data using an overdispersed Poisson model (Kery and Schaub 2011, 55–56).

Key assumptions of the abundance model include:

- The fish density varies randomly with site, year and site within year.
- The change in fish density with overall abundance varies by site density.
- The capture efficiency at a typical fish density is the point estimate for a typical session from the capture efficiency model.
- The count efficiency varies from the capture efficiency.
- The capture efficiency (but not the count efficiency) varies with density.
- The overdispersion varies by visit type (count or catch).
- The catches and counts are described by a gamma-Poisson distribution.

##### Distribution

The distribution was calculated in terms of the Shannon index of
evenness in each year for each species and life-stage. The index was
calculated using the following formula where \(S\) is the number of sites
and \(p_i\) is the proportion of the total density belonging to the i*th*
site

\[ E = \frac{-\sum p_i \log(p_i)}{\log(S)}\]

#### Survival (Abundance-based)

The subadult (\(S_t\)) and adult (\(A_t\)) abundance estimates were used to calculate the subadult and adult survival (\(\phi_t\)) in year \(t\) based on the relationship

\[\phi_t = \frac{A_t}{S_{t-1} + A_{t-1}}\]

#### Weight

The weight (\(W_t\)) in year \(t\) was estimated from the expected adult length using the condition model.

#### Fecundity

##### Mountain Whitefish

The fecundity-weight relationship for Mountain Whitefish was estimated from data collected by Boyer et al. (2017) for the Madison River, Montana. The data were analysed using an allometric model of the form

\[F = \alpha W^{\beta}\]

Key assumptions of the fecundity model include:

- The residual variation in fecundity is log-normally distributed.

##### Rainbow Trout

Following (Andrusak and Thorley 2019) the fecundity (\(F_t\)) in year \(t\) of an adult female Rainbow Trout was calculated from the expected weight (\(W_t\)) in grams using the equation:

\[F_t = 3.8 \cdot W_t^{0.9}\]

#### Egg Deposition

The total egg deposition (\(E_t\)) in year \(t\) was calculated according to the equation \[E_t = F_t * \frac{A_t}{2}\]

#### Stock-Recruitment

The relationship between the total number of eggs deposited (\(E_t\)) and the resultant number of subadults (age-1 recruits) (\(S_{t+1}\)) was estimated using a Beverton-Holt stock-recruitment model (Walters and Martell 2004):

\[S_{t+1} = \frac{\alpha \cdot E_t}{1 + \beta \cdot E_t}\]

where \(\alpha\) is the egg to age-1 survival at low density and \(\beta\) is the density-dependence.

Key assumptions of the stock-recruitment model include:

- The egg to recruit survival at low density (\(\alpha\)) was likely less than 1% (the prior distribution for \(\alpha\) was a zero truncated normal with standard deviation of 0.005.
- The expected log number of recruits varies with the proportional egg loss.
- The residual variation in the number of recruits is log-normally distributed.

The expected egg survival for a given egg deposition is \(S / E_t\) which is given by the equation

\[\phi_E = \frac{\alpha}{1 + \beta * E}\]

#### Age-Ratios

The proportion of Age-1 Mountain Whitefish \(r^1_t\) from a given spawn year \(t\) is calculated from the relative abundance of Age-1 & Age-2 fish \(N^1_t\) & \(N^2_t\) respectively, which were lead or lagged so that all values were with respect to the spawn year:

\[r^1_t = \frac{N^1_{t+2}}{N^1_{t+2} + N^2_{t+2}}\]

The relative abundances of Age-1 and Age-2 fish were taken from the proportions of each age-class in the length-at-age analysis.

As the number of Age-2 fish might be expected to be influenced by the percentage egg loss \(Q_t\) three years prior, the predictor variable \(\Pi_t\) used is:

\[\Pi_t = \textrm{log}(Q_t/Q_{t-1})\]

The ratio was logged to ensure it was symmetrical about zero (Tornqvist, Vartia, and Vartia 1985).

The relationship between \(r^1_t\) and \(\Pi_t\) was estimated using a Bayesian regression (Kery 2010) loss model.

Key assumptions of the final model include:

- The log odds of the proportion of Age-1 fish varies with the log of the ratio of the percent egg losses.
- The residual variation is normally distributed.

The relationship between percent dewatering and subsequent recruitment is expected to depend on stock abundance (Subbey et al. 2014) which might be changing over the course of the study. Consequently, preliminary analyses allowed the slope of the regression line to change by year. However, year was not a significant predictor and was therefore removed from the final model. The effect of dewatering on Mountain Whitefish abundance was expressed in terms of the predicted percent change in Age-1 Mountain Whitefish abundance by egg loss in the spawn year relative to 10% egg loss in the spawn year. The egg loss in the previous year was fixed at 10%. The percent change could not be calculated relative to 0% in the spawn or previous year as \(\Pi_t\) is undefined in either case.

## Adjusted Recruitment

The abundance of Age-1 Rainbow Trout was estimated based on the proportion of the Rainbow Trout eggs dewatered the previous year and the abundance of age-1 Mountain Whitefish caught in the same year to account for inter-annual variation in age-1 salmonid abundance and/or capture efficiency.

The relationship(s) were estimated using a Generalized Linear Model (GLM).

Key assumptions of the final model include:

- The abundance of Age-1 Rainbow Trout varies with proportion of the eggs dewatered and then number of Age-1 Mountain Whitefish caught in the same year.
- The residual variation is log-normally distributed.

### Model Templates

#### Condition

```
data {
int nYear;
int nObs;
vector[nObs] Length;
vector[nObs] Weight;
vector[nObs] Dayte;
int Year[nObs];
parameters {
real bWeight;
real bWeightLength;
real bWeightDayte;
real bWeightLengthDayte;
real<lower=0> sWeightYear;
real<lower=0> sWeightLengthYear;
vector[nYear] bWeightYear;
vector[nYear] bWeightLengthYear;
real<lower=0> sWeight;
model {
vector[nObs] eWeight;
bWeight ~ normal(5, 4);
bWeightLength ~ normal(3, 1);
bWeightDayte ~ normal(0, 1);
bWeightLengthDayte ~ normal(0, 1);
sWeightYear ~ normal(0, 1);
sWeightLengthYear ~ normal(0, 1);
for (i in 1:nYear) {
bWeightYear[i] ~ normal(0, sWeightYear);
bWeightLengthYear[i] ~ normal(0, sWeightLengthYear);
}
sWeight ~ normal(0, 5);
for(i in 1:nObs) {
eWeight[i] = bWeight + bWeightDayte * Dayte[i] + bWeightYear[Year[i]] + (bWeightLength + bWeightLengthDayte * Dayte[i] + bWeightLengthYear[Year[i]]) * Length[i];
Weight[i] ~ lognormal(eWeight[i], sWeight);
}
```

Block 1.

#### Growth

```
.model {
bK ~ dnorm (0, 5^-2)
sKYear ~ dnorm(0, 2^-2) T(0,)
for (i in 1:nYear) {
bKYear[i] ~ dnorm(0, sKYear^-2)
log(eK[i]) <- bK + bKYear[i]
}
bLinf ~ dunif(200, 1000)
sGrowth ~ dnorm(0, 25^-2) T(0,)
for (i in 1:length(Year)) {
eGrowth[i] <- max(0, (bLinf - LengthAtRelease[i]) * (1 - exp(-sum(eK[Year[i]:(Year[i] + dYears[i] - 1)]))))
Growth[i] ~ dnorm(eGrowth[i], sGrowth^-2)
}
```

Block 2.

#### Movement

```
.model {
bFidelity ~ dnorm(0, 1^-2)
bLength ~ dnorm(0, 1^-2)
for (i in 1:length(Fidelity)) {
logit(eFidelity[i]) <- bFidelity + bLength * Length[i]
Fidelity[i] ~ dbern(eFidelity[i])
}
```

Block 3.

#### Survival

```
.model{
bEfficiency ~ dnorm(0, 4^-2)
bEfficiencySampledLength ~ dnorm(0, 4^-2)
bSurvival ~ dnorm(0, 4^-2)
sSurvivalYear ~ dnorm(0, 4^-2) T(0,)
for(i in 1:nYear) {
bSurvivalYear[i] ~ dnorm(0, sSurvivalYear^-2)
}
for(i in 1:(nYear-1)) {
logit(eEfficiency[i]) <- bEfficiency + bEfficiencySampledLength * SampledLength[i]
logit(eSurvival[i]) <- bSurvival + bSurvivalYear[i]
eProbability[i,i] <- eSurvival[i] * eEfficiency[i]
for(j in (i+1):(nYear-1)) {
eProbability[i,j] <- prod(eSurvival[i:j]) * prod(1-eEfficiency[i:(j-1)]) * eEfficiency[j]
}
for(j in 1:(i-1)) {
eProbability[i,j] <- 0
}
}
for(i in 1:(nYear-1)) {
eProbability[i,nYear] <- 1 - sum(eProbability[i,1:(nYear-1)])
}
for(i in 1:(nYear - 1)) {
Marray[i, 1:nYear] ~ dmulti(eProbability[i,], Released[i])
}
```

Block 4.

#### Capture Efficiency

```
.model {
bEfficiency ~ dnorm(-4, 2^-2)
sEfficiencySessionAnnual ~ dnorm(0, 1^-2) T(0,)
for (i in 1:nSession) {
for (j in 1:nAnnual) {
bEfficiencySessionAnnual[i, j] ~ dnorm(0, sEfficiencySessionAnnual^-2)
}
}
for (i in 1:length(Recaptures)) {
logit(eEfficiency[i]) <- bEfficiency + bEfficiencySessionAnnual[Session[i], Annual[i]]
eFidelity[i] ~ dnorm(Fidelity[i], FidelitySD[i]^-2) T(FidelityLower[i], FidelityUpper[i])
Recaptures[i] ~ dbin(eEfficiency[i] * eFidelity[i], Tagged[i])
}
```

Block 5.

#### Abundance

```
.model {
bDensity ~ dnorm(5, 4^-2)
bDensitySiteAnnual2 ~ dnorm(0, 2^-2)
sDensityAnnual ~ dnorm(0, 1^-2) T(0,)
for (i in 1:nAnnual) {
bDensityAnnual[i] ~ dnorm(0, sDensityAnnual^-2)
}
sDensitySite ~ dnorm(0, 1^-2) T(0,)
sDensitySiteAnnual ~ dnorm(0, 1^-2) T(0,)
for (i in 1:nSite) {
bDensitySite[i] ~ dnorm(0, sDensitySite^-2)
for (j in 1:nAnnual) {
bDensitySiteAnnual[i, j] ~ dnorm(0, sDensitySiteAnnual^-2)
}
}
bEfficiencyVisitType[1] <- 0
bEfficiencyVisitTypeDensity[1] ~ dnorm(0, 2^-2)
for (i in 2:nVisitType) {
bEfficiencyVisitType[i] ~ dnorm(0, 2^-2)
bEfficiencyVisitTypeDensity[i] <- 0
}
sDispersion ~ dnorm(0, 1^-2)
sDispersionVisitType[1] <- 0
for(i in 2:nVisitType) {
sDispersionVisitType[i] ~ dnorm(0, 2^-2)
}
for (i in 1:length(Fish)) {
log(eDensity[i]) <- bDensity + bDensitySite[Site[i]] + bDensityAnnual[Annual[i]] + bDensitySiteAnnual[Site[i],Annual[i]] + bDensitySiteAnnual2 * exp(bDensity + bDensitySite[Site[i]]) * bDensityAnnual[Annual[i]]
eAbundance[i] <- eDensity[i] * SiteLength[i]
logit(eEfficiency[i]) <- logit(Efficiency[i]) + bEfficiencyVisitType[VisitType[i]] + bEfficiencyVisitTypeDensity[VisitType[i]] * (eDensity[i] - exp(bDensity + sDensityAnnual^2/2 + sDensitySite^2/2 + sDensitySiteAnnual^2/2))
log(esDispersion[i]) <- sDispersion + sDispersionVisitType[VisitType[i]]
eDispersion[i] ~ dgamma(esDispersion[i]^-2 + 0.1, esDispersion[i]^-2 + 0.1)
eFish[i] <- eAbundance[i] * ProportionSampled[i] * eEfficiency[i]
Fish[i] ~ dpois(eFish[i] * eDispersion[i])
}
```

Block 6.

#### Fecundity

```
model {
bFecundity ~ dnorm(0, 5^-2)
bFecundityWeight ~ dnorm(1, 1^-2) T(0,)
sFecundity ~ dnorm(0, 1^-2) T(0,)
for(i in 1:length(Weight)) {
eFecundity[i] = bFecundity + bFecundityWeight * log(Weight[i])
Fecundity[i] ~ dlnorm(eFecundity[i], sFecundity^-2)
}
```

Block 7.

#### Stock-Recruitment

```
.model {
bAlpha ~ dnorm(0, 0.003^-2) T(0,)
bBeta ~ dnorm(0, 0.007^-2) T(0, )
bEggLoss ~ dnorm(0, 100^-2)
sRecruits ~ dnorm(0, 1^-2) T(0,)
for(i in 1:length(Recruits)){
log(eRecruits[i]) <- log(bAlpha * Eggs[i] / (1 + bBeta * Eggs[i])) + bEggLoss * EggLoss[i]
Recruits[i] ~ dlnorm(log(eRecruits[i]), sRecruits^-2)
}
```

Block 8.

#### Age-Ratios

```
.model{
bProbAge1 ~ dnorm(0, 1^-2)
bProbAge1Loss ~ dnorm(0, 1^-2)
sProbAge1 ~ dnorm(0, 1^-2) T(0,)
for(i in 1:length(Age1Prop)){
eAge1Prop[i] <- bProbAge1 + bProbAge1Loss * LossLogRatio[i]
Age1Prop[i] ~ dnorm(eAge1Prop[i], sProbAge1^-2)
}
```

Block 9.

#### Adjusted Recruitment

```
.model{
b0 ~ dnorm(0, 10^-2)
bMw ~ dnorm(0, 2^-2)
bEggLoss ~ dnorm(0, 2^-2)
sRb ~ dnorm(0, 2^-2) T(0,)
for (i in 1:nObs) {
log(eRb[i]) <- b0 + bMw * Mw[i] + bEggLoss * EggLoss[i]
Rb[i] ~ dlnorm(log(eRb[i]), sRb^-2)
}
```

Block 10. Model description.

## Results

### Tables

#### Condition

Table 1. Parameter descriptions.

Parameter | Description |
---|---|

`bWeight` |
Intercept of `log(eWeight)` |

`bWeightDayte` |
Effect of `Dayte` on `bWeight` |

`bWeightLength` |
Intercept of effect of `Length` on `bWeight` |

`bWeightLengthDayte` |
Effect of `Dayte` on `bWeightLength` |

`bWeightLengthYear[i]` |
Effect of `i` ^{th} `Year` on `bWeightLength` |

`bWeightYear[i]` |
Effect of `i` ^{th} `Year` on `bWeight` |

`Dayte[i]` |
Standardised day of year `i` ^{th} fish was captured |

`eWeight[i]` |
Expected `Weight` of `i` ^{th} fish |

`Length[i]` |
Log-transformed and centered fork length of `i` ^{th}
fish |

`sWeight` |
Log standard deviation of residual variation in
`log(Weight)` |

`sWeightLengthYear` |
Log standard deviation of `bWeightLengthYear` |

`sWeightYear` |
Log standard deviation of `bWeightYear` |

`Weight[i]` |
Recorded weight of `i` ^{th} fish |

`Year[i]` |
Year `i` ^{th} fish was captured |

##### Mountain Whitefish

Table 2. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bWeight | 5.4755067 | 5.4560069 | 5.4942465 | 10.55171 |

bWeightDayte | -0.0212162 | -0.0245880 | -0.0176117 | 10.55171 |

bWeightLength | 3.1655960 | 3.1217713 | 3.2065635 | 10.55171 |

bWeightLengthDayte | -0.0177076 | -0.0270115 | -0.0085988 | 10.55171 |

sWeight | 0.1472061 | 0.1455043 | 0.1489253 | 10.55171 |

sWeightLengthYear | 0.1037495 | 0.0730413 | 0.1493594 | 10.55171 |

sWeightYear | 0.0470375 | 0.0356170 | 0.0652866 | 10.55171 |

Table 3. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

16015 | 7 | 3 | 500 | 2 | 406 | 1.009 | TRUE |

Table 4. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0000735 | 0.0001773 | -0.0153873 | 0.0157513 | 0.0154610 |

variance | 0.9967563 | 0.9999487 | 0.9786269 | 1.0219366 | 0.3880586 |

skewness | -0.6070306 | -0.0022072 | -0.0380180 | 0.0375339 | 10.5517083 |

kurtosis | 1.7900372 | -0.0019176 | -0.0739929 | 0.0788359 | 10.5517083 |

Table 5. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

16015 | 7 | 3 | 500 | 1.009 | 1.007 | 1.006 | TRUE |

##### Rainbow Trout

Table 6. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bWeight | 6.0273022 | 6.0157058 | 6.0375840 | 10.55171 |

bWeightDayte | -0.0035791 | -0.0058187 | -0.0015225 | 10.55171 |

bWeightLength | 2.9243024 | 2.9020301 | 2.9481417 | 10.55171 |

bWeightLengthDayte | 0.0393561 | 0.0327095 | 0.0462931 | 10.55171 |

sWeight | 0.1005880 | 0.0995274 | 0.1016662 | 10.55171 |

sWeightLengthYear | 0.0524848 | 0.0379964 | 0.0772029 | 10.55171 |

sWeightYear | 0.0252582 | 0.0189860 | 0.0352581 | 10.55171 |

Table 7. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

17171 | 7 | 3 | 500 | 2 | 321 | 1.007 | TRUE |

Table 8. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0001685 | -0.0001032 | -0.0153414 | 0.0149919 | 0.0389678 |

variance | 0.9968564 | 0.9997184 | 0.9802061 | 1.0197653 | 0.3705560 |

skewness | -0.6822971 | 0.0001985 | -0.0366285 | 0.0361468 | 10.5517083 |

kurtosis | 2.3959339 | -0.0004343 | -0.0706962 | 0.0709834 | 10.5517083 |

Table 9. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

17171 | 7 | 3 | 500 | 1.007 | 1.016 | 1.008 | TRUE |

##### Walleye

Table 10. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bWeight | 6.2882814 | 6.2743650 | 6.3025910 | 10.551708 |

bWeightDayte | 0.0155997 | 0.0132817 | 0.0183091 | 10.551708 |

bWeightLength | 3.2275879 | 3.1929829 | 3.2629158 | 10.551708 |

bWeightLengthDayte | -0.0056988 | -0.0211123 | 0.0097076 | 1.223033 |

sWeight | 0.0917645 | 0.0905086 | 0.0930050 | 10.551708 |

sWeightLengthYear | 0.0748556 | 0.0527848 | 0.1091235 | 10.551708 |

sWeightYear | 0.0340421 | 0.0257027 | 0.0467774 | 10.551708 |

Table 11. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

10302 | 7 | 3 | 500 | 2 | 318 | 1.005 | TRUE |

Table 12. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0005407 | 0.0001909 | -0.0191359 | 0.0192184 | 0.0588536 |

variance | 0.9962830 | 1.0000676 | 0.9719750 | 1.0277542 | 0.3337506 |

skewness | -0.0352659 | 0.0003738 | -0.0481119 | 0.0452778 | 2.8582213 |

kurtosis | 0.9527777 | -0.0023943 | -0.0967035 | 0.1012277 | 10.5517083 |

Table 13. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

10302 | 7 | 3 | 500 | 1.005 | 1.012 | 1.01 | TRUE |

#### Growth

Table 14. Parameter descriptions.

Parameter | Description |
---|---|

`bK` |
Intercept of `log(eK)` |

`bKYear[i]` |
Effect of `i` ^{th} `Year` on `bK` |

`bLinf` |
Mean maximum length |

`dYears[i]` |
Years between release and recapture of `i` ^{th}
recapture |

`eGrowth` |
Expected `Growth` between release and recapture |

`eK[i]` |
Expected von Bertalanffy growth coefficient from
`i-1` ^{th} to `i` ^{th} year |

`Growth[i]` |
Observed growth between release and recapture of
`i` ^{th} recapture |

`LengthAtRelease[i]` |
Length at previous release of `i` ^{th} recapture |

`sGrowth` |
Log standard deviation of residual variation in
`Growth` |

`sKYear` |
Log standard deviation of `bKYear` |

`Year[i]` |
Release year of `i` ^{th} recapture |

##### Mountain Whitefish

Table 15. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bK | -0.9334122 | -1.1668308 | -0.7389528 | 10.55171 |

bLinf | 397.3922591 | 391.5009401 | 402.2493079 | 10.55171 |

sGrowth | 11.3399966 | 10.4331213 | 12.4180163 | 10.55171 |

sKYear | 0.3923854 | 0.2529341 | 0.6175770 | 10.55171 |

Table 16. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

287 | 4 | 3 | 500 | 50 | 1010 | 1.004 | TRUE |

Table 17. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0420761 | 0.0023630 | -0.1115548 | 0.1251557 | 0.9536558 |

variance | 0.9359583 | 0.9982861 | 0.8356099 | 1.1615095 | 1.0861419 |

skewness | -0.1955005 | -0.0002373 | -0.2871447 | 0.2859367 | 2.4589511 |

kurtosis | 0.5620973 | -0.0403186 | -0.4640294 | 0.7078076 | 3.4121569 |

Table 18. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

287 | 4 | 3 | 500 | 1.004 | 1.002 | 1.001 | TRUE |

##### Rainbow Trout

Table 19. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bK | -0.1337746 | -0.2734122 | 0.0052791 | 4.01255 |

bLinf | 481.2234816 | 476.4854765 | 485.9129576 | 10.55171 |

sGrowth | 29.8435671 | 28.7802542 | 30.9230946 | 10.55171 |

sKYear | 0.2927230 | 0.2135052 | 0.4179306 | 10.55171 |

Table 20. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

1432 | 4 | 3 | 500 | 50 | 930 | 1.005 | TRUE |

Table 21. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0095261 | 0.0005153 | -0.0507503 | 0.0487427 | 0.4134365 |

variance | 0.9869659 | 0.9991168 | 0.9269479 | 1.0745174 | 0.3981562 |

skewness | 0.2811677 | -0.0016016 | -0.1259689 | 0.1229332 | 10.5517083 |

kurtosis | 0.6640704 | -0.0158381 | -0.2248422 | 0.2548556 | 8.9667458 |

Table 22. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

1432 | 4 | 3 | 500 | 1.005 | 1.005 | 1.004 | TRUE |

##### Walleye

Table 23. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bK | -2.495586 | -3.023231 | -2.0519073 | 10.55171 |

bLinf | 729.536867 | 620.143076 | 946.6953696 | 10.55171 |

sGrowth | 17.540309 | 16.158432 | 19.2634101 | 10.55171 |

sKYear | 0.322550 | 0.195136 | 0.5140263 | 10.55171 |

Table 24. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

286 | 4 | 3 | 500 | 50 | 188 | 1.006 | TRUE |

Table 25. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0388840 | -0.0048799 | -0.1132172 | 0.1185114 | 1.082066 |

variance | 0.9423009 | 0.9956184 | 0.8484579 | 1.1806375 | 1.002886 |

skewness | 0.1957728 | -0.0060292 | -0.2955888 | 0.2718196 | 2.858221 |

kurtosis | 1.6030601 | -0.0597657 | -0.4696239 | 0.5864294 | 8.966746 |

Table 26. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

286 | 4 | 3 | 500 | 1.006 | 1.002 | 1.004 | TRUE |

#### Movement

Table 27. Parameter descriptions.

Parameter | Description |
---|---|

`bFidelity` |
Intercept of `logit(eFidelity)` |

`bLength` |
Effect of length on `logit(eFidelity)` |

`eFidelity[i]` |
Expected site fidelity of `i` ^{th} recapture |

`Fidelity[i]` |
Whether the `i` ^{th} recapture was encountered at the same
site as the previous encounter |

`Length[i]` |
Length at previous encounter of `i` ^{th} recapture |

##### Mountain Whitefish

Table 28. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bFidelity | -0.2011430 | -0.5550301 | 0.1564674 | 1.948082 |

bLength | -0.0807911 | -0.4625010 | 0.2761610 | 0.598967 |

Table 29. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

122 | 2 | 3 | 500 | 1 | 910 | 1.003 | TRUE |

Table 30. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | -0.0298757 | -0.0359115 | -0.2575027 | 0.1729537 | 0.0769883 |

variance | 1.3848284 | 1.3695164 | 1.2229456 | 1.4119391 | 0.5960584 |

skewness | 0.1978280 | 0.2238480 | -0.2985772 | 0.7653002 | 0.0291267 |

kurtosis | -1.9570150 | -1.9201014 | -1.9978107 | -1.3937389 | 0.5989670 |

Table 31. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

122 | 2 | 3 | 500 | 1.003 | 1.002 | 1.003 | TRUE |

##### Rainbow Trout

Table 32. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bFidelity | 0.7138601 | 0.5686991 | 0.8517508 | 10.55171 |

bLength | -0.3290639 | -0.4717737 | -0.1795488 | 10.55171 |

Table 33. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

841 | 2 | 3 | 500 | 1 | 843 | 1.004 | TRUE |

Table 34. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.1072010 | 0.1048707 | 0.0255954 | 0.1767160 | 0.0749621 |

variance | 1.2372963 | 1.2386030 | 1.1558223 | 1.3089670 | 0.0389678 |

skewness | -0.7040137 | -0.7043062 | -0.9051847 | -0.4998678 | 0.0019236 |

kurtosis | -1.4424554 | -1.4366826 | -1.6916828 | -1.0999950 | 0.0369942 |

Table 35. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

841 | 2 | 3 | 500 | 1.004 | 1.001 | 1.001 | TRUE |

##### Walleye

Table 36. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bFidelity | 0.6639859 | 0.4076977 | 0.9368174 | 10.551708 |

bLength | -0.1006183 | -0.3748077 | 0.1445717 | 1.200769 |

Table 37. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

236 | 2 | 3 | 500 | 1 | 912 | 1.003 | TRUE |

Table 38. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.1056183 | 0.1018887 | -0.0411419 | 0.2426967 | 0.0449048 |

variance | 1.2729612 | 1.2682990 | 1.1131400 | 1.3755984 | 0.0851219 |

skewness | -0.6804434 | -0.6802602 | -1.0740261 | -0.3086979 | 0.0193523 |

kurtosis | -1.5310395 | -1.5188014 | -1.8973838 | -0.8360514 | 0.0389678 |

Table 39. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

236 | 2 | 3 | 500 | 1.003 | 1.003 | 1.002 | TRUE |

#### Length-At-Age

##### Mountain Whitefish

Table 40. The estimated upper length cutoffs (mm) by age and year.

Year | Age0 | Age1 | Age2 |
---|---|---|---|

1990 | 163 | 274 | NA |

1991 | 144 | 226 | 296 |

2001 | 141 | 258 | 344 |

2002 | 163 | 261 | 344 |

2003 | 159 | 263 | 354 |

2004 | 158 | 249 | 342 |

2005 | 168 | 263 | 363 |

2006 | 175 | 284 | 357 |

2007 | 171 | 280 | 337 |

2008 | 170 | 247 | 340 |

2009 | 169 | 265 | 355 |

2010 | 177 | 272 | 352 |

2011 | 163 | 269 | 348 |

2012 | 162 | 268 | 347 |

2013 | 185 | 282 | 349 |

2014 | 178 | 284 | 362 |

2015 | 167 | 278 | 366 |

2016 | 164 | 283 | 352 |

2017 | 158 | 270 | 354 |

2018 | 177 | 262 | 346 |

2019 | 188 | 282 | 363 |

2020 | 166 | 291 | 365 |

2021 | 165 | 275 | 349 |

##### Rainbow Trout

Table 41. The estimated upper length cutoffs (mm) by age and year.

Year | Age0 | Age1 |
---|---|---|

1990 | 155 | 355 |

1991 | 129 | 347 |

2001 | 133 | 326 |

2002 | 154 | 352 |

2003 | 161 | 345 |

2004 | 142 | 335 |

2005 | 164 | 349 |

2006 | 170 | 367 |

2007 | 166 | 377 |

2008 | 145 | 342 |

2009 | 147 | 341 |

2010 | 143 | 339 |

2011 | 156 | 346 |

2012 | 152 | 346 |

2013 | 169 | 357 |

2014 | 155 | 340 |

2015 | 166 | 337 |

2016 | 154 | 340 |

2017 | 133 | 320 |

2018 | 139 | 312 |

2019 | 160 | 317 |

2020 | 154 | 349 |

2021 | 169 | 349 |

#### Survival

Table 42. Parameter descriptions.

Parameter | Description |
---|---|

`bEfficiency` |
Intercept for `logit(eEfficiency)` |

`bEfficiencySampledLength` |
Effect of `SampledLength` on `bEfficiency` |

`bSurvival` |
Intercept for `logit(eSurvival)` |

`bSurvivalYear[i]` |
Effect of `Year` on `bSurvival` |

`eEfficiency[i]` |
Expected recapture probability in `i` ^{th} year |

`eSurvival[i]` |
Expected survival probability from `i-1` ^{th} to
`i` ^{th} year |

`SampledLength` |
Total standardised length of river sampled |

`sSurvivalYear` |
Log SD of `bSurvivalYear` |

##### Mountain Whitefish

Table 43. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -4.2529469 | -4.4528223 | -4.0614532 | 10.551708 |

bEfficiencySampledLength | 0.4117789 | 0.1925864 | 0.6459047 | 10.551708 |

bSurvival | 0.8752047 | 0.3323207 | 1.7463371 | 7.744353 |

sSurvivalYear | 1.2564585 | 0.7112041 | 2.2848184 | 10.551708 |

Table 44. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

20 | 4 | 3 | 500 | 200 | 1269 | 1.002 | TRUE |

##### Rainbow Trout

Table 45. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -2.5231214 | -2.6866753 | -2.3622262 | 10.5517083 |

bEfficiencySampledLength | 0.0130893 | -0.1211983 | 0.1575440 | 0.2513557 |

bSurvival | -0.4203665 | -0.6230200 | -0.2022955 | 10.5517083 |

sSurvivalYear | 0.3202229 | 0.1494315 | 0.5567204 | 10.5517083 |

Table 46. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

20 | 4 | 3 | 500 | 200 | 1245 | 1.004 | TRUE |

##### Walleye

Table 47. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -3.4823829 | -3.6751832 | -3.2836537 | 10.551708 |

bEfficiencySampledLength | 0.1408444 | -0.0096443 | 0.3072884 | 3.837463 |

bSurvival | 0.1627794 | -0.1159230 | 0.5335165 | 1.918713 |

sSurvivalYear | 0.5072542 | 0.2027299 | 0.9284454 | 10.551708 |

Table 48. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

20 | 4 | 3 | 500 | 200 | 1250 | 1.003 | TRUE |

#### Capture Efficiency

Table 49. Parameter descriptions.

Parameter | Description |
---|---|

`Annual[i]` |
Year of `i` ^{th} visit |

`bEfficiency` |
Intercept for `logit(eEfficiency)` |

`bEfficiencySessionAnnual` |
Effect of `Session` within `Annual` on
`logit(eEfficiency)` |

`eEfficiency[i]` |
Expected efficiency on `i` ^{th} visit |

`eFidelity[i]` |
Expected site fidelity on `i` ^{th} visit |

`Fidelity[i]` |
Mean site fidelity on `i` ^{th} visit |

`FidelitySD[i]` |
SD of site fidelity on `i` ^{th} visit |

`Recaptures[i]` |
Number of marked fish recaught during `i` ^{th}
visit |

`sEfficiencySessionAnnual` |
SD of `bEfficiencySessionAnnual` |

`Session[i]` |
Session of `i` ^{th} visit |

`Tagged[i]` |
Number of marked fish tagged prior to `i` ^{th}
visit |

##### Mountain Whitefish

###### Subadult

Table 50. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -4.3325555 | -4.8716536 | -3.972499 | 10.55171 |

sEfficiencySessionAnnual | 0.5109049 | 0.0557932 | 1.199599 | 10.55171 |

Table 51. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

1544 | 2 | 3 | 500 | 100 | 348 | 1.007 | TRUE |

Table 52. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

1544 | 2 | 3 | 500 | 1.007 | 1.003 | 1.018 | TRUE |

###### Adult

Table 53. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -4.5105939 | -4.8621361 | -4.2430894 | 10.55171 |

sEfficiencySessionAnnual | 0.2421517 | 0.0099348 | 0.6899536 | 10.55171 |

Table 54. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

1743 | 2 | 3 | 500 | 100 | 274 | 1.005 | TRUE |

Table 55. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

1743 | 2 | 3 | 500 | 1.005 | 1.009 | 1.006 | TRUE |

##### Rainbow Trout

###### Subadult

Table 56. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -3.0188375 | -3.1536514 | -2.9024322 | 10.55171 |

sEfficiencySessionAnnual | 0.3913347 | 0.2806158 | 0.5274097 | 10.55171 |

Table 57. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

1778 | 2 | 3 | 500 | 100 | 1210 | 1.005 | TRUE |

Table 58. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

1778 | 2 | 3 | 500 | 1.005 | 1.006 | 1.003 | TRUE |

###### Adult

Table 59. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -3.4578577 | -3.5950825 | -3.3440267 | 10.55171 |

sEfficiencySessionAnnual | 0.1819033 | 0.0083283 | 0.3835974 | 10.55171 |

Table 60. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

1848 | 2 | 3 | 500 | 100 | 413 | 1.009 | TRUE |

Table 61. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

1848 | 2 | 3 | 500 | 1.009 | 1.006 | 1.007 | TRUE |

##### Walleye

Table 62. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bEfficiency | -3.8705161 | -4.1191975 | -3.6574368 | 10.55171 |

sEfficiencySessionAnnual | 0.5746183 | 0.3691441 | 0.8283321 | 10.55171 |

Table 63. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

1898 | 2 | 3 | 500 | 100 | 984 | 1.004 | TRUE |

Table 64. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

1898 | 2 | 3 | 500 | 1.004 | 1.004 | 1.002 | TRUE |

#### Abundance

Table 65. Parameter descriptions.

Parameter | Description |
---|---|

`Annual` |
Year |

`bDensity` |
Intercept for `log(eDensity)` |

`bDensityAnnual` |
Effect of `Annual` on `bDensity` |

`bDensitySite` |
Effect of `Site` on `bDensity` |

`bDensitySiteAnnual` |
Effect of `Site` within `Annual` on `bDensity` |

`bEfficiencyVisitType` |
Effect of `VisitType` on `Efficiency` |

`eDensity` |
Expected density |

`Efficiency` |
Capture efficiency |

`esDispersion` |
Overdispersion of `Fish` |

`Fish` |
Number of fish captured or counted |

`ProportionSampled` |
Proportion of site surveyed |

`sDensityAnnual` |
Log SD of effect of `Annual` on `bDensity` |

`sDensitySite` |
Log SD of effect of `Site` on `bDensity` |

`sDensitySiteAnnual` |
Log SD of effect of `Site` within `Annual` on
`bDensity` |

`sDispersion` |
Intercept for `log(esDispersion)` |

`sDispersionVisitType` |
Effect of `VisitType` on `sDispersion` |

`Site` |
Site |

`SiteLength` |
Length of site |

`VisitType` |
Survey type (catch versus count) |

##### Mountain Whitefish

###### Subadult

Table 66. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bDensity | 4.7215469 | 4.3641478 | 5.0891416 | 10.5517083 |

bDensitySiteAnnual2 | 0.0002748 | -0.0004346 | 0.0014950 | 1.0943274 |

bEfficiencyVisitType[2] | 1.3323795 | 1.1979106 | 1.4666057 | 10.5517083 |

bEfficiencyVisitTypeDensity[1] | 0.0000566 | -0.0001016 | 0.0003560 | 0.8426244 |

sDensityAnnual | 0.6292131 | 0.4586582 | 0.9050668 | 10.5517083 |

sDensitySite | 0.7650127 | 0.6233089 | 0.9537284 | 10.5517083 |

sDensitySiteAnnual | 0.4260734 | 0.3707332 | 0.4853979 | 10.5517083 |

sDispersion | -0.8013172 | -0.8859588 | -0.7206539 | 10.5517083 |

sDispersionVisitType[2] | 0.6799922 | 0.5236369 | 0.8427045 | 10.5517083 |

Table 67. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

3020 | 9 | 3 | 500 | 200 | 246 | 1.016 | TRUE |

Table 68. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | -0.2198328 | -0.2722096 | -0.3079951 | -0.2389008 | 8.966746 |

variance | 0.6983168 | 0.9911020 | 0.9445128 | 1.0348459 | 10.551708 |

skewness | 0.0440552 | 0.2601992 | 0.1889356 | 0.3368542 | 10.551708 |

kurtosis | -0.4749788 | -0.3401765 | -0.4808510 | -0.1664530 | 3.922352 |

###### Adult

Table 69. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bDensity | 5.7350361 | 5.4371950 | 6.0083993 | 10.55171 |

bDensitySiteAnnual2 | -0.0012229 | -0.0015595 | -0.0008745 | 10.55171 |

bEfficiencyVisitType[2] | 1.4221561 | 1.2281110 | 1.6012701 | 10.55171 |

bEfficiencyVisitTypeDensity[1] | 0.0009679 | 0.0003505 | 0.0018524 | 8.22978 |

sDensityAnnual | 0.5004073 | 0.3636975 | 0.7130026 | 10.55171 |

sDensitySite | 0.7866482 | 0.6085898 | 1.0190803 | 10.55171 |

sDensitySiteAnnual | 0.2695262 | 0.2103980 | 0.3398227 | 10.55171 |

sDispersion | -0.6724000 | -0.7386631 | -0.6080522 | 10.55171 |

sDispersionVisitType[2] | 0.4993310 | 0.3593028 | 0.6240796 | 10.55171 |

Table 70. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

3020 | 9 | 3 | 500 | 200 | 183 | 1.028 | TRUE |

Table 71. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | -0.2181289 | -0.2754738 | -0.3104299 | -0.2362249 | 6.8512685 |

variance | 0.6784253 | 0.9995885 | 0.9542885 | 1.0455724 | 10.5517083 |

skewness | 0.0646806 | 0.2045044 | 0.1265059 | 0.2794385 | 10.5517083 |

kurtosis | -0.2445684 | -0.2919418 | -0.4321163 | -0.1223153 | 0.8426244 |

##### Rainbow Trout

###### Subadult

Table 72. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bDensity | 4.4844163 | 4.2533695 | 4.7025400 | 10.55171 |

bDensitySiteAnnual2 | 0.0034010 | 0.0000069 | 0.0107329 | 4.32289 |

bEfficiencyVisitType[2] | 1.4391033 | 1.2917451 | 1.6112370 | 10.55171 |

bEfficiencyVisitTypeDensity[1] | -0.0012491 | -0.0015710 | -0.0009401 | 10.55171 |

sDensityAnnual | 0.2812460 | 0.1762081 | 0.4366609 | 10.55171 |

sDensitySite | 0.8103242 | 0.6619382 | 0.9841066 | 10.55171 |

sDensitySiteAnnual | 0.4594808 | 0.4128931 | 0.5103665 | 10.55171 |

sDispersion | -0.9931035 | -1.0693165 | -0.9141010 | 10.55171 |

sDispersionVisitType[2] | 0.7202672 | 0.5668938 | 0.8783220 | 10.55171 |

Table 73. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

3020 | 9 | 3 | 500 | 200 | 342 | 1.016 | TRUE |

Table 74. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | -0.1899087 | -0.2429425 | -0.2792487 | -0.2052862 | 8.966746 |

variance | 0.6332183 | 1.0252891 | 0.9782449 | 1.0750202 | 10.551708 |

skewness | -0.1000613 | 0.1249807 | 0.0486386 | 0.1983276 | 10.551708 |

kurtosis | -0.1348843 | -0.2705761 | -0.3988109 | -0.0992383 | 3.202980 |

###### Adult

Table 75. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bDensity | 5.0776552 | 4.8701680 | 5.2779643 | 10.551708 |

bDensitySiteAnnual2 | -0.0015156 | -0.0025034 | -0.0002746 | 5.266306 |

bEfficiencyVisitType[2] | 1.2606920 | 1.1125814 | 1.4123855 | 10.551708 |

bEfficiencyVisitTypeDensity[1] | -0.0005207 | -0.0009444 | 0.0005992 | 1.647826 |

sDensityAnnual | 0.4264776 | 0.2976366 | 0.6184260 | 10.551708 |

sDensitySite | 0.7409243 | 0.5698442 | 0.9549844 | 10.551708 |

sDensitySiteAnnual | 0.2813581 | 0.2274583 | 0.3303467 | 10.551708 |

sDispersion | -1.0031767 | -1.0876630 | -0.9275556 | 10.551708 |

sDispersionVisitType[2] | 0.5282350 | 0.3746196 | 0.6864147 | 10.551708 |

Table 76. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

3020 | 9 | 3 | 500 | 200 | 472 | 1.021 | TRUE |

Table 77. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | -0.1727064 | -0.2369004 | -0.2723400 | -0.1984671 | 10.55171 |

variance | 0.6324302 | 1.0350861 | 0.9862599 | 1.0823075 | 10.55171 |

skewness | -0.1471385 | 0.0855498 | 0.0097631 | 0.1573428 | 10.55171 |

kurtosis | -0.0219842 | -0.2468565 | -0.3788988 | -0.0956251 | 8.22978 |

##### Walleye

Table 78. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bDensity | 4.7446058 | 4.5223653 | 5.0079572 | 10.551708 |

bDensitySiteAnnual2 | -0.0033426 | -0.0047263 | -0.0010526 | 6.303781 |

bEfficiencyVisitType[2] | 0.9589834 | 0.7691844 | 1.1062192 | 10.551708 |

bEfficiencyVisitTypeDensity[1] | 0.0014959 | -0.0006350 | 0.0066874 | 1.970508 |

sDensityAnnual | 0.5654281 | 0.3915802 | 0.8428269 | 10.551708 |

sDensitySite | 0.2852635 | 0.1754512 | 0.4202860 | 10.551708 |

sDensitySiteAnnual | 0.2189440 | 0.1362712 | 0.3107260 | 10.551708 |

sDispersion | -0.8431508 | -0.9172370 | -0.7710493 | 10.551708 |

sDispersionVisitType[2] | 0.5412947 | 0.3641323 | 0.6940544 | 10.551708 |

Table 79. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

3020 | 9 | 3 | 500 | 200 | 232 | 1.014 | TRUE |

Table 80. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | -0.1873520 | -0.2562592 | -0.2952159 | -0.2170104 | 10.551708 |

variance | 0.6942008 | 1.0403979 | 0.9959675 | 1.0872702 | 10.551708 |

skewness | -0.1845375 | 0.1052695 | 0.0314730 | 0.1783667 | 10.551708 |

kurtosis | -0.2415461 | -0.3446436 | -0.4699096 | -0.1921884 | 2.512789 |

#### Fecundity

Table 81. Parameter descriptions.

Parameter | Description |
---|---|

`bFecundity` |
Intercept of `eFecundity` |

`bFecundityWeight` |
Effect of `log(Weight)` on `log(bFecundity)` |

`eFecundity[i]` |
Expected `Fecundity` of `i` ^{th} fish |

`Fecundity[i]` |
Fecundity of `i` ^{th} fish (eggs) |

`sFecundity` |
SD of residual variation in `log(Fecundity)` |

`Weight[i]` |
Weight of `i` ^{th} fish (g) |

##### Mountain Whitefish

Table 82. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bFecundity | 2.9434157 | 2.1499255 | 3.7243986 | 10.55171 |

bFecundityWeight | 0.9941571 | 0.8747059 | 1.1132891 | 10.55171 |

sFecundity | 0.1309413 | 0.1013519 | 0.1763504 | 10.55171 |

Table 83. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

28 | 3 | 3 | 500 | 500 | 890 | 1.001 | TRUE |

Table 84. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0007544 | 0.0035540 | -0.3718694 | 0.3767449 | 0.0096437 |

variance | 0.9031600 | 0.9833955 | 0.5273010 | 1.6138927 | 0.4392688 |

skewness | -0.0053713 | 0.0009168 | -0.7991967 | 0.8153463 | 0.0154610 |

kurtosis | -0.7054780 | -0.3573449 | -1.1378323 | 1.5474069 | 1.0419333 |

Table 85. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

28 | 3 | 3 | 500 | 1.001 | 1.007 | 1.004 | TRUE |

#### Stock-Recruitment

Table 86. Parameter descriptions.

Parameter | Description |
---|---|

`bAlpha` |
`eRecruits` per `Stock` at low `Stock` density |

`bBeta` |
Expected density-dependence |

`bEggLoss` |
Effect of `EggLoss` on `log(eRecruits)` |

`EggLoss` |
Proportional egg loss |

`Eggs` |
Total egg deposition |

`eRecruits` |
Expected `Recruits` |

`Recruits` |
Number of Age-1 recruits |

`sRecruits` |
SD of residual variation in `log(Recruits)` |

##### Mountain Whitefish

Table 87. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bAlpha | 0.0036417 | 0.0010400 | 0.0083519 | 10.5517083 |

bBeta | 0.0000002 | 0.0000000 | 0.0000005 | 10.5517083 |

bEggLoss | -0.4536097 | -2.4498831 | 1.9636046 | 0.5390837 |

sRecruits | 0.5839171 | 0.4265604 | 0.8513871 | 10.5517083 |

Table 88. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

19 | 4 | 3 | 500 | 50 | 954 | 1.004 | TRUE |

Table 89. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 12.8398026 | 0.0044291 | -0.4631205 | 0.4469220 | 10.5517083 |

variance | 0.8847771 | 0.9608151 | 0.4451833 | 1.7566240 | 0.3097251 |

skewness | -0.0813545 | -0.0107121 | -0.9332061 | 0.9698862 | 0.2063030 |

kurtosis | -1.2203252 | -0.4598808 | -1.2562672 | 1.6686948 | 3.7572924 |

Table 90. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

19 | 4 | 3 | 500 | 1.004 | 1.009 | 1.627 | FALSE |

##### Rainbow Trout

Table 91. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bAlpha | 0.0038102 | 0.0011969 | 0.0082135 | 10.551708 |

bBeta | 0.0000002 | 0.0000000 | 0.0000006 | 10.551708 |

bEggLoss | 43.5317082 | -7.1889609 | 92.8321575 | 3.474893 |

sRecruits | 0.4326012 | 0.3204554 | 0.6366434 | 10.551708 |

Table 92. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

20 | 4 | 3 | 500 | 50 | 772 | 1.005 | TRUE |

Table 93. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 17.3373632 | 0.0036790 | -0.4433163 | 0.4316881 | 10.5517083 |

variance | 0.9608848 | 0.9743364 | 0.4874719 | 1.7549967 | 0.0608574 |

skewness | 0.1625044 | 0.0132264 | -0.9145807 | 0.9351975 | 0.4682289 |

kurtosis | 0.3238386 | -0.4688770 | -1.2597471 | 1.6729996 | 1.8687137 |

Table 94. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

20 | 4 | 3 | 500 | 1.005 | 1.003 | 1.65 | FALSE |

#### Age-Ratios

Table 95. Parameter descriptions.

Parameter | Description |
---|---|

`Age1[i]` |
The number of Age-1 fish in the `i` ^{th} year |

`Age1and2[i]` |
The number of Age-1 and Age-2 fish in the `i` ^{th} year |

`bProbAge1` |
Intercept for `logit(eProbAge1)` |

`bProbAge1Loss` |
Effect of `LossLogRatio` on `bProbAge1` |

`eProbAge1[i]` |
The expected proportion of Age-1 fish in the `i` ^{th}
year |

`LossLogRatio[i]` |
The `log` of the ratio of the percent egg losses |

`sDispersion` |
SD of extra-binomial variation |

Table 96. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

bProbAge1 | 0.2377570 | -0.0902671 | 0.5640274 | 2.8582213 |

bProbAge1Loss | -0.1449130 | -0.5952169 | 0.3394578 | 0.8704698 |

sProbAge1 | 0.7717861 | 0.5772362 | 1.0755001 | 10.5517083 |

Table 97. Model summary.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

21 | 3 | 3 | 500 | 1 | 682 | 1.007 | TRUE |

Table 98. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0010306 | 0.0059828 | -0.4062282 | 0.4028671 | 0.0252090 |

variance | 0.9088141 | 0.9562337 | 0.5005642 | 1.6728891 | 0.2331655 |

skewness | -0.4539816 | -0.0101251 | -0.9134044 | 0.9244399 | 1.6004235 |

kurtosis | -0.9846608 | -0.4087201 | -1.2445684 | 1.6615550 | 1.9856542 |

Table 99. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

21 | 3 | 3 | 500 | 1.007 | 1.002 | 1.005 | TRUE |

#### Adjusted Recruitment

Table 100. Parameter descriptions.

Parameter | Description |
---|---|

`b0` |
Intercept for `eRb[i]` |

`bEggLoss` |
Effect of `EggLoss` on `eRb[i]` |

`bMw` |
Effect of `Mw` on `eRb[i]` |

`Eggloss[i]` |
Proportional RB egg loss for the `i` ^{th} spawn year |

`eRb[i]` |
Expected value of `Rb[i]` |

`Mw[i]` |
Abundance of age-1 MW caught in the same year as age-1 RB
from the `i` ^{th} spawn year |

`Rb[i]` |
Abundance of age-1 RB for the `i` ^{th} spawn year |

`sRb` |
SD of residual variation in `eRb[i]` |

Table 101. Model coefficients.

term | estimate | lower | upper | svalue |
---|---|---|---|---|

b0 | 9.8273576 | 9.6874121 | 9.9726553 | 10.551708 |

bEggLoss | 0.0863422 | -0.0901280 | 0.2654751 | 1.588812 |

bMw | 0.2991639 | 0.1229051 | 0.4786583 | 10.551708 |

sRb | 0.3330808 | 0.2496527 | 0.4923357 | 10.551708 |

Table 102. Model convergence.

n | K | nchains | niters | nthin | ess | rhat | converged |
---|---|---|---|---|---|---|---|

21 | 4 | 3 | 500 | 50 | 1322 | 1.002 | TRUE |

Table 103. Model posterior predictive checks.

moment | observed | median | lower | upper | svalue |
---|---|---|---|---|---|

zeros | NA | NA | NA | NA | NA |

mean | 0.0073628 | 0.0095887 | -0.4186765 | 0.4191436 | 0.0057785 |

variance | 0.8271602 | 0.9832338 | 0.4648124 | 1.7211129 | 0.6553759 |

skewness | 0.5683087 | -0.0098563 | -0.9260708 | 0.9488355 | 2.2525002 |

kurtosis | 1.4564275 | -0.4483787 | -1.2644998 | 1.6850341 | 3.9223516 |

Table 104. Model sensitivity.

n | K | nchains | niters | rhat_1 | rhat_2 | rhat_all | converged |
---|---|---|---|---|---|---|---|

21 | 4 | 3 | 500 | 1.002 | 1.003 | 1.003 | TRUE |

### Figures

#### Condition

##### Subadult

###### Mountain Whitefish

###### Rainbow Trout

##### Adult

###### Mountain Whitefish

###### Rainbow Trout

###### Walleye

#### Growth

##### Mountain Whitefish

##### Rainbow Trout

##### Walleye

#### Movement

#### Length-At-Age

##### Mountain Whitefish

##### Rainbow Trout

#### Survival

##### Adult

###### Mountain Whitefish

###### Rainbow Trout

###### Walleye

#### Observer Length Correction

#### Capture Efficiency

##### Mountain Whitefish

###### Subadult

###### Adult

##### Rainbow Trout

###### Subadult

###### Adult

##### Walleye

#### Abundance

##### Mountain Whitefish

###### Subadult

###### Adult

##### Rainbow Trout

###### Subadult

###### Adult

##### Walleye

#### Survival (Abundance-based)

##### Mountain Whitefish

##### Rainbow Trout

#### Weight

##### Mountain Whitefish

##### Rainbow Trout

#### Fecundity

##### Mountain Whitefish

##### Rainbow Trout

#### Egg Deposition

##### Mountain Whitefish

##### Rainbow Trout

#### Stock-Recruitment

##### Mountain Whitefish

##### Rainbow Trout

#### Age-Ratios

#### Adjusted Recruitment

## Recommendations

- Develop fecundity vs weight relationship for Mountain Whitefish and Rainbow Trout on the Lower Columbia River.

## Acknowledgements

The organisations and individuals whose contributions have made this analysis report possible include:

- BC Hydro
- Matt Casselman
- Guy Martel
- Teri Neighbour
- Margo Sadler
- Gillian Kong

- Okanagan Nation Alliance
- Evan Smith

- Golder Associates
- David Roscoe
- Dustin Ford
- Sima Usvyatsov
- Dana Schmidt
- Demitria Burgoon
- Chris King

## References

*Transactions of the American Fisheries Society*146 (5): 939–54. https://doi.org/10.1080/00028487.2017.1313778.

*Canadian Journal of Fisheries and Aquatic Sciences*62 (12): 2716–26. https://doi.org/10.1139/f05-179.

*Handbook for Markov Chain Monte Carlo*. Boca Raton: Taylor & Francis.

*Stan*: A Probabilistic Programming Language.”

*Journal of Statistical Software*76 (1). https://doi.org/10.18637/jss.v076.i01.

*arXiv:1909.08579 [q-Bio, Stat]*, September. http://arxiv.org/abs/1909.08579.

*Growth*29 (3): 265–89.

*Entropy*19 (10): 555. https://doi.org/10.3390/e19100555.

*p*-Values Behave Exactly as They Should: Some Misleading Criticisms of

*p*-Values and Their Resolution With

*s*-Values.”

*The American Statistician*73 (sup1): 106–14. https://doi.org/10.1080/00031305.2018.1529625.

*Epidemiology*24 (1): 62–68. https://doi.org/10.1097/EDE.0b013e3182785741.

*Transactions of the American Fisheries Society*137 (3): 801–17. https://doi.org/10.1577/T07-012.1.

*Introduction to WinBUGS for Ecologists: A Bayesian Approach to Regression, ANOVA, Mixed Models and Related Analyses*. Amsterdam; Boston: Elsevier. http://public.eblib.com/EBLPublic/PublicView.do?ptiID=629953.

*Bayesian Population Analysis Using WinBUGS : A Hierarchical Perspective*. Boston: Academic Press. http://www.vogelwarte.ch/bpa.html.

*IEEE Transactions on Information Theory*37 (1): 145–51. https://doi.org/10.1109/18.61115.

*Journal of the Fisheries Research Board of Canada*36 (8): 987–1001. https://doi.org/10.1139/f79-137.

*Statistical Rethinking: A Bayesian Course with Examples in R and Stan*. Chapman & Hall/CRC Texts in Statistical Science Series 122. Boca Raton: CRC Press/Taylor & Francis Group.

*R: A Language and Environment for Statistical Computing*. Vienna, Austria: R Foundation for Statistical Computing. https://www.R-project.org/.

*ICES Journal of Marine Science*71 (8): 2307–22. https://doi.org/10.1093/icesjms/fsu148.

*PeerJ*5 (January): e2874. https://doi.org/10.7717/peerj.2874.

*The American Statistician*39 (1): 43. https://doi.org/10.2307/2683905.

*Human Biology*10: 181–213.

*Fisheries Ecology and Management*. Princeton, N.J: Princeton University Press.