Fits the re-parameterized von Bertalanffy growth equation of Francis (1988) by using nonlinear least-squares
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))
Vector of ages of individual fish.
Vector of lengths of individual fish.
Arbitrary reference age phi
Arbitrary reference age psi. agepsi>agephi.
Logical specifiying whether observed versus predicted, and residual plots should be drawn. Default=TRUE.
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.
If gestimate=FALSE, starting value, lower limit and upper limit of lphi used in nls.
If gestimate=FALSE, starting value, lower limit and upper limit of lchi used in nls.
If gestimate=FALSE, starting value, lower limit and upper limit of lpsi used in nls.
see control
under function nls.
nls object of model results. Use summary to extract results.
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).
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.
# NOT RUN {
data(pinfish)
with(pinfish,vbfr(age=age,L=sl,agephi=3,agepsi=6))
# }
Run the code above in your browser using DataLab