pdfgev: Probability Density Function of the Generalized Extreme Value...

pdfgevR Documentation

Probability Density Function of the Generalized Extreme Value Distribution

Description

This function computes the probability density of the Generalized Extreme Value distribution given parameters (ξ, α, and κ) computed by pargev. The probability density function is

f(x) = α^{-1} \exp[-(1-κ)Y - \exp(-Y)] \mbox{,}

where Y is

Y = -κ^{-1} \log\!≤ft(1 - \frac{κ(x-ξ)}{α}\right)\mbox{,}

for κ \ne 0, and

Y = (x-ξ)/α\mbox{,}

for κ = 0, where f(x) is the probability density for quantile x, ξ is a location parameter, α is a scale parameter, and κ is a shape parameter. The range of x is -∞ < x ≤ ξ + α/κ if k > 0; ξ + α/κ ≤ x < ∞ if κ ≤ 0. Note that the shape parameter κ parameterization of the distribution herein follows that in tradition by the greater L-moment community and others use a sign reversal on κ. (The evd package is one example.)

Usage

pdfgev(x, para, paracheck=TRUE)

Arguments

x

A real value vector.

para

The parameters from pargev or vec2par.

paracheck

A logical switch as to whether the validity of the parameters should be checked.

Value

Probability density (f) for x.

Author(s)

W.H. Asquith

References

Hosking, J.R.M., 1990, L-moments—Analysis and estimation of distributions using linear combinations of order statistics: Journal of the Royal Statistical Society, Series B, v. 52, pp. 105–124, doi: 10.1111/j.2517-6161.1990.tb01775.x.

Hosking, J.R.M., 1996, FORTRAN routines for use with the method of L-moments: Version 3, IBM Research Report RC20525, T.J. Watson Research Center, Yorktown Heights, New York.

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

See Also

cdfgev, quagev, lmomgev, pargev

Examples

  lmr <- lmoms(c(123, 34, 4, 654, 37, 78))
  gev <- pargev(lmr)
  x <- quagev(0.5, gev)
       pdfgev(  x, gev)

## Not run: 
  # We explore using maximum likelihood for GEV estimation on its density function.
  # We check the convergence and check on parameters back estimating the mean.
  small <- .Machine$double.eps
  for(k in c(-2, -1/2, -small, 0, +small, 1/2, 2)) {
    names(k) <- "myKappa"
    gev <- vec2par(c(2, 2, k), type="gev")
    x <- rlmomco(1000, gev)
    mu1 <- mean(x); names(mu1) <- "mean"
    cv1 <-      NA; names(cv1) <- "converge"
    mle <- mle2par(x, type="gev", para.int=pargev(lmoms(x)),
             ptransf=function(t) { c(t[1], log(t[2]), t[3]) },
           pretransf=function(t) { c(t[1], exp(t[2]), t[3]) },
                      null.on.not.converge=FALSE)
    mu2 <- lmomgev(mle)$lambdas[1]; names(mu2) <- "backMean"
    cv2 <- mle$optim$convergence;   names(cv2) <- "converge"
    print(round(c(k, cv1, mu1, gev$para), digits=5))
    print(round(c(k, cv2, mu2, mle$para), digits=5))
  } # 
## End(Not run)

lmomco documentation built on Aug. 27, 2022, 1:06 a.m.