Estimates selectivity at age of an stock by a fleet and metier.

SelAtAge(biols, fleets, flnm = 1, mtnm = 1, stnm = 1, years,
  iter = NULL, restriction = 1, ntrials = 3)

Arguments

biols

A FLBiols object.

fleets

A FLFleetsExt object.

flnm

A character vector with the name of the fleet for which you want to calculate selectivity.

mtnm

A character vector with the name of the metier for which you want to calculate selectivity.

stnm

A character vector with the name of the stock for which you want to calculate selectivity.

years

A character vector with the name of the years used to calculate selectivity.

iter

Numeric vector with the specific iterations to be consider. Default is taking all iterations.

restriction

If restriction = 1 => sum(Sa) = 1, whereas if restriction = 2 => max(Sa) = 1. Default value is 1.

ntrials

Numeric. If ntrials > 1, process success is checked.

Value

A FLQuant with selectivity at age values in years. The rest of the years have value 0 for all ages.

Details

To calculate selectivity at age, the following formula is used:

$$ C_{a,f,m} = \frac{C_{f,m}}{sum_{i=a_0,...a+} S_{i,f,m} \cdot B_i} \cdot S_{a,f,m} \cdot B_a $$

Where:

  • a: age.

  • f: fleet.

  • m: metier.

  • i: susbscript of age.

  • \(S_{a,f,m}\): selectivity at age 'a' for fleet 'f' and metier 'm'.

  • \(C_{a,f,m}\): catch (in weight) at age 'a' for fleet 'f' and metier 'm'.

  • \(C_{f,m}\): total catch for fleet 'f' and metier 'm'.

  • \(B_a\): biomass (in weight) at age.

Consult FLBEIA manual to see the derivation of the formula.

The equation above is nonlinear and therefore we cannot find an analytical expression for the selectivity. Rewriting the equation above for each 'a' we have de following equation:

$$ sum_{i=a_0,...a+} S_{i,f,m} \cdot B_i - \frac{C_{f,m}}{C_{a,f,m}} \cdot B_a \cdot S_{a,f,m}$$

Thus we have a system of linear equations being Sa0fm,...,Sa+fm the unknown variables. The problem is that the equations in the system are not independent. Therefore, we have to remove one equation to get a system of independent equations. Furthermore, we have to add a constraint (an equation) to be able to solve the system.

To make sure that output is correct, we solve the sistem for each year and season several times (the number is set in ntrials), removing a different equation each time. Alway using the same constraint (restriction=1): \( sum_{i=a_0,...a+} S_{i,f,m} = 1\) Finally, we compare the values of \( S_{i,f,m} \) and we check if they are the same.