Learn R Programming

lmomco (version 0.88)

cdfwei: Cumulative Distribution Function of the Weibull Distribution

Description

This function computes the cumulative probability or nonexceedance probability of the Weibull distribution given parameters ($\zeta$, $\beta$, and $\delta$) of the distribution computed by parwei. The cumulative distribution function of the distribution is

$$F(x) = 1 - e^{-{\frac{x+\zeta}{\beta}}^\delta} \mbox{,}$$

where $F(x)$ is the nonexceedance probability for quantile $x$, $\zeta$ is a location parameter, $\beta$ is a scale parameter, and $\delta$ is a shape parameter.

The Weibull distribution is a reverse Generalized Extreme Value distribution. As result, the Generalized Extreme Value algorithms are used for implementation of the Weibull in this package. The relation between the Generalized Extreme Value parameters ($\xi$, $\alpha$, and $\kappa$) is

$$\kappa = 1/\delta \mbox{,}$$

$$\alpha = \beta/\delta \mbox{, and}$$

$$\xi = \zeta - \beta \mbox{.}$$

These relations are taken from Hosking and Wallis (1997).

In R the cumulative distribution function of the Weibull distribution is pweibull. Given a Weibull parameter object para, the R syntax is pweibull(x+para$para[1], para$para[3], scale=para$para[2]). For the current implementation for this package, the reversed Generalized Extreme Value distribution is used 1-cdfgev(-x,para).

Usage

cdfwei(x, para)

Arguments

x
A real value.
para
The parameters from parwei or similar.

Value

  • Nonexceedance probability ($F$) for $x$.

References

Hosking, J.R.M. and Wallis, J.R., 1997, Regional frequency analysis---An approach based on L-moments: Cambridge University Press.

See Also

quawei, parwei

Examples

Run this code
# Evaluate Weibull deployed here and within R (pweibull)
  lmr <- lmom.ub(c(123,34,4,654,37,78))
  WEI <- parwei(lmr)
  F1  <- cdfwei(50,WEI)
  F2  <- pweibull(50+WEI$para[1],shape=WEI$para[3],scale=WEI$para[2])
  if(F1 == F2) EQUAL <- TRUE

  # The Weibull is a reversed generalized extreme value
  Q <- sort(rlmomco(34,WEI)) # generate Weibull sample
  lm1 <- lmoms(Q)    # regular L-moments
  lm2 <- lmoms(-Q)   # L-moment of negated (reversed) data
  WEI <- parwei(lm1) # parameters of Weibull
  GEV <- pargev(lm2) # parameters of GEV
  F <- nonexceeds()  # Get a vector of nonexceedance probs
  plot(pp(Q),Q) 
  lines(cdfwei(Q,WEI),Q,lwd=5,col=8)
  lines(1-cdfgev(-Q,GEV),Q,col=2) # line over laps previous

Run the code above in your browser using DataLab