pele.mindist._minpermdist_policies#
- class pele.mindist._minpermdist_policies.TransformPolicy[source]
-
class TransformPolicy:interface for possible transformations on a set of coordinates
The transform policy tells minpermdist how to perform transformations, i.e. a translation, rotation and inversion on a specific set of coordinates. This class is necessary since in general a coordinate array does not carry any information on the type of coordinate, e.g. if it’s a site coordinate, atom coordinate or angle axis vector.
All transformation act in place, that means they change the current coordinates and do not make a copy.
- TransformPolicy.rotate()[source]
-
def rotate(self, X, mx):apply rotation matrix mx for a rotation around the origin
- TransformPolicy.can_invert()[source]
-
def can_invert(self):returns True or False if an inversion can be performed
- TransformPolicy.permute()[source]
-
def permute(self, X, perm):returns the permuted coordinates
- class pele.mindist._minpermdist_policies.MeasurePolicy[source]
-
class MeasurePolicy:interface for possible measurements on a set of coordinates
The MeasurePolicy defines an interface which defines how to perform certain measures which are essential for minpermdist on a set of coordinates. For more motivation of this class see TransformPolicy.
- MeasurePolicy.get_dist()[source]
-
def get_dist(self, X1, X2, with_vector=False):calculate the distance between 2 set of coordinates
- MeasurePolicy.find_permutation()[source]
-
def find_permutation(self, X1, X2):find the best permutation between 2 sets of coordinates
- MeasurePolicy.find_rotation()[source]
-
def find_rotation(self, X1, X2):find the best rotation matrix to bring structure 2 on 1
- class pele.mindist._minpermdist_policies.TransformAtomicCluster[source]
-
class TransformAtomicCluster(TransformPolicy):transformation rules for atomic clusters