MSEtool 3.7.5
CRAN release: 2025-09-30
Fixes
-
calc_weightedmean_c, used inSSMOM2OM, can returnNaNincpars$Wt_age_C = 0. OverwriteNaNwith0. Occurs with un-exploited age classes, e.g., age zero.
Updates
- Add option to turn off Blow calculation in
Simulatewhencontrol$Bfrac = FALSE - Add
spawn_time_fracargument inASAP2OM - Update gradient in F solver (from TAC) in
Projectfor better precision and maxF constraint - Update
SS2MOMfor SRR type 7 (survival-based model for elasmobranchs). OM uses customOM@SRrel = 3 - Add dimension names to arrays in MSE output from
Project
MSEtool 3.7.4
CRAN release: 2025-06-04
Fixes
- Fixed issue where TAC was being applied to landings rather than removals
-
updateDataandupdateData_MSuse the Baranov catch equation to simulateData@CAAin the projection. Previously, the catch at age was simulated with only the retention curve. -
multiMSEsolves for F from multi-fleet TAC simultaneously with functionCalcMPDynamics_MF - fix check for simulated
Data@VIndinmultiMSE - turn off check for valid
Data@AddIndstatistics (AC, SD) whencpars$AddIerris provided
Updates
- When indices are provided to the operating model, the default value of beta = 1 (hyperstability parameter) if not specified in
cpars. - Add grid to base graphics
- MSY calculations in
Simulateuse fishery weight at ageFleetPars$Wt_age_C -
multiMSE(extended = TRUE)returns overall F by stock (and area) andMMSE@PPDincludes StockPars, FleetPars, ReferencePoints inData@Misc -
runMSE(extended = TRUE)leaves StockPars, FleetPars, ReferencePoints inData@MiscofMSE@PPDslot - add
addMMPs()function - Internal function
Export_customMPsallows for MPs defined in more than one namespace, e.g., functions initially defined in a package and modified in the global environment.
MSEtool 3.7.3
CRAN release: 2024-11-22
MSEtool 3.7.2
CRAN release: 2024-09-23
New additions
- added
nsimargument toSimulateas an override toOM@nsim. Useful for generatingHistobject with 2 sims when all historical values are identical across simulations - added
BAM2OMto create OM from Beaufort Assessment Model (BAM) output - add MICE rel for recruitment deviates in
multiMSEwhich can be a function of the state dynamics in either the current year or previous year - MICE rel for natural mortality can be age-specific in
multiMSE - custom stock-recruit functions available for
multiMSE - allow plusgroup to be turned off in
multiMSE - add
spawn_time_fracargument toiSCAM2OM - hermaphroditism in
multiMSEcan be time-varying if entries in theMOM@SexPars$Hermlist is an array with dimensionsnsim, maxage+1, nyears+proyears - MICE relationship can be specified by reading in the abundance at age and year from the operating model
- MICE functions can operate as a multiplier on the base value instead of over-writing the base value
-
MOM@cpars$control <- list(HermEq = FALSE)sidesteps the first-year equilibrium age and sex distribution calculation from the hermaphroditic age schedule - document the various
cpars$controloptions inhelp("validcpars")
MSEtool 3.7.1
CRAN release: 2024-02-06
MSEtool 3.7.0
CRAN release: 2023-07-19
Fixes
- fix to
Calc_Residualswhen not estimating beta parameter - improve mapping of data across stocks in multiMSE
- improve calculation of weighted mean of empirical weight-at-age for SS2OM
- change to calculation of F in
popdyn.Rto include discard mortality - fix SPR reporting for multiMSE
- fix
SubCparsforMOMobjects - fix year indexing for stock allocation for species complexes in multiMSE
MSEtool 3.6.2
CRAN release: 2023-03-28
Fixes
- important fix to a bug for projected indices when real indices are provided with NA values
- minor fix to
SS2OMwhen empirical weight-at-age is not available - minor fix to
L95calculation when all age classes are mature (defaults to 1.5) - minor fix to
OM.Rmd
New additions
- add ability to control timing of spawning with
cpars$spawn_time_frac(default is beginning of yearspawn_time_frac=0). Need to check timing on order of operations if this is used together with MICE features! - implemented
Data@Vuln_CALin generating CAL samples.Data@Vuln_CAAis not currently implemented - add ability to map
CAL_nsampand other sample size data across stocks inMOM
Minor changes
-
MSE@Histnow includes slotsAtAgeandTSdatawhenextended=FALSE - changed
MSE@Nslot to include age and area dimensions. - changed
MMSE@Nslot to include age and area dimensions. - added
extendedargument tomultiMSEto report N-at-age inMMSE@Misc$extended$N - added optional
MOM@SexPars$share_par = FALSEargument that turns off parameter mirroring of stock-recruit, depletion parameters; fleet parameters related to effort trends; and all observation/implementation parameters. This can be used to generalize a 2-sex MOM to a multi-stock model with shared spawning output (SexPars$SSBfrom) and/or movement-at-age between stocks (SexPars$Herm).
MSEtool 3.6.1
CRAN release: 2023-01-05
New additions
- added additional indices to
plot.Data - added option for custom stock-recruitment function (in development/testing)
MSEtool 3.6.0
CRAN release: 2022-10-19
Major changes
- By default, MPs are now no longer run in parallel mode when
parallel=TRUEinrunMSEandmultiMSE. To run MPs in parallel, specify a named list with the name of the MP(s) assigned as TRUE. For example,parallel=list(AvC=TRUE).
New additions
- added
summary.MMSEgeneric function - added
Lag_Datafunction to be used internally in custom MPs to lag all time-series data by specified number of time-steps (or optionally only some data slots). See?Lag_Datafor more information. - added stock and fleet names (if provided in
MOM) to(multiHist) - added
Real.Data.Maptocpars. This allows mapping of simulated data across stocks inMOMswhere the real data is not stock-specific; e.g., cases whereMOMincludes male and female stocks but the real data incpars$Datais not sex-specific -
runMSEcan use the split-apply-combine technique to run projections in parallel with argumentparallel = "sac". Implementation details and notable issues are documented in the help doc?runMSE. This is the fastest method for running simulations but may not be suitable for all operating models and it may be more difficult to troubleshoot errors.
Minor changes
- minor patch to
ASAP2Data - minor patch in
Assess2OM - removed duplicated information in
multiHistobject (now only returns biological information for fleet=1) - patch to
gettaxafunction for species that are found in FishBase database but not in FishLife database - update
joinData,joinHist,joinMSE, andaddMPsfunctions -
runMSEcalculates vulnerable biomass from fishery weight at agecpars$Wt_age_Cif provided. - the realized catch from TAC is no longer constrained
0.5 * VBiomass(a legacy feature which is now removed). The constraint is updated to0.999 * Biomass. - increase iteration limit to 300 when solving for Baranov F during the MP projections.
MSEtool 3.5.0
CRAN release: 2022-06-07
New additions
- added check for
OMcompleteness and default values for some parameters - historical MPAs now work in
multiMSE - argument
parallelinrunMSEcan takes a named list of MPs - two new functions
WHAM2OMandASAP2OMto import assessments into operating models -
Assess2MOMto generate a multi-fleet operating model, either for a 2-sex population where recruitment is predicted from female spawning output, or a single-sex population. -
Assess2OMsupports Ricker stock-recruit relationship.
Minor changes
- fix to fleet-specific vulnerable biomass provided to
MMPs - updated code for conditioning observation parameters on observed indices
- add message showing range of estimated von Bert. parameters when
OM@cpars$Len_ageis provided. - fix bug in SSBpR for 2-sex
MOM(introduced in 3.4.0) - pass projected OM abundance and SSB arrays to
Data@Misc$StockPars(slotN_P,SSB_P, etc.) during closed-loop - now use
usethisfor console messages
MSEtool 3.4.0
CRAN release: 2022-01-05
New additions
- new functions
makeRelandmakeMOMwith methods for developing MICE relationships, e.g., density-dependent M. - depletion optimization in
multiMSEusesWt_age_Cfor catch fraction calculations. - argument
parallelinrunMSEcan now be MP-specific by specifying a logical vector of length(MPs). This is useful to apply slow-running MPs in parallel, while avoiding the parallel overhead time for fast-running MPs.
Fixes
- fix bug in re-calculation of MSY refs points when selectivity parameters change (introduced in last version)
- fix indexing in
multiMSEwhen growth and natural mortality are time-varying. Internal code inHistMICE,qestMICE,popdynMICEandpopdynOneMICEwas updated for better readability, i.e., removing obsolete/redundant code and better references for array dimensions.
MSEtool 3.3.0
CRAN release: 2021-11-16
New additions
- added
Awatea2OMto import MCMC output from an Awatea assessment model to openMSE - reference points are now calculated assuming constant stock-recruit alpha and beta parameters. Previously, constant R0 and steepness was assumed. See documentation for more details.
Fixes
- fix minor bug in calculating SSB in first year when using OMs imported from SS3
- fix minor bug when passing movement matrix in with cpars
- fix minor bug so that the mean of sampled recruitment deviations in
SS2MOMandSS2OMis one. The issue was noticeable when the autocorrelation is high. - add check for missing OM slots such as interval, pstar, nyears, etc
MSEtool 3.2.0
CRAN release: 2021-08-13
MSEtool 3.1.1
CRAN release: 2021-07-08
MSEtool 3.1.0
CRAN release: 2021-07-03
New additions
- Dynamic and equilibrium spawning potential ratio (SPR) are now calculated for the historical and projection years.
- add option to include empirical weight-at-age for the catches with
cpars$Wt_age_C - F_crash, F_med, and other reference points have been added to
Hist@Ref$ByYear - can now optimize for depletion in terms of SB/SBMSY with
control$D <- 'SBMSY' - option to simulate CAL data including removals (retained + discards) with
OM@cpars$control$CAL="removals". Default is to simulate only retained catch-at-length. - option to apply TAC to all removals with
OM@cpars$control$TAC="removals". Default is to for TAC to refer to retained catch (i.e., removals will be greater than TAC if there are discards)
MSEtool 3.0.2
CRAN release: 2021-03-09
MSEtool 3.0.1
CRAN release: 2021-02-02
Minor Changes
- Add
I_beta,SpI_beta, andVI_betafor the individual indices. Defaults to useOM@betafor all, unless a real index is supplied, e.g.,OM@cpars$Data@Ind,OM@cpars$Data@SpInd, orOM@cpars$Data@VInd, or if supplied in cpars, e.g.,OM@cpars$I_beta
Fixes
- fix bug where variability in von Bert K with
OM@Ksdwas not implemented correctly (5e6e8c6). - fix error with incorrect beta values when conditioning with real index (ie cpars$Data@Ind)
- fix randomly occurring bug in C++ code that was causing crashes
- fix issue with importing composition data with
new('Data',..)(issue #33) - fix
cpars$betaandcpars$Esdissue (issue #34) - fix issue with importing Data files from csv
MSEtool 3.0.0
CRAN release: 2021-01-09
This is a new major release of the MSEtool package. It is not backwards compatible with previous versions of MSEtool or DLMtool.
Major Changes
- The most significant change in this version is that the
MSEtoolpackage now contains all code related to generating operating models, simulating fisheries dynamics, conducting management strategy evaluation, and examining the results (previously in theDLMtoolpackage). This change was primarily done to better align the actual contents of the packages with the respective package names. -
MSEtoolnow only has a set of reference management procedures (e.g.,FMSYref) - The Data-Limited Methods Toolkit package now contains the collection of data-limited methods, and uses
MSEtoolV3+ as a dependency; i.e., installing and loadingDLMtoolwill also install and loadMSEtooland make all functions for generating OMs, conducting MSE, etc available. - The operating model has been updated and an age-0 age-class has been added to the population dynamics model; i.e., recruitment is now to age-0 (previously the OM in
DLMtoolhad recruitment to age-1). - The catch-at-age (CAA) in the
Dataobject now includes age-0 (i.e., all age data must be lengthmaxage+1)
