Eigensolver for general Eigenproblems for symmetric matrices. More...
#include <arpackpp.hh>


Public Member Functions | |
| ArPackppSymGen (concepts::Operator< Real > &OP, concepts::Operator< Real > &A, concepts::Operator< Real > &B, int kmax=1, Real sigma=0.1, Real tol=0.0, int maxiter=300, concepts::Vector< Real > *start=0, concepts::Array< Real > *resid=0, bool schur=false) | |
| Constructor for SHIFTandINVERT mode, Cayley mode. | |
| ArPackppSymGen (char invertType, concepts::Operator< Real > &OP, concepts::Operator< Real > &A, int kmax=1, Real sigma=0.1, Real tol=0.0, int maxiter=300, concepts::Vector< Real > *start=0, concepts::Array< Real > *resid=0, bool schur=false) | |
| Constructor for SHIFTandINVERT mode and Buckling mode. | |
| virtual uint | converged () const |
| Returns the number of converged eigenpairs. | |
| virtual concepts::Array < concepts::Vector< Real > * > & | getEF () |
| Getter for the computed eigenvectorsComputes Eigenvalus and Eigenvectors if they were not computed. | |
| virtual const concepts::Array < Real > & | getEV () |
| Getter for the computed eigenvalues. | |
| concepts::Array< Real > | getRESID () |
| Returns the RESID vector: | |
| virtual uint | iterations () const |
| Returns the actual number of Arnoldi iterations taken. | |
| virtual | ~ArPackppSymGen () |
| Constructor for SHIFTandINVERT mode and Buckling mode. | |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Private Member Functions | |
| void | compute_ () |
Private Attributes | |
| ArpackOperatorWrapper < concepts::Real, concepts::Real, concepts::Real > | aow_ |
| ARSymGenEig< Real, ArpackOperatorWrapper < concepts::Real, concepts::Real, concepts::Real > , ArpackOperatorWrapper < concepts::Real, concepts::Real, concepts::Real > > | arpackSolver_ |
| bool | computed_ |
| uint | convEigenvalues_ |
| concepts::Array< Real > | eigenValues_ |
| References into storage for eigenvectors. | |
| concepts::Array < concepts::Vector< Real > * > | eigenVectors_ |
| uint | iter_ |
| ArPack< Real >::modus | modus_ |
| uint | n_ |
| char * | whichEV_ |
Eigensolver for general Eigenproblems for symmetric matrices.
Using Cayley mode of Arpack.
Definition at line 303 of file arpackpp.hh.
| eigensolver::ArPackppSymGen::ArPackppSymGen | ( | concepts::Operator< Real > & | OP, |
| concepts::Operator< Real > & | A, | ||
| concepts::Operator< Real > & | B, | ||
| int | kmax = 1, |
||
| Real | sigma = 0.1, |
||
| Real | tol = 0.0, |
||
| int | maxiter = 300, |
||
| concepts::Vector< Real > * | start = 0, |
||
| concepts::Array< Real > * | resid = 0, |
||
| bool | schur = false |
||
| ) |
Constructor for SHIFTandINVERT mode, Cayley mode.
| OP | is the multiplication operator (A-sigma)^(-1) |
| A | Stiffness matrix |
| B | is the Matrix on the right hand side |
| kmax | Number of eigenpairs to be computed, must be lower then the dimension of the matrices -1 |
| tol | Convergence tolerance for the eigenpairs. The default value 0.0 is replaced by DLAMCH('EPS') from LAPACK. |
| maxiter | Maximum number of Arnoldi iterations allowed |
| target | What sort of eigenvalues to compute |
| sigma | Shift for the shift-invert modes |
| start | Initial vector for iteration |
| schur | Calculate Schur vector basis instead of eigenvectors |
| eigensolver::ArPackppSymGen::ArPackppSymGen | ( | char | invertType, |
| concepts::Operator< Real > & | OP, | ||
| concepts::Operator< Real > & | A, | ||
| int | kmax = 1, |
||
| Real | sigma = 0.1, |
||
| Real | tol = 0.0, |
||
| int | maxiter = 300, |
||
| concepts::Vector< Real > * | start = 0, |
||
| concepts::Array< Real > * | resid = 0, |
||
| bool | schur = false |
||
| ) |
Constructor for SHIFTandINVERT mode and Buckling mode.
| OP | is the multiplication operator (A-sigma)^(-1) |
| A | is the matrix of the left hand side in Buckling Mode (invertType = 'B') |
| A | is the Matrix on the right hand side in standard mode (invertType = 'S') |
| kmax | Number of eigenpairs to be computed, must be lower then the dimension of the matrices -1 |
| tol | Convergence tolerance for the eigenpairs. The default value 0.0 is replaced by DLAMCH('EPS') from LAPACK. |
| maxiter | Maximum number of Arnoldi iterations allowed |
| target | What sort of eigenvalues to compute |
| sigma | Shift for the shift-invert modes |
| start | Initial vector for iteration |
| schur | Calculate Schur vector basis instead of eigenvectors |
| virtual eigensolver::ArPackppSymGen::~ArPackppSymGen | ( | ) | [inline, virtual] |
Constructor for SHIFTandINVERT mode and Buckling mode.
| OP | is the multiplication operator B^-1 |
| A | Stiffness matrix |
| B | is the Matrix on the right hand side |
| kmax | Number of eigenpairs to be computed, must be lower then the dimension of the matrices -1 |
| tol | Convergence tolerance for the eigenpairs. The default value 0.0 is replaced by DLAMCH('EPS') from LAPACK. |
| maxiter | Maximum number of Arnoldi iterations allowed |
| target | What sort of eigenvalues to compute |
| sigma | Shift for the shift-invert modes |
| start | Initial vector for iteration |
| schur | Calculate Schur vector basis instead of eigenvectorsDecstructor |
Definition at line 374 of file arpackpp.hh.
| void eigensolver::ArPackppSymGen::compute_ | ( | ) | [private] |
| virtual uint eigensolver::ArPackppSymGen::converged | ( | ) | const [inline, virtual] |
Returns the number of converged eigenpairs.
Implements eigensolver::EigenSolver< Real >.
Definition at line 405 of file arpackpp.hh.
| virtual concepts::Array<concepts::Vector<Real>*>& eigensolver::ArPackppSymGen::getEF | ( | ) | [inline, virtual] |
Getter for the computed eigenvectorsComputes Eigenvalus and Eigenvectors if they were not computed.
Implements eigensolver::EigenSolver< Real >.
Definition at line 393 of file arpackpp.hh.

