This function estimates the parameters of the Asymmetric Triangular 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 lmomtri
.
The estimtion by the partri
function is built around simultaneous numerical optimization of an objective function defined as
$$\epsilon = \biggl(\frac{\lambda_1 - \hat\lambda_1}{\hat\lambda_1}\biggr)^2 + \biggl(\frac{\lambda_2 - \hat\lambda_2}{\hat\lambda_2}\biggr)^2 + \biggl(\frac{\tau_3 - \hat\tau_3}{1}\biggr)^2$$
for estimation of the three parameters (\(\nu\), minimum; \(\omega\), mode; and \(\psi\), maximum) from the sample L-moments (\(\hat\lambda_1\), \(\hat\lambda_2\), \(\hat\tau_3\)). The divisions shown in the objective function are used for scale removal to help make each L-moment order somewhat similar in its relative contribution to the solution. The coefficient of L-variation is not used because the distribution implementation by the lmomco package supports entire real number line and the loss of definition of \(\tau_2\) at \(x = 0\), in particular, causes untidiness in coding.
The function is designed to support both left- or right-hand right triangular shapes because of (1) paracheck
argument availability in lmomtri
, (2) the sorting of the numerical estimates if the mode is no compatable with either of the limits, and (3) the snapping of \(\nu = \omega \equiv (\nu^\star + \omega^\star)/2\) when \(\hat\tau_3 > 0.142857\) or \(\psi = \omega \equiv (\psi^\star + \omega^\star)/2\) when \(\hat\tau_3 < 0.142857\) where the \(\star\) versions are the optimized values if the \(\tau_3\) is very near to its numerical bounds.
partri(lmom, checklmom=TRUE, ...)
An R
list
is returned.
The type of distribution: tri
.
The parameters of the distribution.
The value of the objective function, which is the error of the optimization.
The source of the parameters: “partri”.
An L-moment object created by lmoms
or vec2lmom
.
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.
W.H. Asquith
lmomtri
,
cdftri
, pdftri
, quatri
lmr <- lmomtri(vec2par(c(10,90,100), type="tri"))
partri(lmr)
partri(lmomtri(vec2par(c(-11, 67,67), type="tri")))$para
partri(lmomtri(vec2par(c(-11,-11,67), type="tri")))$para
Run the code above in your browser using DataLab