schrodinger.application.bioluminate.surfcomp module

See PYTHON-2433 WARNING: Solvents are not accounted for in any way.

schrodinger.application.bioluminate.surfcomp.flatten_list(iterable)

Given an iterable of lists, return a flattened list of all values. This algorithm scales in linear time.

schrodinger.application.bioluminate.surfcomp.create_surface(st, calc_normals=True, grid_spacing=0.5)

Creates a surface for the given structure. Caller must call mmsurf_delete() after it’s done using the surface.

Returns

MMsurf handle

Return type

int

schrodinger.application.bioluminate.surfcomp.find_buddies_on_other_surf(buried_a_coords, buried_b_coords)

For each point in the first list, find the closest point from the second list. Returns a dict where keys are indices to the first list, and values are tuples of (index to second list, sq. distance).

schrodinger.application.bioluminate.surfcomp.calc_complementarity_by_atom(st, atoms1, atoms2=None, grid_spacing=0.5)

Return the values for surface complementarity between the specified surfaces, grouped by atom from <atoms1>.

Parameters
  • st (structure._Structure object) – Structure to which <atoms1> and <atoms2> are indices in.

  • atoms1 (Iterable of atom indices) – Atom numbers from the surface for which to calculate the complementrairity.

  • atoms2 (Iterable of atom indices) – Atom numbers for the other surface. if not specified, use all other atoms from the CT.

  • grid_spacing (float) – Density (resolution) of the surfaces. Default is 0.5. Maestro defaults for this settings are: high=0.3, medium=0.6, low=0.8.

Return type

dict of lists.

Returns

Return a dict where keys are atom indices (only atoms that are on the interaction surface) and values are lists of surface complementarity (Sc) values for that atom. Each value corresponds to an interacting point on the surface of that atom. This list will be empty for fully buried atoms. Calculate the median of these values to determine the Sc for that atom. Calculate the median of all values for all residue’s atoms to determine the Sc for that residue; etc.

schrodinger.application.bioluminate.surfcomp.calc_total_complementarity(st, atoms1, atoms2=None, grid_spacing=0.5)

Return the total complementarity between the specified surfaces.

Parameters
  • st (structure._Structure object) – Structure to which <atoms1> and <atoms2> are indices in.

  • atoms1 (Iterable of atom indices) – Atom numbers from the surface for which to calculate the complementrairity.

  • atoms2 (Iterable of atom indices) – Atom numbers for the other surface. if not specified, use all other atoms from the CT.

  • grid_spacing (float) – Density (resolution) of the surfaces. Default is 0.5. Maestro defaults for this settings are: high=0.3, medium=0.6, low=0.8.

Return type

float

Returns

the surface complementarity (Sc) between the 2 surfaces.