Skip to content

Pocket Detection

Pocket detection workflow - detect potential binding sites on a protein.

Pocket dataclass

Pocket(
    sphere_centers: tuple[tuple[float, float, float], ...],
    sphere_radii: tuple[float, ...],
    volume: float,
    score: float,
    pocket_center: tuple[float, float, float],
    pocket_sides: tuple[float, float, float],
    residue_numbers: tuple[int, ...],
)

A detected binding pocket.

Parameters:

Name Type Description Default
sphere_centers tuple[tuple[float, float, float], ...]

centers of detected spheres, in Å

required
sphere_radii tuple[float, ...]

radii of detected spheres, in Å

required
volume float

pocket volume, in ų

required
score float

druggability/quality score; larger is better

required
pocket_center tuple[float, float, float]

center of axis-aligned bounding box, in Å

required
pocket_sides tuple[float, float, float]

side lengths of axis-aligned bounding box, in Å

required
residue_numbers tuple[int, ...]

residue numbers lining the pocket

required

PocketDetectionResult dataclass

PocketDetectionResult(
    workflow_data: dict[str, Any],
    workflow_type: str,
    workflow_uuid: str,
    complete: bool = True,
)

Bases: WorkflowResult

Result from a pocket-detection workflow.

pockets property

pockets: list[Pocket]

Detected pockets, in the order returned by the backend.

submit_pocket_detection_workflow

submit_pocket_detection_workflow(
    protein: Protein | ProteinUUID,
    merge_distance: float = 1.75,
    name: str = "Pocket Detection Workflow",
    folder_uuid: str | None = None,
    folder: Folder | None = None,
    max_credits: int | None = None,
    webhook_url: str | None = None,
    is_draft: bool = False,
) -> Workflow

Submits a pocket-detection workflow to the API.

Parameters:

Name Type Description Default
protein Protein | ProteinUUID

protein to analyze. Can be a UUID or a Protein object.

required
merge_distance float

distance for merging pocket spheres, in Å

1.75
name str

name of the workflow

'Pocket Detection Workflow'
folder_uuid str | None

UUID of the folder to place the workflow in

None
folder Folder | None

Folder object to store the workflow in

None
max_credits int | None

maximum number of credits to use for the workflow

None
webhook_url str | None

URL that Rowan will POST to when the workflow completes

None
is_draft bool

if True, submit the workflow as a draft without starting execution

False

Returns:

Type Description
Workflow

Workflow object representing the submitted workflow

Raises:

Type Description
requests.HTTPError

if the request to the API fails