Learn R Programming

lmomco (version 1.7.3)

theoLmoms.max.ostat: Compute the Theoretical L-moments of a Distribution Distribution based on System of Maximum Order Statistic Expectations

Description

This function computes

Usage

theoLmoms.max.ostat(para=NULL, cdf=NULL, pdf=NULL, nmom=4,
                    switch2minostat=FALSE, ...)

Arguments

para
A distribution parameter list from a function such as vec2par or lmom2par.
cdf
CDF of the distribution for the parameters.
pdf
PDF of the distribution for the parameters.
nmom
The number of L-moments to compute.
switch2minostat
A logical in which a switch to the expectations of minimum order statistics will be used and expect.min.ostat will be used with tiny change in overall numerics. The function
...
Optional, but likely, arguments to pass to expect.max.ostat. Such arguments will likely tailor the integration limits that can be specific for the distribution in question. Further these arguments might be needed for the cumulative distributi

Value

  • An R list is returned.
  • lambdasVector of the L-moments. First element is $\lambda_1$, second element is $\lambda_2$, and so on.
  • ratiosVector of the L-moment ratios. Second element is $\tau$, third element is $\tau_3$ and so on.
  • trimLevel of symmetrical trimming used in the computation, which will equal NULL until trimming support is made.
  • leftrimLevel of left-tail trimming used in the computation, which will equal NULL until trimming support is made.
  • rightrimLevel of right-tail trimming used in the computation, which will equal NULL until trimming support is made.
  • sourceAn attribute identifying the computational source of the L-moments: theoLmoms.max.ostat.

See Also

theoLmoms, expect.max.ostat

Examples

Run this code
para <- vec2par(c(40,20), type='nor')
theoLmoms.max.ostat(para=para, cdf=cdfnor, pdf=pdfnor)

# The Rice distribution is complex and tailoring of the integration
# limits is needed to effectively trapped errors, the limits for the
# Normal distribution above are infinite so no granular control is needed.
para <- vec2par(c(30,10), type="rice")
theoLmoms.max.ostat(para=para, cdf=cdfrice, pdf=pdfrice,
                    lower=0, upper=.Machine$double.max)

para <- vec2par(c(0.6, 1.5), type="emu")
theoLmoms.min.ostat(para, cdf=cdfemu, pdf=pdfemu,
                    lower=0, upper=.Machine$double.max)
theoLmoms.min.ostat(para, cdf=cdfemu, pdf=pdfemu, yacoubsintegral = FALSE,
                    lower=0, upper=.Machine$double.max)


para <- vec2par(c(0.6, 1.5), type="kmu")
theoLmoms.min.ostat(para, cdf=cdfkmu, pdf=pdfkmu,
                    lower=0, upper=.Machine$double.max)
theoLmoms.min.ostat(para, cdf=cdfkmu, pdf=pdfkmu, marcumQ = FALSE,
                    lower=0, upper=.Machine$double.max)


# The Normal distribution is used on the fly for the Rice for
# high signal to noise ratios (SNR=nu/alpha > some threshold). This
# application here will error out.
nu <- 30; alpha <- 0.5
para <- vec2par(c(nu,alpha), type="rice")
theoLmoms.max.ostat(para=para, cdf=cdfrice, pdf=pdfrice,
                    lower=0, upper=.Machine$double.max)

Run the code above in your browser using DataLab