CHROMA
periodic_gaugebc.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Periodic gauge boundary conditions
4  */
5 
6 #ifndef __periodic_gaugebc_h__
7 #define __periodic_gaugebc_h__
8 
9 #include "gaugebc.h"
11 
12 namespace Chroma {
13 
14  /*! @ingroup gaugebcs */
15  namespace PeriodicGaugeBCEnv
16  {
17  extern const std::string name;
18  bool registerAll();
19  }
20 
21  //! Periodic gauge
22  /*! @ingroup gaugebcs */
23  template<typename P, typename Q>
24  class PeriodicGaugeBC : public GaugeBC<P,Q>
25  {
26  public:
27 
28  //! Only empty constructor
30 
31  //! Destructor is automatic
33 
34  //! Modify U fields in place
35  /*! NOP */
36  void modify(Q& u) const {}
37 
38  //! Zero the U fields in place on the masked links
39  void zero(P& u) const {}
40 
41  //! Says if there are non-trivial BC links
42  bool nontrivialP() const {return false;}
43 
44  private:
45  //! Hide assignment
47 
48  };
49 
50 } // End namespace Chroma
51 
52 #endif
Base class for all gauge action boundary conditions.
Definition: gaugebc.h:30
~PeriodicGaugeBC()
Destructor is automatic.
PeriodicGaugeBC()
Only empty constructor.
void operator=(const PeriodicGaugeBC< P, Q > &)
Hide assignment.
void zero(P &u) const
Zero the U fields in place on the masked links.
void modify(Q &u) const
Modify U fields in place.
bool nontrivialP() const
Says if there are non-trivial BC links.
Gauge boundary conditions.
Gauge boundary condition factories.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
static multi1d< LatticeColorMatrix > u
LinOpSysSolverMGProtoClover::Q Q
::std::string string
Definition: gtest.h:1979
multi1d< LatticeColorMatrix > P
Definition: t_clover.cc:13