Class documentation of Concepts

Loading...
Searching...
No Matches
eigensolver::EasyArPackppStd< F, G, H > Class Template Reference

Tool to easily solve standard eigenvalue problems. More...

#include <easyArpackpp.hh>

Inheritance diagram for eigensolver::EasyArPackppStd< F, G, H >:
eigensolver::EasyArPackpp< concepts::Cmplx >

Public Member Functions

 EasyArPackppStd (concepts::SparseMatrix< F > &A, int kmax, G shift)
 
 EasyArPackppStd (concepts::SparseMatrix< F > &A, int kmax=1, char *which=(char *) "LM")
 
virtual ~EasyArPackppStd ()
 Destructor that deletes the solver and the operator.
 
virtual ArPackppStd< H > * getSolver ()
 

Protected Attributes

int dim_
 Dimension of the space.
 

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]

template<class F = Cmplx, class G = Real, class H = typename eigensolver::OperatorType<F, G>::type>
eigensolver::EasyArPackppStd< F, G, H >::EasyArPackppStd ( concepts::SparseMatrix< F > &  A,
int  kmax,
shift 
)
inline

Shift and invert mode constructor. Builds a solver that solves the given eigenvalue problem using arpack++ with the shift and invert method.

Parameters
Amatrix whose eigenvalues should be calculated
kmaxnumber of eigenvalues that should be calculated
shiftcomplex 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 of A
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]

template<class F = Cmplx, class G = Real, class H = typename eigensolver::OperatorType<F, G>::type>
eigensolver::EasyArPackppStd< F, G, H >::EasyArPackppStd ( concepts::SparseMatrix< F > &  A,
int  kmax = 1,
char *  which = (char*) "LM" 
)
inline

Regular mode constructor. Builds a solver that solves the given eigenvalue problem using arpack++ with the regular method.

Parameters
Amatrix whose eigenvalues should be calculated
kmaxnumber of eigenvalues that should be calculated (default 1)
whichdefines 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()

template<class F = Cmplx, class G = Real, class H = typename eigensolver::OperatorType<F, G>::type>
virtual eigensolver::EasyArPackppStd< F, G, H >::~EasyArPackppStd ( )
inlinevirtual

Destructor that deletes the solver and the operator.

Definition at line 124 of file easyArpackpp.hh.

Member Function Documentation

◆ getSolver()

template<class F = Cmplx, class G = Real, class H = typename eigensolver::OperatorType<F, G>::type>
virtual ArPackppStd< H > * eigensolver::EasyArPackppStd< F, G, H >::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 >.

Examples
arpackppTutorial.cc.

Definition at line 136 of file easyArpackpp.hh.

Member Data Documentation

◆ dim_

int eigensolver::EasyArPackpp< concepts::Cmplx >::dim_
protectedinherited

Dimension of the space.

Definition at line 47 of file easyArpackpp.hh.


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