Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
staple_lex.h
Go to the documentation of this file.
1 
14 #ifndef STAPLE_LEX_INCLUDED
15 #define STAPLE_LEX_INCLUDED
16 
17 #include "staple.h"
18 
19 #include "Field/shiftField_lex.h"
20 
21 #include "IO/bridgeIO.h"
22 
24 
39 class Staple_lex : public Staple
40 {
41  public:
42  static const std::string class_name;
43 
44  private:
45  std::string m_filename_output;
46 
49 
50  public:
52  {
53  m_filename_output = "stdout";
54  m_shift = new ShiftField_lex;
55  }
56 
58  {
59  delete m_shift;
60  }
61 
63  void set_parameters(const Parameters& params);
64 
66  void upper(Field_G&, const Field_G&, const int mu, const int nu);
67 
69  void lower(Field_G&, const Field_G&, const int mu, const int nu);
70 
72  void staple(Field_G&, const Field_G&, const int mu);
73 
75  double plaquette(const Field_G&);
76 
78  double plaq_s(const Field_G&);
79 
81  double plaq_t(const Field_G&);
82 
83 #ifdef USE_FACTORY
84  private:
85  static Staple *create_object()
86  {
87  return new Staple_lex();
88  }
89 
90  public:
91  static bool register_factory()
92  {
93  return Staple::Factory::Register("Lexical", create_object);
94  }
95 #endif
96 };
97 #endif
Field_G m_staple
Definition: staple_lex.h:48
std::string m_filename_output
Definition: staple_lex.h:45
double plaquette(const Field_G &)
calculates plaquette value.
Definition: staple_lex.cpp:38
double plaq_t(const Field_G &)
calculates temporal plaquette value.
Definition: staple_lex.cpp:95
Class for parameters.
Definition: parameters.h:46
void staple(Field_G &, const Field_G &, const int mu)
constructs staple in mu-direction (summing up nu-direction).
Definition: staple_lex.cpp:128
void lower(Field_G &, const Field_G &, const int mu, const int nu)
constructs lower staple in mu-nu plane.
Definition: staple_lex.cpp:177
static const std::string class_name
Definition: staple_lex.h:42
Staple construction.
Definition: staple_lex.h:39
SU(N) gauge field.
Definition: field_G.h:38
void upper(Field_G &, const Field_G &, const int mu, const int nu)
constructs upper staple in mu-nu plane.
Definition: staple_lex.cpp:151
ShiftField_lex * m_shift
Definition: staple_lex.h:47
double plaq_s(const Field_G &)
calculates spatial plaquette value.
Definition: staple_lex.cpp:62
Methods to shift a field in the lexical site index.
Base class for Staple construction.
Definition: staple.h:33
Field_G m_v
Definition: staple_lex.h:48
Field_G m_w
temporary fields.
Definition: staple_lex.h:48
void set_parameters(const Parameters &params)
setting parameters.
Definition: staple_lex.cpp:25