Skip to content

This document describes how to find pockets in a Protein using the Deep Origin Pocket Finder.

Pockets

Creating Pockets

First, we create a Protein, for example, using:

from deeporigin.drug_discovery import  Protein, BRD_DATA_DIR
protein = Protein.from_file(BRD_DATA_DIR / "brd.pdb")

Using Pocket Finder

We can then find pockets in this protein using the Pocket Finder tool:

pockets = protein.find_pockets(pocket_count=1)

Using PDB Files

Create a pocket directly from a PDB file:

from deeporigin.drug_discovery import Pocket

pocket = Pocket.from_pdb_file("path/to/pocket.pdb", name="my_pocket")

From a residue number

Create a pocket centered on a specific residue:

from deeporigin.drug_discovery import Pocket

pocket = Pocket.from_residue_number(
    protein=protein,
    residue_number=123,
    chain_id="A",
    cutoff=5.0
)

From a Ligand

Create a pocket from a ligand structure:

from deeporigin.drug_discovery import Pocket, Ligand, BRD_DATA_DIR

ligand = Ligand.from_sdf(BRD_DATA_DIR / "brd-2.sdf")
pocket = Pocket.from_ligand(ligand, name="ligand_pocket")

Visualization

Inspecting pocket data

View pocket properties by simply inspecting the object:

pocket

You should see a table similar to:

    Pocket:
    ╭─────────────────────────┬──────────────╮
    │ Name                    │ pocket_1     │
    ├─────────────────────────┼──────────────┤
    │ Color                   │ red          │
    ├─────────────────────────┼──────────────┤
    │ Volume                  │ 545.0 ų     │
    ├─────────────────────────┼──────────────┤
    │ Total SASA              │ 1560.474 Ų  │
    ├─────────────────────────┼──────────────┤
    │ Polar SASA              │ 762.11224 Ų │
    ├─────────────────────────┼──────────────┤
    │ Polar/Apolar SASA ratio │ 0.95459515   │
    ├─────────────────────────┼──────────────┤
    │ Hydrophobicity          │ 15.903226    │
    ├─────────────────────────┼──────────────┤
    │ Polarity                │ 17.0         │
    ├─────────────────────────┼──────────────┤
    │ Drugability score       │ 0.83243614   │
    ╰─────────────────────────┴──────────────╯

3D visualization in a Protein

Pockets can be visualized using:

protein.show(pockets=pockets)

You should see something like: