| cf_vonMises | R Documentation |
cf_vonMises(t, mu, kappa, coef, niid) evaluates the characteristic function cf(t)
of Y = sum_{i=1}^N coef_i * X_i where X_i ~ vonMises(\mu_i,\kappa_i)
inedependent RVs, with the locarion parameters \mu_i in Real and the rate
parameters \kappa_i > 0, for i = 1,...,N.
The characteristic function of the vonMises(\mu,\kappa) distribution is
cf(t) = cf_vonMises(t,\mu,\kappa) = besseli(t,\kappa)/besseli(0,\kappa) * exp(1i*t*\mu).
cf_vonMises(t, mu = 0, kappa = 1, coef, niid)
t |
numerical values (number, vector...). |
mu |
in |
kappa |
|
coef |
vector of the coefficients of the linear combination
of the IGamma random variables. If coef is scalar, it is assumed
that all coefficients are equal. If empty, default value is |
niid |
scalar convolution coeficient |
The VON MISES distribution is circular distribution on the interval
of length 2*\pi, here we consider (-\pi,\pi), equivalent of the normal
distribution with the real parameter \mu and rate parameter \kappa > 0
(\mu and 1/\kappa are analogous to \mu and \sigma^2, the mean and variance
in the normal distribution), on a whole circle, i.e. the interval of angles (-\pi,\pi).
Characteristic function cf(t) of a linear combination
of independent VON MISES random variables.
Ver.: 16-Sep-2018 18:41:05 (consistent with Matlab CharFunTool v1.3.0, 24-Jun-2017 18:25:56).
For more details see WIKIPEDIA: https://en.wikipedia.org/wiki/Von_Mises_distribution.
Other Continuous Probability Distribution:
cfS_Arcsine(),
cfS_Beta(),
cfS_Gaussian(),
cfS_Laplace(),
cfS_Rectangular(),
cfS_Student(),
cfS_TSP(),
cfS_Trapezoidal(),
cfS_Triangular(),
cfS_Wigner(),
cfX_ChiSquare(),
cfX_Exponential(),
cfX_FisherSnedecor(),
cfX_Gamma(),
cfX_InverseGamma(),
cfX_LogNormal(),
cf_ArcsineSymmetric(),
cf_BetaNC(),
cf_BetaSymmetric(),
cf_Beta(),
cf_ChiSquare(),
cf_Exponential(),
cf_FisherSnedecorNC(),
cf_FisherSnedecor(),
cf_Gamma(),
cf_InverseGamma(),
cf_Laplace(),
cf_LogRV_BetaNC(),
cf_LogRV_Beta(),
cf_LogRV_ChiSquareNC(),
cf_LogRV_ChiSquare(),
cf_LogRV_FisherSnedecorNC(),
cf_LogRV_FisherSnedecor(),
cf_LogRV_MeansRatioW(),
cf_LogRV_MeansRatio(),
cf_LogRV_WilksLambdaNC(),
cf_LogRV_WilksLambda(),
cf_Normal(),
cf_RectangularSymmetric(),
cf_Student(),
cf_TSPSymmetric(),
cf_TrapezoidalSymmetric(),
cf_TriangularSymmetric()
## EXAMPLE 1:
# CF of the weighted linear combinantion of the von Mises RVs
mu <- c(0, 0,-pi / 2, pi / 2, 0)
kappa <- c(1, 2, 3, 4, 5)
coef <- c(1, 2, 3, 4, 5) / 15
t <- seq(from = -20,
to = 20,
length.out = 201)
plotReIm(function(t)
cf_vonMises(t,
mu,
kappa,
coef),
t,
title = 'CF of the weighted linear combinantion of the von Mises RVs')
## EXAMPLE2
# CDR/PDF of the weighted linear combinantion of the von Mises RVs
mu <- c(0, 0,-pi / 2, pi / 2, 0)
kappa <- c(1, 2, 3, 4, 5)
coef <- c(1, 2, 3, 4, 5) / 15
t <- seq(from = -20,
to = 20,
length.out = 201)
cf <- function(t) {
cf_vonMises(t, mu, kappa, coef)
}
x <- seq(from = -pi,
to = pi,
length.out = 201)
prob <- c(0.9, 0.95, 0.99)
options <- list()
options$xMin <- -pi
options$xMax <- pi
result <- cf2DistGP(cf, x, prob, options)
result
angle <- result$x
radius <- result$pdf
plotPolar(angle, radius)
# figure; polarplot(angle,radius); ???
# x = gca; ax.ThetaAxisUnits = 'radians'; ???
## EXAMPLE3
# CF of the mixture of the von Mises distribution on (-pi,pi)
mu1 <- 0
kappa1 <- 5
mu2 <- 1
kappa2 <- 15
cf <-
function(t) {
0.25 * cf_vonMises(t, mu1, kappa1) + 0.75 * cf_vonMises(t, mu2, kappa2)
}
options <- list()
options$xMin <- -pi
options$xMax <- pi
result <- cf2DistGP(cf = cf, options = options)
angle <- result$x
radius <- result$pdf
plotPolar(angle, radius)
# figure; polarplot(angle,radius);
# ax = gca; ax.ThetaAxisUnits = 'radians';
## EXAMPLE4
# PDF/CDF of the mixture of the von Mises distribution on (0,2*pi)
mu1 <- 0
kappa1 <- 5
mu2 <- 1
kappa2 <- 15
mu3 <- pi
kappa3 <- 10
cf <-
function(t) {
0.25 * cf_vonMises(t, mu1, kappa1) + 0.25 * cf_vonMises(t, mu2, kappa2) + 0.5 *
cf_vonMises(t, mu3, kappa3)
}
options <- list()
options$isCircular <- TRUE
options$correctedCDF <- TRUE
options$xMin <- 0
options$xMax <- 2 * pi
x <- seq(from = 0,
to = 2 * pi,
length.out = 100)
result <- cf2DistGP(cf = cf, x = x, options = options)
angle <- result$x
radius <- result$pdf
plotPolar(angle, radius)
#figure; polarplot(angle,radius);
#ax = gca; ax.ThetaAxisUnits = 'radians';
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.