CHROMA
baryon_operator.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Construct baryon operator
4  */
5 
6 #ifndef __baryon_operator_h__
7 #define __baryon_operator_h__
8 
9 #include "chromabase.h"
10 
11 namespace Chroma
12 {
13  //! Construct baryon operators
14  /*! @ingroup hadron
15  *
16  */
17  template<typename T>
19  {
20  public:
21  //! Virtual destructor to help with cleanup;
22  virtual ~BaryonOperator() {}
23 
24  //! Construct the operator (do the contractions)
25  virtual multi1d<LatticeComplex> operator()(const T& quark1,
26  const T& quark2,
27  const T& quark3,
28  enum PlusMinus isign) const = 0;
29 
30  virtual LatticeComplex operator()(const T& quark1,
31  const T& quark2,
32  const T& quark3) const = 0;
33 
34  virtual multi1d<LatticeComplex> operator()(const T& quark1,
35  const T& quark2,
36  const T& quark3,
37  int* qindices,
38  enum PlusMinus isign) const = 0;
39 
40  virtual LatticeComplex operator()(const T& quark1,
41  const T& quark2,
42  const T& quark3,
43  int* qindices) const = 0;
44 
45  };
46 
47 }
48 
49 
50 #endif
Primary include file for CHROMA library code.
Construct baryon operators.
virtual LatticeComplex operator()(const T &quark1, const T &quark2, const T &quark3) const =0
virtual ~BaryonOperator()
Virtual destructor to help with cleanup;.
virtual LatticeComplex operator()(const T &quark1, const T &quark2, const T &quark3, int *qindices) const =0
virtual multi1d< LatticeComplex > operator()(const T &quark1, const T &quark2, const T &quark3, enum PlusMinus isign) const =0
Construct the operator (do the contractions)
virtual multi1d< LatticeComplex > operator()(const T &quark1, const T &quark2, const T &quark3, int *qindices, enum PlusMinus isign) const =0
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
LinOpSysSolverMGProtoClover::T T