Grid 0.7.0
MultiRHSDeflation< Field > Class Template Reference

#include <MultiRHSDeflation.h>

Public Types

typedef Field::scalar_type scalar
typedef Field::scalar_object scalar_object

Public Member Functions

 MultiRHSDeflation ()
 ~MultiRHSDeflation ()
void Deallocate (void)
void Allocate (int _nev, GridBase *_grid)
void ImportEigenVector (Field &evec, RealD &_eval, int ev)
void ImportEigenBasis (std::vector< Field > &evec, std::vector< RealD > &_eval)
void ImportEigenBasis (std::vector< Field > &evec, std::vector< RealD > &_eval, int _ev0, int _nev)
void DeflateSources (std::vector< Field > &source, std::vector< Field > &guess)

Data Fields

int nev
std::vector< RealDeval
GridBasegrid
uint64_t vol
uint64_t words
deviceVector< scalarBLAS_E
deviceVector< scalarBLAS_R
deviceVector< scalarBLAS_G
deviceVector< scalarBLAS_C

Detailed Description

template<class Field>
class MultiRHSDeflation< Field >

Definition at line 56 of file MultiRHSDeflation.h.

Member Typedef Documentation

◆ scalar

template<class Field>
typedef Field::scalar_type MultiRHSDeflation< Field >::scalar

Definition at line 60 of file MultiRHSDeflation.h.

◆ scalar_object

template<class Field>
typedef Field::scalar_object MultiRHSDeflation< Field >::scalar_object

Definition at line 61 of file MultiRHSDeflation.h.

Constructor & Destructor Documentation

◆ MultiRHSDeflation()

template<class Field>
MultiRHSDeflation< Field >::MultiRHSDeflation ( )
inline

Definition at line 74 of file MultiRHSDeflation.h.

◆ ~MultiRHSDeflation()

template<class Field>
MultiRHSDeflation< Field >::~MultiRHSDeflation ( )
inline

Definition at line 75 of file MultiRHSDeflation.h.

References Deallocate().

Member Function Documentation

◆ Deallocate()

template<class Field>
void MultiRHSDeflation< Field >::Deallocate ( void )
inline

Definition at line 77 of file MultiRHSDeflation.h.

References BLAS_C, BLAS_E, BLAS_G, BLAS_R, grid, nev, vol, and words.

Referenced by ~MultiRHSDeflation().

◆ Allocate()

template<class Field>
void MultiRHSDeflation< Field >::Allocate ( int _nev,
GridBase * _grid )
inline

Definition at line 88 of file MultiRHSDeflation.h.

References BLAS_E, eval, grid, GridLogMessage, nev, vol, and words.

Referenced by ImportEigenBasis().

◆ ImportEigenVector()

template<class Field>
void MultiRHSDeflation< Field >::ImportEigenVector ( Field & evec,
RealD & _eval,
int ev )
inline

Definition at line 98 of file MultiRHSDeflation.h.

References acceleratorCopyDeviceToDevice(), AcceleratorRead, autoView, BLAS_E, eval, vol, and words.

Referenced by ImportEigenBasis().

◆ ImportEigenBasis() [1/2]

template<class Field>
void MultiRHSDeflation< Field >::ImportEigenBasis ( std::vector< Field > & evec,
std::vector< RealD > & _eval )
inline

Definition at line 109 of file MultiRHSDeflation.h.

References ImportEigenBasis().

Referenced by ImportEigenBasis().

◆ ImportEigenBasis() [2/2]

template<class Field>
void MultiRHSDeflation< Field >::ImportEigenBasis ( std::vector< Field > & evec,
std::vector< RealD > & _eval,
int _ev0,
int _nev )
inline

Definition at line 114 of file MultiRHSDeflation.h.

References Allocate(), ImportEigenVector(), and nev.

◆ DeflateSources()

Field Documentation

◆ nev

template<class Field>
int MultiRHSDeflation< Field >::nev

Definition at line 63 of file MultiRHSDeflation.h.

Referenced by Allocate(), Deallocate(), DeflateSources(), and ImportEigenBasis().

◆ eval

template<class Field>
std::vector<RealD> MultiRHSDeflation< Field >::eval

Definition at line 64 of file MultiRHSDeflation.h.

Referenced by Allocate(), DeflateSources(), and ImportEigenVector().

◆ grid

template<class Field>
GridBase* MultiRHSDeflation< Field >::grid

Definition at line 65 of file MultiRHSDeflation.h.

Referenced by Allocate(), Deallocate(), and DeflateSources().

◆ vol

template<class Field>
uint64_t MultiRHSDeflation< Field >::vol

Definition at line 66 of file MultiRHSDeflation.h.

Referenced by Allocate(), Deallocate(), DeflateSources(), and ImportEigenVector().

◆ words

template<class Field>
uint64_t MultiRHSDeflation< Field >::words

Definition at line 67 of file MultiRHSDeflation.h.

Referenced by Allocate(), Deallocate(), DeflateSources(), and ImportEigenVector().

◆ BLAS_E

template<class Field>
deviceVector<scalar> MultiRHSDeflation< Field >::BLAS_E

Definition at line 69 of file MultiRHSDeflation.h.

Referenced by Allocate(), Deallocate(), DeflateSources(), and ImportEigenVector().

◆ BLAS_R

template<class Field>
deviceVector<scalar> MultiRHSDeflation< Field >::BLAS_R

Definition at line 70 of file MultiRHSDeflation.h.

Referenced by Deallocate(), and DeflateSources().

◆ BLAS_G

template<class Field>
deviceVector<scalar> MultiRHSDeflation< Field >::BLAS_G

Definition at line 71 of file MultiRHSDeflation.h.

Referenced by Deallocate(), and DeflateSources().

◆ BLAS_C

template<class Field>
deviceVector<scalar> MultiRHSDeflation< Field >::BLAS_C

Definition at line 72 of file MultiRHSDeflation.h.

Referenced by Deallocate(), and DeflateSources().


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