Bridge++  Ver. 2.0.2
AEigensolver< FIELD, FOPR > Class Template Referenceabstract

Eigensolver class for abstract base class of eigen solvers. More...

#include <aeigensolver.h>

Inheritance diagram for AEigensolver< FIELD, FOPR >:
AEigensolver_IRArnoldi< FIELD, FOPR > AEigensolver_IRLanczos< FIELD, FOPR >

Public Types

typedef FIELD::real_t real_t
 
typedef ComplexTraits< real_t >::complex_t complex_t
 

Public Member Functions

 AEigensolver ()
 
virtual ~AEigensolver ()
 
virtual void set_parameters (const Parameters &)=0
 
virtual void get_parameters (Parameters &) const =0
 
virtual void solve (std::vector< real_t > &TDa, std::vector< FIELD > &vk, int &Nsbt, int &Nconv, const FIELD &b)
 
virtual void solve (std::vector< complex_t > &TDa, std::vector< FIELD > &vk, int &Nsbt, int &Nconv, const FIELD &b)
 complex version of solve. More...
 

Private Member Functions

 AEigensolver (const AEigensolver< FIELD, FOPR > &)
 
AEigensolveroperator= (const AEigensolver< FIELD, FOPR > &)
 

Detailed Description

template<typename FIELD, typename FOPR>
class AEigensolver< FIELD, FOPR >

Eigensolver class for abstract base class of eigen solvers.

Eigensolver class provides an abstract base class for solvers of eigenvalues and eigenvectors.

This class was changed to template class so as to be available with general gield and fermion operator classes. The original claas was Eigensolver. [23 Apr 2018 H.Matsufuru]

Definition at line 42 of file aeigensolver.h.

Member Typedef Documentation

◆ complex_t

template<typename FIELD , typename FOPR >
typedef ComplexTraits<real_t>::complex_t AEigensolver< FIELD, FOPR >::complex_t

Definition at line 46 of file aeigensolver.h.

◆ real_t

template<typename FIELD , typename FOPR >
typedef FIELD::real_t AEigensolver< FIELD, FOPR >::real_t

Definition at line 45 of file aeigensolver.h.

Constructor & Destructor Documentation

◆ AEigensolver() [1/2]

template<typename FIELD , typename FOPR >
AEigensolver< FIELD, FOPR >::AEigensolver ( )
inline

Definition at line 48 of file aeigensolver.h.

◆ ~AEigensolver()

template<typename FIELD , typename FOPR >
virtual AEigensolver< FIELD, FOPR >::~AEigensolver ( )
inlinevirtual

Definition at line 50 of file aeigensolver.h.

◆ AEigensolver() [2/2]

template<typename FIELD , typename FOPR >
AEigensolver< FIELD, FOPR >::AEigensolver ( const AEigensolver< FIELD, FOPR > &  )
private

Member Function Documentation

◆ get_parameters()

template<typename FIELD , typename FOPR >
virtual void AEigensolver< FIELD, FOPR >::get_parameters ( Parameters ) const
pure virtual

◆ operator=()

template<typename FIELD , typename FOPR >
AEigensolver& AEigensolver< FIELD, FOPR >::operator= ( const AEigensolver< FIELD, FOPR > &  )
private

◆ set_parameters()

template<typename FIELD , typename FOPR >
virtual void AEigensolver< FIELD, FOPR >::set_parameters ( const Parameters )
pure virtual

◆ solve() [1/2]

template<typename FIELD , typename FOPR >
virtual void AEigensolver< FIELD, FOPR >::solve ( std::vector< complex_t > &  TDa,
std::vector< FIELD > &  vk,
int &  Nsbt,
int &  Nconv,
const FIELD &  b 
)
inlinevirtual

complex version of solve.

Reimplemented in AEigensolver_IRLanczos< FIELD, FOPR >, and AEigensolver_IRArnoldi< FIELD, FOPR >.

Definition at line 72 of file aeigensolver.h.

◆ solve() [2/2]

template<typename FIELD , typename FOPR >
virtual void AEigensolver< FIELD, FOPR >::solve ( std::vector< real_t > &  TDa,
std::vector< FIELD > &  vk,
int &  Nsbt,
int &  Nconv,
const FIELD &  b 
)
inlinevirtual

Reimplemented in AEigensolver_IRLanczos< FIELD, FOPR >.

Definition at line 62 of file aeigensolver.h.


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