From: Josh Vermaas (
Date: Fri Jun 19 2015 - 14:55:13 CDT

Hi Brian,

1.) Can you use three separate representations? For instance if you had
atoms of type A, B, and C, you could have one representation for "type A
B", one for "type B C", and one for "type A C". Its perfectly possible
that it won't look right, but at the very least each of the
representations can be set to have a difference distance cutoff, and
that might be what you are looking for.

2.) Aren't you basically asking the question of "are these two things
close together?" a whole bunch of times? I would use the "measure
contacts" (
command to get me the full list of atoms of a certain type that are
within some cutoff of one another (if pbc is an issue, exwithin will
probably need to be used, and the scripting gets more involved). These
lists would shrink with time as the number of bonds shrinks, and that
would I think be the easiest way of getting a numerical answer as to how
many bonds have been broken. You could also keep track of which are the
bonds that break this way by analyzing the lists. The caveat here is
that measure contacts works on things that aren't bonded, so you'd need
to clear the automatically generated bondlist first (with topotools for
instance) to have it do what you want.

In general, VMD's programming assumes that bonds are not dynamically
made and broken, so its going to be unwieldy to go around changing what
was meant to be an unchanging topology on a per frame basis.

-Josh Vermaas

On 6/19/15 1:43 PM, Mercer, Brian S. wrote:
> Hi VMD users,
> I am doing ReaxFF simulations of a crystalline polymer undergoing
> fracture, and am seeking a way to visualize the bond-break behavior,
> as well as track which bonds have broken over time. I am new to using
> VMD but it seems like it has a lot of the tools in place to do this,
> though Im currently stuck on a few fronts.
> Im currently doing simulations in LAMMPS and dumping the trajectory
> to an xyz file to read into VMD.
> 1) Is there a way to assign different bond cutoff lengths to different
> types of bonds in the visualizer? DynamicBonds works well for
> visualizing except that the bond cutoff is universal. I am interested
> in 3 distinct bond types in the system, each of which breaks at a
> different length. I see that you can assign bond topology explicitly
> using topotools can perhaps I make the visualizer draw bonds
> according to that topology, and delete bonds that exceed the cutoff
> criteria?
> 2) In addition to visualizing, Id like to keep track of how many
> bonds (and of which type) have broken over the course of the
> simulation. Similar to how the hbonds.tcl script can be used to plot
> the number of hydrogen bonds present in each frame. Im again thinking
> this could be done by assigning an initial bond topology and removing
> bonds from the system as they exceed a specified distance criteria
> based on their type. Or, does VMD already provide such a functionality?
> Please let me know if you have any thoughts on how I might proceed.
> Thank you,
> Brian
> --
> Brian Mercer
> Lawrence Livermore National Laboratory
> University of California Berkeley
> Lawrence Graduate Scholar and PhD Candidate