change_o takes a Stock Synthesis .ctl file and implements parameter value changes that are NOT time varying. change_o is specifically set up to work with an operating model .ctl file.

change_o(
  change_o_list,
  ctl_file_in = "control.ss_new",
  ctl_file_out = "om.ctl",
  par_name = NULL,
  par_int = NULL,
  verbose = FALSE
)

Arguments

change_o_list

A list of named vectors. Names correspond to parameters in the operating model and the vectors correspond to deviations. Alternatively, par_name and par_init can be passed to this function.

ctl_file_in

A string providing the path to the input Stock Synthesis .ctl file.

ctl_file_out

A string providing the path to the output Stock Synthesis control file. If the value is NULL, the file will not be written to the disk.

par_name

A vector of character values corresponding to parameter names that you wish to initialize at different values or change the phase in which they are estimated. Entries are searched for in ctl_file_in, and therefore, it is best to use full parameter names as they are specified in the file.

par_int

A vector of initial values, one for each entry in par_name. Values of NA leave the INIT value for that parameter at the value found in the .ctl file.

verbose

When TRUE messages will be returned from the function. Often useful for debugging. The default is FALSE.

Value

The function creates modified versions of the .ctl files. The function also returns change_o_list invisibly.

Specifying the change_o_list

Parameters initial values will change according to the values passed to change_o_list. Each parameter should have a single value specified.

Parameter names must be unique and match the full parameter name in the .ctl file.

Passing arguments to change_o() through run_ss3sim()

(1) add a column called co.par_name to the simdf that specifies which parameters you want to change in the OM, each element of this vector needs to be wrapped in quotations to be later evaluated, e.g., 'c("SR_BH_steep","SR_sigmaR")' represents a single entry; and (2) add an additional column called co.par_int to the simdf that specifies INIT values for each parameter in the previous column, e.g., "c(0.6, 1.0)", if there is more than one value, the vector needs to be wrapped in quotations to be evaluated later.

See also

Other change functions: change_data(), change_e(), change_em_binning(), change_f(), change_retro(), change_tv()

Author

Kathryn L. Doering