Tool to easily solve general eigenvalue problems for symmetric matrices. More...
#include <easyArpackpp.hh>
Public Member Functions | |
EasyArPackppSymGen (concepts::SparseMatrix< concepts::Real > &A, concepts::SparseMatrix< concepts::Real > &B, int kmax, concepts::Real shift) | |
EasyArPackppSymGen (char invertType, concepts::SparseMatrix< concepts::Real > &A, concepts::SparseMatrix< concepts::Real > &B, int kmax, concepts::Real shift) | |
virtual | ~EasyArPackppSymGen () |
Destructor that deletes the solver and the operator. | |
virtual ArPackppSymGen * | getSolver () |
Getter for the generated solver. | |
Protected Attributes | |
int | dim_ |
Dimension of the space. | |
Tool to easily solve general eigenvalue problems for symmetric matrices.
Definition at line 270 of file easyArpackpp.hh.
eigensolver::EasyArPackppSymGen::EasyArPackppSymGen | ( | concepts::SparseMatrix< concepts::Real > & | A, |
concepts::SparseMatrix< concepts::Real > & | B, | ||
int | kmax, | ||
concepts::Real | shift | ||
) |
Cayley mode constructor. Builds an eigenvalue solver that solves the given eigenvalue problem using arpack++ with the shift and invert method.
A | matrix of the left hand side; it has to be symmetric |
B | matrix of the right hand side; it has to be real, symmetric and positive semi-definite |
kmax | number of eigenvalues that should be calculated |
shift | real number for which the kmax closest eigenvalues will be calculated |
kmax
has to be larger than or equal to 1 (otherwise it is set to this lower bound). kmax
has to be smaller than or equal to the dimension of the matrix -2 (otherwise it is set to this upper bound). shift
is not allowed to be 0. eigensolver::EasyArPackppSymGen::EasyArPackppSymGen | ( | char | invertType, |
concepts::SparseMatrix< concepts::Real > & | A, | ||
concepts::SparseMatrix< concepts::Real > & | B, | ||
int | kmax, | ||
concepts::Real | shift | ||
) |
Buckling mode constructor. Builds an eigenvalue solver that solves the given eigenvalue problem using arpack++ with the shift and invert method.
invertType | - Character ('B' or 'S') defining the mode |
A | symmetric matrix of the left hand side; if (invert Type = 'B') it must be positive semi-definite |
B | symmetric matrix of the right hand side; if (invert Type = 'S') it must be positive semi-definite |
kmax | number of eigenvalues that should be calculated |
shift | real number for which the kmax closest eigenvalues will be calculated |
shift
is not allowed to be 0. kmax
has to be larger than or equal to 1 (otherwise it is set to this lower bound). kmax
has to be smaller than or equal to the dimension of the matrix -2 (otherwise it is set to this upper bound).
|
virtual |
Getter for the generated solver.
Implements eigensolver::EasyArPackpp< concepts::Real >.
|
protectedinherited |
Dimension of the space.
Definition at line 47 of file easyArpackpp.hh.