MyraMath
Classes
jacobi.h File Reference

Jacobi methods for real symmetric eigendecomposition. More...

#include <myramath/MYRAMATH_EXPORT.h>
#include <myramath/utility/Number.h>
#include <utility>
Include dependency graph for jacobi.h:

Go to the source code of this file.

Classes

class  myra::Matrix< Number >
 Tabulates an IxJ matrix. Allows random access, has column major layout to be compatible with BLAS/LAPACK. More...
 
class  myra::CMatrixRange< Number >
 Represents a const MatrixRange. More...
 
class  myra::MatrixRange< Number >
 Represents a mutable MatrixRange. More...
 
class  myra::DiagonalMatrix< Number >
 Tabulates the values of a square NxN diagonal matrix. Allows random access, but only on the diagonal. More...
 

Functions

DiagonalMatrix< NumberS > myra::jacobi_inplace (const MatrixRange< NumberS > &A, int S=10)
 Eigendecomposes A = X*D*X', where X'*X = X*X' = I and D is diagonal. Overwrites A with X, returns D.
 
DiagonalMatrix< NumberD > myra::jacobi_inplace (const MatrixRange< NumberD > &A, int S)
 Eigendecomposes A = X*D*X', where X'*X = X*X' = I and D is diagonal. Overwrites A with X, returns D.
 
std::pair< Matrix< NumberS >, DiagonalMatrix< NumberS > > myra::jacobi (const CMatrixRange< NumberS > &A, int S=10)
 Eigendecomposes A = X*D*X', where X'*X = X*X' = I and D is diagonal. Returns X and D.
 
std::pair< Matrix< NumberD >, DiagonalMatrix< NumberD > > myra::jacobi (const CMatrixRange< NumberD > &A, int S)
 Eigendecomposes A = X*D*X', where X'*X = X*X' = I and D is diagonal. Returns X and D.
 

Detailed Description

Jacobi methods for real symmetric eigendecomposition.