schrodinger.application.bioluminate.interaction_calculator module

This module defines the InteractionCalculator class, which can be used for finding interactions between two groups of atoms.

schrodinger.application.bioluminate.interaction_calculator.approx_eq(val1, val2)
schrodinger.application.bioluminate.interaction_calculator.lipophilic_ChemScore_value(atom1, atom2, distance=None, cutoff=None)

Calculates a lipophilic score between an atom pair utilizing their van der Waals radii. An optional argument is available to avoid computation of the iter-atom distance within the function. The empirical function form is adopted from ChemScore:

Empirical scoring functions: I. The development of a fast empirical scoring function to estimate the binding affinity of ligands in receptor complexes. Eldridge, Murray, Auton, Paolini, and Mee. JCAMD, 1997 (11).

Parameters:
  • atom1 (structure.StructureAtom) – first atom (usually a lipophilic ligand atom)
  • atom2 (structure.StructureAtom) – second atom (usually a lipophilic receptor atom)
  • distance (float) – inter-atom distance
  • cutoff (float) – distance beyond which to always return 0.0
Returns:

emperical function value

Return type:

float

class schrodinger.application.bioluminate.interaction_calculator.InteractionParams

Bases: object

A class to store settings for interaction parameters

paramDict()

Return a dictionary of all interaction parameters. Note that changes to this dictionary will change the instance variables as well.

Returns:A dictionary of all interaction parameters
Return type:dict
class schrodinger.application.bioluminate.interaction_calculator.ResTuple

Bases: schrodinger.application.bioluminate.interaction_calculator._ResTuple

A class to store a residue. Unlike schrodinger.structure._Residue, two ResTuple objects that describe the same residue are equal (and their hashes are equal). This class will also strip spaces from inscode and pdbres.

classmethod init(*args, **kwargs)

Initialize a class instance directly instead of from a _Residue object. This function allows for the output of __repr__() to be evaluated and is intended for use in testing.

Returns:The initialized instance
Return type:ResTuple
class schrodinger.application.bioluminate.interaction_calculator.Interactions

Bases: object

Store data about all the interactions made by a single residue

H_BOND = 'hb'
PI_STACK = 'pi stack'
SALT_BRIDGE = 'salt bridge'
CLASH = 'clash'
DISULFIDE = 's-s'
classmethod init(**kwargs)

Initialize a class instance from existing interaction dictionaries. This function allows for the output of __repr__() to be evaluated and is intended for use in testing.

Returns:The initialized instance
Return type:Interactions
numHbonds()

Return the number of hydrogen bonds

Returns:The number of hydrogen bonds
Return type:int
numPiStacks()

Return the number of pi stacks

Returns:The number of pi stacks
Return type:int
numSaltBridges()

Return the number of salt bridges

Returns:The number of salt bridges
Return type:int
numDisulfides()

Return the number of disulfide bonds

Returns:The number of disulfide bonds
Return type:int
numClashs()

Return the number of steric clashes

Returns:The number of steric clashes
Return type:int
numSpecificInteractions()

Return the total number of specific interactions (i.e. ignoring non- specific interactions such as buried SASA)

Returns:The total number of specific interactions
Return type:int
allInteractingResidues()

Return a list of all residues that this one interacts with (not counting nearby residues)

Returns:A set of ResTuple objects
Return type:set
interactionSummary()

Create the interaction summary to display in the specific interactions column.

Returns:The interaction summary
Return type:str
nearbyRes()

Return the nearby residues

Returns:A tuple of - The nearby residues (as strings), sorted by distance - The sorted residue distances (floats)
Return type:tuple
class schrodinger.application.bioluminate.interaction_calculator.InteractingResidue(res, interactions)

Bases: object

Store information about a residue and the interactions it makes

class schrodinger.application.bioluminate.interaction_calculator.InteractionCalculator(interaction_params=<schrodinger.application.bioluminate.interaction_calculator.InteractionParams object>, ignore_backbone=False)

Bases: object

Calculate all interactions between two groups of atoms

calculate(struc, asl_expressions)

Calculate all interactions

Parameters:
  • struc (schrodinger.structure.Structure) – The structure to analyze
  • asl_expressions (list of string) – A list of [asl_expresion for group 1, asl expression for group2]
compileResults()

Compile all of the calculated interactions into a list of InteractingResidue objects

Returns:A list of InteractingResidue objects, sorted by residue
Return type:list
classmethod run(struc, asl_expressions, interaction_params=<schrodinger.application.bioluminate.interaction_calculator.InteractionParams object>, ignore_backbone=False)

A convenience function to initialize this class, calculate all interactions, and return the compiled results.

Parameters:
  • struc (schrodinger.structure.Structure) – The structure to analyze
  • asl_expressions (list of string) – A list of [asl_expresion for group 1, asl expression for group2]
  • interaction_params (interaction_calculator.InteractionParams) – The interaction parameters
  • ignore_backbone (bool) – Should the calculations ignore backbone-backbone interactions?
Returns:

A list of InteractingResidue objects describing all calculated interactions, sorted by residue

Return type:

list

class schrodinger.application.bioluminate.interaction_calculator.PiStackFinder(max_stack_dist=4.0)

Bases: object

Find pi-pi interactions in proteins

Variables:NON_AROMATIC_RES (set) – A set of residue types that don’t contain aromatic side chains
NON_AROMATIC_RES = {'LEU', 'PRO', 'ARG', 'LYS', 'SER', 'THR', 'ASP', 'GLU', 'GLY', 'ASN', 'GLN', 'CYS', 'ILE', 'ALA', 'MET', 'VAL'}
classmethod createIter(struc, group_strucs, max_stack_dist=4.0)

A convenience function to initalize the class and return an iterator

Parameters:
  • struc (schrodinger.structure.Structure) – The structure being analyzed
  • group_strucs (list) – A list of [Structure object for group 1, Structure object for group 2]
  • max_stack_dist (float) – The maximum distance between two ring centroids allowed for face-face interactions.
Returns:

An iterator that produces tuples of two atom number lists, representing (the ring atoms from group 1 involved in the stacking, the ring atoms from group 2 involved in the stacking

Return type:

iter

piStacksIterator(struc, group_strucs)

Create an iterator that iterates through all pi stacking between two groups of atoms

Parameters:
  • struc (schrodinger.structure.Structure) – The structure being analyzed
  • group_strucs (list) – A list of [Structure object for group 1, Structure object for group 2]
Returns:

An iterator that produces tuples of two atom number lists, representing (the ring atoms from group 1 involved in the stacking, the ring atoms from group 2 involved in the stacking

Return type:

iter

exception schrodinger.application.bioluminate.interaction_calculator.InteractionCalculatorError

Bases: Exception

An error that happens during InteractionCalculator calculations