The steady state is found by running the dynamics while keeping reproduction and other components constant until the size spectra no longer change much (or until time t_max is reached, if earlier). Then the reproduction parameters are set to values that give the level of reproduction observed in that steady state.

  t_max = 100,
  t_per = 1.5,
  dt = 0.1,
  tol = 0.1 * dt,
  return_sim = FALSE,
  preserve = c("reproduction_level", "erepro", "R_max"),
  progress_bar = TRUE



A MizerParams object


The maximum number of years to run the simulation. Default is 100.


The simulation is broken up into shorter runs of t_per years, after each of which we check for convergence. Default value is 1.5. This should be chosen as an odd multiple of the timestep dt in order to be able to detect period 2 cycles.


The time step to use in project().


The simulation stops when the relative change in the egg production RDI over t_per years is less than tol for every species.


If TRUE, the function returns the MizerSim object holding the result of the simulation run. If FALSE (default) the function returns a MizerParams object with the "initial" slots set to the steady state.


[Experimental] Specifies whether the reproduction_level should be preserved (default) or the maximum reproduction rate R_max or the reproductive efficiency erepro. See setBevertonHolt() for an explanation of the reproduction_level.


A shiny progress object to implement a progress bar in a shiny app. Default FALSE.


if (FALSE) { params <- newTraitParams() species_params(params)$gamma[5] <- 3000 params <- steady(params) plotSpectra(params) }