CHROMA
Public Types | Public Member Functions | Private Attributes | List of all members

Even-odd preconditioned Clover-Dirac operator. More...

#include <eoprec_clover_dumb_linop_w.h>

Inheritance diagram for Chroma::EvenOddPrecDumbCloverDLinOp:
Chroma::LinearOperator< LatticeFermionD >

Public Types

typedef LatticeFermionD T
 
typedef LatticeColorMatrixD U
 
typedef multi1d< UP
 
typedef multi1d< UQ
 

Public Member Functions

 EvenOddPrecDumbCloverDLinOp (Handle< FermState< T, P, Q > > fs, const CloverFermActParams &param_)
 Full constructor. More...
 
 ~EvenOddPrecDumbCloverDLinOp ()
 Destructor is automatic. More...
 
const FermBC< T, P, Q > & getFermBC () const
 Return the fermion BC object for this linear operator. More...
 
void create (Handle< FermState< T, P, Q > > fs, const CloverFermActParams &param_)
 Creation routine. More...
 
void operator() (T &chi, const T &psi, enum PlusMinus isign) const
 Apply the operator onto a source std::vector. More...
 
unsigned long nFlops () const
 Return flops performed by the operator() More...
 
const Subset & subset () const
 Return the subset on which the operator acts. More...
 
- Public Member Functions inherited from Chroma::LinearOperator< LatticeFermionD >
virtual ~LinearOperator ()
 Virtual destructor to help with cleanup;. More...
 
virtual void operator() (LatticeFermionD &chi, const LatticeFermionD &psi, enum PlusMinus isign, Real epsilon) const
 Apply the operator onto a source std::vector to some precision. More...
 

Private Attributes

CloverFermActParams param
 
WilsonDslashD D
 
CloverTermD clov
 
CloverTermD invclov
 

Detailed Description

Even-odd preconditioned Clover-Dirac operator.

This routine is specific to Wilson fermions!

The kernel for Clover fermions is

 M  =  A + (d+M) - (1/2) D'

This is a dumb version with only a constructor and an apply method. It is also fixed to double precision

Definition at line 143 of file eoprec_clover_dumb_linop_w.h.

Member Typedef Documentation

◆ P

Definition at line 148 of file eoprec_clover_dumb_linop_w.h.

◆ Q

Definition at line 149 of file eoprec_clover_dumb_linop_w.h.

◆ T

typedef LatticeFermionD Chroma::EvenOddPrecDumbCloverDLinOp::T

Definition at line 146 of file eoprec_clover_dumb_linop_w.h.

◆ U

typedef LatticeColorMatrixD Chroma::EvenOddPrecDumbCloverDLinOp::U

Definition at line 147 of file eoprec_clover_dumb_linop_w.h.

Constructor & Destructor Documentation

◆ EvenOddPrecDumbCloverDLinOp()

Chroma::EvenOddPrecDumbCloverDLinOp::EvenOddPrecDumbCloverDLinOp ( Handle< FermState< T, P, Q > >  fs,
const CloverFermActParams param_ 
)
inline

Full constructor.

Definition at line 152 of file eoprec_clover_dumb_linop_w.h.

References create().

◆ ~EvenOddPrecDumbCloverDLinOp()

Chroma::EvenOddPrecDumbCloverDLinOp::~EvenOddPrecDumbCloverDLinOp ( )
inline

Destructor is automatic.

Definition at line 157 of file eoprec_clover_dumb_linop_w.h.

Member Function Documentation

◆ create()

void Chroma::EvenOddPrecDumbCloverDLinOp::create ( Handle< FermState< T, P, Q > >  fs,
const CloverFermActParams param_ 
)
inline

◆ getFermBC()

const FermBC<T,P,Q>& Chroma::EvenOddPrecDumbCloverDLinOp::getFermBC ( ) const
inline

Return the fermion BC object for this linear operator.

Definition at line 160 of file eoprec_clover_dumb_linop_w.h.

References D, and Chroma::QDPWilsonDslashT< T, P, Q >::getFermBC().

◆ nFlops()

unsigned long Chroma::EvenOddPrecDumbCloverDLinOp::nFlops ( void  ) const
inlinevirtual

◆ operator()()

void Chroma::EvenOddPrecDumbCloverDLinOp::operator() ( T chi,
const T psi,
enum PlusMinus  isign 
) const
inlinevirtual

◆ subset()

const Subset& Chroma::EvenOddPrecDumbCloverDLinOp::subset ( void  ) const
inlinevirtual

Return the subset on which the operator acts.

Implements Chroma::LinearOperator< LatticeFermionD >.

Definition at line 232 of file eoprec_clover_dumb_linop_w.h.

Member Data Documentation

◆ clov

CloverTermD Chroma::EvenOddPrecDumbCloverDLinOp::clov
private

Definition at line 240 of file eoprec_clover_dumb_linop_w.h.

Referenced by create(), nFlops(), and operator()().

◆ D

WilsonDslashD Chroma::EvenOddPrecDumbCloverDLinOp::D
private

Definition at line 239 of file eoprec_clover_dumb_linop_w.h.

Referenced by create(), getFermBC(), nFlops(), and operator()().

◆ invclov

CloverTermD Chroma::EvenOddPrecDumbCloverDLinOp::invclov
private

Definition at line 241 of file eoprec_clover_dumb_linop_w.h.

Referenced by create(), and operator()().

◆ param

CloverFermActParams Chroma::EvenOddPrecDumbCloverDLinOp::param
private

Definition at line 238 of file eoprec_clover_dumb_linop_w.h.

Referenced by create(), nFlops(), and operator()().


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