SSfpl                  package:nls                  R Documentation

Four-parameter Logistic Model

Description:

     This `selfStart' model evaluates the four-parameter logistic
     function and its gradient.  It has an `initial' attribute that
     will evaluate initial estimates of the parameters `A', `B',
     `xmid', and `scal' for a given set of data.

Usage:

     SSfpl(input, A, B, xmid, scal)

Arguments:

   input: a numeric vector of values at which to evaluate the model.

       A: a numeric parameter representing the horizontal asymptote on
          the left side (very small values of `input').

       B: a numeric parameter representing the horizontal asymptote on
          the right side (very large values of `input').

    xmid: a numeric parameter representing the `input' value at the
          inflection point of the curve.  The value of `SSfpl' will be
          midway between `A' and `B' at `xmid'.

    scal: a numeric scale parameter on the `input' axis.

Value:

     a numeric vector of the same length as `input'.  It is the value
     of the expression `A+(B-A)/(1+exp((xmid-input)/scal))'.  If all of
     the arguments `A', `B', `xmid', and `scal' are names of objects,
     the gradient matrix with respect to these names is attached as an
     attribute named `gradient'.

Author(s):

     Jose Pinheiro and Douglas Bates

See Also:

     `nls', `selfStart'

Examples:

     data( ChickWeight )
     Chick.1 <- ChickWeight[ChickWeight$Chick == 1, ]
     SSfpl( Chick.1$Time, 13, 368, 14, 6 )  # response only
     A <- 13; B <- 368; xmid <- 14; scal <- 6
     SSfpl( Chick.1$Time, A, B, xmid, scal ) # response and gradient
     getInitial(weight ~ SSfpl(Time, A, B, xmid, scal), data = Chick.1)
     ## Initial values are in fact the converged values
     fm1 <- nls(weight ~ SSfpl(Time, A, B, xmid, scal), data = Chick.1)
     summary(fm1)

