Bridge++  Ver. 1.2.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
topologicalCharge.h
Go to the documentation of this file.
1 
14 #ifndef TOPOLOGICALCHARGE_INCLUDED
15 #define TOPOLOGICALCHARGE_INCLUDED
16 
17 #include "staples.h"
18 #include "shiftField_lex.h"
19 
20 #include "bridgeIO.h"
21 using Bridge::vout;
22 
24 
31 //- parameters class
33 {
34  public:
36 };
37 //- end
38 
40 {
41  public:
42  static const std::string class_name;
43 
44  protected:
46 
47 
48  private:
49  double m_c_plaq;
50  double m_c_rect;
51 
53 
54 
55  public:
57  : m_vl(CommonParameters::Vlevel()) {}
58 
59  virtual ~TopologicalCharge() {}
60 
62  virtual void set_parameters(const Parameters& params);
63 
64  void set_parameters(double c_plaq, double c_rect);
65 
67 
69  double measure(Field_G& U);
70 
71 
72  private:
73  void construct_Fmunu_1x1(Field_G& Fmunu, int mu, int nu, Field_G& U);
74  void construct_Fmunu_1x2(Field_G& Fmunu, int mu, int nu, Field_G& U);
75 
76  double contract_epsilon_tensor(Field_G& Fmunu_1, Field_G& Fmunu_2);
77 };
78 #endif
BridgeIO vout
Definition: bridgeIO.cpp:207
static const std::string class_name
double measure(Field_G &U)
main function to measure Topological Charge.
ShiftField_lex m_shift
void set_parameter_verboselevel(const Bridge::VerboseLevel vl)
void construct_Fmunu_1x2(Field_G &Fmunu, int mu, int nu, Field_G &U)
void construct_Fmunu_1x1(Field_G &Fmunu, int mu, int nu, Field_G &U)
Class for parameters.
Definition: parameters.h:40
double contract_epsilon_tensor(Field_G &Fmunu_1, Field_G &Fmunu_2)
SU(N) gauge field.
Definition: field_G.h:36
Common parameter class: provides parameters as singleton.
Bridge::VerboseLevel m_vl
Bridge::VerboseLevel vl
Definition: checker.cpp:18
VerboseLevel
Definition: bridgeIO.h:25
virtual void set_parameters(const Parameters &params)
setting parameters.
Methods to shift a field in the lexical site index.
virtual ~TopologicalCharge()
Topological Charge measurement.