CHROMA
gaugebc_aggregate.cc
Go to the documentation of this file.
1 /*! \file
2  * \brief Gauge boundary condition aggregator
3  */
4 
15 
16 namespace Chroma
17 {
18 
19  //! Name and registration
20  namespace GaugeTypeGaugeBCEnv
21  {
22  //! Local registration flag
23  static bool registered = false;
24 
25  //! Register all the factories
26  bool registerAll()
27  {
28  bool success = true;
29  if (! registered)
30  {
31  success &= SimpleGaugeBCEnv::registerAll();
39 
40  registered = true;
41  }
42  return success;
43  }
44 
45 
46  // Helper function for the GaugeAction readers
48  multi1d<LatticeColorMatrix> > > reader(XMLReader& xml_in,
49  const std::string& path)
50  {
51  XMLReader top(xml_in, path);
52 
53  bool success = registered; // make sure all codes loaded
54 
55  std::string gaugebc;
56  std::string gaugebc_path;
57  if (top.count("GaugeBC") != 0)
58  {
59  gaugebc_path = "GaugeBC";
60  read(top, gaugebc_path + "/Name", gaugebc);
61  }
62  else
63  {
64  QDPIO::cerr << "Error: GaugeBC group not found" << std::endl;
65  QDP_abort(1);
66  }
67 
68  Handle<GaugeBC< multi1d<LatticeColorMatrix>, multi1d<LatticeColorMatrix> > >
69  gbc(TheGaugeBCFactory::Instance().createObject(gaugebc,
70  top,
71  gaugebc_path));
72 
73  return gbc;
74  }
75  }
76 
77 }
Class for counted reference semantics.
Definition: handle.h:33
static T & Instance()
Definition: singleton.h:432
Gauge boundary condition aggregator.
Gauge boundary condition factories.
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams &param)
Read parameters.
static bool registered
Local registration flag.
bool registerAll()
Register all the factories.
Handle< GaugeBC< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > reader(XMLReader &xml_in, const std::string &path)
Helper function for the GaugeAction readers.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
::std::string string
Definition: gtest.h:1979
Periodic gauge boundary conditions.
Schroedinger BC - chromo-magnetic gauge BC.
Schroedinger BC - use for coupling determinations.
Schroedinger BC - dirichlet BC.
Schroedinger BC - use for non-pertubative tuning of clover action.
Schroedinger BC - happens to zero out gauge fields in bc_dir.
Schroedinger functional trivial gauge boundary conditions.
Simple gauge boundary conditions.