52 namespace HisqFermActEnv
56 multi1d<LatticeColorMatrix>,
67 multi1d<LatticeColorMatrix>,
105 multi1d<LatticeColorMatrix>,
106 multi1d<LatticeColorMatrix> >*
134 multi1d<LatticeColorMatrix>,
135 multi1d<LatticeColorMatrix> >*
146 multi1d<LatticeColorMatrix> u_with_phases(
Nd);
147 multi1d<LatticeColorMatrix> u_fat(
Nd);
148 multi1d<LatticeColorMatrix> u_fat_I(
Nd);
149 multi1d<LatticeColorMatrix> u_triple(
Nd);
151 QDPIO::cout <<
"HISQ setting up the fat links\n" ;
160 QDPIO::cout <<
"HISQ hacked to do ASQTAD" << std::endl ;
161 pp.
c_1l = (Real)(5) / (Real)(8);
162 pp.
c_3l = (Real)(-1) / ((Real)(16));
167 Real
one = (Real) 1.0 ;
173 QDPIO::cout <<
"HISQ epsilon = " << ep <<
"\n"; ;
174 QDPIO::cout <<
"HISQ Mass = " <<
param.
Mass <<
"\n"; ;
175 QDPIO::cout <<
"HISQ u0 = " <<
param.
u0 <<
"\n"; ;
177 QDPIO::cout <<
"Setting up HISQ inverter\n"; ;
185 pp.
c_1l = (Real)(1)/(Real)(8) ;
186 pp.
c_3l = (Real)(1) / ((Real)(16));
196 Real JacAccu = 0.00000000001 ;
198 LatticeColorMatrix w ;
199 QDPIO::cout <<
"SU3 polar projection Accuracy " << JacAccu <<
" max iters = " << JacMax << std::endl;
201 for(
int i = 0;
i <
Nd;
i++)
208 Real UU0 = (Real) 1.0 ;
210 c_3 = (Real)(-1 - ep) / (Real)(24);
215 pp.
c_1l = (Real)(8 + ep) / (Real)(8) ;
216 pp.
c_3l = (Real)(1) / ((Real)(16));
223 for(
int i = 0;
i <
Nd;
i++)
Unpreconditioned Wilson fermion linear operator.
Primary include file for CHROMA library code.
Basic "Connect State" for ASQTAD.
Asqtad Staggered-Dirac operator.
Differentiable Linear Operator.
Even odd Linear Operator (for staggered like things )
Support class for fermion actions and linear operators.
Base class for quadratic matter actions (e.g., fermions)
Class for counted reference semantics.
Hisq staggered fermion action.
const FermBC< T, P, Q > & getFermBC() const
Return the fermion BC object for this action.
Handle< CreateFermState< T, P, Q > > cfs
AsqtadConnectStateBase * createState(const Q &u_) const
Create state should apply the BC.
Staggered-like fermion actions.
Pass parameters to the fat link code.
All ferm create-state method.
Fermion action factories.
DiffLinearOperator< T, P, Q > * lMdagM(Handle< FermState< T, P, Q > > state_) const
Produce a linear operator M^dag.M for this action.
EvenOddLinearOperator< T, P, Q > * linOp(Handle< FermState< T, P, Q > > state_) const
Produce a linear operator for this action.
void polar_dec(LatticeColorMatrix &c, LatticeColorMatrix &v, LatticeReal &alpha, const Real &JacAccu, int JacMax)
Decompose a complex matrix as C = exp(i\alpha) V P.
void Triple_Links(multi1d< LatticeColorMatrix > &u, multi1d< LatticeColorMatrix > &u_triple, Real u0)
void Fat7_Links(multi1d< LatticeColorMatrix > &u, multi1d< LatticeColorMatrix > &uf, Real u0)
FAT7_LINKS.
Hisq staggered fermion action.
StaggeredTypeFermAct< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > * createFermAct4D(XMLReader &xml_in, const std::string &path)
Callback function.
bool registerAll()
Register all the factories.
static bool registered
Local registration flag.
FermionAction< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > * createFermAct(XMLReader &xml_in, const std::string &path)
Callback function.
const std::string name
Name to be used.
static const LatticeInteger & alpha(const int dim)
Handle< CreateFermState< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > reader(XMLReader &xml_in, const std::string &path)
Helper function for the CreateFermState readers.
Asqtad Staggered-Dirac operator.
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state
Decompose a complex matrix as .
Reunitarize in place a color matrix to SU(N)
Params for hisq ferm acts.
Project a complex Nc x Nc matrix W onto SU(Nc) by maximizing Tr(VW)