Bridge++  Version 1.4.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
director_Smear.h
Go to the documentation of this file.
1 
15 #ifndef DIRECTOR_SMEAR_INCLUDED
16 #define DIRECTOR_SMEAR_INCLUDED
17 
18 #include <cassert>
19 
20 #include "Tools/director.h"
21 #include "smear.h"
22 #include "Field/field_G.h"
23 
24 
25 #include "IO/bridgeIO.h"
26 using Bridge::vout;
27 
28 
30 
40 class Director_Smear : public Director
41 {
42  public:
43  static const std::string class_name;
44 
45  private:
46  int m_Nsmear;
49  std::vector<Field_G> m_Usmear;
51 
52  public:
53 
56  : Director()
57  {
58  m_Nsmear = 0;
59  m_smear = smear;
60  m_U = 0;
61  m_status_linkv = 0;
62  }
63 
65  : Director()
66  {
67  m_Nsmear = 0;
68  m_smear = smear.get();
69  m_U = 0;
70  m_status_linkv = 0;
71  }
72 
74  void set_parameters(const Parameters& params);
75  void set_parameters(int Nsmear);
76 
78  int get_Nsmear() { return m_Nsmear; }
79 
81  Field *getptr_smearedConfig(int i_smear);
82 
83  Field_G *get_config(); // smeared config
84  Field_G *get_config(const int i_smear); // intermediate config
85 
87  void set_config(Field *U);
89 
91  void notify_linkv()
92  {
93  m_status_linkv = 0;
94  }
95 
96  private:
98  void smear();
99 };
100 #endif
void smear()
smearing is performed by calling a function of Smear object
BridgeIO vout
Definition: bridgeIO.cpp:495
Container of Field-type object.
Definition: field.h:39
Class for parameters.
Definition: parameters.h:46
void notify_linkv()
to be called when configuration is updated
SU(N) gauge field.
Definition: field_G.h:38
Manager of commonly used data object in HMC.
Definition: director.h:37
Field * getptr_smearedConfig(int i_smear)
get pointer to i-th smeared config (0th is original thin link)
Smear * m_smear
smearing operator
pointer get() const
std::vector< Field_G > m_Usmear
smeared configs.
void set_config(Field *U)
set pointer to original thin link variable
int m_status_linkv
set to zero when link var. is updated
int get_Nsmear()
get number of applied smearing operation
Director_Smear(unique_ptr< Smear > &smear)
Manager of smeared configurations.
void set_parameters(const Parameters &params)
set parameters, must be called before set_config
Director_Smear(Smear *smear)
constructor requires pointer to Smear object
static const std::string class_name
Field_G * get_config()
base class for smearing of link variables.
Definition: smear.h:36
int m_Nsmear
number of smearing to be applied
Field_G * m_U
original thin link var.