schrodinger.application.matsci.etarotamers module¶
Utilities for creating rotamers of eta-complexes.
Copyright Schrodinger, LLC. All rights reserved.
-
exception
schrodinger.application.matsci.etarotamers.
EtaRotamersException
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
schrodinger.application.matsci.etarotamers.
find_metal
(struct)¶ Find the metal atom in the structure and ensure there is exactly one
Parameters: struct ( schrodinger.structure.Structure
) – The structure containing all the atomsRaises: EtaRotamersException – if there is an issue Return type: int Returns: The index of the single metal atom
-
class
schrodinger.application.matsci.etarotamers.
HapticLigand
(struct, num)¶ Bases:
object
Manages manipulation of a haptic ligand
-
__init__
(struct, num)¶ Create a HapticLigand object
Parameters: - struct (
schrodinger.structure.Structure
) – The structure containing the ligand - num (int) – The value of the LIGNUM_PROP property for atoms in this ligand
- struct (
-
addRotationAtoms
()¶ - We add two atoms that help define the torsion for rotation.
- 1) The centroid of the ring. We’ll rotate the ring about the centroid-metal axis 2) A fake atom as the same location as one of the ring atoms. We’ll rotate the ring a number of degrees relative to this atom
-
defineTorsionIndexes
()¶ - Define the torsion as the four atoms in the following order:
- An arbitrary haptic atom in this ligand
- The centroid of this ligand
- The metal atom
- An arbitrary haptic atom in the other ligand
-
createRotatedStructures
(base_title)¶ Create all the rotated ligand structures by rotating the ring. The number of rotations is equal to N_ROTAMERS_F * num_ring_atoms and each rotation is 360 / (N_ROTAMERS_F * num_ring_atoms) degrees.
Parameters: base_title (str) – The base title for the structures Return type: list Returns: Each item of the list is a rotated structure
-
getRotamers
(base_title)¶ Return the rotamers.
Parameters: base_title (str) – The base title for the structures Return type: list Returns: Each item of the list is a rotated structure
-
-
schrodinger.application.matsci.etarotamers.
create_rotated_complexes
(struct, lignums, base_title, rotate_both_ligands=True)¶ Create a series of complexes by rotating one haptic ligand around its centroid-metal axis
Parameters: - struct (
schrodinger.structure.Structure
) – The complex - lignums (list) – The LIGNUM_PROP vals for atoms in haptic ligands
- base_title (str) – The base title for the structures
- rotate_both_ligands (bool) – whether to rotate both ligands
Return type: list
Returns: Each item of the list is a rotated structure
- struct (
-
schrodinger.application.matsci.etarotamers.
get_rotatable_haptic_ligands
(st, only_rings=True)¶ Return rotatable haptic ligand molecules in the given structure.
Parameters: - st (schrodinger.structure.Structure) – the structure
- only_rings (bool) – if True then only allow rotation of eta-bound rings, if False then also allow rotation of ligands where the eta-bound motif is acyclic, for example ethene, etc.
Return type: list
Returns: contains schrodinger.structure._Molecule
-
schrodinger.application.matsci.etarotamers.
get_rotamers
(struct, only_rings=True)¶ Return the rotamers for the given eta-complex.
Parameters: - struct (schrodinger.structure.Structure) – the structure
- only_rings (bool) – if True then only allow rotation of eta-bound rings, if False then also allow rotation of ligands where the eta-bound motif is acyclic, for example ethene, etc.
Raises: EtaRotamersException – if there is an issue
Return type: list
Returns: contains schrodinger.structure.Structure of rotamers