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: Structure, st1_atoms: Optional[List[int]] = None, st2: Optional[Structure] = None, st2_atoms: Optional[List[int]] = None, cutoff: float = 0.75, hbond_params: Optional[AtomQueryParams] = None, salt_bridge_params: Optional[SaltBridgeParams] = None, include1_4: bool = False) List[Tuple[StructureAtom, 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 – First structure.
st1_atoms – List of atom indices in the first structure, if
Nonewill use all atoms.st2 – Second structure, if
Nonewill use the first structure.st2_atoms – List of atom indices in the second structure, if
Nonewill use all atoms.cutoff – Cutoff for clash consideration.
hbond_params – Don’t include hydrogen bonds matching
hbond_paramsin clash list.salt_bridge_params – Don’t include salt bridges matching
salt_bridge_paramsin the clash list.include1_4 – Include clashes between atoms within 4 bonds of each other.
- Returns:
Pair of all atom pairs with steric clash.