OpenStructure
|
Data Structures | |
class | LigandScorer |
class | NoSymmetryError |
class | NoIsomorphicSymmetryError |
class | TooManySymmetriesError |
class | DisconnectedGraphError |
Functions | |
def | CleanHydrogens (ent, clib) |
def | MMCIFPrep (mmcif_path, biounit=None, extract_nonpoly=False, fault_tolerant=False) |
def | PDBPrep (pdb_path, fault_tolerant=False) |
def | ComputeSymmetries (model_ligand, target_ligand, substructure_match=False, by_atom_index=False, return_symmetries=True, max_symmetries=1e6, model_graph=None, target_graph=None) |
def ost.mol.alg.ligand_scoring_base.CleanHydrogens | ( | ent, | |
clib | |||
) |
Ligand scoring helper - Returns copy of *ent* without hydrogens Non-standard hydrogen naming can cause trouble in residue property assignment which is done by the :class:`ost.conop.RuleBasedProcessor` when loading. In fact, residue property assignment is not done for every residue that has unknown atoms according to the chemical component dictionary. This function therefore re-processes the entity after removing hydrogens. :param ent: Entity to clean :type ent: :class:`ost.mol.EntityHandle`/:class:`ost.mol.EntityView` :param clib: Compound library to perform re-processing after hydrogen removal. :type clib: :class:`ost.conop.CompoundLib` :returns: Cleaned and re-processed ent
Definition at line 54 of file ligand_scoring_base.py.
def ost.mol.alg.ligand_scoring_base.ComputeSymmetries | ( | model_ligand, | |
target_ligand, | |||
substructure_match = False , |
|||
by_atom_index = False , |
|||
return_symmetries = True , |
|||
max_symmetries = 1e6 , |
|||
model_graph = None , |
|||
target_graph = None |
|||
) |
Return a list of symmetries (isomorphisms) of the model onto the target residues. :param model_ligand: The model ligand :type model_ligand: :class:`ost.mol.ResidueHandle` or :class:`ost.mol.ResidueView` :param target_ligand: The target ligand :type target_ligand: :class:`ost.mol.ResidueHandle` or :class:`ost.mol.ResidueView` :param substructure_match: Set this to True to allow partial ligands in the reference. :type substructure_match: :class:`bool` :param by_atom_index: Set this parameter to True if you need the symmetries to refer to atom index (within the residue). Otherwise, if False, the symmetries refer to atom names. :type by_atom_index: :class:`bool` :type return_symmetries: If Truthy, return the mappings, otherwise simply return True if a mapping is found (and raise if no mapping is found). This is useful to quickly find out if a mapping exist without the expensive step to find all the mappings. :type return_symmetries: :class:`bool` :param max_symmetries: If more than that many isomorphisms exist, raise a :class:`TooManySymmetriesError`. This can only be assessed by generating at least that many isomorphisms and can take some time. :type max_symmetries: :class:`int` :raises: :class:`NoSymmetryError` when no symmetry can be found; :class:`NoIsomorphicSymmetryError` in case of isomorphic subgraph but *substructure_match* is False; :class:`TooManySymmetriesError` when more than `max_symmetries` isomorphisms are found; :class:`DisconnectedGraphError` if graph for *model_ligand*/*target_ligand* is disconnected.
Definition at line 1560 of file ligand_scoring_base.py.
def ost.mol.alg.ligand_scoring_base.MMCIFPrep | ( | mmcif_path, | |
biounit = None , |
|||
extract_nonpoly = False , |
|||
fault_tolerant = False |
|||
) |
Ligand scoring helper - Prepares :class:`LigandScorer` input from mmCIF Only performs gentle cleanup of hydrogen atoms. Further cleanup is delegated to :class:`LigandScorer`. :param mmcif_path: Path to mmCIF file that contains polymer and optionally non-polymer entities :type mmcif_path: :class:`str` :param biounit: If given, construct specified biounit from mmCIF AU :type biounit: :class:`str` :param extract_nonpoly: Additionally returns a list of :class:`ost.mol.EntityHandle` objects representing all non-polymer (ligand) entities. :type extract_nonpoly: :class:`bool` :param fault_tolerant: Passed as parameter to :func:`ost.io.LoadMMCIF` :type fault_tolerant: :class:`bool` :returns: :class:`ost.mol.EntityHandle` which only contains polymer entities representing the receptor structure. If *extract_nonpoly* is True, a tuple is returned which additionally contains a :class:`list` of :class:`ost.mol.EntityHandle`, where each :class:`ost.mol.EntityHandle` represents a non-polymer (ligand).
Definition at line 79 of file ligand_scoring_base.py.
def ost.mol.alg.ligand_scoring_base.PDBPrep | ( | pdb_path, | |
fault_tolerant = False |
|||
) |
Ligand scoring helper - Prepares :class:`LigandScorer` input from PDB Only performs gentle cleanup of hydrogen atoms. Further cleanup is delegated to :class:`LigandScorer`. There is no logic to extract ligands from PDB files. Ligands must be provided separately as SDF files in these cases. :param pdb_path: Path to PDB file that contains polymer entities :type pdb_path: :class:`str` :param fault_tolerant: Passed as parameter to :func:`ost.io.LoadPDB` :type fault_tolerant: :class:`bool` :returns: :class:`EntityHandle` from loaded file.
Definition at line 190 of file ligand_scoring_base.py.