This document was compiled in RMarkdown, and shows the
incremental results of the Chilean Jack Mackerel (Trachurus
murphyi) stock assessment update in 2026. The files associated with
this document can be found on Github.
The code to create the input files for this assessment and to run
these models can be found in jjm/assessment/R/SC13_Bridging.R.
Should you choose to run the models, please ensure that you have:
jjm/src/jjms.tpl
jjm/src folder in
your Terminal, and using the make commandjjmR package
R using the command
remotes::install_github("SPRFMO/jjmR")if(!'devtools' %in% installed.packages()) install.packages('devtools')
devtools::install_github("SPRFMO/jjmR")
if(!'kableExtra' %in% installed.packages()) install.packages('kableExtra')
library(jjmR)
library(tidyverse)
library(kableExtra)
library(patchwork)
theme_set(theme_jjm(base_size = 15))
pwd <- getwd()
fn_seldata <- function(x, i) {
x$data$Index[,i] %>%
bind_rows() %>%
pivot_longer(everything(), names_to = "year") %>%
drop_na() %>%
mutate(
year = as.numeric(year),
assessment_year = ifelse(
i==7,
max(year)+1,
max(year)
)
)
}
fn_plotind <- function(mods2compare, indname) {
mods <- compareModels(geth(mods2compare, "h1"))
i <- grep(indname,mods[[1]]$data$Inames)
dat2use <- list()
for(m in 1:length(mods)) {
dat2use[[m]] <- fn_seldata(mods[[m]],i)
}
p <- map_dfr(dat2use, ~as_tibble(.)) %>%
mutate(assessment_year=as.factor(assessment_year)) %>%
ggplot() +
geom_line(aes(x=year,y=value,colour=assessment_year)) +
scale_x_continuous(breaks= scales::pretty_breaks())
print(p)
}
finmodname <- "1.14"
yr_prev <- as.numeric(format(Sys.time(), "%Y"))-1
yr_curr <- as.numeric(format(Sys.time(), "%Y"))
File naming conventions have been changed to reflect the stock
structure hypotheses associated with each run. The h1
denotes the single-stock hypothesis, while h2 denotes the
two-stock one.
| Model | Description |
|---|---|
| Models 0.x | Data introductions |
| 0.00 |
Exact 2024 (single stock h1 and two-stock h2)
model and data set (model 1.07) from SC12.
|
| 0.01 | As 0.00 but with revised catches through 2024 (currently still estimates) |
| 0.02 | As 0.01 but with updated 2024 fishery age composition data for N_Chile, SC_Chile, and Offshore_Trawl, and updated 2024 fishery length composition data for FarNorth |
| 0.03 | As 0.02 but with updated 2024 weight at age data for all fisheries and their associated CPUE indices |
| 0.04 | As 0.03 but replaced offshore CPUE up to 2024 |
| 0.05 | As 0.04 but with 2025 catch projections |
| 0.06 | As 0.05 but with updated 2025 fishery age composition data for N_Chile, SC_Chile, and Offshore_Trawl, and updated 2025 fishery length composition data for FarNorth |
| 0.07 | As 0.06 but with updated 2025 weight at age data for N_Chile, SC_Chile, and FarNorth fleets, and for their associated CPUE indices |
| 0.08 | As 0.07 but replaced SC_Chile_CPUE index (traditional absolute scaled CPUE by trip) |
| 0.09 | As 0.08 but replaced Peru_CPUE index |
| 0.1 | As 0.09 but updated 2025 AcousN index, with associated age composition and weight at age |
| Models 1.x | Updated Model and Sensitivities |
| 1.00 | As 0.10 but with updated model (selectivity changes, recruitment) to 2025; 0.10 data file |
| Leave one in analysis | NA |
| 1.01 | As 1.00 but with downweighted Chile AcousN, Offshore CPUE, and Peru CPUE |
| 1.02 | As 1.00 but with downweighted Chile AcousN, Chile CPUE, and Peru CPUE |
| 1.03 | As 1.00 but with downweighted Chile CPUE, Offshore CPUE, and Chile AcousN |
| 1.04 | As 1.00 but with downweighted Chile CPUE, Offshore CPUE, and Peru CPUE |
| 1.05 | As 1.00 but with downweighted Chile CPUE, Offshore CPUE, Peru CPUE, and pre-2000 AcousN |
| Leave one out analysis | NA |
| 1.06 | As 1.00 but with downweighted Chile CPUE |
| 1.07 | As 1.00 but with downweighted Offshore CPUE |
| 1.08 | As 1.00 but with downweighted Peru CPUE |
| 1.09 | As 1.00 but with downweighted Chile AcousN |
| Regularly scheduled sensitivities | NA |
| 1.10 | As 1.00 but with selectivity change implemented for 2025 Offshore fishery |
| 1.11 | As 1.10 but with selectivity change implemented for 2025 SC Chile fishery |
| 1.12 | As 1.11 but with increased weight for 2025 age compositions in the offshore and SC Chile fishery |
| 1.13 | As 1.12 but with downweighted early years (pre-2000) of AcousN |
| 1.14 | As 1.13 but with updates to historical weight at age for the FarNorth fleet |
| Models 1.xx.yy | Base Model Projections |
| 1.xx.ls | As 1.xx but low steepness and short recruitment time series (2001-2015) |
You’ll need to be in the jjm/assessment directory in
order for the code here to run.
Re-running the 2025 model and comparing the results with that year’s SC meeting.
Plot comparing biomass estimated by last year’s model (mod_prev) with a re-run of the model this year (h1_0.00).
Plot comparing recruitment estimated by last year’s model (mod_prev) with a re-run of the model this year (h1_0.00).
Plot comparing fishing mortality estimated by last year’s model (mod_prev) with a re-run of the model this year (h1_0.00).
Plot comparing biomass estimated by last year’s model (mod_prev) with a re-run of the model this year (h2_0.00).
Plot comparing recruitment estimated by last year’s model (mod_prev) with a re-run of the model this year (h2_0.00).
Plot comparing fishing mortality estimated by last year’s model (mod_prev) with a re-run of the model this year (h2_0.00).
The most updated table of model runs can be found on Github.
The data updated to 2025, includes catch estimates, age and length compositions, and indices of abundance.
Plot comparing biomass estimated by last year’s model (h1_0.00) with data updated to 2025.
Plot comparing recruitment estimated by last year’s model (h1_0.00) with data updated to 2025.
Plot comparing fishing mortality estimated by last year’s model (h1_0.00) with data updated to 2025.
Plot comparing biomass estimated by last year’s model (h2_0.00) with data updated to 2025.
Plot comparing recruitment estimated by last year’s model (h2_0.00) with data updated to 2025.
Plot comparing fishing mortality estimated by last year’s model (h2_0.00) with data updated to 2025.
The data updated to 2026 include projected catch estimates, age and length compositions, and indices of abundance.
Plot comparing biomass estimated with last year’s data using the same model (h2_0.04) but with data updated to 2026.
Plot comparing recruitment estimated with last year’s data using the same model (h2_0.04) but with data updated to 2026.
Plot comparing fishing mortality estimated with last year’s data using the same model (h2_0.04) but with data updated to 2026.
Plot comparing biomass estimated with last year’s data using the same model (h2_0.04) but with data updated to 2026.
Plot comparing recruitment estimated with last year’s data using the same model (h2_0.04) but with data updated to 2026.
Plot comparing fishing mortality estimated with last year’s data using the same model (h2_0.04) but with data updated to 2026.
Note that this time series ends in 2025.
This shows the final data update, using the exact same model (i.e., with the same control files).
Plot comparing biomass estimated by last year’s model (h1_0.00) with data updated to 2026 (h1_0.10).
Plot comparing recruitment estimated by last year’s model (h1_0.00) with data updated to 2026 (h1_0.10).
Plot comparing fishing mortality estimated by last year’s model (h1_0.00) with data updated to 2026 (h1_0.10).
Plot comparing fishing mortality estimated by last year’s model (h2_0.00) with data updated to 2026 (h2_0.10).
Plot comparing recruitment estimated by last year’s model (h2_0.00) with data updated to 2026 (h2_0.10).
Plot comparing fishing mortality estimated by last year’s model (h2_0.00) with data updated to 2026 (h2_0.10).
These results are from updating the model to include selectivity changes in the most recent year, and to extend the recruitment regime shift time series. This is the same procedure that was applied in previous years.
Plot comparing biomass estimates from last year’s model (h1_0.00) to this year’s (h1_1.00).
Plot comparing recruitment estimates from last year’s model (h1_0.00) to this year’s (h1_1.00).
Plot comparing fishing mortality estimates from last year’s model (h1_0.00) to this year’s (h1_1.00).
Plot comparing biomass estimated by last year’s model (h2_0.00) to this year’s (h2_1.00).
Plot comparing recruitment estimated by last year’s model (h2_0.00) to this year’s (h2_1.00).
Plot comparing fishing mortality estimated by last year’s model (h2_0.00) to this year’s (h2_1.00).
Only indices with recent data are considered: CPUE indices for Chile, Peru and offshore, and Chile Acoustic N. Age composition data were left in.
Worth noting that both indices from the north (Acoustic N and Peru CPUE) have a positive impact on biomass, whereas the “southern” indices have a negative impact on biomass.
| Model | Leaves In |
|---|---|
| 1.01 | Chile CPUE |
| 1.02 | Offshore CPUE |
| 1.03 | Peru CPUE |
| 1.04 | Acoustic N Chile |
| 1.05 | Only recent years (>2000) of Acoustic N Chile |
Plot comparing biomass estimates from leaving one index abundance in.
Plot comparing biomass estimates from leaving one index abundance in.
Only indices with recent data are considered: CPUE indices for Chile, Peru and offshore, and Chile Acoustic N. Age composition data were left in.
| Model | Leaves Out |
|---|---|
| 1.06 | Chile CPUE |
| 1.07 | Offshore CPUE |
| 1.08 | Peru CPUE |
| 1.09 | Acoustic N Chile |
Plot comparing biomass estimates from leaving one index abundance out.
Plot comparing biomass estimates from leaving one index abundance out.
The model showed a very poor fit to recent data, particularly for the SC Chile and the offshore fleets. Efforts were made to improve the fit, namely by 1) allowing for additional flexibility in selectivity patterns for those fleets in 2025, and 2) increasing the weight of the age composition data in 2025.
Within-year fishery data are typically downweighted by a factor of 0.1. For example:
| Data Source | Years | Sample Size |
|---|---|---|
| SC Chile | < 2025 | 64.3 |
| SC Chile | 2025 | 6.43 |
| Offshore | < 2025 | 12.6 |
| Offshore | 2025 | 1.26 |
Proposed Changes:
| Data Source | Years | Sample Size |
|---|---|---|
| SC Chile | < 2025 | 64.3 |
| SC Chile | 2025 | 32.1 |
| Offshore | < 2025 | 12.6 |
| Offshore | 2025 | 6.29 |
Plot comparing biomass estimates from allowing additional flexibility in selectivity patterns for the offshore and the SC Chilean fleets in 2025.
Plot comparing biomass estimates from allowing additional flexibility in selectivity patterns for the offshore and the SC Chilean fleets in 2025.
These years were very long ago (pre-2000) and the data still have an impact on the assessment. We don’t like them and want them to go away.
Plot comparing biomass estimates from severely downweighting the early years of Chile’s acoustic survey data.
Plot comparing biomass estimates from severely downweighting the early years of Chile’s acoustic survey data.
The historical weight at age in the assessment were not updated even though the data had been provided. Also, the mean weight at age for the older fish used a short-term historical mean. We instead would like to use the mean over the entire time series for these older fish (age 9-12) instead.
Plot comparing biomass estimates from updating the FarNorth weight at age data.
Plot comparing biomass estimates from updating the FarNorth weight at age data.
Model 1.14 was selected as the final model for 2026. This model incorporates data updated to 2025, flexibility in selectivity patterns for the SC Chile and Offshore fleets in 2025, and increased confidence (decreased CV) for the 2025 age composition data from the same fleets. The early years of Chile acoustic north survey data were downweighted, and the changes in Peruvian weight at age for older fish were corrected.
Plot comparing biomass estimates from last year’s model with the final model selected for this year.
Plot comparing recruitment estimates from last year’s model with the final model selected for this year.
Plot comparing fishing mortality estimates from last year’s model with the final model selected for this year.
Plot comparing biomass estimates from last year’s model with the final model selected for this year.
Plot comparing recruitment estimates from last year’s model with the final model selected for this year.
Plot comparing fishing mortality estimates from last year’s model with the final model selected for this year.
The \(B_{MSY}\) for this year (an average of the most recent ten years) will be 9.101 million tons.
Projections done under a conservative recruitment regime (steepness 0.65, recruitment curve estimated from 2001:2015).
BMSY fixed at 9.101 million tons.
BMSY is fixed at 9.101 million tons, shown by the orange line. The blue lines show the MSY values (BMSY and FMSY) estimated annually within the model.
The \(B_{MSY}\) for this year (an average of the most recent ten years) will be 7.527 million tons for the south stock and 0.172 million tons for the north stock.
Projections done under a conservative recruitment regime (steepness 0.65, recruitment curve estimated from 2001:2015).
BMSY fixed at 7.527 million tons for the south stock and 0.172 million tons for the north stock.
BMSY fixed at 7.527 million tons for the south stock and 0.172million tons for the north stock, shown as the orange line. The blue lines show the MSY values (BMSY and FMSY) estimated annually within the model.
BMSY fixed at 7.527 million tons for the south stock and 0.172million tons for the north stock, shown as the orange line. The blue lines show the MSY values (BMSY and FMSY) estimated annually within the model.
| h1_1.14 | h2_1.14 | |
|---|---|---|
| catch_like | 0.87 | 1.24 |
| age_like_fsh | 262.92 | 244.38 |
| length_like_fsh | 471.47 | 473.21 |
| sel_like_fsh | 331.28 | 197.50 |
| ind_like | 187.77 | 192.97 |
| age_like_ind | 61.53 | 66.56 |
| length_like_ind | 0.00 | 0.00 |
| sel_like_ind | 10.70 | 10.84 |
| rec_like | -2.99 | 6.96 |
| fpen | 0.01 | 0.06 |
| post_priors_indq | 0.20 | 0.16 |
| post_priors | 0.00 | 0.00 |
| residual | 0.05 | 0.20 |
| total | 1323.82 | 1194.09 |