Bridge++  Ver. 2.0.2
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:
46 
47  std::string m_filename_output;
48 
50 
54 
56 
57  public:
58  Staple_lex() { init(); }
59 
60  // optional
61  Staple_lex(const Parameters& params) { init(params); }
62 
64 
66  void set_parameters(const Parameters& params);
67 
69  void get_parameters(Parameters& params) const;
70 
72  void upper(Field_G&, const Field_G&, const int mu, const int nu);
73 
75  void lower(Field_G&, const Field_G&, const int mu, const int nu);
76 
78  void staple(Field_G&, const Field_G&, const int mu);
79 
81  double plaquette(const Field_G&);
82 
84  double plaq_s(const Field_G&);
85 
87  double plaq_t(const Field_G&);
88 
89 
90  private:
91 
92  void init(const Parameters& params);
93 
94  void init();
95 
96  void setup();
97 
98  void tidyup();
99 
100  double plaq_s_omp(const Field_G&);
101 
102  double plaq_t_omp(const Field_G&);
103 
104  double plaq_s_impl(const Field_G&);
105 
106  double plaq_t_impl(const Field_G&);
107 
108 
109 #ifdef USE_FACTORY
110  private:
111  static Staple *create_object()
112  {
113  return new Staple_lex();
114  }
115 
116  public:
117  static bool register_factory()
118  {
119  return Staple::Factory::Register("Lexical", create_object);
120  }
121 #endif
122 };
123 #endif
Staple_lex::m_w1
Field_G m_w1
Definition: staple_lex.h:52
bridgeIO.h
Staple_lex::plaq_s_impl
double plaq_s_impl(const Field_G &)
Definition: staple_lex.cpp:181
Staple_lex::plaq_t
double plaq_t(const Field_G &)
calculates temporal plaquette value.
Definition: staple_lex.cpp:132
Staple_lex::m_Umu
Field_G m_Umu
Definition: staple_lex.h:51
Parameters
Class for parameters.
Definition: parameters.h:46
Staple_lex::staple
void staple(Field_G &, const Field_G &, const int mu)
constructs staple in mu-direction (summing up nu-direction).
Definition: staple_lex.cpp:239
Staple_lex::plaq_t_omp
double plaq_t_omp(const Field_G &)
Definition: staple_lex.cpp:165
Staple_lex::plaquette
double plaquette(const Field_G &)
calculates plaquette value.
Definition: staple_lex.cpp:89
Staple_lex::set_parameters
void set_parameters(const Parameters &params)
setting parameters.
Definition: staple_lex.cpp:66
Staple_lex::init
void init()
Definition: staple_lex.cpp:36
shiftField_lex.h
Staple_lex::m_Nvol
int m_Nvol
Definition: staple_lex.h:55
Staple_lex::m_vl
Bridge::VerboseLevel m_vl
Definition: staple_lex.h:45
Staple_lex::class_name
static const std::string class_name
Definition: staple_lex.h:42
Staple_lex::m_Nc
int m_Nc
Definition: staple_lex.h:55
Staple_lex::lower
void lower(Field_G &, const Field_G &, const int mu, const int nu)
constructs lower staple in mu-nu plane.
Definition: staple_lex.cpp:286
Staple_lex::~Staple_lex
~Staple_lex()
Definition: staple_lex.h:63
Staple_lex::plaq_t_impl
double plaq_t_impl(const Field_G &)
Definition: staple_lex.cpp:211
Staple_lex::m_v1
Field_G m_v1
Definition: staple_lex.h:53
Staple_lex::get_parameters
void get_parameters(Parameters &params) const
getting parameters.
Definition: staple_lex.cpp:81
Staple_lex::plaq_s_omp
double plaq_s_omp(const Field_G &)
Definition: staple_lex.cpp:149
Staple_lex::m_Unu
Field_G m_Unu
working vectors
Definition: staple_lex.h:51
Staple_lex::m_w2
Field_G m_w2
working vectors
Definition: staple_lex.h:52
Staple_lex::m_shift
ShiftField_lex * m_shift
Definition: staple_lex.h:49
ShiftField_lex
Methods to shift a field in the lexical site index.
Definition: shiftField_lex.h:39
Staple_lex::Staple_lex
Staple_lex(const Parameters &params)
Definition: staple_lex.h:61
Staple_lex::tidyup
void tidyup()
Definition: staple_lex.cpp:59
Staple_lex::upper
void upper(Field_G &, const Field_G &, const int mu, const int nu)
constructs upper staple in mu-nu plane.
Definition: staple_lex.cpp:263
Staple_lex
Staple construction.
Definition: staple_lex.h:39
staple.h
Staple_lex::setup
void setup()
Definition: staple_lex.cpp:43
Staple
Base class for Staple construction.
Definition: staple.h:33
Bridge::VerboseLevel
VerboseLevel
Definition: bridgeIO.h:42
Staple_lex::m_filename_output
std::string m_filename_output
Definition: staple_lex.h:47
Field_G
SU(N) gauge field.
Definition: field_G.h:38
Staple_lex::m_v2
Field_G m_v2
working vectors
Definition: staple_lex.h:53
Staple_lex::m_Ndim
int m_Ndim
Definition: staple_lex.h:55
Staple_lex::plaq_s
double plaq_s(const Field_G &)
calculates spatial plaquette value.
Definition: staple_lex.cpp:115
Staple_lex::Staple_lex
Staple_lex()
Definition: staple_lex.h:58