Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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 mutations <pdb-file> --output-dir <output-dir>

    • Each row can contain one or many mutations, in the format D or DMG

  • 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

  • Optional - dump-pdb mode

    • run with this flag to output the PDB for each mutation as well as the score

...

Cartesian DDG protocol. The cartesian DDG protocol is described in Prediction of Protein Mutational Free Energy: Benchmark and Sampling Improvements Increase Classification Accuracy.

The purpose of the Cartesian DDG protocol is to predict the impact of a single point mutation on the free energy of a protein.

Note

The Cartesian DDG protocol only supports canonical amino acids and does not support structures containing any kind of small molecule (waters, drug-like ligands, metal ions, etc). The Clean PDB endpoint should be used to prepare any PDB files produced by non-Cyrus tools.

The DDG process consists of two steps. The first step is to relax the PDB using the ddg-relax API. This step must be performed only once for each structure prior to running mutagenesis experiments with the ddg API. If multiple rounds of mutagenesis experiments are to be performed on a single protein, the same relaxed model should be used as the input for each relaxed protein. In the second step of the DDG process the TSV mutation file (described below) is parsed to generate a list of all specified single point mutations. Each one of these mutations is simulated via the Cartesian DDG protocol and DDG scores are reported for each mutation.

Table of Contents

Quickstart

DDG Relax

Command Line Example

Prepare an input PDB file for use with DDG.

Note

Note that the ddg-relax API performs a different type of minimization than the relax API. The ddg-relax API must be used to prepare models for use with the ddg API.

Code Block
cyrus engine submit ddg-relax <pdb-file>

Python Examples

Prepare an input pdb file for use with DDG

Code Block
from engine.ddg-relax.client import DdgRelaxClient

client = DdgRelaxClient()
job_id = client.submit(pdb_path="input.pdb")

DDG

Command Line Examples

Prepare an input mutations file for use with DDG

Code Block
cyrus engine prepare mutations <pdb-file> --output-dir <output-dir>

Run DDG on an input structure with mutations that are included in the input mutations file

Code Block
cyrus engine submit ddg <pdb-file> --mutations-file <mutations-file>

Run DDG on an input structure with all mutations selected

Code Block
cyrus engine submit ddg <pdb-file> --all-mutations

Run DDG on an input structure with all mutations selected and output the PDBs as well as scores

Code Block
cyrus engine submit ddg <pdb-file> --all-mutations --dump-pdb

Python Examples

Prepare an input pdb file for use with DDGRun DDG on an input structure with single mutations from mutations file and multi-mutations from multi-mutations file

Code Block
fromcyrus engine.ddg-relax.client import DdgRelaxClient

client = DdgRelaxClient()
job_id = client.submit(pdb_path="input.pdb") submit ddg <pdb-file> --mutations-file <mutations-file> --multi-mutations-file <multi-mutations-file>

Python Examples

Run DDG on an input structure with mutations that are included in the input mutations file

...

Code Block
from engine.ddg.client import DdgClient

client = DdgClient()
job_id = client.submit(pdb_path="input.pdb", mutations_path="input.tsv", dump_pdb=True)

Inputs

  • pdb-file (DDG Relax)

    • PDB file to relax for use in DDG protocol

  • pdb-file (DDG)

    • must be a PDB which has been run through the ddg-relax endpoint described above

Options

  • --mutations-file

    • Tab Separated Value (TSV)-formatted file containing mutations. To create an empty mutations file from an input PDB, run:

      Code Block
      cyrus engine prepare mutations <pdb-file> --output-dir <output-dir>
    • Each row can contain one or many mutations, in the format D or DMG. For example, The TSV file below would run DDG on M1D, M1G and Q2T and would report scores for all 3 of those mutations. The mutations are performed separate from each-other (ie the M1D and M1G mutations are not performed at the same time.)

    • Do not supply the native residue as a mutation, that doesn’t make sense.

      Code Block
      position	original_residue	mutation    
      1	M DG   
      2	Q T
  • --mult-mutations-file

    • TSV file containing mutations to run simultaneously. Similar format to the mutations file, but with each run’s mutations separated with ---

      Code Block
      --- 
      position    original_residue    mutation 
      5   K   S 
      42  T   I 
      --- 
      position    original_residue    mutation 
      5   K   S 
      42  T   K 
      ---
  • --all-mutations

    • you can omit an input mutations-file and instead run in all-mutations mode, where all mutations at each position will be selected

  • --dump-pdb

    • run with this flag to output the PDB for each mutation as well as the score


Outputs

  • results.tsv

    • file with one mutation and score per-line

  • multi-results.tsv

    • file with one score per multi-mutation run

  • mutation-input.tsv

    • input mutations file

  • multi-mutation-input.tsv

    • input multi-mutations file

  • pdbresults.tar.gz

    • output PDB files, will be empty if --dump-pdb omitted