Bridge++  Ver.2.1.3
smear_APE.h
Go to the documentation of this file.
1 
10 #ifndef SMEAR_APE_INCLUDED
11 #define SMEAR_APE_INCLUDED
12 
13 #include "lib/Smear/smear.h"
15 #include "lib/IO/bridgeIO.h"
16 using Bridge::vout;
17 
18 
20 
38 class Smear_APE : public Smear
39 {
40  public:
41  static const std::string class_name;
42 
43  private:
44  int m_Ndim;
45  int m_Nvol;
46  std::vector<double> m_rho;
48 
50 
52 
56 
57  public:
60  : m_proj(proj)
61  { init(); }
62 
64  Smear_APE(Projection *proj, const Parameters& params)
65  : m_proj(proj)
66  { init(params); }
67 
70 
72  void set_parameters(const Parameters& params);
73 
75  void set_parameters(const double rho1);
76 
78  void set_parameters(const std::vector<double>& rho);
79 
81  void get_parameters(Parameters& params) const;
82 
84  void smear(Field_G& Usmear, const Field_G& U);
85 
86  private:
88  void init(const Parameters& params);
89 
91  void init();
92 
94  void tidyup();
95 
96  int index(const int mu, const int nu)
97  { return mu + m_Ndim * nu; }
98 
99 #ifdef USE_FACTORY
100  private:
101  static Smear *create_object(Projection *proj)
102  { return new Smear_APE(proj); }
103 
104  static Smear *create_object_with_params(Projection *proj,
105  const Parameters& params)
106  { return new Smear_APE(proj, params); }
107 
108  public:
109  static bool register_factory()
110  {
111  bool init = true;
112  init &= Smear::Factory::Register("APE", create_object);
113  init &= Smear::Factory_params::Register("APE", create_object_with_params);
114  return init;
115  }
116 #endif
117 };
118 #endif
bridgeIO.h
Smear_APE::m_vl
Bridge::VerboseLevel m_vl
Definition: smear_APE.h:47
Smear_APE::m_Ndim
int m_Ndim
spacetime dimension
Definition: smear_APE.h:44
Parameters
Class for parameters.
Definition: parameters.h:46
Smear_APE::set_parameters
void set_parameters(const Parameters &params)
Setting parameters with Parameters object.
Definition: smear_APE.cpp:102
Smear_APE::smear
void smear(Field_G &Usmear, const Field_G &U)
Smearing of a given gauge field.
Definition: smear_APE.cpp:180
Smear_APE::class_name
static const std::string class_name
Definition: smear_APE.h:41
Smear_APE::m_staple
Staple_lex * m_staple
Definition: smear_APE.h:51
Smear_APE::m_Nvol
int m_Nvol
spacetime volume
Definition: smear_APE.h:45
Smear_APE::Smear_APE
Smear_APE(Projection *proj, const Parameters &params)
Constructor with parameters.
Definition: smear_APE.h:64
Smear_APE::Smear_APE
DEPRECATED Smear_APE(Projection *proj)
Definition: smear_APE.h:59
Smear_APE::~Smear_APE
~Smear_APE()
Deconstructor.
Definition: smear_APE.h:69
Smear_APE::m_ut1
Field_G * m_ut1
Definition: smear_APE.h:54
staple_lex.h
Smear_APE::m_ct
Field_G * m_ct
Definition: smear_APE.h:53
ASmear
Base template class for smearing of link variables.
Definition: asmear.h:31
Smear_APE
APE type smearing of link variables.
Definition: smear_APE.h:38
AProjection
Base template class for projection operator into gauge group.
Definition: aprojection.h:31
Smear_APE::init
void init()
Obsolete initial setup.
Definition: smear_APE.cpp:59
Smear_APE::m_proj
Projection * m_proj
projector to group element
Definition: smear_APE.h:49
Smear_APE::m_rho
std::vector< double > m_rho
smearing parameter
Definition: smear_APE.h:46
Smear_APE::tidyup
void tidyup()
Final clean-up.
Definition: smear_APE.cpp:89
Staple_lex
Staple construction.
Definition: staple_lex.h:39
smear.h
Bridge::VerboseLevel
VerboseLevel
Definition: bridgeIO.h:45
Field_G
SU(N) gauge field.
Definition: field_G.h:38
Smear_APE::m_ut2
Field_G * m_ut2
Definition: smear_APE.h:55
Smear_APE::get_parameters
void get_parameters(Parameters &params) const
Getting parameters by Parameters object.
Definition: smear_APE.cpp:171
DEPRECATED
#define DEPRECATED
Definition: configure.h:28
Bridge::vout
BridgeIO vout
Definition: bridgeIO.cpp:572
Smear_APE::index
int index(const int mu, const int nu)
Definition: smear_APE.h:96