PointGroup
class#
- class AaronTools.symmetry.PointGroup(geom, tolerance=0.1, max_rotation=6, rotation_tolerance=0.01, groups=None, center=None)#
determines point group and valid symmetry operations for a structure
- __init__(geom, tolerance=0.1, max_rotation=6, rotation_tolerance=0.01, groups=None, center=None)#
- get_symmetry_elements(geom, tolerance=0.1, max_rotation=6, rotation_tolerance=0.01, groups=None)#
determine what symmetry elements are valid for geom
- Parameters:
geom (Geometry) – structre
tolerance (float) – maximum error for an element to be valid
max_rotation (int) – maximum n for Cn (Sn can be 2x this)
rotation_tolerance (float) – tolerance in radians for angle between axes to be for them to be considered parallel/antiparallel/orthogonal
- Return type:
list(SymmetryElement)
- determine_point_group(rotation_tolerance=0.01)#
determines point group of self by looing at self.elements
- Parameters:
rotation_tolerance (float) – tolerance in radians for axes to be considered parallel/antiparallel/orthogonal
- Returns:
point group name
- property symmetry_number#
external symmetry number
- equivalent_positions()#
returns a list of lists of atoms that are symmetry-equivalent
- property optically_chiral#
is this point group optically_chiral?
- idealize_geometry()#
adjust coordinates of self.geom to better match this point group also re-determines point group and symmetry elements