19 namespace UnprecTwoFlavorRatioConvConvMultihasenWilsonTypeFermMonomialEnv
35 const std::string name(
"TWO_FLAVOR_UNPREC_RATIO_CONV_CONV_MULTIHASEN_FERM_MONOMIAL");
58 QDPIO::cout <<
"Constructor: " << __func__ << std::endl;
60 if( param.numer.invParam.id ==
"NULL" ) {
61 QDPIO::cerr <<
"Numerator inverter params are NULL" << std::endl;
65 invParam_num = param.numer.invParam;
67 if( param.denom.invParam.id ==
"NULL" ) {
68 QDPIO::cerr <<
"WARNING: No inverter params provided for denominator." << std::endl;
69 QDPIO::cerr <<
"WARNING: Assuming same as for numerator " << std::endl;
70 invParam_den = param.numer.invParam;
73 invParam_den = param.denom.invParam;
80 std::istringstream is(param.numer.fermact.xml);
81 XMLReader fermact_reader(is);
82 QDPIO::cout <<
"Construct numer fermion action= " << param.numer.fermact.id << std::endl;
87 param.numer.fermact.path);
94 QDPIO::cerr << __func__ <<
": unable to downcast FermAct to UnprecWilsonTypeFermAct" << std::endl;
98 fermact_num = downcast;
104 std::istringstream is(param.denom.fermact.xml);
105 XMLReader fermact_reader(is);
106 QDPIO::cout <<
"Construct denom fermion action= " << param.denom.fermact.id << std::endl;
111 param.denom.fermact.path);
116 if( downcast == 0x0 )
118 QDPIO::cerr << __func__ <<
": unable to downcast FermAct to UnprecWilsonTypeFermAct" << std::endl;
122 fermact_den = downcast;
144 XMLReader chrono_xml(chrono_is);
150 QDPIO::cerr <<
"Caught Exception Reading XML: " << e << std::endl;
156 QDPIO::cerr <<
"Failed to create the 4D ChronoPredictor" << std::endl;
159 chrono_predictor =
tmp;
163 QDPIO::cout <<
"Finished constructing: " << __func__ << std::endl;
181 numltihasenMonomial[
i]->dsdq(
F,
s);
188 void UnprecTwoFlavorRatioConvConvMultihasenWilsonTypeFermMonomial::
Primary include file for CHROMA library code.
An abstract monomial class, for inexact algorithms.
void dsdq(P &F, const AbsFieldState< P, Q > &s)
Double S(const AbsFieldState< P, Q > &s)
mult1d< Handle< UnprecTwoFlavorRatioConvConvWilsonTypeFermMonomial > > multihasenMonomial
UnprecTwoFlavorRatioConvConvMultihasenWilsonTypeFermMonomial(const TwoFlavorRatioConvConvMultihasenWilsonTypeFermMonomialParams ¶m_)
Unpreconditioned Wilson-like fermion actions with derivatives.
Wilson-like fermion actions.
Zero initial guess predictor.
Fermion action factories.
All Wilson-type fermion actions.
static bool registered
Local registration flag.
const std::string name
Name to be used.
Monomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > * createMonomial(XMLReader &xml, const std::string &path)
Callback function for the factory.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
multi1d< LatticeFermion > s(Ncb)
FloatingPoint< double > Double
multi1d< LatticeColorMatrix > P
Two flavor Monomials - gauge action or fermion binlinear contributions for HMC.
Zero initial guess predictor.
static INTERNAL_PRECISION F