Skip to contents

[Experimental] Given a MizerParams object params for which number observations are available for at least some species via the number_observed column in the species_params data frame, this function returns an updated MizerParams object which is rescaled with scaleModel() so that the total number in the model agrees with the total observed number.

Usage

calibrateNumber(params)

Arguments

params

A MizerParams object

Value

A MizerParams object

Details

Number observations usually only include individuals above a certain size. This size should be specified in a number_cutoff column of the species parameter data frame. If this is missing, it is assumed that all sizes are included in the observed number, i.e., it includes larval number.

After using this function the total number in the model will match the total number, summed over all species. However the numbers of the individual species will not match observations yet, with some species having numbers that are too high and others too low. So after this function you may want to use matchNumbers(). This is described in the blog post at https://bit.ly/2YqXESV.

If you have observations of the yearly yield instead of numbers, you can use calibrateYield() instead of this function.

Examples

params <- NS_params
species_params(params)$number_observed <-
    c(0.8, 61, 12, 35, 1.6, 20, 10, 7.6, 135, 60, 30, 78)
species_params(params)$number_cutoff <- 10
params2 <- calibrateNumber(params)