lognormgpdcon function

Log-Normal Bulk and GPD Tail Extreme Value Mixture Model with Single Continuity Constraint

Log-Normal Bulk and GPD Tail Extreme Value Mixture Model with Single Continuity Constraint

Density, cumulative distribution function, quantile function and random number generation for the extreme value mixture model with log-normal for bulk distribution upto the threshold and conditional GPD above threshold with continuity at threshold. The parameters are the log-normal mean lnmean and standard deviation lnsd, threshold u

GPD shape xi and tail fraction phiu.

dlognormgpdcon(x, lnmean = 0, lnsd = 1, u = qlnorm(0.9, lnmean, lnsd), xi = 0, phiu = TRUE, log = FALSE) plognormgpdcon(q, lnmean = 0, lnsd = 1, u = qlnorm(0.9, lnmean, lnsd), xi = 0, phiu = TRUE, lower.tail = TRUE) qlognormgpdcon(p, lnmean = 0, lnsd = 1, u = qlnorm(0.9, lnmean, lnsd), xi = 0, phiu = TRUE, lower.tail = TRUE) rlognormgpdcon(n = 1, lnmean = 0, lnsd = 1, u = qlnorm(0.9, lnmean, lnsd), xi = 0, phiu = TRUE)

Arguments

  • x: quantiles
  • lnmean: mean on log scale
  • lnsd: standard deviation on log scale (positive)
  • u: threshold
  • xi: shape parameter
  • phiu: probability of being above threshold [0,1][0, 1] or TRUE
  • log: logical, if TRUE then log density
  • q: quantiles
  • lower.tail: logical, if FALSE then upper tail probabilities
  • p: cumulative probabilities
  • n: sample size (positive integer)

Returns

dlognormgpdcon gives the density, plognormgpdcon gives the cumulative distribution function, qlognormgpdcon gives the quantile function and rlognormgpdcon gives a random sample.

Details

Extreme value mixture model combining log-normal distribution for the bulk below the threshold and GPD for upper tailwith continuity at threshold.

The user can pre-specify phiu

permitting a parameterised value for the tail fraction ϕu\phi_u. Alternatively, when phiu=TRUE the tail fraction is estimated as the tail fraction from the log-normal bulk model.

The cumulative distribution function with tail fraction ϕu\phi_u defined by the upper tail fraction of the log-normal bulk model (phiu=TRUE), upto the threshold 0<xu0 < x \le u, given by:

F(x)=H(x) F(x) = H(x)

and above the threshold x>ux > u:

F(x)=H(u)+[1H(u)]G(x) F(x) = H(u) + [1 - H(u)] G(x)

where H(x)H(x) and G(X)G(X) are the log-normal and conditional GPD cumulative distribution functions (i.e. plnorm(x, lnmean, lnsd) and pgpd(x, u, sigmau, xi)) respectively.

The cumulative distribution function for pre-specified ϕu\phi_u, upto the threshold 0<xu0 < x \le u, is given by:

F(x)=(1ϕu)H(x)/H(u) F(x) = (1 - \phi_u) H(x)/H(u)

and above the threshold x>ux > u:

F(x)=ϕu+[1ϕu]G(x) F(x) = \phi_u + [1 - \phi_u] G(x)

Notice that these definitions are equivalent when ϕu=1H(u)\phi_u = 1 - H(u).

The log-normal is defined on the positive reals, so the threshold must be positive.

The continuity constraint means that (1ϕu)h(u)/H(u)=ϕug(u)(1 - \phi_u) h(u)/H(u) = \phi_u g(u)

where h(x)h(x) and g(x)g(x) are the log-normal and conditional GPD density functions (i.e. dlnorm(x, lnmean, lnsd) and dgpd(x, u, sigmau, xi)) respectively. The resulting GPD scale parameter is then:

σu=ϕuH(u)/[1ϕu]h(u) \sigma_u = \phi_u H(u) / [1 - \phi_u] h(u)

. In the special case of where the tail fraction is defined by the bulk model this reduces to

σu=[1H(u)]/h(u) \sigma_u = [1 - H(u)] / h(u)

.

See gpd for details of GPD upper tail component and dlnorm for details of log-normal bulk component.

Note

All inputs are vectorised except log and lower.tail. The main inputs (x, p or q) and parameters must be either a scalar or a vector. If vectors are provided they must all be of the same length, and the function will be evaluated for each element of vector. In the case of rlognormgpdcon any input vector must be of length n.

Default values are provided for all inputs, except for the fundamentals x, q and p. The default sample size for rlognormgpdcon is 1.

Missing (NA) and Not-a-Number (NaN) values in x, p and q are passed through as is and infinite values are set to NA. None of these are not permitted for the parameters.

Error checking of the inputs (e.g. invalid probabilities) is carried out and will either stop or give warning message as appropriate.

Examples

## Not run: set.seed(1) par(mfrow = c(2, 2)) x = rlognormgpdcon(1000) xx = seq(-1, 10, 0.01) hist(x, breaks = 100, freq = FALSE, xlim = c(-1, 10)) lines(xx, dlognormgpdcon(xx)) # three tail behaviours plot(xx, plognormgpdcon(xx), type = "l") lines(xx, plognormgpdcon(xx, xi = 0.3), col = "red") lines(xx, plognormgpdcon(xx, xi = -0.3), col = "blue") legend("bottomright", paste("xi =",c(0, 0.3, -0.3)), col=c("black", "red", "blue"), lty = 1) x = rlognormgpdcon(1000, u = 2, phiu = 0.2) hist(x, breaks = 100, freq = FALSE, xlim = c(-1, 10)) lines(xx, dlognormgpdcon(xx, u = 2, phiu = 0.2)) plot(xx, dlognormgpdcon(xx, u = 2, xi=0, phiu = 0.2), type = "l") lines(xx, dlognormgpdcon(xx, u = 2, xi=-0.2, phiu = 0.2), col = "red") lines(xx, dlognormgpdcon(xx, u = 2, xi=0.2, phiu = 0.2), col = "blue") legend("topright", c("xi = 0", "xi = 0.2", "xi = -0.2"), col=c("black", "red", "blue"), lty = 1) ## End(Not run)

References

http://en.wikipedia.org/wiki/Log-normal_distribution

http://en.wikipedia.org/wiki/Generalized_Pareto_distribution

Scarrott, C.J. and MacDonald, A. (2012). A review of extreme value threshold estimation and uncertainty quantification. REVSTAT - Statistical Journal 10(1), 33-59. Available from http://www.ine.pt/revstat/pdf/rs120102.pdf

Solari, S. and Losada, M.A. (2004). A unified statistical model for hydrological variables including the selection of threshold for the peak over threshold method. Water Resources Research. 48, W10541.

See Also

gpd and dlnorm

Other lognormgpd: flognormgpdcon, flognormgpd, lognormgpd

Other lognormgpdcon: flognormgpdcon, flognormgpd, lognormgpd

Other normgpd: fgng, fhpd, fitmnormgpd, flognormgpd, fnormgpdcon, fnormgpd, gngcon, gng, hpdcon, hpd, itmnormgpd, lognormgpd, normgpdcon, normgpd

Other flognormgpdcon: flognormgpdcon

Author(s)

Yang Hu and Carl Scarrott carl.scarrott@canterbury.ac.nz