eigensolver::EasyArPackppStd< F, G, H > Class Template Reference
Tool to easily solve standard eigenvalue problems. More...
#include <easyArpackpp.hh>
Public Member Functions | |
EasyArPackppStd (concepts::SparseMatrix< F > &A, int kmax, G shift) | |
Shift and invert mode constructor. More... | |
EasyArPackppStd (concepts::SparseMatrix< F > &A, int kmax=1, char *which=(char *) "LM") | |
Regular mode constructor. More... | |
virtual ArPackppStd< H > * | getSolver () |
Getter for the generated solver. More... | |
virtual | ~EasyArPackppStd () |
Destructor that deletes the solver and the operator. More... | |
Protected Attributes | |
int | dim_ |
Dimension of the space. More... | |
Private Attributes | |
concepts::Operator< H > * | OP_ |
stores the empty operator More... | |
ArPackppStd< H > * | solver_ |
pointer to the builded solver More... | |
Detailed Description
template<class F = Cmplx, class G = Real, class H = typename eigensolver::OperatorType<F, G>::type>
class eigensolver::EasyArPackppStd< F, G, H >
Tool to easily solve standard eigenvalue problems.
- Examples
- arpackppTutorial.cc.
Definition at line 53 of file easyArpackpp.hh.
Constructor & Destructor Documentation
◆ EasyArPackppStd() [1/2]
|
inline |
Shift and invert mode constructor.
Builds a solver that solves the given eigenvalue problem using arpack++ with the shift and invert method.
- Parameters
-
A matrix whose eigenvalues should be calculated kmax number of eigenvalues that should be calculated shift complex or real number for which the kmax
closest eigenvalues will be calculated
- Warning
A
-shift
I has to be invertible, i.e.shift
should not be an eigenvalue ofA
-
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).
Definition at line 66 of file easyArpackpp.hh.
◆ EasyArPackppStd() [2/2]
|
inline |
Regular mode constructor.
Builds a solver that solves the given eigenvalue problem using arpack++ with the regular method.
- Parameters
-
A matrix whose eigenvalues should be calculated kmax number of eigenvalues that should be calculated (default 1) which defines which eigenvalues should be calculated (default "LM")
- Warning
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).
Definition at line 104 of file easyArpackpp.hh.
◆ ~EasyArPackppStd()
|
inlinevirtual |
Destructor that deletes the solver and the operator.
Definition at line 124 of file easyArpackpp.hh.
Member Function Documentation
◆ getSolver()
|
inlinevirtual |
Getter for the generated solver.
Returns an eigensolver of the type ArPackStd that calculates the desired eigenvalues and eigenfunctions respectively.
Implements eigensolver::EasyArPackpp< concepts::Cmplx >.
Definition at line 136 of file easyArpackpp.hh.
Member Data Documentation
◆ dim_
|
protectedinherited |
Dimension of the space.
Definition at line 47 of file easyArpackpp.hh.
◆ OP_
|
private |
stores the empty operator
Definition at line 143 of file easyArpackpp.hh.
◆ solver_
|
private |
pointer to the builded solver
Definition at line 145 of file easyArpackpp.hh.
The documentation for this class was generated from the following file:
- eigensolver/easyArpackpp.hh