| virtual const concepts::Array<Real>& eigensolver::ArPackppSymGen::getEV | ( | ) | [inline, virtual] |
Getter for the computed eigenvalues.
Computes Eigenvalus and Eigenvectors if they were not computed.
Implements eigensolver::EigenSolver< Real >.
Definition at line 383 of file arpackpp.hh.

| concepts::Array<Real> eigensolver::ArPackppSymGen::getRESID | ( | ) | [inline] |
Returns the RESID vector:
Definition at line 410 of file arpackpp.hh.
| virtual std::ostream& eigensolver::ArPackppSymGen::info | ( | std::ostream & | os | ) | const [inline, protected, virtual] |
Returns information in an output stream.
Reimplemented from eigensolver::EigenSolver< Real >.
Definition at line 417 of file arpackpp.hh.
| virtual uint eigensolver::ArPackppSymGen::iterations | ( | ) | const [inline, virtual] |
Returns the actual number of Arnoldi iterations taken.
Implements eigensolver::EigenSolver< Real >.
Definition at line 400 of file arpackpp.hh.
ArpackOperatorWrapper<concepts::Real, concepts::Real, concepts::Real> eigensolver::ArPackppSymGen::aow_ [private] |
Definition at line 426 of file arpackpp.hh.
ARSymGenEig<Real, ArpackOperatorWrapper<concepts::Real, concepts::Real, concepts::Real> , ArpackOperatorWrapper<concepts::Real, concepts::Real, concepts::Real> > eigensolver::ArPackppSymGen::arpackSolver_ [private] |
Definition at line 429 of file arpackpp.hh.
bool eigensolver::ArPackppSymGen::computed_ [private] |
Definition at line 434 of file arpackpp.hh.
uint eigensolver::ArPackppSymGen::convEigenvalues_ [private] |
Definition at line 433 of file arpackpp.hh.
concepts::Array<Real> eigensolver::ArPackppSymGen::eigenValues_ [private] |
References into storage for eigenvectors.
Definition at line 437 of file arpackpp.hh.
concepts::Array<concepts::Vector<Real>*> eigensolver::ArPackppSymGen::eigenVectors_ [private] |
Definition at line 438 of file arpackpp.hh.
uint eigensolver::ArPackppSymGen::iter_ [private] |
Definition at line 432 of file arpackpp.hh.
ArPack<Real>::modus eigensolver::ArPackppSymGen::modus_ [private] |
Definition at line 425 of file arpackpp.hh.
uint eigensolver::ArPackppSymGen::n_ [private] |
Definition at line 431 of file arpackpp.hh.
char* eigensolver::ArPackppSymGen::whichEV_ [private] |
Definition at line 424 of file arpackpp.hh.