1 #ifndef ILUPREC_S_CPREC_T_CLOVER_FERMACT_W_H
2 #define ILUPREC_S_CPREC_T_CLOVER_FERMACT_W_H
4 #include "qdp_config.h"
15 namespace ILUPrecSpaceCentralPrecTimeCloverFermActEnv
21 class ILUPrecSpaceCentralPrecTimeCloverFermAct :
22 public ILUPrecSpaceCentralPrecTimeWilsonTypeFermAct<
24 multi1d<LatticeColorMatrix>,
25 multi1d<LatticeColorMatrix> >
28 typedef LatticeFermion
T;
29 typedef multi1d<LatticeColorMatrix>
P;
30 typedef multi1d<LatticeColorMatrix>
Q;
33 ~ILUPrecSpaceCentralPrecTimeCloverFermAct(){}
37 ILUPrecSpaceCentralPrecTimeCloverFermAct( Handle< CreateFermState<T,P,Q> > cfs_,
38 const CloverFermActParams& param_ ) : cfs(cfs_), param(param_) {}
41 ILUPrecSpaceCentralPrecTimeCloverFermAct(
const ILUPrecSpaceCentralPrecTimeCloverFermAct&
a) :
42 cfs(
a.cfs), param(
a.param) {}
45 ILUPrecSpaceCentralPrecTimeCloverFermAct& operator=(
const ILUPrecSpaceCentralPrecTimeCloverFermAct&
a)
53 ILUPrecSpaceCentralPrecTimeLinearOperator<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 ILUPrecSpaceCentralPrecTimeCloverFermAct(){}
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