Bridge++  Ver. 2.0.2
smear_APE_spatial.h
Go to the documentation of this file.
1 
14 #ifndef SMEAR_APE_SPATIAL_INCLUDED
15 #define SMEAR_APE_SPATIAL_INCLUDED
16 
17 #include "smear.h"
18 
20 
21 #include "IO/bridgeIO.h"
22 using Bridge::vout;
23 
24 
26 
40 class Smear_APE_spatial : public Smear
41 {
42  public:
43  static const std::string class_name;
44 
45  private:
47 
48  int m_Ndim;
49  double m_rho;
51 
52  public:
55  : m_vl(CommonParameters::Vlevel()),
56  m_Ndim(CommonParameters::Ndim()),
57  m_proj(proj) {}
58 
59  Smear_APE_spatial(Projection *proj, const Parameters& params)
60  : m_vl(CommonParameters::Vlevel()),
61  m_Ndim(CommonParameters::Ndim()),
62  m_proj(proj)
63  {
64  set_parameters(params);
65  }
66 
69 
71  void set_parameters(const Parameters& params);
72 
74  void set_parameters(const double rho);
75 
77  void get_parameters(Parameters& params) const;
78 
80  void smear(Field_G& Usmear, const Field_G& U);
81 
82  private:
83 
84 #ifdef USE_FACTORY
85  private:
86  static Smear *create_object(Projection *proj)
87  {
88  return new Smear_APE_spatial(proj);
89  }
90 
91  static Smear *create_object_with_params(Projection *proj, const Parameters& params)
92  {
93  return new Smear_APE_spatial(proj, params);
94  }
95 
96  public:
97  static bool register_factory()
98  {
99  bool init = true;
100  init &= Smear::Factory::Register("APE_spatial", create_object);
101  init &= Smear::Factory_params::Register("APE_spatial", create_object_with_params);
102  return init;
103  }
104 #endif
105 };
106 #endif
bridgeIO.h
CommonParameters
Common parameter class: provides parameters as singleton.
Definition: commonParameters.h:42
Smear_APE_spatial::get_parameters
void get_parameters(Parameters &params) const
Getting parameters by Parameters object.
Definition: smear_APE_spatial.cpp:48
Parameters
Class for parameters.
Definition: parameters.h:46
Smear
base class for smearing of link variables.
Definition: smear.h:34
Smear_APE_spatial::m_proj
Projection * m_proj
projector to group element.
Definition: smear_APE_spatial.h:50
Smear_APE_spatial
APE type smearing of spatial link variables.
Definition: smear_APE_spatial.h:40
Smear_APE_spatial::Smear_APE_spatial
Smear_APE_spatial(Projection *proj, const Parameters &params)
Definition: smear_APE_spatial.h:59
Smear_APE_spatial::m_vl
Bridge::VerboseLevel m_vl
Definition: smear_APE_spatial.h:46
Smear_APE_spatial::class_name
static const std::string class_name
Definition: smear_APE_spatial.h:43
Smear_APE_spatial::m_Ndim
int m_Ndim
spacetime dimension
Definition: smear_APE_spatial.h:48
Smear_APE_spatial::Smear_APE_spatial
Smear_APE_spatial(Projection *proj)
Constructor requires a pointer to Projection object.
Definition: smear_APE_spatial.h:54
Smear_APE_spatial::smear
void smear(Field_G &Usmear, const Field_G &U)
Smearing of a given gauge field.
Definition: smear_APE_spatial.cpp:72
staple_lex.h
Smear_APE_spatial::~Smear_APE_spatial
~Smear_APE_spatial()
Deconstructor.
Definition: smear_APE_spatial.h:68
smear.h
Smear_APE_spatial::set_parameters
void set_parameters(const Parameters &params)
Setting parameters with Parameters object.
Definition: smear_APE_spatial.cpp:25
Projection
base class for projection operator into gauge group.
Definition: projection.h:30
Smear_APE_spatial::m_rho
double m_rho
smearing parameter
Definition: smear_APE_spatial.h:49
Bridge::VerboseLevel
VerboseLevel
Definition: bridgeIO.h:42
Field_G
SU(N) gauge field.
Definition: field_G.h:38
Bridge::vout
BridgeIO vout
Definition: bridgeIO.cpp:512