pargev: Estimate the Parameters of the Generalized Extreme Value...

pargevR Documentation

Estimate the Parameters of the Generalized Extreme Value Distribution

Description

This function estimates the parameters of the Generalized Extreme Value distribution given the L-moments of the data in an L-moment object such as that returned by lmoms. The relations between distribution parameters and L-moments are seen under lmomgev.

Usage

pargev(lmom, checklmom=TRUE, useHosking=TRUE, ...)

Arguments

lmom

An L-moment object created by lmoms or vec2lmom.

checklmom

Should the lmom be checked for validity using the are.lmom.valid function. Normally this should be left as the default and it is very unlikely that the L-moments will not be viable (particularly in the \tau_4 and \tau_3 inequality). However, for some circumstances or large simulation exercises then one might want to bypass this check.

useHosking

A logical to use the old Hosking (1996) FORTRAN coefficients or use direct computation by uniroot() wrapping the \tau_3 and k relation shown under lmomgev.

...

Other arguments to pass.

Value

An R list is returned.

type

The type of distribution: gev.

para

The parameters of the distribution.

source

The source of the parameters: “pargev”.

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.

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

lmomgev, cdfgev, pdfgev, quagev

Examples

lmr <- lmoms(rnorm(20))
pargev(lmr)

## Not run: 
  set.seed(1)
  Tau3 <- runif(500000, min=-1, max=1)
  system.time(H <- sapply(Tau3, function(t) {
              pargev(vec2lmom(c(0,1,t)), useHosking=TRUE )$para[3] }))
  #   user  system elapsed
  #  8.036   0.033   8.198
  system.time(W <- sapply(Tau3, function(t) {
              pargev(vec2lmom(c(0,1,t)), useHosking=FALSE)$para[3] }))
  #   user  system elapsed
  # 19.348   0.062  19.737
  # By useHosking=FALSE is about 2.4 times slower but still fast.
  max(abs(H-W)) # 3.131861e-07 # Viability of either algorithm is proven.
## End(Not run)

lmomco documentation built on Oct. 18, 2026, 5:07 p.m.