From: Mercer, Brian S. (mercer9_at_llnl.gov)
Date: Fri Jun 19 2015 - 15:53:28 CDT

Thank you, Josh. Those are both good ideas. 2) in particular should do exactly what I want. I think 1) will be good enough as well; if not, I'll wander back here.

Thanks!

Brian

--
Brian Mercer
Lawrence Livermore National Laboratory
University of California Berkeley
Lawrence Graduate Scholar and PhD Candidate
From: Josh Vermaas [mailto:vermaas2_at_illinois.edu]
Sent: Friday, June 19, 2015 12:55 PM
To: Mercer, Brian S.; vmd-l_at_ks.uiuc.edu
Subject: Re: vmd-l: Visualizing and counting broken bonds in VMD
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" (http://www.ks.uiuc.edu/Research/vmd/current/ug/node138.html_mQNqnyI&s=eKKQTqq9sHkjVsnVQ-_4D_ixfE_fQJncHhRVdIrkrLU&e=>) 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 I'm currently stuck on a few fronts.
I'm 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, I'd 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. I'm 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