The DDG API runs the Rosetta cartesian-ddg protocol. It takes as input a pre-relaxed PDB and a TSV-formatted mutations file, and outputs a TSV-formatted file containing a new column for scores.
Inputs
pdb-file
must be a pdb which has been run through the ddg-relax endpoint
Optional - mutations-file
TSV-formatted file containing mutations. To create an empty mutations file from an input pdb, run:
cyrus prepare ddg-mutations <pdb-file> --output-dir <output-dir>
Optional - all-mutations mode
you can omit an input mutations-file and instead run in all-mutations mode, where all mutations at each position will be selected
Command Line Examples
Prepare an input pdb file for use with DDG
cyrus submit ddg-relax <pdb-file>
Prepare an input mutations file for use with DDG
cyrus prepare mutations <pdb-file> --output-dir <output-dir>
Run DDG on an input structure with mutations that are included in the input mutations file
cyrus submit ddg <pdb-file> --mutations-file <mutations-file>
Run DDG on an input structure with all mutations selected
cyrus submit ddg <pdb-file> --all-mutations
Python Examples
Prepare an input pdb file for use with DDG
from engine.ddg-relax.client import DdgRelaxClient client = DdgRelaxClient() job_id = client.submit(pdb_path="input.pdb")
Run DDG on an input structure with mutations that are included in the input mutations file
from engine.ddg.client import DdgClient client = DdgClient() job_id = client.submit(pdb_path="input.pdb", mutations_path="input.tsv")
Outputs
results.tsv
File with one mutation and score per-line
mutation-input.tsv
Input mutations file