I need to compute the root mean square deviation (RMSD) between two protein structures: the X-ray determined protein structure and the MOPAC optimized structure. Which software do you suggest?

  • 1
    $\begingroup$ There is also an interesting python package called ProDy which seems to be able to compute the root mean square deviation. $\endgroup$
    – Philipp
    Commented Sep 4, 2014 at 3:26

3 Answers 3


All of these are freely available packages:

Visual Molecular Dynamics - good visualization tool that can also do quick-and-dirty calculations from a graphical interface. The scripting interface has a learning curve, but yes, it can be quite powerful.

Avogadro - not as powerful as VMD, but can be useful for certain things.

Rasmol - Similar to VMD, although I've never used it.

LAMMPS, Gromacs, or NAMD - If one of these is installed on a computer you have access to, each of them can do this sort of computation and will allow you to do more advanced things if needed (they are actually molecular dynamics simulators). Each of these packages requires some familiarity with running code from the command-line and will have a learning curve.

Alternatively, you could always write your own code. RMSD is a pretty straightforward computation, and it's always nice to have more control over your analysis!

  • $\begingroup$ You should add TINKER to the list. Its free and has a bunch of other things but the (overlay?) package computes RMSD on the fly. $\endgroup$ Commented Sep 8, 2014 at 11:10

There are a number of command-line utilities that can do this, but I'd suggest Open Babel

For example, you can align the molecules and append or print the RMSD as described in the documentation here.

I'll point out that calculating an RMSD can be difficult if the frame of reference has changed or the order of atoms is different in the calculation. The Open Babel code will ignore such differences.


VMD. The built-in scripting language is insanely powerful.

  • 2
    $\begingroup$ Could you elaborate a little bit, like adding a link. $\endgroup$ Commented Sep 4, 2014 at 3:05
  • $\begingroup$ I added the link, but please add a bit more substance as to how the scripting language would suit the OP's purpose, for example. $\endgroup$
    – jonsca
    Commented Sep 4, 2014 at 9:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.