Learn R Programming

lmomco (version 2.4.14)

partexp: Estimate the Parameters of the Truncated Exponential Distribution

Description

This function estimates the parameters of the Truncated Exponential distribution given the L-moments of the data in an L-moment object such as that returned by lmoms. The parameter \(\psi\) is the right truncation of the distribution, and \(\alpha\) is a scale parameter, letting \(\beta = 1/\alpha\) to match nomenclature of Vogel and others (2008), and recalling the L-moments in terms of the parameters and letting \(\eta = \exp(-\beta\psi)\) are $$\lambda_1 = \frac{1 - \eta + \eta\log(\eta)}{\beta(1-\eta)}\mbox{,}$$ $$\lambda_2 = \frac{1 + 2\eta\log(\eta) - \eta^2}{2\beta(1-\eta)^2}\mbox{, and}$$ $$\tau_2 = \frac{\lambda_2}{\lambda_1} = \frac{1 + 2\eta\log(\eta) - \eta^2}{2(1-\eta)[1-\eta+\eta\log(\eta)]}\mbox{,}$$ and \(\tau_2\) is a monotonic function of \(\eta\) is decreasing from \(\tau_2 = 1/2\) at \(\eta = 0\) to \(\tau_2 = 1/3\) at \(\eta = 1\) the parameters are readily solved given \(\tau_2 = [1/3, 1/2]\), the R function uniroot can be used to solve for \(\eta\) with a starting interval of \((0, 1)\), then the parameters in terms of the parameters are $$\alpha = \frac{1 - \eta + \eta\log(\eta)}{(1 - \eta)\lambda_1}\mbox{, and}$$ $$\psi = -\log(\eta)/\alpha\mbox{.}$$

If the \(\eta\) is rooted as equaling zero, then it is assumed that \(\hat\tau_2 \equiv \tau_2\) and the exponential distribution triggered, or if the \(\eta\) is rooted as equaling unity, then it is assumed that \(\hat\tau_2 \equiv \tau_2\) and the uniform distribution triggered (see below).

The distribution is restricted to a narrow range of L-CV (\(\tau_2 = \lambda_2/\lambda_1\)). If \(\tau_2 = 1/3\), the process represented is a stationary Poisson for which the probability density function is simply the uniform distribution and \(f(x) = 1/\psi\). If \(\tau_2 = 1/2\), then the distribution is represented as the usual exponential distribution with a location parameter of zero and a scale parameter \(1/\beta\). Both of these limiting conditions are supported.

If the distribution shows to be uniform (\(\tau_2 = 1/3\)), then the third element in the returned parameter vector is used as the \(\psi\) parameter for the uniform distribution, and the first and second elements are NA of the returned parameter vector.

If the distribution shows to be exponential (\(\tau_2 = 1/2\)), then the second element in the returned parameter vector is the inverse of the rate parameter for the exponential distribution, and the first element is NA and the third element is 0 (a numeric FALSE) of the returned parameter vector.

Usage

partexp(lmom, checklmom=TRUE, ...)

Value

An R

list is returned.

type

The type of distribution: texp.

para

The parameters of the distribution.

ifail

A logical value expressed in numeric form indicating the failure or success state of the parameter estimation. A value of two indicates that the \(\tau_2 < 1/3\) whereas a value of three indicates that the \(\tau_2 > 1/2\); for each of these inequalities a fuzzy tolerance of one part in one million is used. Successful parameter estimation, which includes the uniform and exponential boundaries, is indicated by a value of zero.

ifail.message

Various messages for successful and failed parameter estimations are reported. In particular, there are two conditions for which each distributional boundary (uniform or exponential) can be obtained. First, for the uniform distribution, one message would indicate if the \(\tau_2 = 1/3\) is assumed within a one part in one million will be identified or if \(\eta\) is rooted to 1. Second, for the exponential distribution, one message would indicate if the \(\tau_2 = 1/2\) is assumed within a one part in one million will be identified or if \(\eta\) is rooted to 0.

eta

The value for \(\eta\). The value is set to either unity or zero if the \(\tau_2\) fuzzy tests as being equal to 1/3 or 1/2, respectively. The value is set to the rooted value of \(\eta\) for all other valid solutions. The value is set to NA if \(\tau_2\) tests as being outside the 1/3 and 1/2 limits.

source

The source of the parameters: “partexp”.

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.

...

Other arguments to pass.

Author

W.H. Asquith

References

Vogel, R.M., Hosking, J.R.M., Elphick, C.S., Roberts, D.L., and Reed, J.M., 2008, Goodness of fit of probability distributions for sightings as species approach extinction: Bulletin of Mathematical Biology, DOI 10.1007/s11538-008-9377-3, 19 p.

See Also

lmomtexp, cdftexp, pdftexp, quatexp

Examples

Run this code
# truncated exponential is a nonstationary poisson process
A  <- partexp(vec2lmom(c(100, 1/2),   lscale=FALSE)) # pure exponential
B  <- partexp(vec2lmom(c(100, 0.499), lscale=FALSE)) # almost exponential
BB <- partexp(vec2lmom(c(100, 0.45),  lscale=FALSE)) # truncated exponential
C  <- partexp(vec2lmom(c(100, 1/3),   lscale=FALSE)) # stationary poisson process
D  <- partexp(vec2lmom(c(100, 40))) # truncated exponential

Run the code above in your browser using DataLab