Multicopy simulations

Konrad Hinsen
Fri, 28 Aug 1998 13:47:01 +0200

> maybe you could give me some feedback regarding multicopy simulations. I'd
> like to run simulations as follows: Multiple copies of one molecule don't
> interact with one another. Instead, they experience forces from interacting
> with a single copy of another molecule. This other molecule feels the mean
> of the force from the multiple copies.

This is technically very similar to path integral calculations,
the essential difference being that path integrals require additional
harmonic terms between the copies of the same atom. And although
path integrals are not currently implemented in MMTK, I did
consider them from the beginning, so I do have a few comments
on this topic.

> prototype the thing in MMTK first. My first idea would be to create a
> forcefield class that can handle the above interactions but then I wasn't
> sure that the  molecular representation of MMTK would allow that. A first

A special force field class is one possible implementation. You would
then have the multiple copies of some molecules explicitly, and the
force field would take care of providing the right interactions.

But there are a few problems with this approach. It would make the
forcefield the only part of the code that knows about multiple copies.
Everything else would thus treat them as real multiple molecules,
which is not appropriate in many situations. Also, constructing the
system in the case where only parts of a molecule have multiple copies
is not trivial and would require modifications that are both
unpleasant to implement and unpleasant to document.

> protein only (in the LocallyEnhancedSampling sense)? Just keep multiple
> collections of those subregions and then evaluate forces with subsets that

Keeping the collections is already a bit of a nightmare...

The approach I had in mind for path integrals would keep the
high-level objects (atoms, molecules, etc.) unchanged. However, the
internal representation of each atom would store multiple positions.
Any code asking for "the position" of an atom would receive the center
of mass; any code knowing about multiple copies could of course get
the individual positions.

The MMTK base classes would require only minimal modifications for
that; in fact, it should be doable by modifying only the Atom class.
Integrators would not have to be modified at all. The big item is
energy evaluation. Bonded interactions pose no problems, and neither
do short-ranged non-bonded interactions (i.e. Lennard-Jones with
cutoff; all that is required is adding the atom pairs in different
copies to the exclusion list). But electrostatics requires some
careful thought; it is not trivial to use Ewald or multipole
techniques with multiple copies. But then someone might already have
solved that problem; I didn't follow the recent developments in that

Konrad Hinsen                            | E-Mail:
Centre de Biophysique Moleculaire (CNRS) | Tel.: +33-
Rue Charles Sadron                       | Fax:  +33-
45071 Orleans Cedex 2                    | Deutsch/Esperanto/English/
France                                   | Nederlands/Francais