6 #ifndef __prec_ovlap_contfrac5d_fermact_array_w_h__
7 #define __prec_ovlap_contfrac5d_fermact_array_w_h__
17 namespace EvenOddPrecOvlapContFrac5DFermActArrayEnv
64 multi1d<LatticeColorMatrix>, multi1d<LatticeColorMatrix> >
68 typedef LatticeFermion
T;
69 typedef multi1d<LatticeColorMatrix>
P;
70 typedef multi1d<LatticeColorMatrix>
Q;
104 QDPIO::cerr <<
"linOp4D not implemented" << std::endl;
130 void init(Real& scale_fac,
131 multi1d<Real>&
alpha,
132 multi1d<Real>&
beta)
const;
Create a fermion connection state.
Even-odd preconditioned linear operator including derivatives for arrays.
Even-odd preconditioned Wilson-like fermion actions including derivatives.
5D continued fraction overlap action (Borici,Wenger, Edwards)
LinearOperator< T > * linOp4D(Handle< FermState< T, P, Q > > state, const Real &m_q, const GroupXML_t &invParam) const
Produce an unpreconditioned linear operator projecting 5D to 4D (the inverse of qprop below)
EvenOddPrecOvlapContFrac5DFermActParams params
const CreateFermState< T, P, Q > & getCreateState() const
Return the fermion BC object for this action.
Real getQuarkMass() const
Return the quark mass.
void init(Real &scale_fac, multi1d< Real > &alpha, multi1d< Real > &beta) const
Helper in construction.
~EvenOddPrecOvlapContFrac5DFermActArray()
Destructor is automatic.
EvenOddPrecConstDetLinearOperatorArray< T, P, Q > * linOp(Handle< FermState< T, P, Q > > state) const
Produce a linear operator for this action.
SystemSolver< LatticeFermion > * qprop(Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
Compute quark propagator over base type.
int size(void) const
Expected length of array index.
multi1d< LatticeColorMatrix > Q
EvenOddPrecConstDetLinearOperatorArray< T, P, Q > * linOpPV(Handle< FermState< T, P, Q > > state) const
Produce a Pauli-Villars linear operator for this action.
multi1d< LatticeColorMatrix > P
EvenOddPrecOvlapContFrac5DFermActArray(const EvenOddPrecOvlapContFrac5DFermActArray &a)
Copy constructor.
LinearOperatorArray< T > * hermitianLinOp(Handle< FermState< T, P, Q > > state) const
produce a hermitian version of this operator
EvenOddPrecOvlapContFrac5DFermActArray()
Handle< CreateFermState< T, P, Q > > cfs
LinearOperator< T > * DeltaLs(Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
Produce a DeltaLs = 1-epsilon^2(H) operator.
Support class for fermion actions and linear operators.
Class for counted reference semantics.
Linear Operator to arrays.
Even-odd const determinant Wilson-like fermact.
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams ¶m)
Read parameters.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams ¶m)
Writer parameters.
const std::string name
Name to be used.
bool registerAll()
Register all the factories.
static const LatticeInteger & beta(const int dim)
static const LatticeInteger & alpha(const int dim)
Asqtad Staggered-Dirac operator.
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state
static QDP_ColorVector * in
Params for 5D overlap ferm acts.
Real ApproxMin
Approximate min eigenvalue of H_T.
int RatPolyDeg
Degree of the Rational Poly.
Real ApproxMax
Approximate max eigenvalue of H_T.
Real OverMass
Mass of auxiliary Wilson action.
EvenOddPrecOvlapContFrac5DFermActParams()
Default empty construction.
CoeffType approximation_type
ZOLOTAREV | TANH | Other approximation coeffs.
Hold group xml and type id.