From: Olaf Lenz (
Date: Fri Mar 16 2007 - 03:57:59 CDT

Hello again!

After rereading your description of the problem, I'm not completely sure
anymore whether my script solves your problem. What the new version of
the plugin does is to compensate jumps in the whole coordinate system,
as opposed to jumps in coordinates of single atoms.

> However, in REMD there are large displacements between successive
> frames due to the instantaenous coordinate swaps. Thus, attempting to
> use the aforementioned tools on a REMD trajectory leads to detection
> of erroneous "jumps".

To see whether I have understood the problem, I will try to restate it:
you're employing some kind of hybrid MC-like algorithm, where the
coordinates of atoms are swapped? If so, also the new unwrapping
procedure will not work correctly.

> I had the idea of writing a script that would remove PBC wrapping based on bond
> length. If the bond in VMD gets larger than a certain amount, the script would
> detect this as a jump.
> Then, the script would translate the appropriate atoms
> in the appropriate direction to make the molecule whole again.

In fact, I have already written the documentation and some pseudo code
of a procedure "pbcjoin" that should join wrapped
residues/chains/segments, however, I have not implemented it so far. I
have attached the Tcl file containing the documentation so that you can
have a look at it.

> I'm assuming VMD
> stores information about what atoms share a "chemical bond" (i.e. are connected
> by a line). Is there a way to access this information? My idea is still somewhat
> rough so any suggestions or insights on this would be appreciated!

Usually, I would think that all atoms that are bonded belong either to a
segment, a chain or a residue, so the actual bonding information is not
really required. If this is not so, the bond information can be obtained
from selections done via the "atomselect" command ("$sel getbonds"). It
does make sense to extend the pbcjoin procedure so that it can also join
any bonded structure, so I have added it to the file.

I'm not sure whether I will manage to implement the procedure during the
next days, but it may very well happen. How strong is your need?

Best regards