urweibull function

UNU.RAN Weibull random variate generator

UNU.RAN Weibull random variate generator

UNU.RAN random variate generator for the Weibull distribution with with parameters shape and scale. It also allows sampling from the truncated distribution.

[Special Generator] -- Sampling Function: Weibull.

urweibull(n, shape, scale=1, lb=0, ub=Inf)

Arguments

  • n: size of required sample.
  • shape: (strictly positive) shape parameter.
  • scale: (strictly positive) scale parameter.
  • lb: lower bound of (truncated) distribution.
  • ub: upper bound of (truncated) distribution.

Details

The Weibull distribution with shape parameter aa and scale parameter bb has density given by

f(x)=(a/σ)(x/σ)a1exp((x/σ)a)f(x)=(a/b)(x/b)(a1)exp((x/b)a) f(x) = (a/\sigma) {(x/\sigma)}^{a-1} \exp (-{(x/\sigma)}^{a})f(x) = (a/b) (x/b)^(a-1) exp(- (x/b)^a)

for x0x \ge 0.

The generation algorithm uses fast numerical inversion. The parameters lb and ub can be used to generate variates from the Weibull distribution truncated to the interval (lb,ub).

See Also

runif and .Random.seed about random number generation, unuran for the UNU.RAN class, and rweibull for the built-in generator.

References

W. H"ormann, J. Leydold, and G. Derflinger (2004): Automatic Nonuniform Random Variate Generation. Springer-Verlag, Berlin Heidelberg

Author(s)

Josef Leydold and Wolfgang H"ormann unuran@statmath.wu.ac.at .

Note

This function is wrapper for the UNU.RAN class in . Compared to rweibull, urweibull is faster, especially for larger sample sizes. However, in opposition to rweibull vector arguments are ignored, i.e. only the first entry is used.

Examples

## Create a sample of size 1000 x <- urweibull(n=1000,shape=3)
  • Maintainer: Josef Leydold
  • License: GPL (>= 2)
  • Last published: 2025-04-07