6 #ifndef UNPREC_S_CPREC_T_WILSON_LINOP_H
7 #define UNPREC_S_CPREC_T_WILSON_LINOP_H
9 #include "qdp_config.h"
40 class UnprecSCprecTWilsonLinOp :
41 public UnprecSpaceCentralPrecTimeLinearOperator<LatticeFermion,
42 multi1d<LatticeColorMatrix>, multi1d<LatticeColorMatrix> >
46 typedef LatticeFermion
T;
47 typedef multi1d<LatticeColorMatrix>
P;
48 typedef multi1d<LatticeColorMatrix>
Q;
49 typedef PScalar<PColorMatrix<RComplex<REAL>, 3> > CMat;
50 typedef PSpinVector<PColorVector<RComplex<REAL>, 3>, 2> HVec_site;
52 UnprecSCprecTWilsonLinOp() {}
56 UnprecSCprecTWilsonLinOp(Handle< FermState<T,P,Q> > fs_,
58 const AnisoParam_t& aniso_)
59 {create(fs_,Mass_,aniso_);}
62 ~UnprecSCprecTWilsonLinOp() {}
65 const FermBC<T,P,Q>& getFermBC()
const {
return fs->getBC();}
69 void create(Handle< FermState<T,P,Q> > fs_,
71 const AnisoParam_t& aniso_);
81 inline bool schroedingerTP(
void)
const {
104 void derivSpace(
P& ds_u,
const T& X,
const T& Y,
111 unsigned long nFlops()
const
121 Double logDetTDagT(
void)
const {
129 int getTMax()
const {
130 return Layout::lattSize()[
Nd-1];
139 Handle< FermState<T,P,Q> > fs;
140 multi1d<LatticeColorMatrix>
u;
142 multi2d< int > tsite;
143 multi2d< CMat > P_mat;
144 multi2d< CMat > P_mat_dag;
146 multi1d< CMat > Q_mat_inv;
147 multi1d< CMat > Q_mat_dag_inv;
Time-preconditioned Linear Operators.
Support for time preconditioning.
Include possibly optimized Wilson dslash.
multi1d< LatticeColorMatrix > P
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
LinOpSysSolverMGProtoClover::Q Q
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > const multi1d< Real > & Mass
LinOpSysSolverMGProtoClover::T T
multi1d< LatticeFermion > chi(Ncb)
FloatingPoint< double > Double
multi1d< LatticeColorMatrix > P
multi1d< LatticeColorMatrix > deriv(const EvenOddPrecLinearOperator< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &AP, const LatticeFermion &chi, const LatticeFermion &psi, enum PlusMinus isign)
Apply the operator onto a source std::vector.