CHROMA
syssolver_linop_eigbicg.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Solve a M*psi=chi linear system by EigBiCG
4  */
5 
6 #ifndef __syssolver_eigbicg_h__
7 #define __syssolver_eigbicg_h__
8 
9 #include "handle.h"
10 #include "syssolver.h"
11 #include "linearop.h"
12 #include "named_obj.h"
14 
18 
19 #include "util/info/unique_id.h"
20 
21 #ifdef BUILD_OPT_EIGCG
22 
24 
25 namespace Chroma
26 {
27  //! Eigenstd::vector accelerated CG system solver namespace
28  namespace LinOpSysSolverEigBiCGEnv
29  {
30  //! Register the syssolver
32  }
33 } // end namespace Chroma
34 
35 #else
36 
37 // Generic QDP code does not exist
38 // do nothing... and the thing will fail when somebody calls eigBiCG when it is not compiled in....
39 namespace Chroma
40 {
41  //! Eigenstd::vector accelerated CG system solver namespace
42  namespace LinOpSysSolverEigBiCGEnv
43  {
44  //! Register the syssolver
45  inline bool registerAll() {return true;}
46  }
47 } // end namespace Chroma
48 
49 #endif
50 
51 #endif
Class for counted reference semantics.
Linear Operators.
Named object support.
Named object function std::map.
bool registerAll()
Register the syssolver.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
Linear system solvers.
Solve a biCG system.
Disambiguator for LinOp system solvers.
Solve a M*psi=chi linear system by EigBiCG.
Generate a unique id.