CHROMA
no_quark_smearing.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief No quark smearing
4  */
5 
6 #ifndef __no_quark_smearing_h__
7 #define __no_quark_smearing_h__
8 
10 
11 namespace Chroma
12 {
13  //! Name and registration
14  /*! @ingroup smear */
15  namespace NoQuarkSmearingEnv
16  {
17  bool registerAll();
18 
19  //! Return the name
21 
22  //! Params for No quark smearing
23  /*! @ingroup smear */
24  struct Params
25  {
26  Params() {}
27  Params(XMLReader& in, const std::string& path);
28  void writeXML(XMLWriter& in, const std::string& path) const;
29  };
30 
31 
32  //! No quark smearing
33  /*! @ingroup smear
34  *
35  * No quark smearing object
36  */
37  template<typename T>
38  class QuarkSmear : public QuarkSmearing<T>
39  {
40  public:
41  //! Full constructor
42  QuarkSmear(const Params& p) : params(p) {}
43 
44  //! Smear the quark
45  void operator()(T& quark, const multi1d<LatticeColorMatrix>& u) const;
46 
47  private:
48  //! Hide partial constructor
50 
51  private:
52  Params params; /*!< smearing params */
53  };
54 
55  } // end namespace
56 
57  //! Reader
58  /*! @ingroup smear */
59  void read(XMLReader& xml, const std::string& path, NoQuarkSmearingEnv::Params& param);
60 
61  //! Writer
62  /*! @ingroup smear */
63  void write(XMLWriter& xml, const std::string& path, const NoQuarkSmearingEnv::Params& param);
64 
65 } // end namespace Chroma
66 
67 #endif
void operator()(T &quark, const multi1d< LatticeColorMatrix > &u) const
Smear the quark.
QuarkSmear()
Hide partial constructor.
QuarkSmear(const Params &p)
Full constructor.
Base class for quark smearing.
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams &param)
Read parameters.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams &param)
Writer parameters.
bool registerAll()
Register all the factories.
std::string getName()
Return the name.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
static multi1d< LatticeColorMatrix > u
LinOpSysSolverMGProtoClover::T T
static QDP_ColorVector * in
::std::string string
Definition: gtest.h:1979
Quark smearing.
Params for No quark smearing.
void writeXML(XMLWriter &in, const std::string &path) const
Parameters for running code.