9 #ifndef ABS_INTEGRATOR_H
10 #define ABS_INTEGRATOR_H
23 template<
typename P,
typename Q>
31 const Real& traj_length)
const = 0;
35 multi1d<LatticeColorMatrix> >&
s)
const = 0;
43 template<
typename P,
typename Q>
51 const Real& traj_length)
const = 0;
59 multi1d<LatticeColorMatrix> >&
s)
const {
73 multi1d<LatticeColorMatrix> >&
s)
const = 0;
81 template<
typename P,
typename Q>
96 QDPIO::cout <<
"MD: Resetting Chrono Predictors at start of trajectory" << std::endl;
100 theIntegrator(
s, trajLength);
Primary include file for CHROMA library code.
MD integrator that can be used as a component for other integrators.
virtual void operator()(AbsFieldState< P, Q > &s, const Real &traj_length) const =0
Do an integration of length n*delta tau in n steps.
virtual ~AbsComponentIntegrator(void)
Virtual destructor.
virtual void resetPredictors(void) const =0
Reset any chronological predictors for the integrator.
virtual void refreshFields(AbsFieldState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &s) const =0
Refresh fields in this level of the integrator (for R like algorithms)
New MD integrator interface.
virtual void refreshFields(AbsFieldState< P, Q > &s) const
Refresh fields in the sub integrators (for R-like algorithms)
virtual AbsComponentIntegrator< P, Q > & getIntegrator() const =0
Get the toplevel sub integrator.
virtual void operator()(AbsFieldState< P, Q > &s, const Real &trajLength) const
Do the trajectory for length trajLength.
virtual ~AbsMDIntegrator(void)
Virtual destructor.
virtual void copyFields(void) const =0
Copy equivalent fields into MD monomals before integration.
virtual Real getTrajLength(void) const =0
Get the trajectory length.
MD component integrator that has a sub integrator (recursive)
virtual void refreshFields(AbsFieldState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &s) const
Refresh fields in this level of the integrator and sub integrators.
virtual void operator()(AbsFieldState< P, Q > &s, const Real &traj_length) const =0
Do an integration of lenght n*delta tau in n steps.
virtual ~AbsRecursiveIntegrator(void)
Virtual destructor.
virtual void refreshFieldsThisLevel(AbsFieldState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &s) const =0
Refresh fields in just this level.
virtual void resetPredictorsThisLevel(void) const =0
virtual AbsComponentIntegrator< P, Q > & getSubIntegrator() const =0
Return the next level down integrator.
virtual void resetPredictors(void) const
Reset Integrators in this level and sub integrators.
Asqtad Staggered-Dirac operator.
multi1d< LatticeFermion > s(Ncb)
Singleton instances of xml output.