ARPACK-Armadillo
UpperHessenbergEigen< Scalar > Class Template Reference

#include <UpperHessenbergEigen.h>

Public Member Functions

 UpperHessenbergEigen ()
 
 UpperHessenbergEigen (const Matrix &mat)
 
void compute (const Matrix &mat)
 
ComplexVector eigenvalues ()
 
ComplexMatrix eigenvectors ()
 

Detailed Description

template<typename Scalar = double>
class UpperHessenbergEigen< Scalar >

Calculate the eigenvalues and eigenvectors of an upper Hessenberg matrix.

Template Parameters
ScalarThe element type of the matrix. Currently supported types are float and double.

This class is a wrapper of the Lapack functions _lahqr and _trevc.

Definition at line 27 of file UpperHessenbergEigen.h.

Constructor & Destructor Documentation

template<typename Scalar = double>
UpperHessenbergEigen< Scalar >::UpperHessenbergEigen ( )
inline

Default constructor. Computation can be performed later by calling the compute() method.

Definition at line 56 of file UpperHessenbergEigen.h.

template<typename Scalar = double>
UpperHessenbergEigen< Scalar >::UpperHessenbergEigen ( const Matrix &  mat)
inline

Constructor to create an object that calculates the eigenvalues and eigenvectors of an upper Hessenberg matrix mat.

Parameters
matMatrix type can be arma::mat or arma::fmat, depending on the template parameter Scalar defined. Only the upper triangular and the lower subdiagonal parts of the matrix are used.

Definition at line 69 of file UpperHessenbergEigen.h.

Member Function Documentation

template<typename Scalar = double>
void UpperHessenbergEigen< Scalar >::compute ( const Matrix &  mat)
inline

Compute the eigenvalue decomposition of an upper Hessenberg matrix.

Parameters
matMatrix type can be arma::mat or arma::fmat, depending on the template parameter Scalar defined. Only the upper triangular and the lower subdiagonal parts of the matrix are used.

Definition at line 83 of file UpperHessenbergEigen.h.

template<typename Scalar = double>
ComplexVector UpperHessenbergEigen< Scalar >::eigenvalues ( )
inline

Retrieve the eigenvalues.

Returns
Returned vector type will be arma::cx_vec or arma::cx_fvec, depending on the template parameter Scalar defined.

Definition at line 135 of file UpperHessenbergEigen.h.

template<typename Scalar = double>
ComplexMatrix UpperHessenbergEigen< Scalar >::eigenvectors ( )
inline

Retrieve the eigenvectors.

Returns
Returned matrix type will be arma::cx_mat or arma::cx_fmat, depending on the template parameter Scalar defined.

Definition at line 149 of file UpperHessenbergEigen.h.


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