| rFisher | R Documentation |
Generates variates of the Fisher and Watson distributions on the sphere.
rFisher(n, mode, kappa, win=sphwin(type="sphere"), nsim=1, drop=TRUE, as.sp=TRUE, ndim="2") rWatson(n, mode, kappa, win=sphwin(type="sphere"), squeeze=FALSE, nsim=1, drop=TRUE, as.sp=TRUE, ndim="2") rWatson.bipolar(n, mode, kappa, win=sphwin(type="sphere"), squeeze=FALSE, nsim=1, drop=TRUE, as.sp=TRUE, ndim="2") rWatson.girdle(n, mode, kappa, win=sphwin(type="sphere"), squeeze=FALSE, nsim=1, drop=TRUE, as.sp=TRUE, ndim="2")
n |
The number of points to be simulated. An integer. |
mode |
A length 2 numeric giving the mode of the distribution |
kappa |
The concentration parameter. Must be positive for the Fisher and Watson bipolar distributions. Must be negative for the Watson girdle distribution. |
win |
The window, an object of type sphwin. |
squeeze |
Logical. For Watson distributions; if TRUE then applies a squeeze test which can speed up the simulation if |
nsim |
Number of simulated realisations to be generated. |
drop |
Logical. If |
as.sp |
Logical. If TRUE, returns an object of class as defined by
|
ndim |
A string, taking value |
rFisher generates a realisation of n points of the
Fisher distribution inside the window win. The Fisher
distribution is the analogue on the sphere of the normal distribution;
the maximum of the density occurs at mode and the minimum at
the point diametrically opposite mode (i.e. the antimode). The
density of this distribution on any small or great circle that is
orthogonal to the axis containing the mode and antimode, is uniform. The algorithm was given in Fisher et al. (1981) and in Fisher et al. (1993).
rWatson.bipolar generates a realisation of of n points of
the Watson bipolar distribution inside the window n. This
distribution is the bipolar analogue of the Fisher distribution, with
maximum density at two diametrically opposite modes (one of which is
specified as mode in the function) and minimum density at the great
circle halfway between the modes. The algorithm was given in Best and Fisher (1986) and in Fisher et al. (1993).
rWatson.girdle generates a realisation of of n points of
the Watson bipolar distribution inside the window n. This
distribution is the ‘opposite’ of a the Watson bipolar in that the
minimum density is at two diametrically opposite antimodes (one of which is
specified as mode in the function) and maximum density at the great
circle halfway between the antimodes. The algorithm was given in Best and Fisher (1986) and in Fisher et al. (1993).
rWatson simulates either a Watson bipolar distribution (using rWatson.bipolar)
or a Watson girdle distribution (using rWatson.girdle) depending on what value of kappa is provided.
The algorithsm used in these simulations are found in Section 3.6.2. of N. I. Fisher et al.
If nsim=1 and drop=FALSE then a single item as described below; otherwise a list containing nsim items.
An item is determined by the values of as.sp and ndim:
If as.sp=FALSE and ndim="2", a two column matrix giving the locations of the simulated points.
If as.sp=FALSE and ndim="3", a three column matrix giving the locations of the simulated points.
If as.sp=TRUE and ndim="2", an object of class sp2 giving the locations of the simulated points.
If as.sp=TRUE and ndim="3", an object of class sp3 giving the locations of the simulated points.
Tom Lawrence <email:tjlawrence@bigpond.com>
Best, D. J. and Fisher, N. I. (1986) ‘Goodness-of-fit and discordancy tests for samples from the Watson distribution on the sphere’, Australasian Journal of Statistics, 28, 13–31.
Fisher, N. I., Embleton, B. J. J. and Lewis, T. (1987) ‘Statistical analysis of spherical data’, 1st paperback edition. Cambridge University Press.
Fisher, N. I., Lewis, T. and Willcox, M. E. (1981) ‘Tests of discordancy for samples from Fisher’s distribution on the sphere' Journal of the Royal Statistical Society Series C, 30, 230–237.
Lawrence, T.J. (2017) Master's Thesis, University of Western Australia.
runif.sphwin
rFis <- rFisher(n=100, mode=c(0,0), kappa=50, win=sphwin()) rFis rFis2 <- rFisher(n=100, mode=c(pi/3, pi/3), kappa=0.1, win=sphwin(type="band", param=c(0, pi/3), ref=c(pi/3, pi/3))) rFis2 rWB <- rWatson.bipolar(n=100, mode=c(0,0), kappa=50, win=sphwin()) rWB rWB2 <- rWatson.bipolar(n=100, mode=c(pi/3, pi/3), kappa=0.1, win=sphwin(type="band", param=c(0, pi/3), ref=c(pi/3, pi/3))) rWB2 rWG <- rWatson.girdle(n=100, mode=c(0,0), kappa=-50, win=sphwin()) rWG rWG2 <- rWatson.girdle(n=100, mode=c(pi/3, pi/3), kappa=-0.1, win=sphwin(type="band", param=c(0, pi/3), ref=c(pi/3, pi/3))) rWG2 rWat <- rWatson(n=100, mode=c(0,0), kappa=50, win=sphwin()) rWat rWat2 <- rWatson(n=100, mode=c(pi/3, pi/3), kappa=-0.1, win=sphwin(type="band", param=c(0, pi/3), ref=c(pi/3, pi/3))) rWat2 rWatFish <- rWatson(n=100, mode=c(0,0), kappa=0, win=sphwin()) rWatFish
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.