Re: [AMBER] Mass-weighted RMSD one-liner with cpptraj - possible?

From: Daniel Roe <daniel.r.roe.gmail.com>
Date: Thu, 7 May 2020 15:47:11 -0400

Hi,

I think I've figured out what's going on. I took a look at that python
script you were using, and I saw that that there was an option for
translating structures. So I suspected that maybe the RMSD you posted
from that script had centered the structures on each other, and then
taken the RMSD without fitting. That turned out to be it. Here are the
results:

#Frame NoFit NoFitM NoRotate Fit FitM
       1 12.5962 12.6316 10.8749 0.0007 0.0007

The 'NoRotate' number is the no-fit RMSD after centering file02.pdb.
Here's the cpptraj script I used to get the above numbers in case
you're interested:

# Load file01 as the reference
parm file01.pdb
reference file01.pdb
# Load file02
parm file02.pdb
trajin file02.pdb parmindex 1
# RMS, no fitting
rms NoFit reference nofit out rmsd.dat
# RMS, no fitting, mass-weighted
rms NoFitM reference mass nofit out rmsd.dat
# Center file02 on file01
center reference
# RMS after centering, no fitting, mass-weighted
rms NoRotate reference mass nofit out rmsd.dat
# RMS after fitting
rms Fit reference out rmsd.dat
# RMS after fitting, mass-weighted
rms FitM reference mass out rmsd.dat

Hope this clears things up,

-Dan

On Wed, May 6, 2020 at 9:28 AM Martin Mielke <m_mlk.yahoo.com> wrote:
>
> Hello again Daniel,
>
> I followed your instructions and I can now calculate the RMSD and the
> mass-weighted RMSD. So far, so good...
>
> Now, there is a notable difference between the values obtained with
> calculate_rmsd.py (https://github.com/charnley/rmsd/tree/master/rmsd)
> and QMol (Windows application).
>
> Using both of them I come to the same results:
>
> a) RMSD
>
> 01 vs v2 10.901
>
> b) mass-weighted RMSD
>
> 01 vs v2 10.874
>
>
> But when I use cpptraj, the results differ quite a lot:
>
> c) RMSD - cpptraj
>
> 01 vs 02 12.5962
>
> d) mass-weighted RMSD - cpptraj
>
> 01 vs 02 12.6316
>
>
> For both cases [a) and b)] the only modification is rotation=none; with
> cpptraj, "nofit" does the same.
>
> Still, I do not know why cpptraj's results are so different from the
> other tools...
>
>
> Am I overseeing the obvious?
>
>
> Thanks and regards,
>
> Martin
>
>
> On 2020-05-05 23:26, Martin Mielke wrote:
> >
> > Hi Daniel,
> >
> > Thanks for your reply.
> >
> > I will give it a try and, most probably, will write a wrapper script
> > that accepts file1.pdb and file2.pdb as arguments...
> >
> > Also thanks for pointing me in the right direction!
> >
> >
> > Best,
> >
> > Martin
> >
> > On 2020-05-05 15:08, Daniel Roe wrote:
> >> Hi,
> >>
> >> On Mon, May 4, 2020 at 9:23 AM Martin Mielke<m_mlk.yahoo.com> wrote:
> >>> It seems like calculating a mass-weighted RMSD is possible too, so I was
> >>> wondering if someone would point me to the right direction in telling me
> >>> how to use cpptraj in a way that it yields the mass-weighted RMSD for 2
> >>> given PDB files? All I want is the final value shown on screen, no graph
> >>> files etc needed.
> >>>
> >>> For example:
> >>> $ cpptraj [options for mass-weighted RMSD here] file1.pdb file2.pdb [hit
> >>> enter]
> >>> 10.874
> >> This will require a short input file. Something like a file named e.g.
> >> myinput.in:
> >>
> >> # load reference pdb
> >> parm pdb1.pdb
> >> reference pdb1.pdb parmindex 0
> >> # load target pdb
> >> parm pdb2.pdb
> >> trajin pdb2.pdb parmindex 1
> >> # Calculate RMSD
> >> rmsd RMS reference mass
> >> run
> >> printdata RMS
> >>
> >> Then run 'cpptraj -i myinput.in'.
> >>
> >> This will be a best-fit RMSD by default, assumes that pdb1.pdb and
> >> pdb2.pdb have the exact same atoms, and that you want the final RMSD
> >> to include every atom. If the PDBs are different you would have to
> >> give mask expressions that describe the regions you want to use in the
> >> RMSD calculation. There needs to be a 1 to 1 correspondence between
> >> the atoms in the target and reference structures for the RMSD to be
> >> meaningful.
> >>
> >> Please let me know if you have more questions. It's probably also a
> >> good idea to look at the 'rmsd' command section of the cpptraj manual,
> >> and maybe do 1 or 2 of the basic cpptraj tutorials
> >> (https://ambermd.org/tutorials/TrajectoryAnalysis.php). If you run
> >> cpptraj interactively (by just typing cpptraj with no other input) and
> >> type 'help rmsd', it will show you the command syntax.
> >>
> >> Hope this helps,
> >>
> >> -Dan
> >>
> >> _______________________________________________
> >> AMBER mailing list
> >> AMBER.ambermd.org
> >> http://lists.ambermd.org/mailman/listinfo/amber
> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber

_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu May 07 2020 - 13:00:02 PDT
Custom Search