From: Josh Vermaas (vermaasj_at_msu.edu)
Date: Fri Sep 23 2022 - 15:36:58 CDT

Hi Amanda,

This is a fun one! You did indeed do exactly what I would have done, and
use the "$sel frame $i" to set the correct frame. The update is strictly
speaking not needed, unless the selection changes as a function of
time.This looks like what Axel suggested back in 2005
(https://www.ks.uiuc.edu/Research/vmd/mailing_list/vmd-l/4885.html), so
this looks reasonable.

But I think I now understand the problem. Is the amino acid that is
reporting consistently 0 either at the beginning or end of the chain?
The first amino acid doesn't have a phi angle, and the last amino acid
doesn't have a psi angle. Likewise, if you had something that wasn't a
protein in your system, but *did* have a CA atom, that might also not
have a phi or psi angle. In VMD, not having a phi or psi angle manifests
as *always* reporting 0. What I did to test this was to take your script
and run it against the ubiquitin in a box simulation from the NAMD
tutorial. That made it clear that your script was actually fine, and
that you might be running into something weird with how your system is
constructed.

-Josh

On 9/23/22 2:30 PM, Amanda Jenkins wrote:
> Hello Josh,
>
> I am calculating the dihedral angles (phi and psi) using a Tcl TkCon
> script which is below:
>
> /set mol [molinfo top]/
> /set fp [open "BOB.txt" w]/
> /set sel [atomselect $mol "all and name CA"]/
> /set n [molinfo $mol get numframes]/
> /for {set i 0} {$i < $n} {incr i} {/
> /$sel frame $i/
> /*$sel update*/
> /
>
> puts $fp "\# frame: $i"
>
> set a [$sel num]
>
> for {set j 0} {$j < $a} {incr j} {
>
> puts $fp "[expr $j + 1] [lindex [$sel get {resname phi psi}] $j]"
>
> }
>
> /
> /}/
> /$sel delete
> /
> /close $fp/
> /
> /
> Is the line /$sel update/ (bolded) insufficient to update the
> trajectory? Thanks.
>
> Amanda J.
> ------------------------------------------------------------------------
> *From:* Josh Vermaas <vermaasj_at_msu.edu>
> *Sent:* Friday, September 23, 2022 7:54 AM
> *To:* Amanda Jenkins <amanda.jenkins1379_at_outlook.com>;
> vmd-l_at_ks.uiuc.edu <vmd-l_at_ks.uiuc.edu>
> *Subject:* Re: vmd-l: Ramachandran Dihedral Angles Suspiciously Constant
> Hi Amanda,
>
> How are you calculating phi/psi angles? I'm betting that your script
> isn't updating the selection over your trajectory. A way to confirm
> this visually is to label the specific dihedral of interest (on the
> VMD main window Mouse->Label->Dihedral), and animate through your
> trajectory. I suspect you'll see non-zero values. It is basically
> impossible for a trajectory to give you exactly a 0.0 dihedral for all
> frames, but it is relatively easy (and I've done it) to forget to
> update your selection within Tcl so that VMD is calculating on the
> right set of coordinates.
>
> -Josh
>
> On 9/23/22 6:14 AM, Amanda Jenkins wrote:
>> Dear community,
>>
>> I have results/PDB trajectories from several MD simulations/repeats
>> of a protein composed of several chains.  For one of the chains, one
>> of the amino acids, always has values of 0.0 for both phi and psi
>> angles throughout the trajectory simulation.  This is observed
>> throughout each different set/repeat of simulation results and at the
>> same amino acid in the same chain.  I have RMSD aligned each
>> individual trajectory/simulation result set, so my initial theory was
>> that maybe this amino acid in question is serving as the "anchor"
>> point upon which all the other snapshots are superimposed for a given
>> simulation set, but it still seems a bit odd to me that both phi and
>> psi angles would be perfectly 0.0 at every single trajectory
>> snapshot.  I have other amino acids that have small/fractional phi
>> and psi angles so I am suspicious that this perfect set of 0.0 phi
>> and psi angles might be an artifact of some sort and not an actual
>> physical phenomenon.
>>
>> Would someone please tell me what could be causing this situation?
>>  Is it an artifact?
>>
>> For additional information, my total simulation time is 200
>> nanoseconds with a snapshot being printed every 1 nanosecond, and
>> this is done for all of my distinct simulation result sets/repeats.
>>
>> Thanks for any insight anyone can provide.
>>
>> Amanda J.
>
> --
> Josh Vermaas
>
> vermaasj_at_msu.edu <mailto:vermaasj_at_msu.edu>
> Assistant Professor, Plant Research Laboratory and Biochemistry and Molecular Biology
> Michigan State University
> vermaaslab.github.io

-- 
Josh Vermaas
vermaasj_at_msu.edu
Assistant Professor, Plant Research Laboratory and Biochemistry and Molecular Biology
Michigan State University
vermaaslab.github.io