schrodinger.protein.protassign.utils module

Various functions and constants that are used by other ProtAssign modules.

Copyright Schrodinger, LLC. All rights reserved.

schrodinger.protein.protassign.utils.set_log_level(level)
schrodinger.protein.protassign.utils.report(message_level=1, message='')
class schrodinger.protein.protassign.utils.Interactors(acceptors: typing.List[int] = <factory>, donors: typing.List[typing.Tuple[int, int]] = <factory>, clashers: typing.List[int] = <factory>)

Bases: object

Container for atom indices of hydrogen-bond acceptors, donors, and clashers

acceptors: List[int]
donors: List[Tuple[int, int]]
clashers: List[int]
remap(mapper: Dict[int, int])

Remap atom indices of interactors.

Parameters

mapper – Dictionary mapping old atom indices to new indices

__init__(acceptors: typing.List[int] = <factory>, donors: typing.List[typing.Tuple[int, int]] = <factory>, clashers: typing.List[int] = <factory>) None
exception schrodinger.protein.protassign.utils.PropKaException(value)

Bases: Exception

__init__(value)
schrodinger.protein.protassign.utils.measure(ct, atom1=None, atom2=None, atom3=None, atom4=None, use_xtal=False, max_dist=10.0)

TODO move to schrodinger.structuils package; or incorporate into Structure.measure().

schrodinger.protein.protassign.utils.get_residue_string(residue_or_atom) str

Return a string describing a residue from a residue or atom.

The string will match the format

<chain>:<residue PDB code> <residue number>[<insertion code>]

Parameters

residue_or_atom (_Residue or _StructureAtom) – a residue or atom

Returns

a string describing the residue

schrodinger.protein.protassign.utils.get_atom_string(atom)

Return a string describing atom

schrodinger.protein.protassign.utils.generate_mates(ct)
schrodinger.protein.protassign.utils.run_propka(changeables, ct, use_xtal=False)
schrodinger.protein.protassign.utils.apply_pkas(changeables, changes, pH)

Update pKa’s coming from PROPKA

schrodinger.protein.protassign.utils.maybe_break_clusters(labels: numpy.ndarray, nclusters: int, max_size: int) int

Breaks clusters larger than max_size & returns new nclusters

This method will break clusters in place to with the limiting their max size with max_size. It will return the new number of clusters.

schrodinger.protein.protassign.utils.get_index_clusters(N: int, interaction_matrix: Dict[int, Set[int]], max_cluster_size: Optional[int]) Iterator[numpy.ndarray]

Cluster interactors based on an interaction matrix

Parameters
  • N – Number of changeables

  • interaction_matrix – Interaction lookup table

  • max_cluster_size – Maximum cluster size. None is no maximum.

Returns

Clustered interactors

schrodinger.protein.protassign.utils.annotate_structure_interactors(ct: schrodinger.structure._structure.Structure, interactors: schrodinger.protein.protassign.utils.Interactors) None

Set atom property for each interactor class

Parameters
  • ct – Structure to annotate

  • interactors – All interactors to annotate

Returns

None but sets atom properties

schrodinger.protein.protassign.utils.generate_annotated_ct(ct, donors, acceptors, clashers, use_xtal=False)

Generate an annotated Structure that contains crystal mates. The annotated heavily speeds up the self scoring step for large and xtal structures

Parameters
  • ct (Structure) – Structure to annotate

  • donors (List[Tuple[int, int]]) – List of donor pairs

  • acceptors (List[int]) – List of acceptor atom indices

  • clashers (List[int]) – List of clasher atom indices

  • use_xtal (bool) – Create crystal mates in annotated output structure

Returns

New annotated structure with property ANNOTATED_PROPERTY set to True

Return type

Structure