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::EvenOddPrecDumbCloverFLinOp:
Chroma::LinearOperator< LatticeFermionF >

Public Types

typedef LatticeFermionF T
 
typedef LatticeColorMatrixF U
 
typedef multi1d< UP
 
typedef multi1d< UQ
 

Public Member Functions

 EvenOddPrecDumbCloverFLinOp (Handle< FermState< LatticeFermionF, P, Q > > fs, const CloverFermActParams &param_)
 Full constructor. More...
 
 ~EvenOddPrecDumbCloverFLinOp ()
 Destructor is automatic. More...
 
const FermBC< LatticeFermionF, P, Q > & getFermBC () const
 Return the fermion BC object for this linear operator. More...
 
void create (Handle< FermState< LatticeFermionF, P, Q > > fs, const CloverFermActParams &param_)
 Creation routine. More...
 
void operator() (LatticeFermionF &chi, const LatticeFermionF &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< LatticeFermionF >
virtual ~LinearOperator ()
 Virtual destructor to help with cleanup;. More...
 
virtual void operator() (LatticeFermionF &chi, const LatticeFermionF &psi, enum PlusMinus isign, Real epsilon) const
 Apply the operator onto a source std::vector to some precision. More...
 

Private Attributes

CloverFermActParams param
 
WilsonDslashF D
 
CloverTermF clov
 
CloverTermF 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 single precision

Definition at line 34 of file eoprec_clover_dumb_linop_w.h.

Member Typedef Documentation

◆ P

Definition at line 39 of file eoprec_clover_dumb_linop_w.h.

◆ Q

Definition at line 40 of file eoprec_clover_dumb_linop_w.h.

◆ T

typedef LatticeFermionF Chroma::EvenOddPrecDumbCloverFLinOp::T

Definition at line 37 of file eoprec_clover_dumb_linop_w.h.

◆ U

typedef LatticeColorMatrixF Chroma::EvenOddPrecDumbCloverFLinOp::U

Definition at line 38 of file eoprec_clover_dumb_linop_w.h.

Constructor & Destructor Documentation

◆ EvenOddPrecDumbCloverFLinOp()

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

Full constructor.

Definition at line 43 of file eoprec_clover_dumb_linop_w.h.

References create().

◆ ~EvenOddPrecDumbCloverFLinOp()

Chroma::EvenOddPrecDumbCloverFLinOp::~EvenOddPrecDumbCloverFLinOp ( )
inline

Destructor is automatic.

Definition at line 48 of file eoprec_clover_dumb_linop_w.h.

Member Function Documentation

◆ create()

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

◆ getFermBC()

const FermBC<LatticeFermionF,P,Q>& Chroma::EvenOddPrecDumbCloverFLinOp::getFermBC ( ) const
inline

Return the fermion BC object for this linear operator.

Definition at line 51 of file eoprec_clover_dumb_linop_w.h.

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

◆ nFlops()

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

◆ operator()()

void Chroma::EvenOddPrecDumbCloverFLinOp::operator() ( LatticeFermionF &  chi,
const LatticeFermionF &  psi,
enum PlusMinus  isign 
) const
inlinevirtual

◆ subset()

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

Return the subset on which the operator acts.

Implements Chroma::LinearOperator< LatticeFermionF >.

Definition at line 116 of file eoprec_clover_dumb_linop_w.h.

Member Data Documentation

◆ clov

CloverTermF Chroma::EvenOddPrecDumbCloverFLinOp::clov
private

Definition at line 124 of file eoprec_clover_dumb_linop_w.h.

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

◆ D

WilsonDslashF Chroma::EvenOddPrecDumbCloverFLinOp::D
private

Definition at line 123 of file eoprec_clover_dumb_linop_w.h.

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

◆ invclov

CloverTermF Chroma::EvenOddPrecDumbCloverFLinOp::invclov
private

Definition at line 125 of file eoprec_clover_dumb_linop_w.h.

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

◆ param

CloverFermActParams Chroma::EvenOddPrecDumbCloverFLinOp::param
private

Definition at line 122 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: