g05sr generates a vector of pseudorandom numbers from a von Mises distribution with concentration parameter .
Syntax
C# |
---|
public static void g05sr( int n, double vk, G05..::..G05State g05state, double[] x, out int ifail ) |
Visual Basic |
---|
Public Shared Sub g05sr ( _ n As Integer, _ vk As Double, _ g05state As G05..::..G05State, _ x As Double(), _ <OutAttribute> ByRef ifail As Integer _ ) |
Visual C++ |
---|
public: static void g05sr( int n, double vk, G05..::..G05State^ g05state, array<double>^ x, [OutAttribute] int% ifail ) |
F# |
---|
static member g05sr : n : int * vk : float * g05state : G05..::..G05State * x : float[] * ifail : int byref -> unit |
Parameters
- n
- Type: System..::..Int32On entry: , the number of pseudorandom numbers to be generated.Constraint: .
- vk
- Type: System..::..DoubleOn entry: , the concentration parameter of the required von Mises distribution.Constraint: .
- g05state
- Type: NagLibrary..::..G05..::..G05StateAn Object of type G05.G05State.
- x
- Type: array<System..::..Double>[]()[][]An array of size [n]On exit: the pseudorandom numbers from the specified von Mises distribution.
- ifail
- Type: System..::..Int32%On exit: unless the method detects an error or a warning has been flagged (see [Error Indicators and Warnings]).
Description
The von Mises distribution is a symmetric distribution used in the analysis of circular data. The PDF (probability density function) of this distribution on the circle with mean direction and concentration parameter , can be written as:
where is reduced modulo so that and . For very small the distribution is almost the uniform distribution, whereas for all the probability is concentrated at one point.
The variates, , are generated using an envelope rejection method with a wrapped Cauchy target distribution as proposed by Best and Fisher (1979) and described by Dagpunar (1988).
One of the initialization methods (G05KFF not in this release) (for a repeatable sequence if computed sequentially) or (G05KGF not in this release) (for a non-repeatable sequence) must be called prior to the first call to g05sr.
References
Best D J and Fisher N I (1979) Efficient simulation of the von Mises distribution Appl. Statist. 28 152–157
Dagpunar J (1988) Principles of Random Variate Generation Oxford University Press
Mardia K V (1972) Statistics of Directional Data Academic Press
Error Indicators and Warnings
Errors or warnings detected by the method:
- On entry, .
On entry, , or .
On entry, state vector was not initialized or has been corrupted.
Accuracy
Not applicable.
Parallelism and Performance
None.
Further Comments
For a given number of random variates the generation time increases slightly with increasing .