SSfpl                 package:stats                 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:

     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)

