VMD-L Mailing List
From: William Ray (ray.29_at_osu.edu)
Date: Thu Sep 27 2012 - 13:29:49 CDT
- Next message: flavio seixas: "Radius of gyration from Big DCD"
- Previous message: William Ray: "Re: IMD and AutoIMD bug when releasing forces on residues?"
- In reply to: William Ray: "Re: IMD and AutoIMD bug when releasing forces on residues?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Two more data points:
a) The same behavior exists for forces applied to fragments rather than residues.
b) VMD appears to behave properly if I "manually" reduce the force, rather than middle-clicking to terminate it.  I.e.  If I apply a fragment force to residues 2-10 of 10ala, say 13kcal/mol/A, it will start to unfold.  If I middle-click to terminate that force, all the force-arrows disappear, and ufx/y/z will report zero force, but the molecule will continue to stretch and lose all structure.  If I (very carefully) reduce the length of my drag, so that I'm down to say 2kcal/mol/A, still keeping the force "on", and positive in the direction originally applied, then the hydrogen bonding will recover, and 10ala will refold.
On Sep 27, 2012, at 2:09 PM, William Ray wrote:
> 
> Another data point.
> 
> If I pull on a residue using a mouse->residue force, and add, say 5.5kcal/mol/A to the simulation and then wait for it to stretch the h-bonds to the maximum, but not break them, then middle-click to remove that force, switch to mouse->atom forces, and add on the order of 2kcal/mol/A to an atom of the same residue, I'll stretch the 10ala more, breaking a few h-bonds in the process.  If I remove that single atom force, the system "recoils" to about where it was before the addition of the single atom force, but not back to the no-force state.  If I add, and then delete forces on all of the atoms of that same residue, the behavior remains the same - the system acts as though the "residue force" remained present on the residue atoms.  Behaviors are similar regardless of the temperature for the simulation.
> 
> A possible alternative explanation would be if all _other_ forces on the molten segment were deleted at the same time the IMD force was deleted, leaving the system with only velocities.  I don't think this could quite account for the behavior I'm seeing, but I can't completely rule it out.
> 
> Without digging in the code enough to follow how forces are being passed from VMD into NAMD, it looks like perhaps when forces are attached to a residue they're sent in some form of "append" mode into NAMD (where canceling them appends a zero force, instead of removing the applied force), whereas individual atom forces are sent in such a fashion as they're added, and subtracted?
> 
> I'm having a bit of difficulty getting VMD to compile under Lion, so I'm a bit away from being able to test enough to start to understand the guts.
> 
> Thanks again,
> Will Ray
> 
> 
> On Sep 27, 2012, at 11:51 AM, William Ray wrote:
> 
>> 
>> Hmmm...
>> 
>> ufx, ufy and ufz seem to be correctly zeroed across the entire molecule when the force is removed.
>> 
>> Nonetheless, the molecule continues to fall apart, as though forces were still present.
>> 
>> Forgive me for not knowing the VMD internals well enough yet, but it looks like ufx/y/z are external forces?  Is there another set of variables we could look at for full integrated per-atom forces?
>> 
>> 
>> Thanks much!
>> Will Ray
>> 
>> 
>> 
>> 
>> (Main< (ray) 32 % set sel [atomselect top "resid 2 to 10"]
>> atomselect18619
>> 
>> 
>>> Main< (ray) 33 % set force [$sel get {ufx ufy ufz}]
>> {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0
} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0}
>> 
>> 
>>> Main< (ray) 34 % set force [$sel get {ufx ufy ufz}]
>> {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0
} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898} {-0.3580720126628876 -0.11941620707511902 0.15656539797782898}
>> 
>> 
>>> Main< (ray) 35 % set force [$sel get {ufx ufy ufz}]
>> {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0
} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0} {0.0 0.0 0.0}
>> 
>> 
>> 
>> On Sep 27, 2012, at 11:15 AM, John Stone wrote:
>> 
>>> Hi,
>>> Can you use an atom selection and print out the active values of 
>>> "ufx", "ufy", and "ufz" before and after you try and reset the 
>>> forces to zero?
>>> 
>>> I just read through the code, and the Mouse-based IMD code is indeed 
>>> trying to zero-out the forces when you press the middle or right mouse
>>> buttons when applying forces to residues.  It is possible that there's a
>>> bug in the code that manages the force list or that the residue case is 
>>> following an unexpected code path, but we should be able to determine
>>> where the problem is by watching the values of ufx/ufy/ufz as it runs.
>>> You can use a callback to trigger the atom selection query/printing 
>>> if you prefer.
>>> 
>>> Cheers,
>>> John Stone
>>> vmd_at_ks.uiuc.edu
>>> 
>>> On Thu, Sep 27, 2012 at 10:57:52AM -0400, William Ray wrote:
>>>> 
>>>> VMD 1.9.1 and NAMD 2.9 on MacOS 10.7.4
>>>> 
>>>> I'm seeing what seems to be a bug in IMD/AutoIMD when using the mouse to apply a force to a residue.  Specifically, when the force is released in the interface, it doesn't actually appear to be removed from the simulation.
>>>> 
>>>> This is demonstrable with the deca-alanine tutorial PDB and PSF, using either the 10ala tutorial dedicated process, or loading the 10ala files and using AutoIMD.
>>>> 
>>>> When a force is applied to a single atom, 10ala stretches, h-bonds break, etc.  Middle-clicking on the atom to which the force was applied makes the red force-arrow disappear, and 10ala generally "springs back".  h-bonds reform, etc.
>>>> 
>>>> When a force is applied to a residue, multiple force-arrows appear, 10ala stretches, and even if I middle-click to remove the force immediately after the first h-bond breaks (all red force-arrows disappear), 10ala will continue stretching in the direction of the originally applied force, breaking all the other h-bonds until it is a stretched linear chain, and will never spring back.  The interface does show zero for the applied force, after middle-clicking to remove it.
>>>> 
>>>> This happens nomatter how small a force I attempt to apply to a residue.  If it's sufficient to break a single h-bond, even after middle-click removing the force, 10ala will be inexorably unfolded, never to regain structure.
>>>> 
>>>> 
>>>> My guess is that the middle-click is not deleting forces from all the atoms where a force was applied, but I don't know how to diagnose this further.
>>>> 
>>>> 
>>>> Yes, I'm working on getting a Phantom set up, but the mouse will have to do until I get a spare linux box for the office.
>>>> 
>>>> Any suggestions?
>>>> Will Ray
>>>> OSU Biophysics
>>>> 
>>> 
>>> -- 
>>> NIH Resource for Macromolecular Modeling and Bioinformatics
>>> Beckman Institute for Advanced Science and Technology
>>> University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
>>> http://www.ks.uiuc.edu/~johns/           Phone: 217-244-3349
>>> http://www.ks.uiuc.edu/Research/vmd/       Fax: 217-244-6078
>>> 
>>> 
>> 
> 
- Next message: flavio seixas: "Radius of gyration from Big DCD"
- Previous message: William Ray: "Re: IMD and AutoIMD bug when releasing forces on residues?"
- In reply to: William Ray: "Re: IMD and AutoIMD bug when releasing forces on residues?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]



