Check visually whether matrix Fisher samples is correctly generated or not {Directional} | R Documentation |
Check visually whether matrix Fisher samples is correctly generated or not.
Description
It plots the log probability trace of matrix Fisher distribution which should close to the maximum value of the logarithm of matrix Fisher distribution, if samples are correctly generated.
Usage
visual.check(x, Fa)
Arguments
x |
The simulated data. An array with at least 2 3x3 matrices. |
Fa |
An arbitrary 3x3 matrix represents the parameter matrix of this distribution. |
Details
For a given parameter matrix Fa, maximum value of the logarithm of matrix Fisher distribution is calculated via
the form of singular value decomposition of Fa = U \Lambda V^T
which is tr(\Lambda)
. Multiply the last
column of U
by -1
and replace small eigenvalue, say, \lambda_3
by -\lambda_3
if | UV^T| = -1
.
Value
A plot which shows log probability trace of matrix Fisher distribution. The values are also returned.
Author(s)
Anamul Sajib.
R implementation and documentation: Anamul Sajib <sajibstat@du.ac.bd>.
References
Habeck M. (2009). Generation of three-dimensional random rotations in fitting and matching problems. Computational Statistics, 24(4):719–731.
Examples
Fa <- matrix( c(85, 11, 41, 78, 39, 60, 43, 64, 48), ncol = 3) / 10
x <- rmatrixfisher(1000, Fa)
a <- visual.check(x, Fa)