#include <arpackpp.hh>
Public Member Functions | |
ArPackppGen (concepts::Operator< F > &OP, concepts::Operator< G > &A, concepts::Operator< H > &B, int kmax=1, concepts::Cmplx sigma=0.0, Real tol=0.0, int maxiter=300) | |
ArPackppGen (concepts::Operator< F > &OP, concepts::Operator< G > &A, concepts::Operator< H > &B, int kmax=1, char *which=(char *) "LM", Real tol=0.0, int maxiter=300) | |
virtual | ~ArPackppGen () |
Deconstructor. | |
virtual const concepts::Array< Cmplx > & | getEV () |
virtual concepts::Array< concepts::Vector< Cmplx > * > & | getEF () |
virtual uint | iterations () const |
Returns the actual number of Arnoldi iterations. | |
virtual uint | converged () const |
Returns the number of converged eigenpairs. | |
concepts::Array< Cmplx > | getRESID () |
Returns the RESID vector. | |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. | |
EigenSolver for complex, general eigenproblems. Solves problems of the form with complex matrix A and real, symmetric, positive definite matrix B.
Definition at line 541 of file arpackpp.hh.
|
inline |
Shift and invert mode constructor.
OP | multiplication operator, OP * x = inv(A-sigma*B) * x |
A | matrix of the left hand side |
B | matrix of the right hand side |
kmax | number of eigenpairs to be computed, default 1 |
sigma | complex-valued shift for the shift-invert mode, default 0.0 |
tol | convergence tolerance for the eigenpairs, default 0.0 (is replaced by LAPACK's DLAMCH ('EPS')) |
maxiter | maximum number of Arnoldi iterations allowed, default 300 |
B
has to be real, symmetric and positive definite. kmax
has to be larger than or equal to 1 and smaller than or equal to the dimension of the matrix minus 2. Definition at line 557 of file arpackpp.hh.
|
inline |
Regular mode constructor.
OP | multiplication operator, OP * x = inv(B) * x |
A | matrix of the left hand side |
B | matrix of the right hand side |
kmax | number of eigenpairs to be computed, default 1 |
which | defines which sort of eigenvalues should be computed, i.e. eigenvalues of largest magnitude ("LM"), smallest magnitude ("SM"), largest real part ("LR"), smallest real part ("SR"), largest imaginary part ("LI") or smallest imaginary part ("SI"), default "LM" |
tol | convergence tolerance for the eigenpairs, default 0.0 (is replaced by LAPACK's DLAMCH ('EPS')) |
maxiter | maximum number of Arnoldi iterations allowed, default 300 |
B
has to be real, symmetric and positive definite. kmax
has to be larger than or equal to 1 and smaller than or equal to the dimension of the matrix minus 2. Definition at line 603 of file arpackpp.hh.
|
inlinevirtual |
Deconstructor.
Definition at line 632 of file arpackpp.hh.
|
inlinevirtual |
Returns the number of converged eigenpairs.
Implements eigensolver::EigenSolver< concepts::Cmplx >.
Definition at line 665 of file arpackpp.hh.
|
inlinevirtual |
Getter for the computed eigenvectors. Computes eigenvalues and eigenvectors if they have not yet been computed.
Implements eigensolver::EigenSolver< concepts::Cmplx >.
Definition at line 653 of file arpackpp.hh.
|
inlinevirtual |
Getter for the computed eigenvalues. Computes eigenvalues and eigenvectors if they have not yet been computed.
Implements eigensolver::EigenSolver< concepts::Cmplx >.
Definition at line 642 of file arpackpp.hh.
|
inline |
Returns the RESID vector.
Definition at line 670 of file arpackpp.hh.
|
inlineprotectedvirtual |
Returns information in an output stream.
Reimplemented from eigensolver::EigenSolver< concepts::Cmplx >.
Definition at line 677 of file arpackpp.hh.
|
inlinevirtual |
Returns the actual number of Arnoldi iterations.
Implements eigensolver::EigenSolver< concepts::Cmplx >.
Definition at line 660 of file arpackpp.hh.