Learn R Programming

drc (version 4.0-0)

weibull1: Weibull model functions

Description

'weibull1' and 'weibull2' provide a very general ways of specifying Weibull type 1 and 2 dose-response models, allowing for various constraints on the model parameters.

Usage

weibull1(fixed = c(NA, NA, NA, NA), 
           names = c("b", "c", "d", "e"),
           method = c("1", "2", "3", "4"), 
           ssfct = NULL,
           fctName, fctText)
 
  weibull2(fixed = c(NA, NA, NA, NA), 
           names = c("b", "c", "d", "e"),
           method = c("1", "2", "3", "4"), 
           ssfct = NULL,
           fctName, fctText)

weibull2x(fixed = rep(NA, 5), names = c("b", "c", "d", "e", "t0"), method = c("1", "2", "3", "4"), ssfct = NULL, fctName, fctText)

Value

The value returned is a list containing the non-linear function, the self starter function and the parameter names.

Arguments

fixed

numeric vector. Specifies which parameters are fixed and at what value they are fixed. NAs for parameter that are not fixed.

names

a vector of character strings giving the names of the parameters (should not contain ":"). The default is reasonable (see under 'Usage'). The order of the parameters is: b, c, d, e (see under 'Details').

method

character string indicating the self starter function to use.

ssfct

a self starter function to be used.

fctName

optional character string used internally by convenience functions.

fctText

optional character string used internally by convenience functions.

Author

Christian Ritz

Details

As pointed out in Seber and Wild (1989), there exist two different parameterisations of the Weibull model. They do not yield the same fitted curve for a given dataset (see under Examples).

The four-parameter Weibull type 1 model ('weibull1') is $$ f(x) = c + (d-c) \exp(-\exp(b(\log(x)-\log(e)))).$$

Thw four-parameter Weibull type 2 model ('weibull2') is $$ f(x) = c + (d-c) (1 - \exp(-\exp(b(\log(x)-\log(e))))).$$

Both four-parameter model functions are asymmetric with inflection point at the dose equal \(e\).

References

Seber, G. A. F. and Wild, C. J (1989) Nonlinear Regression, New York: Wiley and Sons (pp. 338--339).

See Also

For convenience several special cases of the function 'weibull1' are available: W1.2, W1.3 and W1.4.

Special cases of 'weibull2' are: W2.2, W2.3 and W2.4.

These convenience functions should be used rather than the underlying functions weibull1 and weibull2.

Examples

Run this code

## Fitting two different Weibull models
ryegrass.m1 <- drm(ryegrass, fct = W1.4())
plot(ryegrass.m1, conLevel=0.5)

ryegrass.m2 <- drm(ryegrass, fct = W2.4())
plot(ryegrass.m2, conLevel=0.5, add = TRUE, type = "none", col = 2)
# you could also look at the ED values to see the difference

## A four-parameter Weibull model with b fixed at 1
ryegrass.m3 <- drm(ryegrass, fct = W1.4(fixed = c(1, NA, NA, NA)))
summary(ryegrass.m3)

## A four-parameter Weibull model with the constraint b>3
ryegrass.m4 <- drm(ryegrass, fct = W1.4(), lowerl = c(3, -Inf, -Inf, -Inf), 
control = drmc(constr=TRUE))
summary(ryegrass.m4)

Run the code above in your browser using DataLab