mdtraj.rmsd¶
- 
mdtraj.rmsd(target, reference, frame=0, atom_indices=None, parallel=True, precentered=False)¶
- Compute RMSD of all conformations in target to a reference conformation. Note, this will center the conformations in place. - Parameters
- targetmd.Trajectory
- For each conformation in this trajectory, compute the RMSD to a particular ‘reference’ conformation in another trajectory object. 
- referencemd.Trajectory
- The object containing the reference conformation to measure distances to. 
- frameint, default=0
- The index of the conformation in reference to measure distances to. 
- atom_indicesarray_like, or None
- The indices of the atoms to use in the RMSD calculation. If not supplied, all atoms will be used. 
- ref_atom_indicesarray_like, or None
- Use these indices for the reference trajectory. If not supplied, the atom indices will be the same as those for target. 
- parallelbool
- Use OpenMP to calculate each of the RMSDs in parallel over multiple cores. 
- precenteredbool, default=False
- Assume that the conformations are already centered at the origin, and that the “rmsd_traces” have been computed, as is done by Trajectory.center_coordinates. The “rmsd_traces” are intermediate calculations needed for the RMSD calculation which can be computed independently on each trajectory. Note that this has the potential to be unsafe; if you use Trajectory.center_coordinates and then modify the trajectory’s coordinates, the center and traces will be out of date and the RMSDs will be incorrect. 
 
- Returns
- rmsdsnp.ndarray, shape=(target.n_frames,)
- A 1-D numpy array of the optimal root-mean-square deviations from the frame-th conformation in reference to each of the conformations in target. 
 
 - See also - Trajectory.center_coordinates
 - Notes - This function uses OpenMP to parallelize the calculation across multiple cores. To control the number of threads launched by OpenMP, you can set the environment variable - OMP_NUM_THREADS.- Examples - >>> import mdtraj as md >>> rmsds = md.rmsd(trajectory, trajectory, 0) >>> print rmsds array([ 0.0, 0.03076187, 0.02549562, ..., 0.06230228, 0.00666826, 0.24364147]) - The calculation is slightly faster if you precenter the trajectory - >>> trajectory.center_coordinates() >>> rmsds = md.rmsd(trajectory, trajectory, 0, precentered=True)