Run the full dynamics, as in project()
, but stop once the change has slowed
down sufficiently, in the sense that the distance between states at
successive time steps is less than tol
. You determine how the distance is
calculated.
projectToSteady(
params,
effort = params@initial_effort,
distance_func = distanceSSLogN,
t_per = 1.5,
t_max = 100,
dt = 0.1,
tol = 0.1 * t_per,
return_sim = FALSE,
progress_bar = TRUE,
...
)
A MizerParams or a MizerSim object
A MizerParams object
The fishing effort to be used throughout the simulation. This must be a vector or list with one named entry per fishing gear.
A function that will be called after every t_per
years
with both the previous and the new state and that should return a number
that in some sense measures the distance between the states. By default
this uses the function distanceSSLogN()
that you can use as a model for your
own distance function.
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 maximum number of years to run the simulation. Default is 100.
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, saved at intervals of t_per
. If FALSE (default) the function returns
a MizerParams object with the "initial" slots set to the steady state.
A shiny progress object to implement a progress bar in a shiny app. Default FALSE.
Further arguments will be passed on to your distance function.
distanceSSLogN()
, distanceMaxRelRDI()