1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-12-23 14:14:30 +00:00

HMC factories

This commit is contained in:
Guido Cossu
2017-01-17 10:46:49 +00:00
parent 87e8aad5a0
commit 0157274762
5 changed files with 26 additions and 19 deletions

View File

@@ -35,10 +35,17 @@ with this program; if not, write to the Free Software Foundation, Inc.,
namespace Grid {
namespace QCD {
class HMCBase{
public:
virtual void Run() = 0;
};
template <class Implementation,
template <typename, typename, typename> class Integrator,
class RepresentationsPolicy = NoHirep>
class HMCWrapperTemplate {
class HMCWrapperTemplate: public HMCBase {
public:
INHERIT_FIELD_TYPES(Implementation);
typedef Implementation ImplPolicy; // visible from outside
@@ -134,6 +141,7 @@ class HMCWrapperTemplate {
Resources.AddRNGs();
Field U(UGrid);
// Can move this outside?
typedef IntegratorType<SmearingPolicy> TheIntegrator;
TheIntegrator MDynamics(UGrid, MDparameters, TheAction, Smearing);