GEV {nsRFA} | R Documentation

## Three parameter generalized extreme value distribution and L-moments

### Description

`GEV` provides the link between L-moments of a sample and the three parameter generalized extreme value distribution.

### Usage

    f.GEV (x, xi, alfa, k)
    F.GEV (x, xi, alfa, k)
    invF.GEV (F, xi, alfa, k)
    Lmom.GEV (xi, alfa, k)
    par.GEV (lambda1, lambda2, tau3)
    rand.GEV (numerosita, xi, alfa, k)

### Arguments

`x` | vector of quantiles
`xi` | vector of GEV location parameters
`alfa` | vector of GEV scale parameters
`k` | vector of GEV shape parameters
`F` | vector of probabilities
`lambda1` | vector of sample means
`lambda2` | vector of L-variances
`tau3` | vector of L-CA (or L-skewness)
`numerosita` | numeric value indicating the length of the vector to be generated

### Details

See http://en.wikipedia.org/wiki/Generalized_extreme_value_distribution for an introduction to the GEV distribution.

Definition

Parameters (3): xi (location), α (scale), k (shape).

Range of x: -infty < x <= xi + α / k if k>0; -infty < x < infty if k=0; xi + α / k <= x < infty if k<0.

Probability density function:

f(x) = α^{-1} e^{-(1-k)y - e^{-y}}

where y = -k^{-1}log{1 - k(x - xi)/α} if k ne 0, y = (x-xi)/α if k=0.

Cumulative distribution function:

F(x) = e^{-e^{-y}}

Quantile function: x(F) = xi + α[1-(-log F)^k]/k if k ne 0, x(F) = xi - α log(-log F) if k=0.

k=0 is the Gumbel distribution; k=1 is the reverse exponential distribution.

L-moments

L-moments are defined for k>-1.

λ_1 = xi + α[1 - Γ (1+k)]/k

λ_2 = α (1-2^{-k}) Γ (1+k)]/k

tau_3 = 2(1-3^{-k})/(1-2^{-k})-3

tau_4 = [5(1-4^{-k})-10(1-3^{-k})+6(1-2^{-k})]/(1-2^{-k})

Here Γ denote the gamma function

Γ (x) = int_0^{infty} t^{x-1} e^{-t} dt

Parameters

To estimate k, no explicit solution is possible, but the following approximation has accurancy better than 9 times 10^{-4} for -0.5 <= tau_3 <= 0.5:

k approx 7.8590 c + 2.9554 c^2

where

c = frac{2}{3+tau_3} - frac{log 2}{log 3}

The other parameters are then given by

α = frac{λ_2 k}{(1-2^{-k})Γ(1+k)}

xi = λ_1 - α[1 - Γ(1+k)]/k

`Lmom.GEV` and `par.GEV` accept input as vectors of equal length. In `f.GEV`, `F.GEV`, `invF.GEV` and `rand.GEV` parameters (`xi`, `alfa`, `k`) must be atomic.

### Value

`f.GEV` gives the density f, `F.GEV` gives the distribution function F, `invF.GEV` gives the quantile function x, `Lmom.GEV` gives the L-moments (λ_1, λ_2, tau_3, tau_4), `par.GEV` gives the parameters (`xi`, `alfa`, `k`), and `rand.GEV` generates random deviates.

### Note

For information on the package and the Author, and for all the references, see `nsRFA`.

### See Also

`rnorm`, `runif`, `EXP`, `GENLOGIS`, `GENPAR`, `GUMBEL`, `KAPPA`, `LOGNORM`, `P3`; `DISTPLOTS`, `GOFmontecarlo`, `Lmoments`.

### Examples

    data(hydroSIMN)
    annualflows
    summary(annualflows)
    x <- annualflows["dato"][,]
    fac <- factor(annualflows["cod"][,])
    split(x,fac)

    camp <- split(x,fac)$"45"
    ll <- Lmoments(camp)
    parameters <- par.GEV(ll[1],ll[2],ll[4])
    f.GEV(1800,parameters$xi,parameters$alfa,parameters$k)
    F.GEV(1800,parameters$xi,parameters$alfa,parameters$k)
    invF.GEV(0.7518357,parameters$xi,parameters$alfa,parameters$k)
    Lmom.GEV(parameters$xi,parameters$alfa,parameters$k)
    rand.GEV(100,parameters$xi,parameters$alfa,parameters$k)

    Rll <- regionalLmoments(x,fac); Rll
    parameters <- par.GEV(Rll[1],Rll[2],Rll[4])
    Lmom.GEV(parameters$xi,parameters$alfa,parameters$k)

[Package nsRFA version 0.6-9 Index]