1 #ifndef ILU2PREC_S_CPREC_T_CLOVER_FERMACT_W_H
2 #define ILU2PREC_S_CPREC_T_CLOVER_FERMACT_W_H
4 #include "qdp_config.h"
15 namespace ILU2PrecSpaceCentralPrecTimeCloverFermActEnv
21 class ILU2PrecSpaceCentralPrecTimeCloverFermAct :
22 public ILU2PrecSpaceCentralPrecTimeWilsonTypeFermAct<
24 multi1d<LatticeColorMatrix>,
25 multi1d<LatticeColorMatrix> >
28 typedef LatticeFermion
T;
29 typedef multi1d<LatticeColorMatrix>
P;
30 typedef multi1d<LatticeColorMatrix>
Q;
33 ~ILU2PrecSpaceCentralPrecTimeCloverFermAct(){}
37 ILU2PrecSpaceCentralPrecTimeCloverFermAct( Handle< CreateFermState<T,P,Q> > cfs_,
38 const CloverFermActParams& param_ ) : cfs(cfs_), param(param_) {}
41 ILU2PrecSpaceCentralPrecTimeCloverFermAct(
const ILU2PrecSpaceCentralPrecTimeCloverFermAct&
a) :
42 cfs(
a.cfs), param(
a.param) {}
45 ILU2PrecSpaceCentralPrecTimeCloverFermAct& operator=(
const ILU2PrecSpaceCentralPrecTimeCloverFermAct&
a)
53 ILU2PrecSpaceCentralPrecTimeLinearOperator<T,P,Q>* linOp( Handle< FermState<T,P,Q> >
state)
const;
56 LinearOperator<T>* hermitianLinOp(Handle< FermState<T,P,Q> >
state)
const
58 return new lgherm<T>(linOp(
state));
63 const CreateFermState<T,P,Q>& getCreateState()
const {
return *cfs;}
66 ILU2PrecSpaceCentralPrecTimeCloverFermAct(){}
70 Handle< CreateFermState<T,P,Q> > cfs;
71 CloverFermActParams param;
Parameters for Clover fermion action.
ILUPreconditioned spatial Preconditioned Temporal Wilson like fermion action.
bool registerAll()
Register all the factories.
const std::string name
Name to be used.
multi1d< LatticeColorMatrix > P
Asqtad Staggered-Dirac operator.
LinOpSysSolverMGProtoClover::Q Q
LinOpSysSolverMGProtoClover::T T
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state