k function

The K-distribution.

The K-distribution.

Density, distribution function, quantile function and random generation for the K-distribution with parameters shape and scale.

dk(x, shape = 1, scale = 1, intensity = FALSE, log = FALSE) pk(q, shape = 1, scale = 1, intensity = FALSE, log.p = FALSE, lower.tail = TRUE) qk(p, shape = 1, scale = 1, intensity = FALSE, log.p = FALSE) rk(n, shape = 1, scale = 1, intensity = FALSE)

Arguments

  • x, q: vector of quantiles
  • shape, scale: shape and scale parameters both defaulting to 1.
  • intensity: logical; if TRUE, quantiles are intensities not amplitudes.
  • log, log.p: logical; if TRUE, probabilities p are given as log(p).
  • lower.tail: logical; if TRUE (default), probabilities are P[X = x], otherwise, P[X > x].
  • p: vector of probabilities
  • n: number of observations

Returns

The function dk gives the density, pk gives the distribution function, qk gives the quantile function, and rk

generates random variates.

Details

The K-distribution with shape parameter ν\nu and scale parameter bb has amplitude density given by c("f(x) = [4 x^\\nu / \\Gamma(\\nu)]\n", "[(nu/b)(1+nu/2)]\n [(\\nu / b)^(1+\\nu/2)]\n", "K(2xsqrt(nu/b),nu1) K(2 x \\sqrt(\\nu/b),\\nu-1)"). Where KK is a modified Bessel function of the second kind. For ν>Inf\nu -> Inf, the K-distrubution tends to a Rayleigh distribution, and for ν=1\nu = 1 it is the Exponential distribution. The function base::besselK is used in the calculation, and care should be taken with large input arguements to this function, e.g. bb very small or x,νx, \nu very large. The cumulative distribution function for the amplitude, xx is given by F(x)=12xν(ν/b)(ν/2)K(2x(ν/b),ν)F(x) = 1 - 2 x^\nu (\nu/b)^(\nu/2) K(2 x \sqrt(\nu/b), \nu). The K-Distribution is a compound distribution, with Rayleigh distributed amplitudes (exponential intensities) modulated by another underlying process whose amplitude is chi-distributed and whose intensity is Gamma distributed. An Exponential distributed number multiplied by a Gamma distributed random number is used to generate the random variates. The mmth moments are given by c("mum=(b/nu)(m/2)Gamma(0.5m+1)\n\\mu_m = (b/\\nu)^(m/2) \\Gamma(0.5m + 1)\n", "Gamma(0.5m+nu)/Gamma(nu) \\Gamma(0.5m + \\nu) / \\Gamma(\\nu)"), so that the root mean square value of x is the scale factor, <x2>=b<x^2> = b.

Examples

#===== r <- rk(10000, shape = 3, scale = 5, intensity = FALSE) fn <- stats::ecdf(r) x <- seq(0, 10, length = 100) plot(x, fn(x)) lines(x, pk(x, shape = 3, scale = 5, intensity = FALSE)) #====== r <- rk(10000, shape = 3, scale = 5, intensity = FALSE) d <- density(r) x <- seq(0, 10, length = 100) plot(d, xlim=c(0,10)) lines(x, dk(x, shape = 3, scale = 5, intensity = FALSE))

References

E Jakeman and R J A Tough, "Non-Gaussian models for the statistics of scattered waves", Adv. Phys., 1988, vol. 37, No. 5, pp471-529

See Also

Distributions

for other standard distributions, including dweibull for the Weibull distribution and dexp for the exponential distribution.

  • Maintainer: Tim Lamont-Smith
  • License: GPL-3
  • Last published: 2018-05-16

Useful links