CHROMA
multi_syssolver_linop_mr.cc
Go to the documentation of this file.
1 /*! \file
2  * \brief Solve a (M+shift)*psi=chi linear system by MR
3  */
4 
7 
9 
10 namespace Chroma
11 {
12 
13  //! MR system solver namespace
14  namespace LinOpMultiSysSolverMREnv
15  {
16  //! Callback function
18  const std::string& path,
20  {
22  }
23 
24  //! Name to be used
25  const std::string name("MR_INVERTER");
26 
27  //! Local registration flag
28  static bool registered = false;
29 
30  //! Register all the factories
31  bool registerAll()
32  {
33  bool success = true;
34  if (! registered)
35  {
37  registered = true;
38  }
39  return success;
40  }
41  }
42 }
Class for counted reference semantics.
Definition: handle.h:33
Solve a MR system. Here, the operator is NOT assumed to be hermitian.
static T & Instance()
Definition: singleton.h:432
Register LinOp system solvers.
Factory for producing system solvers for M*psi = chi.
Solve a (M+shift)*psi=chi linear system by MR.
const std::string name("MR_INVERTER")
Name to be used.
LinOpMultiSystemSolver< LatticeFermion > * createFerm(XMLReader &xml_in, const std::string &path, Handle< LinearOperator< LatticeFermion > > A)
Callback function.
bool registerAll()
Register all the factories.
static bool registered
Local registration flag.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
A(A, psi, r, Ncb, PLUS)
::std::string string
Definition: gtest.h:1979
SystemSolver disambiguator.