Aroop Sircar and Jeffery J. Gray
The above paper describes the SnugDock method, but flags have evolved with time. To run SnugDock, it is necessary to input a PDB-formatted file with an antibody (light chain labelled as L and heavy chain labelled as H) and an antigen (labelled as anything you want, I use A). The input should be prepacked using the docking_prepack_protocol.
The current, recommended way to run SnugDock is:
with minimal flags being:
### JOB IO
-native native_input.pdb # if available
-out:pdb_gz # gzip models for space
-nstruct 1000 # adequate sampling
# low-res constraints (constrain alpha/tau if available)
# high-res constraints (constrain alpha/tau if available)
-dock_pert 3 8
### do not filter for h3, constraint takes care of this geom
### loop modeling settings
# CCD (exit with ptr error)
#more standard settings, for packages used by antibody_H3
One key flag which everyone should include is the
-h3_filter false flag. When set to true, this flag repeats CDR H3 modeling up to 20 times if the loop is not in a kinked conformation (see Weitzner et al. for more). Do not turn this on as it wastes too many cycles attempting to kink the CDR H3 loop. Instead, apply two flat harmonic constraints, scaled to be 1 REU at 3 standard deviations from the mean of the alpha and tau angles as defined in the above paper.
The two loops flags are very important as SnugDock was initially written with CCD as the default loop modeling approach. Now we use next-generation kinematic loop closure (KIC) which is much, much slower but also much, much better at exploring conformational space. Runtimes with default next-generation KIC (NGK) flags are approximately 10 hours per model -- 60x slower than standard rigid-body docking protocol and a 17x slower that CCD-based SnugDock. Use (
-loops:refine_outer_cycles 3 and
-loops:max_inner_cycles 80) or (
-loops:refine_outer_cycles 2 and
-loops:max_inner_cycles 20) unless you have loads of free time resources at hand. These flags have been benchmarked and preform slightly better than CCD-based SnugDock.
Partners must be ordered in the PDB and partners flag as light chain, heavy chain, and then antigen. This is due to the way the fold tree is initialized. We hope to do away with this rigid requirement soon.
These flags have not all been tested with SnugDock (nor are they comprehensive) so buyer be ware. In general, it is useful to know that SnugDock expands on DockingProtocol machinery, which means that most flag docking flags still apply (the biggest exception identified so far is the
-no_filters which doesn't get passed on the SnugDock via DockingHighRes).
|List of jumps allowed to move during docking.
|Run only low resolution docking, skip high resolution docking.
|Do a local refinement of the docking position (high resolution).
|Minimize the final fullatom structure.
|does rotamer trials with minimization, RTMIN
|does sidechain minimization of interface residues
|defines docking partners by ChainID, example: docking chains L+H with A is -partners LH_A
|Toggle the use of docking filters only.
|Use the legacy high resolution docking algorithm for output compatibility.
|Allows the user to define another task to give to Docking and will ignore the default DockingTask. Task will default to designing everything if no other TaskFactory is given to docking.
|usually side-chains are taken from the input structure if it is fullatom - this overrides this behavior and takes sidechains from the pdb-file
|Inner cycles during docking rigid body adaptive moves.
|Outer cycles during docking rigid body adaptive moves.
|turns on ensemble mode for partner 1. String is multi-model pdb file (must be prepacked)
|turns on ensemble mode for partner 2. String is multi-model pdb file (must be prepacked)
|constraints filename(s) for centoroid. When multiple files are given a random one will be picked.
|constraints filename(s) for fullatom. When multiple files are given a random one will be picked.
|calculate the score only and exit
|Native PDB filename
|silent input filename(s)
|Name(s) of single PDB file(s) to process
|File(s) containing list(s) of PDB files to process
|Use silent file output, use filename after this flag
|Write a scorefile to the provided filename
|[vector/pairs] tripletts: rmsd_target (or NATIVE/IRMS) col_name selection_file (or FULL)
|for each rmsd evaluator also a gdtmm evaluator is created
|[vector] rdc-files and column names for RDC calculation
|find closest matching structure in this pool and report tag and rmsd
|compute chemical shift score with SPARTA+ use tuples: talos_file [cs]_column_name (ATTENTION uses filesystem)