schrodinger.structutils.interactionfp module¶
Calculate structural interaction fingerprints.
The fingerprints are similar to those described in Deng et al, J. Med Chem (2004), 47, 337.
Copyright Schrodinger, LLC. All rights reserved.
- class schrodinger.structutils.interactionfp.StructuralInteractionFingerprintGenerator[source]¶
Bases:
object
A class which generates Structural Interaction Fingerprints. Based on the work described in: J. Med. Chem., 47 (2), 337-344, 2004. ‘Structural Interaction Fingerprint (SIFt): A Novel Method for Analyzing Three-Dimensional Protein-Ligand Binding Interactions’
- POLAR_RESIDUES = 'res. ARG, ASP, GLU, HIS, ASN, GLN, LYS, SER, THR, ARN, ASH, GLH, HID, HIE, LYN'¶
- HYDROPHOBIC_RESIDUES = 'res. PHE, LEU, ILE, TYR, TRP, VAL, MET, PRO, CYS, ALA, CYX'¶
- AROMATIC_RESIDUES = 'res. PHE, TYR, TRP, TYO'¶
- CHARGED_RESIDUES = 'res. ARG, ASP, GLU, LYS, HIP, CYT, SRO, TYO, THO'¶
- NUM_BITS_PER_RESIDUE = 9¶
- CONTACT_POS = 0¶
- BACKBONE_POS = 1¶
- SIDECHAIN_POS = 2¶
- POLAR_POS = 3¶
- HYDROPHOBIC_POS = 4¶
- ACCEPTOR_POS = 5¶
- DONOR_POS = 6¶
- AROMATIC_POS = 7¶
- CHARGED_POS = 8¶
- ANY_CONTACT = 'Any Contact'¶
- BACKBONE_INTERACTION = 'Backbone Interaction'¶
- SIDECHAIN_INTERACTION = 'Sidechain Interaction'¶
- POLAR_RESIDUE = 'Polar Residues'¶
- HYDROPHOBIC_RESIDUE = 'Hydrophobic Residues'¶
- HYDROGEN_BOND_ACCEPTOR = 'Hydrogen Bond Acceptor'¶
- HYDROGEN_BOND_DONOR = 'Hydrogen Bond Donor'¶
- AROMATIC_RESIDUE = 'Aromatic Residue'¶
- CHARGED_RESIDUE = 'Charged Residue'¶
- INTERACTION_NAMES = ['Any Contact', 'Backbone Interaction', 'Sidechain Interaction', 'Polar Residues', 'Hydrophobic Residues', 'Hydrogen Bond Acceptor', 'Hydrogen Bond Donor', 'Aromatic Residue', 'Charged Residue']¶
- setHbondParameters(dist, donor_angle, acceptor_angle)[source]¶
Set the hydrogen bonding parameters, maximum distance, minimum donor angle and mi mum acceptor angle
- setInteractionCutoff(cutoff=4.0, h_cutoff=2.5)[source]¶
Sets the maximum interaction cutoff. No atom interactions beyond this distance will be counted
- setIncludeHydrophobic(include)[source]¶
Set whether we will include the hydrophobic residue contact bit
- setIncludeAcceptor(include)[source]¶
Set whether we will include the hydrogen bond acceptor contact bit
- setReceptorStructure(receptor_st, id)[source]¶
Set the structure to be treated as the receptor and setup some lists and sets of atoms we’ll use in calculating subsequent interactions.
If non-conformer proteins are used, use this method to set the reference structure.
- generateFingerprint(ligand, id, receptor_region, ligand_title=None, nonpolar_hydrogens=False, receptor_st=None, aligned_residues=None)[source]¶
Generate a structural interaction fingerprint for the given ligand with id. The receptor_region parameter is a list of receptor atom numbers corresponding to the receptor residues that are to be considered as interacting with the ligand. No other residues will be considered (their bits in the fingerprint will all be 0). If receptor_region is None then it will be calculated automatically
The fingerprints generated are stored in internal lists and can be accessed via other methods (or written to disk ).
- Parameters
ligand (Structure class object) – the ligand structure to calculate fingerprints for
id (str) – the entry id of the ligand in the project table
receptor_region (None or list) – custom list of atoms in the receptor site. If None or empty list, the receptor set in setReceptorStructure() will be used.
ligand_title (str) – the name of the ligand being calculated
nonpolar_hydrogens (bool) – True if nonpolar hydrogens should be included in the calculation, False if not.
aligned_residues (list(structure._Residue|None)) – List of residues from this complex that correspond to
- writeFPFile(file_name, all_props=False)[source]¶
Write the stored fingerprints to a Canvas FP file given by ‘file_name’
- Parameters
all_props (bool) – Whether to also export all CT-level properties.
- writeCSVFile(file_name, all_props=False, for_binaryFP=False)[source]¶
Write the stored fingerprints to a CSV file given by
file_name
- Parameters
all_props (bool) – Whether to also export all CT-level properties.
for_binaryFP – Whether to add “BIT” prefix to the binary column headers.
- Bype for_binaryFP
bool
- writeInteractionsFile(file_name)[source]¶
Write ligand atom indices involved in interactions to a CSV file given by
file_name
- Parameters
file_name (str) – name of CSV file
- getInteractionMatrix(which_interaction)[source]¶
Returns a tuple containing: i) matrix of 0s and 1s for the specified interaction. The matrix is only generated between the first and last residue which had an interaction with any ligand 2) An array of length N where each element is the total number of bits turned on across all ligands the current interaction and N is the number of residues which have an interaction 3) An array of length M where each element is the number of bits turned on for the i’th ligand across all residues and M is the number of Ligands
Returns None, None, None if no interactions were found.