org.ejml.ops
Class CovarianceOps

java.lang.Object
  extended by org.ejml.ops.CovarianceOps

public class CovarianceOps
extends Object

Contains operations specific to covariance matrices.

Author:
Peter Abeles

Field Summary
static double TOL
           
 
Constructor Summary
CovarianceOps()
           
 
Method Summary
static boolean invert(DenseMatrix64F cov)
          Performs a matrix inversion operations that takes advantage of the special properties of a covariance matrix.
static boolean invert(DenseMatrix64F cov, DenseMatrix64F cov_inv)
          Performs a matrix inversion operations that takes advantage of the special properties of a covariance matrix.
static int isValid(DenseMatrix64F cov)
          Performs a variety of tests to see if the provided matrix is a valid covariance matrix.
static boolean isValidFast(DenseMatrix64F cov)
          This is a fairly light weight check to see of a covariance matrix is valid.
static void randomVector(DenseMatrix64F cov, DenseMatrix64F vector, Random rand)
          Sets vector to a random value based upon a zero-mean multivariate Gaussian distribution with covariance 'cov'.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TOL

public static double TOL
Constructor Detail

CovarianceOps

public CovarianceOps()
Method Detail

isValidFast

public static boolean isValidFast(DenseMatrix64F cov)
This is a fairly light weight check to see of a covariance matrix is valid. It checks to see if the diagonal elements are all postive, which they should be if it is valid. Not all invalid covariance matrices will be caught by this method.


isValid

public static int isValid(DenseMatrix64F cov)
Performs a variety of tests to see if the provided matrix is a valid covariance matrix.

Returns:
0 = is valid 1 = failed positive diagonal, 2 = failed on symmetry, 2 = failed on positive definite

invert

public static boolean invert(DenseMatrix64F cov)
Performs a matrix inversion operations that takes advantage of the special properties of a covariance matrix.

Parameters:
cov - On input it is a covariance matrix, on output it is the inverse. Modified.
Returns:
true if it could invert the matrix false if it could not.

invert

public static boolean invert(DenseMatrix64F cov,
                             DenseMatrix64F cov_inv)
Performs a matrix inversion operations that takes advantage of the special properties of a covariance matrix.

Parameters:
cov - A covariance matrix. Not modified.
cov_inv - The inverse of cov. Modified.
Returns:
true if it could invert the matrix false if it could not.

randomVector

public static void randomVector(DenseMatrix64F cov,
                                DenseMatrix64F vector,
                                Random rand)
Sets vector to a random value based upon a zero-mean multivariate Gaussian distribution with covariance 'cov'. If repeat calls are made to this class, consider using CovarianceRandomDraw instead.

Parameters:
cov - The distirbutions covariance. Not modified.
vector - The random vector. Modified.
rand - Random number generator.


Copyright © 2012. All Rights Reserved.