CHROMA
asqtad_mdagm_s.cc
Go to the documentation of this file.
1 /*! \file
2  * \brief Unpreconditioned Wilson linear operator
3  */
4 // NEW $Id: asqtad_linop.cc 2003/11/13 steve
5 
6 #include "chromabase.h"
8 
9 using namespace QDP::Hints;
10 namespace Chroma
11 {
12  //! Creation routine
13  /*! \ingroup fermact
14  *
15  * \param _u_fat fat7 links (Read)
16  * \param _u_triple triple links (Read)
17  * \param _Mass fermion mass (Read)
18  */
19  void AsqtadMdagM::create(Handle<AsqtadConnectStateBase> state,
20  const Real& Mass_)
21  {
22  Mass = Mass_;
23 
24  // We wire them into D so we don't need to keep them
25  // u_fat = _u_fat;
26  // u_triple = _u_triple;
27  D.create(state);
28  }
29 
30 
31  //! Apply Asqtad staggered fermion linear operator
32  /*!
33  * \ingroup linop
34  *
35  * The operator acts on the checkerboarded lattice
36  *
37  * \param psi Pseudofermion field (Read)
38  * \param isign Flag ( PLUS | MINUS ) (Read)
39  * \param cb Checkerboard of OUTPUT VECTOR (Read)
40  */
41  void AsqtadMdagM::operator()(LatticeStaggeredFermion& chi,
42  const LatticeStaggeredFermion& psi,
43  enum PlusMinus isign) const
44  {
45  START_CODE();
46 
47  Real mass_sq = Mass*Mass;
48  LatticeStaggeredFermion tmp1, tmp2;
49  moveToFastMemoryHint(tmp1);
50  moveToFastMemoryHint(tmp2);
51 
52  tmp1 = tmp2 = zero;
53 
54  //
55  // Chi = 4m**2 Psi - D' D' Psi
56  // E E EO OE
57 
58  D.apply(tmp1, psi, isign, 1);
59  D.apply(tmp2, tmp1, isign, 0);
60 
61  chi[rb[0]] = 4*mass_sq*psi - tmp2;
62 
63  END_CODE();
64  }
65 
66 } // End Namespace Chroma
67 
Unpreconditioned Wilson fermion linear operator.
Primary include file for CHROMA library code.
#define END_CODE()
Definition: chromabase.h:65
#define START_CODE()
Definition: chromabase.h:64
Class for counted reference semantics.
Definition: handle.h:33
Real Mass
Double tmp2
Definition: mesq.cc:30
multi1d< Hadron2PtContraction_t > operator()(const multi1d< LatticeColorMatrix > &u)
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state
Definition: pbg5p_w.cc:28
Double zero
Definition: invbicg.cc:106
chi
Definition: pade_trln_w.cc:24
psi
Definition: pade_trln_w.cc:191