13 namespace LatColMatTSTMinNorm2DTauRecursiveIntegratorEnv
18 multi1d<LatticeColorMatrix> >*
51 XMLReader paramtop(xml_in, path);
55 if( paramtop.count(
"./lambda") == 1 ) {
59 lambda = 0.1931833275037836;
61 QDPIO::cout <<
"Warning no lambda param found for minimum norm integrator" << std::endl;
62 QDPIO::cout <<
"Using default value lambda_c="<<
lambda << std::endl;
64 if( paramtop.count(
"./SubIntegrator") == 0 ) {
68 XMLBufferWriter subintegrator_writer;
71 push(subintegrator_writer,
"SubIntegrator");
72 write(subintegrator_writer,
"Name",
"LCM_EXP_T");
73 write(subintegrator_writer,
"n_steps", one_sub_step);
74 pop(subintegrator_writer);
83 XMLReader subint_reader(paramtop,
"./SubIntegrator");
84 std::ostringstream subintegrator_os;
85 subint_reader.print(subintegrator_os);
87 QDPIO::cout <<
"Subintegrator XML is: " << std::endl;
92 QDPIO::cout <<
"Error reading XML in LatColMatTSTMinNorm2DTauRecursiveIntegratorParams " << e << std::endl;
108 write(xml,
"delta_tau_max",
p.delta_tau_max);
109 write(xml,
"monomial_ids",
p.monomial_ids);
110 write(xml,
"lambda",
p.lambda);
111 xml <<
p.subintegrator_xml;
119 multi1d<LatticeColorMatrix> >&
s,
120 const Real& traj_length)
const
141 dtau = traj_length/Real(n_steps);
152 Real lambda_dt = dtau*
lambda;
153 Real dtauby2 = dtau / Real(2);
154 Real one_minus_2lambda_dt = (Real(1)-Real(2)*
lambda)*dtau;
155 Real two_lambda_dt = lambda_dt*Real(2);
158 subIntegrator(
s, lambda_dt);
159 for(
int i=0;
i < n_steps-1;
i++) {
163 subIntegrator(
s, one_minus_2lambda_dt);
165 subIntegrator(
s, two_lambda_dt);
170 subIntegrator(
s, one_minus_2lambda_dt);
172 subIntegrator(
s, lambda_dt);
Primary include file for CHROMA library code.
MD integrator that can be used as a component for other integrators.
MD integrator interface for PQP leapfrog.
MD integrator interface for PQP leapfrog.
AbsComponentIntegrator< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > & getSubIntegrator() const
Return the next level down integrator.
void operator()(AbsFieldState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &s, const Real &traj_length) const
Do an integration of lenght n*delta tau in n steps.
multi1d< IntegratorShared::MonomialPair > monomials
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.
static bool registered
Local registration flag.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
push(xml_out,"Condensates")
multi1d< LatticeFermion > s(Ncb)
LatColMatTSTMinNorm2DTauRecursiveIntegratorParams()
multi1d< std::string > monomial_ids
std::string subintegrator_xml
Singleton instances of xml output.