rvonmises: Simulation of random values from some circular distributions

View source: R/rvonmises.R

Simulation of random values from some circular distributionsR Documentation

Simulation of random values from some circular distributions


Simulation of random values from some circular distributions.


rvonmises(n, m, k, rads = TRUE)
rwrapcauchy(n, m, rho, rads = TRUE)
rspml(n, mu, rads = TRUE)
rcircbeta(n, m, a, b, rads = TRUE)
rcircpurka(n, m, a, rads = TRUE)
rcircexp(n, lambda, rads = TRUE)
rcipc(n, mu = NULL, omega, g, rads = TRUE)
rgcpc(n, mu = NULL, omega, g, rho, rads = TRUE)



The sample size.


The mean angle expressed in radians or degrees.


The mean vector of the SPML, CIPC and GCPC in R^2. For the CIPC and GCPC, if this argument is not given, then the omega and g must be given.


The location parameter for the CIPC and the GCPC expressed in radians or degrees.


The concentration parameter of the von Mises distribution. If k is zero the sample will be generated from the uniform distribution over (0, 2\pi).


The norm of the mean vector for the CIPC and GCPC, if omega is given instead of mu.


For the wrapped Cauchy distribution, this is the \rho parameter. For the GCPC distribution this is the eigenvalue parameter, or covariance determinant.


The \alpha parameter of the beta distribution.


The \beta parameter of the beta distribution.


The \lambda parameter of the circular (wrapped) exponential distribution.


If the mean angle is expressed in radians, this should be TRUE and FALSE otherwise. The simulated data will be expressed in radians or degrees depending on what the mean angle is expressed.


For the von Mises distribution, the mean direction is transformed to the Euclidean coordinates (i.e. unit vector) and then the rvmf function is employed. It uses a rejection smapling as suggested by Andrew Wood in 1994. We have mentioned the description of the algorithm as we found it in Dhillon and Sra in 2003. Finally, the data are transformed to radians or degrees.

For the wrapped Cauchy and wrapped exponential distributions the function generates Cauchy or exponential values x and then wrapps them around the circle x = x(mod 2 \pi). For the circular beta the function has some extra steps (see Zheng Sun's master thesis).

For the CIPC and GCPC distributions, data are generated from the bivariate Cauchy distribution, normalized to have unit norm and then transformed to angles.


A vector with the simulated data.


Michail Tsagris.

R implementation and documentation: Michail Tsagris mtsagris@uoc.gr and Giorgos Athineou <gioathineou@gmail.com>.


Wood A.T.A. (1994). Simulation of the von Mises Fisher distribution. Communications in Statistics-Simulation and Computation, 23(1): 157-164.

Dhillon I.S. & Sra S. (2003). Modeling data using directional distributions. Technical Report TR-03-06, Department of Computer Sciences, The University of Texas at Austin. http://citeseerx.ist.psu.edu/viewdoc/download?doi=

Zheng Sun (2006). Comparing measures of fit for circular distributions. Master thesis, University of Victoria. https://dspace.library.uvic.ca/bitstream/handle/1828/2698/zhengsun_master_thesis.pdf;sequence=1

Lai M. (1994). Some results in the statistical analysis of directional data. Master thesis, University of Hong Kong.

Presnell B., Morrison S.P. and Littell R.C. (1998). Projected multivariate linear models for directional data. Journal of the American Statistical Association, 93(443): 1068–1077.

Purkayastha S. (1991). A Rotationally Symmetric Directional Distribution: Obtained through Maximum Likelihood Characterization. The Indian Journal of Statistics, Series A, 53(1): 70–83

Jammalamadaka S.R. & Kozubowski T.J. (2003). A new family of circular models: The wrapped Laplace distributions. Advances and Applications in Statistics, 3(1): 77–103.

See Also

circ.summary, rvmf, racg


x <- rvonmises(100, 2, 25, rads = TRUE)
circ.summary(x, rads = TRUE)

Directional documentation built on April 3, 2023, 5:40 p.m.