OESplitBioUnitToComponents

Attention

This API is currently available in C++ and Python.

OESplitBioUnitToComponents(du: OEDesignUnit,
                           bioUnit: Union[OEGraphMol,OEMol,OEQMol],
                           packingMol: Union[OEGraphMol,OEMol,OEQMol],
                           opts: OEDesignUnitSplitOptions) -> bool

Splits the biological unit molecule bioUnit into the component categories of a OEDesignUnit (protein, ligand, solvent, metals, etc.) using the splitting criteria defined in OEDesignUnitSplitOptions opts. The resulting components are stored in du, and any packing residues are placed in packingMol. Returns true on success.

OESplitBioUnitToComponents(du: OEDesignUnit,
                           bioUnit: Union[OEGraphMol,OEMol,OEQMol],
                           packingMol: Union[OEGraphMol,OEMol,OEQMol],
                           opts: OEDesignUnitSplitOptions,
                           ligandNames: OEStringVector) -> bool

As the first overload, but restricts ligand detection to residues whose three-letter codes appear in ligandNames. This allows explicit control over which heterogens are classified as ligands rather than cofactors or excipients.

OESplitBioUnitToComponents(du: OEDesignUnit,
                           bioUnit: Union[OEGraphMol,OEMol,OEQMol],
                           packingMol: Union[OEGraphMol,OEMol,OEQMol],
                           opts: OEDesignUnitSplitOptions) -> bool
OESplitBioUnitToComponents(du: OEDesignUnit,
                           bioUnit: Union[OEGraphMol,OEMol,OEQMol],
                           packingMol: Union[OEGraphMol,OEMol,OEQMol],
                           opts: OEDesignUnitSplitOptions,
                           ligandNames: OEStringVector) -> bool

As the first overload, but accepts a map of OEDesignUnitComponents component IDs to lists of three-letter residue codes, giving fine-grained control over which residues are assigned to each component category.

The input bioUnit must have 3D coordinates assigned.