SMILES Atom Types#
- class autode.smiles.atom_types.AtomType(site_coords, is_chiral=False)#
- __init__(site_coords, is_chiral=False)#
Base atom type class
atoms can be added
- Keyword Arguments:
is_chiral (bool) – Is this atom type chiral e.g. a tetrahedral atom with four different substituents
- empty_site()#
Iterator for the coordinate of the next free site
- empty_site_mr(point, other_coords)#
Return the site on this atom that is furthest from all other coordinates using a simple 1/r potential where r is the distance from the site to the other coordinates
- Parameters:
other_coords (np.ndarray) – Other coordinates, shape = (N, 3)
- Returns:
Coordinate of the site centered at the origin
- Return type:
(np.ndarray)
- property n_empty_sites#
Number of empty sites on this template
- reset_onto(points, coord)#
Reset the site coordinates given a set of points. Ignore any points located exactly at the origin and, once fitted, remove the sites that are coincident with the points
- Parameters:
coord (np.ndarray) – Coordinate of this atom
- rotate_empty_onto(point, coord)#
Rotate the site coordinates such that an empty site is coincident with the vector from a coordinate to a point, and remove the site from the list of available sites
- rotate_onto(point, coord, site)#
Rotate this atom type so a site is coincident with a point if this atom is at a coord i.e.:
site / / --> point--------coord point--site--coord
- Parameters:
coord (np.ndarray) – shape = (3,)
site (np.ndarray) – shapte = (3,)
- rotate_randomly()#
Rotate the sites randomly to prevent zero cross products
- class autode.smiles.atom_types.BentAtom#
- __init__()#
Bent atom with sites generated by optimisation of H2O:
Atom / \
- class autode.smiles.atom_types.LinearAtom#
- __init__()#
Linear atom with sites pointing along the x-axis:
---Atom---
- WARNING: Completely linear cause failures for internal coordinate
optimisation algorithms and have undefined cross products. Site coordinates are therefore not precisely linear
- class autode.smiles.atom_types.OctahedralAtom#
- __init__()#
Octahedral atom with sites generated by optimisation of [Co(Cl)6]3-:
| | / --- Atom -- / | |
- class autode.smiles.atom_types.PentagonalBipyramidalAtom#
- __init__()#
Approximate trigonal pentagonal geometry by optimisation of IF7
- class autode.smiles.atom_types.SquareAntiprismAtom#
- __init__()#
Approximate square antiprism geometry by optimisation of [XeF8]2-
- class autode.smiles.atom_types.SquarePlanarAtom#
- __init__()#
Square planar atom with sites generated by optimisation of XeF4:
| -- Atom -- |
- class autode.smiles.atom_types.TerminalAtom#
- __init__()#
Terminal atom with a site pointing along the x-axis:
Atom---
- class autode.smiles.atom_types.TetrahedralAtom#
- __init__()#
Tetrahedral atom with sites generated by optimisation of methane (then normalising CH distances to 1 Å):
| / Atom / \
- class autode.smiles.atom_types.TetrahedralIAtom#
An ‘inverted’ order chiral tetrahedral atom
- __init__()#
Tetrahedral atom with sites generated by optimisation of methane (then normalising CH distances to 1 Å):
| / Atom / \
- empty_site()#
Swap the first two yielded site coordinates, effectively swapping the chirality this atom’s neighbours are added
- class autode.smiles.atom_types.TetrahedralNAtom#
A ‘normal’ order chiral tetrahedral atom
- __init__()#
Tetrahedral atom with sites generated by optimisation of methane (then normalising CH distances to 1 Å):
| / Atom / \
- class autode.smiles.atom_types.TrigonalAtom#
- __init__()#
Trigonal atom e.g. [CR3]+ , obtained from optimisation of BH3 (then normalising NH distances to 1 Å):
/ --- Atom \