CHROMA
syssolver_mdagm.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Disambiguator for MdagM system solvers
4  */
5 
6 #ifndef __syssolver_mdagm_h__
7 #define __syssolver_mdagm_h__
8 
9 #include "linearop.h"
10 #include "handle.h"
11 #include "syssolver.h"
13 
14 namespace Chroma
15 {
16  //! SystemSolver disambiguator
17  /*! This struct is solely to disambiguate the type of SystemSolvers */
18  /* Was previously defined as
19  template<typename T>
20  struct MdagMSystemSolver: virtual public SystemSolver<T>
21 
22  I have changed this to make xlC happy
23 */
24  template<typename T>
25  class MdagMSystemSolver : public SystemSolver<T>
26  {
27  public:
28  virtual SystemSolverResults_t operator() (T& psi, const T& chi) const = 0;
29 
30  //! Return the subset on which the operator acts
31  virtual const Subset& subset() const = 0;
33  const T& chi,
34  AbsChronologicalPredictor4D<T>& predictor) const = 0;
35 
36  };
37 
38 
39  //! SystemSolver disambiguator
40  /*! This struct is solely to disambiguate the type of SystemSolvers */
41 
42  /* Was previously declared as:
43  template<typename T>
44  struct MdagMSystemSolverArray : virtual public SystemSolverArray<T>
45 
46  I have changed it to make xlC happy
47  */
48  template<typename T>
50  {
51  };
52 
53 }
54 
55 
56 #endif
Chronological predictor for HMC.
Abstract interface for a Chronological Solution predictor.
SystemSolver disambiguator.
SystemSolver disambiguator.
virtual const Subset & subset() const =0
Return the subset on which the operator acts.
virtual SystemSolverResults_t operator()(T &psi, const T &chi) const =0
Apply the operator onto a source std::vector.
virtual SystemSolverResults_t operator()(T &psi, const T &chi, AbsChronologicalPredictor4D< T > &predictor) const =0
Linear system solvers of arrays.
Definition: syssolver.h:62
Linear system solvers.
Definition: syssolver.h:34
Class for counted reference semantics.
Linear Operators.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
LinOpSysSolverMGProtoClover::T T
multi1d< LatticeFermion > chi(Ncb)
LatticeFermion psi
Definition: mespbg5p_w.cc:35
Holds return info from SystemSolver call.
Definition: syssolver.h:17
Linear system solvers.