Compute Linear-Programming Root-Mean-Squared Deviation (LP-RMSD) of all conformations in target to a reference conformation. The LP-RMSD is the minimum root-mean squared deviation between two sets of points, minimizing over both the rotational/translational degrees of freedom AND the label correspondences between points in the target and reference conformations. This means that it can be used meaningfully with atoms with exchange symmetry like, like multiple water molecules.
| Parameters: | target : md.Trajectory 
 reference : md.Trajectory 
 frame : int 
 atom_indices : array_like, or None 
 permute_groups : list of array_like, or None 
 parallel : bool 
 superpose : bool 
 | 
|---|---|
| Returns: | lprmsds : np.ndarray, shape=(target.n_frames,) 
 | 
Notes
The optimization procedure used does necessary not find the rotation/mapping for the global minimum of the means squared deviation. It does usually find a pretty good solution though, using a 3 step procedure. For each frame in the target, (1) align the target reference frame using only the distinguishable atoms (2) using this fixed rotation matrix, find the optimal mapping for the labels in the permute groups (3) using this mapping, recompute a new optimal rotation matrix to align the frame, and get the final RMSD.