[MMTK] Path Integral Implementation in MMTK

Chris Ing ing.chris at gmail.com
Fri May 22 22:25:32 UTC 2009


Dear Konrad/MMTK developers/MMTK users,
 I'm a student working with Dr. P.N. Roy at University of Waterloo and
I'm interested in implementing path integral MD in MMTK. Those
interested in the theory behind this technique may consult:
http://link.aip.org/link/?JCPSA6/121/3368/1

I dug up an ancient discussion from the mailing list archives on this
topic (http://starship.python.net/pipermail/mmtk/1998/000071.html) but
I was curious if the approach suggested by Konrad, namely the
modification of the Atom class, is still the easiest method to
implement. I'm also curious why no one has done any development on
this problem over the last 11 years in MMTK!

Modifying the Atom class seems like the simplest approach, but I have
speculated on a few alternative implementations as follows:

1) Modification of the AmberForceField to accept an object/list of
objects/molecule as an argument when it is created. This modified
ForceField would only act on the objects passed to it. Using this
approach we could create a number of identical molecules under the
influence of their independent force fields and connect neighboring
atoms (beads) with normal HarmonicDistanceRestraints to create a ring
polymer. This would require modification of all classes that normally
iterate over all objects in the Universe to instead loop over the list
of objects passed to the force field
(MMAtomParameteres.collectAtomTypesAndIndices:45,
MMAtomParameters.collectCharges:54, MMNonbondedForceField.charges:272,
and a number of base classes).

2) To create molecules in entirely separate Universes and modify the
HarmonicDistanceRestraint force field to exchange forces between
specific atoms in different Universes. This field could be added to
pairs of atoms in different universes and applied to a Universe using
a CompoundForceField. Although, this implementation is slightly crazy
since all Universes in the simulation would have to propagate one
time-step at a time.

I'm a new user of MMTK so I am unsure which features may break or what
problems I may encounter with any of these approaches.

Any advice would be appreciated,
-Chris Ing



More information about the mmtk mailing list