Symmetry#
- autode.thermochemistry.symmetry.cn_and_axes(species, pcoords, max_n, dist_tol)#
Find the highest symmetry rotation axis
- Parameters:
max_n (int)
dist_tol (float)
- Returns:
np.ndarray)):
- Return type:
(dict(int
- autode.thermochemistry.symmetry.create_pcoords(species)#
Return a tensor where the first dimension is the size of the number of unique atom types in a molecule, the second, the atoms of that type and the third the number of dimensions in the coordinate space (3)
- Returns:
(np.ndarray) shape (n, m, 3)
- autode.thermochemistry.symmetry.get_possible_axes(coords, max_triple_dist=2.0, sim_axis_tol=0.1)#
Possible rotation axes in a molecule. Currently limited to average vectors and cross products i.e.:
Y Y ---> / \ / \ X Y X Z | | ,
- Parameters:
max_triple_dist (float)
sim_axis_tol (float)
- Return type:
(list(np.ndarray))
- autode.thermochemistry.symmetry.is_same_under_n_fold(pcoords, axis, n, m=1, tol=0.25, excluded_pcoords=None)#
Does applying an n-fold rotation about an axis generate the same structure back again?
- Parameters:
axis (np.ndarray) – shape = (3,)
n (int) – n-fold of this rotation
m (int) – Apply this n-fold rotation m times
tol (float)
excluded_pcoords (list)
- Return type:
(bool)
- autode.thermochemistry.symmetry.strip_identical_and_inv_axes(axes, sim_axis_tol)#
For a list of axes remove those which are similar to within some distance tolerance, or are inverses to within that tolerance
- Return type:
(list(np.ndarray))
- autode.thermochemistry.symmetry.symmetry_number(species, max_n_fold_rot_searched=6, dist_tol=0.25)#
Calculate the symmetry number of a molecule. See: Theor Chem Account (2007) 118:813–826. 10.1007/s00214-007-0328-0
- Keyword Arguments:
max_n_fold_rot_searched (int)
dist_tol (float) – Distance tolerance (Å)
- Return type:
(int)