Bridge++  Ver. 2.0.2
smear_APE_SF.h
Go to the documentation of this file.
1 
14 #ifndef SMEAR_APE_SF_INCLUDED
15 #define SMEAR_APE_SF_INCLUDED
16 
17 #include "smear.h"
18 
20 #include "lib/Field/field_G.h"
21 
22 #include "IO/bridgeIO.h"
23 using Bridge::vout;
24 
26 
36 class Smear_APE_SF : public Smear
37 {
38  public:
39  static const std::string class_name;
40 
41  private:
43 
44  int m_Ndim;
45  std::valarray<double> m_rho;
47 
48  std::vector<double> m_phi;
49  std::vector<double> m_phipr;
50 
53 
54  public:
56  : m_vl(CommonParameters::Vlevel()),
57  m_Ndim(CommonParameters::Ndim()), m_rho(0.0, m_Ndim * m_Ndim),
59  m_proj(proj) {}
60 
61  Smear_APE_SF(Projection *proj, const Parameters& params)
62  : m_vl(CommonParameters::Vlevel()),
63  m_Ndim(CommonParameters::Ndim()), m_rho(0.0, m_Ndim * m_Ndim),
65  m_proj(proj)
66  { set_parameters(params); }
67 
69 
70  void set_parameters(const Parameters& params);
71 
72  void set_parameters(const double rho1,
73  const std::vector<double>& phi,
74  const std::vector<double>& phipr);
75 
76  void set_parameters(const std::vector<double>& rho,
77  const std::vector<double>& phi,
78  const std::vector<double>& phipr);
79 
80  void get_parameters(Parameters& params) const;
81 
82  void smear(Field_G& Usmear, const Field_G& U);
83 
84 #ifdef USE_FACTORY
85  private:
86  static Smear *create_object(Projection *proj)
87  {
88  return new Smear_APE_SF(proj);
89  }
90 
91  static Smear *create_object_with_params(Projection *proj, const Parameters& params)
92  {
93  return new Smear_APE_SF(proj, params);
94  }
95 
96  public:
97  static bool register_factory()
98  {
99  bool init = true;
100  init &= Smear::Factory::Register("APE_SF", create_object);
101  init &= Smear::Factory_params::Register("APE_SF", create_object_with_params);
102  return init;
103  }
104 #endif
105 };
106 
107 #endif
bridgeIO.h
Smear_APE_SF
APE type smearing of link variables.
Definition: smear_APE_SF.h:36
field_G.h
CommonParameters
Common parameter class: provides parameters as singleton.
Definition: commonParameters.h:42
Smear_APE_SF::get_parameters
void get_parameters(Parameters &params) const
Definition: smear_APE_SF.cpp:51
Parameters
Class for parameters.
Definition: parameters.h:46
Smear
base class for smearing of link variables.
Definition: smear.h:34
Smear_APE_SF::m_phipr
std::vector< double > m_phipr
SF boundary condition at t=Nt.
Definition: smear_APE_SF.h:49
Smear_APE_SF::m_Ndim
int m_Ndim
Definition: smear_APE_SF.h:44
Smear_APE_SF::m_phi
std::vector< double > m_phi
SF boundary condition at t=0.
Definition: smear_APE_SF.h:48
Smear_APE_SF::Smear_APE_SF
Smear_APE_SF(Projection *proj)
Definition: smear_APE_SF.h:55
Smear_APE_SF::~Smear_APE_SF
~Smear_APE_SF()
Definition: smear_APE_SF.h:68
SU_N::Mat_SU_N
Definition: mat_SU_N.h:36
Smear_APE_SF::m_rho
std::valarray< double > m_rho
Definition: smear_APE_SF.h:45
staple_SF.h
Smear_APE_SF::m_vl
Bridge::VerboseLevel m_vl
Definition: smear_APE_SF.h:42
Smear_APE_SF::m_wkpr
Mat_SU_N m_wkpr
SF boundary condition at t=Nt.
Definition: smear_APE_SF.h:52
smear.h
Smear_APE_SF::m_wk
Mat_SU_N m_wk
SF boundary condition at t=0.
Definition: smear_APE_SF.h:51
Projection
base class for projection operator into gauge group.
Definition: projection.h:30
Smear_APE_SF::Smear_APE_SF
Smear_APE_SF(Projection *proj, const Parameters &params)
Definition: smear_APE_SF.h:61
Smear_APE_SF::class_name
static const std::string class_name
Definition: smear_APE_SF.h:39
Smear_APE_SF::set_parameters
void set_parameters(const Parameters &params)
Definition: smear_APE_SF.cpp:25
Bridge::VerboseLevel
VerboseLevel
Definition: bridgeIO.h:42
Field_G
SU(N) gauge field.
Definition: field_G.h:38
Smear_APE_SF::m_proj
Projection * m_proj
Definition: smear_APE_SF.h:46
Smear_APE_SF::smear
void smear(Field_G &Usmear, const Field_G &U)
Definition: smear_APE_SF.cpp:148
Bridge::vout
BridgeIO vout
Definition: bridgeIO.cpp:512