Pose Quality Assessment¶
easydock_bust runs PoseBusters on docked molecules stored in an EasyDock database and records pass/fail results in a bust table. The fast protocol is used. Results are stored in the database as a single indicator: True - if all checks were passed, false - if at least one check was failed. These results can then be used to filter output with get_sdf_from_easydock --bust.
Installation¶
pip install posebusters
Basic Usage¶
easydock_bust -i output.db -p protein.pdb -c 4
On the first run, the protein structure is stored in the database and reused automatically. You do not need to supply -p again on subsequent runs unless you want to replace the protein.
Arguments¶
-i/--input(required)- EasyDock SQLite database.
-p/--protein- Protein PDB file with all hydrogen atoms. Required on the first run; stored in the database and reused on subsequent runs. Providing a different file replaces the stored structure and clears all previously computed bust results.
-d/--ids(default: all docked)- Molecule IDs to process. Can be a space-separated list or a path to a text file with one ID per line.
--poses(default:1)- Pose numbers to check, 1-based.
-c/--ncpu(default: all CPUs)- Number of CPUs.
-o/--output(default: stdout)- Output file path.
--full- Write all individual PoseBusters check columns to the output. When set, all molecules are re-processed from scratch to produce the full report.
Output Format¶
Tab-separated file with columns: id, stereo_id, pose, result.
id stereo_id pose result
mol_1 0 1 True
mol_2 0 1 False
mol_3 1 1 True
With --full, additional boolean columns for each individual PoseBusters check are appended.
Examples¶
Check all docked molecules (top pose only)¶
easydock_bust -i output.db -p protein.pdb -c 4
Check multiple poses¶
easydock_bust -i output.db -p protein.pdb --poses 1 2 3 -c 4
Write full PoseBusters report to file¶
easydock_bust -i output.db --poses 1 -c 4 --full -o bust_report.tsv
Process specific molecules¶
easydock_bust -i output.db -p protein.pdb -d mol_1 mol_2 mol_3 -c 4
Or from a file:
easydock_bust -i output.db -p protein.pdb -d id_list.txt -c 4
Resumable runs¶
Already-processed molecules are skipped automatically (unless --full is used). You can re-run the same command to add new molecules without reprocessing existing ones:
# First run: processes all docked molecules
easydock_bust -i output.db -p protein.pdb -c 4
# Later: only new molecules are processed
easydock_bust -i output.db -c 4
Filtering Output with get_sdf_from_easydock¶
After running easydock_bust, use the --bust flag to keep only poses that passed:
get_sdf_from_easydock -i output.db -o output.sdf --bust
For specific poses:
get_sdf_from_easydock -i output.db -o output.sdf --poses 1 2 --bust
See Data Retrieval for more filtering options.
Protein PDB Storage
The protein PDB file is stored in the database on first use. If you supply a different protein on a later run, all previously computed bust results are erased and the new protein is stored.
Best practice: Supply -p only on the first run. On subsequent runs omit it; the stored protein is reused automatically.
Hydrogen Atoms Required
The protein PDB file must include all hydrogen atoms for correct PoseBusters validation.