Learn R Programming

fishmethods (version 1.12-1)

vbfr: Francis' re-parameterization of the von Bertalanffy growth equation for length-age data

Description

Fits the re-parameterized von Bertalanffy growth equation of Francis (1988) by using nonlinear least-squares

Usage

vbfr(age = NULL, L = NULL, agephi = NULL, agepsi = NULL, graph = TRUE, 
gestimate = TRUE, Lphiparms = c(NA, NA, NA), Lchiparms = c(NA, NA, NA), 
Lpsiparms = c(NA, NA, NA),control = list(maxiter = 10000))

Value

nls object of model results. Use summary to extract results.

Arguments

age

Vector of ages of individual fish.

L

Vector of lengths of individual fish.

agephi

Arbitrary reference age phi

agepsi

Arbitrary reference age psi. agepsi>agephi.

graph

Logical specifiying whether observed versus predicted, and residual plots should be drawn. Default=TRUE.

gestimate

Logical specifying whether automatic generation of starting values of lphi, lchi and lpsi should be used. Default=TRUE. If gestimate=FALSE, user-specified starting, lower and upper limits of parameters must be entered.

Lphiparms

If gestimate=FALSE, starting value, lower limit and upper limit of lphi used in nls.

Lchiparms

If gestimate=FALSE, starting value, lower limit and upper limit of lchi used in nls.

Lpsiparms

If gestimate=FALSE, starting value, lower limit and upper limit of lpsi used in nls.

control

see control under function nls.

Author

Gary A. Nelson, Massachusetts Division of Marine Fisheries gary.nelson@mass.gov

Details

Francis (1988) re-parameterized the von Bertalanffy growth equation for age-length in order to make equivalent comparison of parameters to parameters of a common model used to estimate growth from tagging data. Three parameters, lphi, lchi and lpsi, are estimated. The re-parameterization also has better statistical properties than the original equation.

The formulae to get the conventional von Bertalanffy parameters are:

Linf = lphi + (lpsi-lphi)/(1-r^2) where r = (lpsi-lchi)/(lchi-lphi)

K = -(2*log(r))/(agepsi-agephi)

t0 = agephi + (1/K)*log((Linf-lphi)/Linf)

If gestimate=TRUE, unconstrained nonlinear least-squares (function nls) is used to fit the model. If gestimate=FALSE, constrained nonlinear least-squares is used (algorithm "port" in nls).

References

Francis, R. I. C. C. 1988. Are growth parameters estimated from tagging and age-length data comparable? Can. J. Fish. Aquat. Sci. 45: 936-942.

Examples

Run this code
data(pinfish)
with(pinfish,vbfr(age=age,L=sl,agephi=3,agepsi=6))

Run the code above in your browser using DataLab