Logo ROOT   6.07/09
Reference Guide
List of all members | Public Types | Public Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
TMatrixDSymEigen Class Reference

TMatrixDSymEigen.

Eigenvalues and eigenvectors of a real symmetric matrix.

If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is diagonal and the eigenvector matrix V is orthogonal. That is, the diagonal values of D are the eigenvalues, and V*V' = I, where I is the identity matrix. The columns of V represent the eigenvectors in the sense that A*V = V*D.

Definition at line 33 of file TMatrixDSymEigen.h.

Public Types

enum  { kWorkMax = 100 }
 

Public Member Functions

 TMatrixDSymEigen ()
 
 TMatrixDSymEigen (const TMatrixDSym &a)
 Constructor for eigen-problem of symmetric matrix A . More...
 
 TMatrixDSymEigen (const TMatrixDSymEigen &another)
 Copy constructor. More...
 
virtual ~TMatrixDSymEigen ()
 
const TVectorDGetEigenValues () const
 
const TMatrixDGetEigenVectors () const
 
TMatrixDSymEigenoperator= (const TMatrixDSymEigen &source)
 Assignment operator. More...
 

Static Protected Member Functions

static void MakeEigenVectors (TMatrixD &v, TVectorD &d, TVectorD &e)
 Symmetric tridiagonal QL algorithm. More...
 
static void MakeTridiagonal (TMatrixD &v, TVectorD &d, TVectorD &e)
 This is derived from the Algol procedures tred2 by Bowdler, Martin, Reinsch, and Wilkinson, Handbook for Auto. More...
 

Protected Attributes

TVectorD fEigenValues
 
TMatrixD fEigenVectors
 

#include <TMatrixDSymEigen.h>

Member Enumeration Documentation

anonymous enum
Enumerator
kWorkMax 

Definition at line 45 of file TMatrixDSymEigen.h.

Constructor & Destructor Documentation

TMatrixDSymEigen::TMatrixDSymEigen ( )
inline

Definition at line 47 of file TMatrixDSymEigen.h.

TMatrixDSymEigen::TMatrixDSymEigen ( const TMatrixDSym a)

Constructor for eigen-problem of symmetric matrix A .

Definition at line 34 of file TMatrixDSymEigen.cxx.

TMatrixDSymEigen::TMatrixDSymEigen ( const TMatrixDSymEigen another)

Copy constructor.

Definition at line 61 of file TMatrixDSymEigen.cxx.

virtual TMatrixDSymEigen::~TMatrixDSymEigen ( )
inlinevirtual

Definition at line 50 of file TMatrixDSymEigen.h.

Member Function Documentation

const TVectorD& TMatrixDSymEigen::GetEigenValues ( ) const
inline

Definition at line 60 of file TMatrixDSymEigen.h.

const TMatrixD& TMatrixDSymEigen::GetEigenVectors ( ) const
inline

Definition at line 59 of file TMatrixDSymEigen.h.

void TMatrixDSymEigen::MakeEigenVectors ( TMatrixD v,
TVectorD d,
TVectorD e 
)
staticprotected

Symmetric tridiagonal QL algorithm.

This is derived from the Algol procedures tql2, by Bowdler, Martin, Reinsch, and Wilkinson, Handbook for Auto. Comp., Vol.ii-Linear Algebra, and the corresponding Fortran subroutine in EISPACK.

Definition at line 201 of file TMatrixDSymEigen.cxx.

void TMatrixDSymEigen::MakeTridiagonal ( TMatrixD v,
TVectorD d,
TVectorD e 
)
staticprotected

This is derived from the Algol procedures tred2 by Bowdler, Martin, Reinsch, and Wilkinson, Handbook for Auto.

Comp., Vol.ii-Linear Algebra, and the corresponding Fortran subroutine in EISPACK.

Definition at line 71 of file TMatrixDSymEigen.cxx.

TMatrixDSymEigen & TMatrixDSymEigen::operator= ( const TMatrixDSymEigen source)

Assignment operator.

Definition at line 328 of file TMatrixDSymEigen.cxx.

Member Data Documentation

TVectorD TMatrixDSymEigen::fEigenValues
protected

Definition at line 41 of file TMatrixDSymEigen.h.

TMatrixD TMatrixDSymEigen::fEigenVectors
protected

Definition at line 40 of file TMatrixDSymEigen.h.


The documentation for this class was generated from the following files: