schrodinger.application.bioluminate.patch_utils.patch_finder module

schrodinger.application.bioluminate.patch_utils.patch_finder.read_asl_file(basename)[source]
schrodinger.application.bioluminate.patch_utils.patch_finder.write_asl_file(basename, asl)[source]
schrodinger.application.bioluminate.patch_utils.patch_finder.get_connected_components(st)[source]

Determine all covalently connected components of st (i.e. unbroken chain segments).

Returns

A tuple of: (1) A list of list of residue names (str). Each list of residue names represents a single covalently connected component. (2) A list of list of schrodinger.structure._Residue objects. This object mirrors the structure of the list of list of residue names.

schrodinger.application.bioluminate.patch_utils.patch_finder.triangle_area(coords)[source]

Calculate the area of a triangle defined by three vertices

Parameters

coords (list) – A list of (x, y, z) coordinates for each vertex of the triangle, where each coordinate is a numpy array.

Returns

The area of the specified triangle

Return type

float

Note

The formula used here is taken from http://mathworld.wolfram.com/TriangleArea.html

class schrodinger.application.bioluminate.patch_utils.patch_finder.Patch(vertices, patch_type, vertex_coords, all_smoothed, neighboring_triangles, neighboring_vertices, nearest_atom_indices, patch_color)[source]

Bases: object

Data about a single patch.

RES_TYPES = {'Arginine': 'ARG', 'Cysteine': 'CYS', 'Tryptophan': 'TRP', 'Tyrosine': 'TYR'}
__init__(vertices, patch_type, vertex_coords, all_smoothed, neighboring_triangles, neighboring_vertices, nearest_atom_indices, patch_color)[source]
Parameters
  • vertices (set) – A set of all vertices that belong to this patch

  • patch_type (settings.PatchType) – The type of patch this is

  • vertex_coords (list) – The (x, y, z) coordinates for each surface vertex

  • all_smoothed (list) – The smoothed value for each vertex

  • neighboring_triangles (list) – A list of neighboring triangles for each vertex, where each triangle is represented as a frozenset of three vertex indices.

  • neighboring_vertices (list) – A list of neighboring vertices for each vertex. Neighbors are given as a set.

  • nearest_atom_indices (list) – A list of the nearest atom index for each vertex.

@patch_color: color of the patch (r,g,b)

detailsData()[source]

Generate a list describing the details of this patch

Returns

A list of details for the patch, where each detail is a list of [group, category, patch details for that category]

Return type

list

class schrodinger.application.bioluminate.patch_utils.patch_finder.ResInfo(res, zyggregator=None, aggrescan=None, aggscore=0.0)[source]

Bases: object

Data about a single residue. Includes aggregation, surface area, and reactive residue grouping data.

__init__(res, zyggregator=None, aggrescan=None, aggscore=0.0)[source]
Parameters
  • res (schrodinger.structure._Residue) – The residue that this aggregation data describes

  • zyggregator (float) – The Zyggregator score for the residue

  • aggrescan (float) – The Aggrescan score for the residue

property fullname

The full residue name, formatted similar to A:TYR100.

getIdStr()[source]

Return a string ID for this residue, e.g. “A:2b” - same format as structure._Residue.___str__() return value.

getAsl()[source]

Return the ASL for finding this residue by chain/resnum/inscode.

schrodinger.application.bioluminate.patch_utils.patch_finder.ResData

alias of schrodinger.application.bioluminate.patch_utils.patch_finder.ResInfo

class schrodinger.application.bioluminate.patch_utils.patch_finder.ResPatchData(patch, res_info, contribution)[source]

Bases: object

This class represents a residue’s contribution to a patch.

__init__(patch, res_info, contribution)[source]

Initialize self. See help(type(self)) for accurate signature.

getAsl()[source]

Return the ASL for finding this patch’s residue by chain/resnum/inscode.

getIdStr()[source]

Return a string ID for the residue, e.g. “A:2b” - same format as structure._Residue.___str__() return value.

class schrodinger.application.bioluminate.patch_utils.patch_finder.ProteinProperties(struc, asa_by_atom)[source]

Bases: object

Calculates protein-level properties. Properties will be stored at the ct-level and returned for display on the Properties tab

Variables

KYTE_DOOLITTLE_SCALE (dict) – A hydrophobicity scale taken from A simple method for displaying the hydropathic character of a protein. J. Kyte, R.F. Doolittle, J Mol Biol. 1982 May 5;157(1):105-32.

KYTE_DOOLITTLE_SCALE = {'ALA': 1.8, 'ARG': -4.5, 'ASN': -3.5, 'ASP': -3.5, 'CYS': 2.5, 'GLN': -3.5, 'GLU': -3.5, 'GLY': -0.4, 'HID': -3.2, 'HIE': -3.2, 'HIP': -3.2, 'HIS': -3.2, 'ILE': 4.5, 'LEU': 3.8, 'LYS': -3.9, 'MET': 1.9, 'PHE': 2.8, 'PRO': -1.6, 'SER': -0.8, 'THR': -0.7, 'TRP': -0.9, 'TYR': -1.3, 'VAL': 4.2}
__init__(struc, asa_by_atom)[source]
Parameters
  • struc (schrodinger.structure.Structure) – The structure to calculate the properties of

  • asa_by_atom (OneIndexedList) – The accessible surface area of each atom

class schrodinger.application.bioluminate.patch_utils.patch_finder.PatchAnalysis(st, surf, asl, clogp_smoothed, partial_charge_smoothed, neighboring_vertices, neighboring_triangles, res_data_by_vertex, prot_properties, topo_data=None)[source]

Bases: object

Object representing a pre-analysis instance, which is saved by the backend and loaded into the GUI. It is also saved/restored when panel state is saved and restored.

__init__(st, surf, asl, clogp_smoothed, partial_charge_smoothed, neighboring_vertices, neighboring_triangles, res_data_by_vertex, prot_properties, topo_data=None)[source]
Parameters
  • st (structure.Structure) – Analyzed structure.

  • surf (schrodinger.surface.Surface) – The surface to find patches on

  • asl (str) – Asl for atoms that were analyzed

  • clogp_smoothed (list) – The cLogP (hydrophobicity) values smoothed over the surface. This list contains the smoothed value at each surface vertex.

  • partial_charge_smoothed (list) – The partial charge values smoothed over the surface. This list contains the smoothed value at each surface vertex.

  • neighboring_vertices (list) – A list of neighboring vertices for each vertex.

  • neighboring_triangles (list) – A list of neighboring triangles for each vertex, where each triangle is represented as a frozenset of three vertex indices.

  • res_data_by_vertex (list) – A list of residue data for each vertex. The ResInfo object is given for the residue closest to the vertex.

  • prot_properties (ProteinProperties) – The protein properties to be loaded into the Properties tab.

  • topo_data (dict(str, str)) – The topography value of all the residues in the structure.

write(basename)[source]
classmethod read(basename)[source]

Read the PreAnalyzer data from the specified basename and use it to create a PatchFinder object.

Parameters

basename (str) – The basename for the PreAnalyzer output files

class schrodinger.application.bioluminate.patch_utils.patch_finder.PreAnalyzer(struc, asl)[source]

Bases: object

Perform patch finding calculations that only need to be done once per structure. This class is intended to be run under job control.

__init__(struc, asl)[source]
Parameters
classmethod readAndRun(basename)[source]

Read a structure and ASL from the specified files and run the analysis.

Parameters

basename (str) – The full path to the file to analyzes except the “.maegz” and “.txt” extensions

Returns

The completed pre-analysis

Return type

PreAnalyzer

run()[source]

Perform the pre-analysis. The results will be stored in instance attributes and can be written to a pickle file using write.

calcAntibodyTopography(res_data_by_res)[source]

Determine the antibody topography for each residue. For non-antibody structures, all values will be None. PANEL-7988

Parameters

res_data_by_res (dict) – A dictionary of ResInfo objects. The topography attribute (str) will be set for each ResInfo object.

Returns

Antibody topography data

Return type

dict(str, str)

write(basename)[source]

Write out the surface and all calculated values

Parameters

basename (str) – The filename to write the output to. The surface will be written to basename.vis and the calculated values will be written to basename.pkl.

getAnalysis()[source]
class schrodinger.application.bioluminate.patch_utils.patch_finder.PatchFinder(analysis)[source]

Bases: object

Find surface patches using the output of PreAnalyzer.

__init__(analysis)[source]

Class for grouping patches from a PatchAnalysis object based on specific settings.

Parameters

analysis (PatchAnalysis) – Pre-analysis object

classmethod read(basename)[source]

Read the PreAnalyzer data from the specified basename and use it to create a PatchFinder object.

Parameters

basename (str) – The basename for the PreAnalyzer output files

write(basename)[source]
calculate(settings)[source]

Calculate patches and residue aggregation data using the specified settings.

Parameters

settings (settings.PatchSettings) – The settings to use for the patch calculations

Returns

A tuple of: - the calculated patches as a list of Patch objects - the residue aggregation data as a list of {ResidueAggData} objects

Return type

tuple

getColorsForPatchVertices(patch, psettings)[source]

Return colors for all vertices of the given patch.

Parameters

patch (patch_finder.Patch) – Patch to get colors for.

Returns

Colors for each vertex of the patch

Return type

list of (float, float, float)

colorSurfByPatches(surf, patches, psettings)[source]