schrodinger.structutils.interactions.steric_clash module¶
- schrodinger.structutils.interactions.steric_clash.clash_iterator(struc1, atoms1=None, struc2=None, atoms2=None, allowable_overlap=0.4)¶
Iterate through all steric clashes between two groups of atoms
- Parameters
struc1 (
schrodinger.structure.Structure) – The first structure to examineatoms1 (list(int)) – A list of atom numbers for
struc1. If given, only the specified atoms will be examined. If not given, all atoms ofstruc1will be used.struc2 (
schrodinger.structure.Structure) – The second structure to examine. If not givenstruc1will be usedatoms2 (list(int)) – A list of atom numbers for
struc2. If given, only the specified atoms will be examined. If not given, all atoms ofstruc2will be used.allowable_overlap (float) – Steric clashes smaller than this will be ignored. The default (0.4 A) is a reasonable value when examining protein- protein interactions.
- Returns
A generator that iterates through steric clashes. Each iteration will yield a tuple of (atom from
struc1, atom fromstruc2, distance). The distance between the two specified atoms in Angstroms (float). Note that this is the distance between the nuclear centers, not the size of the overlap.- Return type
generator
- schrodinger.structutils.interactions.steric_clash.sphere_overlap_volume(radius1, radius2, dist)¶
Calculate the volume of the overlap between two spheres
- Parameters
radius1 (float) – The radius of the first sphere
radius2 (float) – The radius of the second sphere
dist (float) – The distance between the centers of the two spheres
- Returns
The overlap volume
- Return type
float
- Note
The equation implemented here is taken from http://mathworld.wolfram.com/Sphere-SphereIntersection.html, equation 16
- schrodinger.structutils.interactions.steric_clash.clash_volume(struc1, atoms1=None, struc2=None, atoms2=None)¶
Calculate the volume of the steric overlap between two structures
- Parameters
struc1 (
schrodinger.structure.Structure) – The first structure to examineatoms1 (list) – A list of atom numbers for
struc1. If given, only the specified atoms will be examined. If not given, all atoms ofstruc1will be used.struc1 – The second structure to examine. If not given
struc1will be usedatoms2 (list) – A list of atom numbers for
struc2. If given, only the specified atoms will be examined. If not given, all atoms ofstruc2will be used.
- Returns
The steric overlap volume in cubic Angstroms
- Return type
float
- Note
The overlap volume is calculated as a sum of pair-wise steric clashes. This may double count overlaps for very severe steric clashes where there are really three spheres overlapping.
- schrodinger.structutils.interactions.steric_clash.get_steric_clashes(st1: schrodinger.structure._structure.Structure, st1_atoms: Optional[List[int]] = None, st2: Optional[schrodinger.structure._structure.Structure] = None, st2_atoms: Optional[List[int]] = None, cutoff: float = 0.75, hbond_params: Optional[structure.AtomQueryParams] = None, salt_bridge_params: Optional[structure.SaltBridgeParams] = None) List[Tuple[schrodinger.structure._structure._StructureAtom, schrodinger.structure._structure._StructureAtom]]¶
Return all pairs of atoms with steric clashes.
To determine a clash, get the ratio of the distance between two atoms to the sum of their van der Waals radii:
sqrt(square_distance) / (atom1_radius + atom2_radius)
and ignore all values above a certain cutoff.
- Parameters
st1 (structure.Structure) – First structure.
st1_atoms (list[int] or NoneType) – List of atom indices in the first structure, if
Nonewill use all atoms.st2 (structure.Structure or NoneType) – Second structure, if
Nonewill use the first structure.st2_atoms – List of atom indices in the second structure, if
Nonewill use all atoms.cutoff (float) – Cutoff for clash consideration.
hbond_params (schrodinger.infra.structure.AtomQueryParams) – Don’t include hydrogen bonds matching
hbond_paramsin clash list.salt_bridge_params (schrodinger.infra.structure.SaltBridgeParams) – Don’t include salt bridges matching
salt_bridge_paramsin the clash list.
- Returns
Pair of all atom pairs with steric clash.
- Return type
list[tuple(structure._StructureAtom, structure._StructureAtom)]