CHROMA
phase_stout_link_smearing.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Stout link smearing
4  */
5 
6 #ifndef __phase_stout_link_smearing_h__
7 #define __phase_stout_link_smearing_h__
8 
11 
12 namespace Chroma
13 {
14 
15  //! Name and registration
16  namespace PhaseStoutLinkSmearingEnv
17  {
18  bool registerAll();
19 
20  //! Return the name
22 
23  //! Params for Stout link smearing
24  /*! @ingroup smear */
26  {
27  public:
28  Params(): StoutLinkSmearingEnv::Params() {}
29  Params(XMLReader& in, const std::string& path);
30  void writeXML(XMLWriter& in, const std::string& path) const;
31 
32  multi1d<int> k;
33  Real zeta ;
34  };
35 
36 
37 
38  //! Stout link smearing
39  /*! @ingroup smear
40  *
41  * Stout link smearing object
42  */
43  class LinkSmear : public LinkSmearing
44  {
45  public:
46  //! Full constructor
47  LinkSmear(const Params& p) : params(p) {}
48 
49  //! Smear the links
50  void operator()(multi1d<LatticeColorMatrix>& u) const;
51 
52  private:
53  //! Hide partial constructor
54  LinkSmear() {}
55 
56  private:
57  Params params; /*!< smearing params */
58  };
59 
60  } // end namespace
61 
62 
63  //! Reader
64  /*! @ingroup smear */
65  void read(XMLReader& xml, const std::string& path, PhaseStoutLinkSmearingEnv::Params& param);
66 
67  //! Writer
68  /*! @ingroup smear */
69  void write(XMLWriter& xml, const std::string& path, const PhaseStoutLinkSmearingEnv::Params& param);
70 
71 } // end namespace Chroma
72 
73 
74 #endif
Base class for link smearing.
Definition: link_smearing.h:19
void operator()(multi1d< LatticeColorMatrix > &u) const
Smear the links.
void writeXML(XMLWriter &in, const std::string &path) const
Parameters for running code.
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
static QDP_ColorVector * in
::std::string string
Definition: gtest.h:1979
Params for Stout link smearing.