Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows > Class Template Reference
[Numerics]

wrapper of the vnl_symmetric_eigensystem algorithm More...

#include <itkSymmetricEigenSystem.h>

Inheritance diagram for itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >:

Inheritance graph
[legend]
Collaboration diagram for itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef SymmetricEigenSystem Self
typedef Object Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef FixedArray< TMatrixElement,
VNumberOfRows > 
ArrayType
typedef FixedArray< ArrayType,
VNumberOfRows > 
Array2DType
typedef Array2DType EigenVectorArrayType
typedef ArrayType EigenValueArrayType
typedef Matrix< TMatrixElement,
VNumberOfRows, VNumberOfRows > 
MatrixType
typedef vnl_symmetric_eigensystem<
TMatrixElement > 
InternalEigenSystemType

Public Member Functions

virtual const char * GetClassName () const
EigenVectorArrayTypeGetEigenVectors ()
EigenValueArrayTypeGetEigenValues ()
void Update ()
virtual void SetMatrix (MatrixType *_arg)
MatrixTypeGetMatrix ()
virtual void SetUseAbsoluteOrder (bool _arg)
virtual bool GetUseAbsoluteOrder ()

Static Public Member Functions

Pointer New ()

Protected Member Functions

 SymmetricEigenSystem ()
virtual ~SymmetricEigenSystem ()
void PrintSelf (std::ostream &os, Indent indent) const
void GenerateData ()

Detailed Description

template<class TMatrixElement, int VNumberOfRows>
class itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >

wrapper of the vnl_symmetric_eigensystem algorithm

Definition at line 38 of file itkSymmetricEigenSystem.h.


Member Typedef Documentation

template<class TMatrixElement, int VNumberOfRows>
typedef FixedArray< ArrayType, VNumberOfRows > itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Array2DType
 

2D array typedef Definition at line 57 of file itkSymmetricEigenSystem.h.

template<class TMatrixElement, int VNumberOfRows>
typedef FixedArray< TMatrixElement, VNumberOfRows > itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::ArrayType
 

1D array typedef Definition at line 54 of file itkSymmetricEigenSystem.h.

template<class TMatrixElement, int VNumberOfRows>
typedef SmartPointer<const Self> itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::ConstPointer
 

Reimplemented from itk::Object.

Definition at line 45 of file itkSymmetricEigenSystem.h.

template<class TMatrixElement, int VNumberOfRows>
typedef ArrayType itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::EigenValueArrayType
 

Array type for eigen values Definition at line 63 of file itkSymmetricEigenSystem.h.

Referenced by itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GetEigenVectors(), and itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Update().

template<class TMatrixElement, int VNumberOfRows>
typedef Array2DType itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::EigenVectorArrayType
 

Array for eigen vectors Definition at line 60 of file itkSymmetricEigenSystem.h.

Referenced by itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Update().

template<class TMatrixElement, int VNumberOfRows>
typedef vnl_symmetric_eigensystem< TMatrixElement > itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::InternalEigenSystemType
 

Internal eigen sytem type. Definition at line 69 of file itkSymmetricEigenSystem.h.

template<class TMatrixElement, int VNumberOfRows>
typedef Matrix< TMatrixElement, VNumberOfRows, VNumberOfRows > itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::MatrixType
 

Matrix Type Definition at line 66 of file itkSymmetricEigenSystem.h.

Referenced by itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GetMatrix(), and itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Update().

template<class TMatrixElement, int VNumberOfRows>
typedef SmartPointer<Self> itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Pointer
 

Reimplemented from itk::Object.

Definition at line 44 of file itkSymmetricEigenSystem.h.

template<class TMatrixElement, int VNumberOfRows>
typedef SymmetricEigenSystem itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Self
 

Standard "Self" typedef.

Reimplemented from itk::Object.

Definition at line 42 of file itkSymmetricEigenSystem.h.

Referenced by itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Update().

template<class TMatrixElement, int VNumberOfRows>
typedef Object itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Superclass
 

Reimplemented from itk::Object.

Definition at line 43 of file itkSymmetricEigenSystem.h.


Constructor & Destructor Documentation

template<class TMatrixElement, int VNumberOfRows>
itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::SymmetricEigenSystem  )  [protected]
 

template<class TMatrixElement, int VNumberOfRows>
virtual itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::~SymmetricEigenSystem  )  [protected, virtual]
 


Member Function Documentation

template<class TMatrixElement, int VNumberOfRows>
void itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GenerateData  )  [protected]
 

Produces the eigen vectors and values.

template<class TMatrixElement, int VNumberOfRows>
virtual const char* itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::Object.

template<class TMatrixElement, int VNumberOfRows>
EigenValueArrayType* itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GetEigenValues  )  [inline]
 

returns the eigen values in an 1D array Definition at line 92 of file itkSymmetricEigenSystem.h.

References HardConnectedComponentImageFilter::GenerateData().

template<class TMatrixElement, int VNumberOfRows>
EigenVectorArrayType* itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GetEigenVectors  )  [inline]
 

returns the eigen vectors in a 2D array Definition at line 88 of file itkSymmetricEigenSystem.h.

References itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::EigenValueArrayType.

template<class TMatrixElement, int VNumberOfRows>
MatrixType* itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GetMatrix void   )  [inline]
 

Set/Get the target matrix for the eigen analysis Definition at line 73 of file itkSymmetricEigenSystem.h.

References itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::MatrixType.

template<class TMatrixElement, int VNumberOfRows>
virtual bool itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::GetUseAbsoluteOrder  )  [virtual]
 

Set/Get the absolute order flag. By setting this flag true, after the calculation of eigen vectors and values, if the absolute eigen value of eigen vector[j > i] is greater that of eigen vector[i], reorder the eigen vectors so that every absolute eigen values of eigen vector[j < i] is always greater than or equal to that of the eigen vectors[i]

template<class TMatrixElement, int VNumberOfRows>
Pointer itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TMatrixElement, int VNumberOfRows>
void itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::Object.

template<class TMatrixElement, int VNumberOfRows>
virtual void itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::SetMatrix MatrixType _arg  )  [virtual]
 

Set/Get the target matrix for the eigen analysis

template<class TMatrixElement, int VNumberOfRows>
virtual void itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::SetUseAbsoluteOrder bool  _arg  )  [virtual]
 

Set/Get the absolute order flag. By setting this flag true, after the calculation of eigen vectors and values, if the absolute eigen value of eigen vector[j > i] is greater that of eigen vector[i], reorder the eigen vectors so that every absolute eigen values of eigen vector[j < i] is always greater than or equal to that of the eigen vectors[i]

template<class TMatrixElement, int VNumberOfRows>
void itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Update void   )  [inline]
 

dummy method that calls the GenerateData method to produce the eigen vectors and values. Definition at line 97 of file itkSymmetricEigenSystem.h.

References itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::EigenValueArrayType, itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::EigenVectorArrayType, itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::MatrixType, and itk::SymmetricEigenSystem< TMatrixElement, VNumberOfRows >::Self.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 03:15:55 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000