Weibull-class: Class "Weibull" In distr: Object Oriented Implementation of Distributions

Description

The Weibull distribution with `shape` parameter a, by default =1, and `scale` parameter b has density given by, by default =1,

d(x) = (a/b) (x/b)^(a-1) exp(- (x/b)^a)

for x > 0.

C.f. `rweibull`

Objects from the Class

Objects can be created by calls of the form `Weibull(shape, scale)`. This object is a Weibull distribution.

Slots

`img`

Object of class `"Reals"`: The space of the image of this distribution has got dimension 1 and the name "Real Space".

`param`

Object of class `"WeibullParameter"`: the parameter of this distribution (shape and scale), declared at its instantiation

`r`

Object of class `"function"`: generates random numbers (calls function `rweibull`)

`d`

Object of class `"function"`: density function (calls function `dweibull`)

`p`

Object of class `"function"`: cumulative function (calls function `pweibull`)

`q`

Object of class `"function"`: inverse of the cumulative function (calls function `qweibull`)

`.withArith`

logical: used internally to issue warnings as to interpretation of arithmetics

`.withSim`

logical: used internally to issue warnings as to accuracy

`.logExact`

logical: used internally to flag the case where there are explicit formulae for the log version of density, cdf, and quantile function

`.lowerExact`

logical: used internally to flag the case where there are explicit formulae for the lower tail version of cdf and quantile function

`Symmetry`

object of class `"DistributionSymmetry"`; used internally to avoid unnecessary calculations.

Extends

Class `"AbscontDistribution"`, directly.
Class `"UnivariateDistribution"`, by class `"AbscontDistribution"`.
Class `"Distribution"`, by class `"AbscontDistribution"`.

Methods

initialize

`signature(.Object = "Weibull")`: initialize method

scale

`signature(object = "Weibull")`: returns the slot `scale` of the parameter of the distribution

scale<-

`signature(object = "Weibull")`: modifies the slot `scale` of the parameter of the distribution

shape

`signature(object = "Weibull")`: returns the slot `shape` of the parameter of the distribution

shape<-

`signature(object = "Weibull")`: modifies the slot `shape` of the parameter of the distribution

*

`signature(e1 = "Weibull", e2 = "numeric")`: For the Weibull distribution we use its closedness under positive scaling transformations.

Note

The density is d(x)=0 for x < 0.
The cumulative is p(x) = 1 - exp(- (x/b)^a),
the mean is E(X) = b Gamma(1 + 1/a),
and the Var(X) = b^2 * (gamma(1 + 2/a) - (gamma(1 + 1/a))^2).

Author(s)

Thomas Stabla [email protected],
Florian Camphausen [email protected],
Peter Ruckdeschel [email protected],
Matthias Kohl [email protected]

`WeibullParameter-class` `AbscontDistribution-class` `Reals-class` `rweibull`
 ```1 2 3 4 5 6 7 8``` ```W <- Weibull(shape=1,scale=1) # W is a Weibull distribution with shape=1 and scale=1. r(W)(1) # one random number generated from this distribution, e.g. 0.5204105 d(W)(1) # Density of this distribution is 0.3678794 for x=1. p(W)(1) # Probability that x<1 is 0.6321206. q(W)(.1) # Probability that x<0.1053605 is 0.1. ## in RStudio or Jupyter IRKernel, use q.l(.)(.) instead of q(.)(.) shape(W) # shape of this distribution is 1. shape(W) <- 2 # shape of this distribution is now 2. ```