CHROMA
eoprec_wilstype_fermact_w.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 
3 /*! @file
4  * @brief Even-odd preconditioned Wilson-like fermion actions
5  */
6 
7 #ifndef __eoprec_wilstype_fermact_w_h__
8 #define __eoprec_wilstype_fermact_w_h__
9 
10 #include "wilstype_fermact_w.h"
11 #include "eoprec_linop.h"
12 
13 namespace Chroma
14 {
15  //-------------------------------------------------------------------------------------------
16  //! Even-odd preconditioned Wilson-like fermion actions including derivatives
17  /*! @ingroup actions
18  *
19  * Even-odd preconditioned like Wilson-like fermion actions
20  */
21  template<typename T, typename P, typename Q>
23  {
24  public:
25  //! Virtual destructor to help with cleanup;
27 
28  //! Override to produce an even-odd prec. linear operator for this action
29  /*! Covariant return rule - override base class function */
31 
32  //! Return quark prop solver, solution of unpreconditioned system
33  /*! Default implementation provided */
35  const GroupXML_t& invParam) const;
36  };
37 
38 
39 
40  //-------------------------------------------------------------------------------------------
41  //! Even-odd preconditioned Wilson-like fermion actions including derivatives
42  /*! @ingroup actions
43  *
44  * Even-odd preconditioned like Wilson-like fermion actions
45  * Here, use arrays of matter fields.
46  */
47  template<typename T, typename P, typename Q>
49  {
50  public:
51  //! Virtual destructor to help with cleanup;
53 
54  //! Override to produce an even-odd prec. linear operator for this action
55  /*! Covariant return rule - override base class function */
57 
58  //! Override to produce an even-odd prec. Pauli-Villars linear operator for this action
59  /*! Covariant return rule - override base class function */
61 
62  //! Return quark prop solver, solution of unpreconditioned system
63  /*! Default implementation provided */
65  const GroupXML_t& invParam) const;
66  };
67 
68 }
69 
70 
71 #endif
Even-odd preconditioned linear operator including derivatives for arrays.
Definition: eoprec_linop.h:312
Even-odd preconditioned linear operator.
Definition: eoprec_linop.h:92
Even-odd preconditioned Wilson-like fermion actions including derivatives.
virtual ~EvenOddPrecWilsonTypeFermAct5D()
Virtual destructor to help with cleanup;.
virtual EvenOddPrecLinearOperatorArray< T, P, Q > * linOp(Handle< FermState< T, P, Q > > state) const =0
Override to produce an even-odd prec. linear operator for this action.
virtual SystemSolverArray< T > * qpropT(Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
Return quark prop solver, solution of unpreconditioned system.
virtual EvenOddPrecLinearOperatorArray< T, P, Q > * linOpPV(Handle< FermState< T, P, Q > > state) const =0
Override to produce an even-odd prec. Pauli-Villars linear operator for this action.
Even-odd preconditioned Wilson-like fermion actions including derivatives.
virtual ~EvenOddPrecWilsonTypeFermAct()
Virtual destructor to help with cleanup;.
virtual EvenOddPrecLinearOperator< T, P, Q > * linOp(Handle< FermState< T, P, Q > > state) const =0
Override to produce an even-odd prec. linear operator for this action.
virtual SystemSolver< T > * qprop(Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
Return quark prop solver, solution of unpreconditioned system.
Support class for fermion actions and linear operators.
Definition: state.h:94
Class for counted reference semantics.
Definition: handle.h:33
Linear system solvers of arrays.
Definition: syssolver.h:62
Linear system solvers.
Definition: syssolver.h:34
Wilson-like fermion actions.
Definition: fermact.orig.h:403
Wilson-like fermion actions.
Definition: fermact.orig.h:344
Base class for even-odd preconditioned 4D and 5D Linop.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state
Definition: pbg5p_w.cc:28
Hold group xml and type id.
Wilson-like fermion actions.