pele.angleaxis.aaperiodicttransforms#

class pele.angleaxis.aaperiodicttransforms.MeasurePeriodicRigid

Source

class MeasurePeriodicRigid(MeasureAngleAxisCluster):

Measure rules for rigid body systems with periodic boundary conditions

Parameters:
topology: RBTopologyBulk

the topology object for the system, containing the box size vector

transform: Transform object, optional

should be TransformPeriodicRigid().

permlistlist of lists, optional

list of lists of identical atoms

Notes

Ensure that the topology is of type RBTopologyBulk There is no meaningful definition of the centre of mass in a periodic system, so this is removed. Rotations are not yet implemented, so technically we should only use non-cubic boxes.

class pele.angleaxis.aaperiodicttransforms.TransformPeriodicRigid

Source

class TransformPeriodicRigid(TransformPeriodic):

Interface for possible transformations on a set of rigid body coordinates with periodic boundary conditions.

The transform policy tells minpermdist how to perform translations only, because rotations and inversions are not generally relevant in periodic systems. Permutations should be implemented but currently are not.

All transformations act in place, that means they change the current coordinates and do not make a copy.

TransformPeriodicRigid.translate()

Source

def translate(self, X, d):

Performs an in-place translation of coordinates X by vector d

class pele.angleaxis.aaperiodicttransforms.ExactMatchRigidPeriodic

Source

class ExactMatchRigidPeriodic:

Tests whether two rigid body periodic systems are identical

Performs a translation to align the first atom in each set of coordinates, then tests whether the two structures are identical.

Parameters:
measure: Measure object

should be MeasurePeriodicRigid(system.topology,TransformPeriodicRigid()

accuracy: float (optional)

the tolerance to which the structure comparison will test

ExactMatchRigidPeriodic.__call__()

Source

def __call__(self, x1, x2):

Tests whether coordinate sets x1 and x2 are translationally equivalent