Learn R Programming

HyperbolicDist (version 0.6-5)

ghypCalcRange: Range of a Generalized Hyperbolic Distribution

Description

Given the parameter vector Theta of a generalized hyperbolic distribution, this function determines the range outside of which the density function is negligible, to a specified tolerance. The parameterization used is the \((\alpha,\beta)\) one (see dghyp). To use another parameterization, use ghypChangePars.

Usage

ghypCalcRange(Theta, tol = 10^(-5), density = TRUE, ...)

Value

A two-component vector giving the lower and upper ends of the range.

Arguments

Theta

Value of parameter vector specifying the hyperbolic distribution.

tol

Tolerance.

density

Logical. If TRUE, the bounds are for the density function. If FALSE, they should be for the probability distribution, but this has not yet been implemented.

...

Extra arguments for calls to uniroot.

Author

David Scott d.scott@auckland.ac.nz

Details

The particular generalized hyperbolic distribution being considered is specified by the value of the parameter value Theta.

If density = TRUE, the function gives a range, outside of which the density is less than the given tolerance. Useful for plotting the density. Also used in determining break points for the separate sections over which numerical integration is used to determine the distribution function. The points are found by using uniroot on the density function.

If density = FALSE, the function returns the message: "Distribution function bounds not yet implemented".

References

Barndorff-Nielsen, O. and Blæsild, P (1983). Hyperbolic distributions. In Encyclopedia of Statistical Sciences, eds., Johnson, N. L., Kotz, S. and Read, C. B., Vol. 3, pp. 700--707. New York: Wiley.

See Also

dghyp, ghypChangePars

Examples

Run this code
Theta <- c(1,5,3,1,0)
maxDens <- dghyp(ghypMode(Theta), Theta)
ghypRange <- ghypCalcRange(Theta, tol = 10^(-3)*maxDens)
ghypRange
curve(dghyp(x, Theta), ghypRange[1], ghypRange[2])
if (FALSE) ghypCalcRange(Theta, tol = 10^(-3), density = FALSE)

Run the code above in your browser using DataLab