Chroma::CPPWilsonDslashF Class Reference
[Fermion linear operators]

General Wilson-Dirac dslash. More...

#include <lwldslash_w_cppf.h>

Inheritance diagram for Chroma::CPPWilsonDslashF:

Chroma::WilsonDslashBase< LatticeFermionF, multi1d< LatticeColorMatrixF >, multi1d< LatticeColorMatrixF > > Chroma::DslashLinearOperator< T, P, Q > Chroma::DiffLinearOperator< T, P, Q > Chroma::LinearOperator< T > List of all members.

Public Types

typedef LatticeFermionF T
typedef multi1d< LatticeColorMatrixF > P
typedef multi1d< LatticeColorMatrixF > Q

Public Member Functions

 CPPWilsonDslashF ()
 Empty constructor.
 CPPWilsonDslashF (Handle< FermState< T, P, Q > > state)
 Full constructor.
 CPPWilsonDslashF (Handle< FermState< T, P, Q > > state, const AnisoParam_t &aniso_)
 Full constructor with anisotropy.
 CPPWilsonDslashF (Handle< FermState< T, P, Q > > state, const multi1d< Real > &coeffs_)
 Full constructor with general coefficients.
void create (Handle< FermState< T, P, Q > > state)
 Creation routine.
void create (Handle< FermState< T, P, Q > > state, const AnisoParam_t &aniso_)
 Creation routine with anisotropy.
void create (Handle< FermState< T, P, Q > > state, const multi1d< Real > &coeffs_)
 Full constructor with general coefficients.
 ~CPPWilsonDslashF ()
 No real need for cleanup here.
void apply (T &chi, const T &psi, enum PlusMinus isign, int cb) const
 General Wilson-Dirac dslash.
const FermBC< T, P, Q > & getFermBC () const
 Return the fermion BC object for this linear operator.

Protected Member Functions

const multi1d< Real > & getCoeffs () const
 Get the anisotropy parameters.
void init ()
 Initialization routine.

Private Attributes

multi1d< Real > coeffs
multi1d< PrimitiveSU3MatrixF > packed_gauge
Handle< FermBC< T, P, Q > > fbc
Handle< Dslash< float > > D

Detailed Description

General Wilson-Dirac dslash.

DSLASH

This routine is specific to Wilson fermions!

Description:

This routine applies the operator D' to Psi, putting the result in Chi.

Nd-1 --- \ chi(x) := > U (x) (1 - isign gamma ) psi(x+mu) / mu mu --- mu=0

Nd-1 --- \ + + > U (x-mu) (1 + isign gamma ) psi(x-mu) / mu mu --- mu=0

Definition at line 50 of file lwldslash_w_cppf.h.


Member Typedef Documentation

typedef multi1d<LatticeColorMatrixF> Chroma::CPPWilsonDslashF::P

Definition at line 57 of file lwldslash_w_cppf.h.

typedef multi1d<LatticeColorMatrixF> Chroma::CPPWilsonDslashF::Q

Definition at line 58 of file lwldslash_w_cppf.h.

typedef LatticeFermionF Chroma::CPPWilsonDslashF::T

Definition at line 56 of file lwldslash_w_cppf.h.


Constructor & Destructor Documentation

Chroma::CPPWilsonDslashF::CPPWilsonDslashF (  ) 

Empty constructor.

Definition at line 30 of file lwldslash_w_cppf.cc.

References init().

Chroma::CPPWilsonDslashF::CPPWilsonDslashF ( Handle< FermState< T, P, Q > >  state  ) 

Full constructor.

Definition at line 36 of file lwldslash_w_cppf.cc.

References create(), init(), and Chroma::state.

Chroma::CPPWilsonDslashF::CPPWilsonDslashF ( Handle< FermState< T, P, Q > >  state,
const AnisoParam_t aniso_ 
)

Full constructor with anisotropy.

Definition at line 43 of file lwldslash_w_cppf.cc.

References create(), init(), and Chroma::state.

Chroma::CPPWilsonDslashF::CPPWilsonDslashF ( Handle< FermState< T, P, Q > >  state,
const multi1d< Real > &  coeffs_ 
)

Full constructor with general coefficients.

Definition at line 51 of file lwldslash_w_cppf.cc.

References create(), init(), and Chroma::state.

Chroma::CPPWilsonDslashF::~CPPWilsonDslashF (  ) 

No real need for cleanup here.

Definition at line 124 of file lwldslash_w_cppf.cc.

References END_CODE, and START_CODE.


Member Function Documentation

void Chroma::CPPWilsonDslashF::create ( Handle< FermState< T, P, Q > >  state,
const multi1d< Real > &  coeffs_ 
)

Full constructor with general coefficients.

Definition at line 78 of file lwldslash_w_cppf.cc.

References coeffs, END_CODE, fbc, packed_gauge, START_CODE, Chroma::state, and u.

void Chroma::CPPWilsonDslashF::create ( Handle< FermState< T, P, Q > >  state,
const AnisoParam_t aniso_ 
)

Creation routine with anisotropy.

Definition at line 67 of file lwldslash_w_cppf.cc.

References create(), END_CODE, Chroma::makeFermCoeffs(), START_CODE, and Chroma::state.

void Chroma::CPPWilsonDslashF::create ( Handle< FermState< T, P, Q > >  state  ) 

Creation routine.

Definition at line 59 of file lwldslash_w_cppf.cc.

References Chroma::state.

Referenced by CPPWilsonDslashF(), and create().

const multi1d<Real>& Chroma::CPPWilsonDslashF::getCoeffs (  )  const [inline, protected, virtual]

Get the anisotropy parameters.

Implements Chroma::WilsonDslashBase< LatticeFermionF, multi1d< LatticeColorMatrixF >, multi1d< LatticeColorMatrixF > >.

Definition at line 106 of file lwldslash_w_cppf.h.

References coeffs.

const FermBC<T,P,Q>& Chroma::CPPWilsonDslashF::getFermBC (  )  const [inline, virtual]

Return the fermion BC object for this linear operator.

Implements Chroma::DslashLinearOperator< T, P, Q >.

Definition at line 102 of file lwldslash_w_cppf.h.

References fbc.

Referenced by apply().

void Chroma::CPPWilsonDslashF::init (  )  [protected]

Initialization routine.

Definition at line 18 of file lwldslash_w_cppf.cc.

References D.

Referenced by CPPWilsonDslashF().


Member Data Documentation

multi1d<Real> Chroma::CPPWilsonDslashF::coeffs [private]

Nd array of coefficients of terms in the action

Definition at line 112 of file lwldslash_w_cppf.h.

Referenced by create(), and getCoeffs().

Handle< Dslash<float> > Chroma::CPPWilsonDslashF::D [private]

Definition at line 115 of file lwldslash_w_cppf.h.

Referenced by init().

Handle< FermBC<T,P,Q> > Chroma::CPPWilsonDslashF::fbc [private]

Definition at line 114 of file lwldslash_w_cppf.h.

Referenced by create(), and getFermBC().

multi1d<PrimitiveSU3MatrixF> Chroma::CPPWilsonDslashF::packed_gauge [private]

Definition at line 113 of file lwldslash_w_cppf.h.

Referenced by apply(), and create().


The documentation for this class was generated from the following files:
Generated on Sun Mar 14 04:40:20 2010 for CHROMA by  doxygen 1.4.7