Chapter 10
Rosetta Ligand Docking with Flexible XML Protocols
Gordon Lemmon and Jens Meiler
Abstract
RosettaLigand is premiere software for predicting how a protein and a small molecule interact. Benchmark
studies demonstrate that 70% of the top scoring RosettaLigand predicted interfaces are within 2 Å RMSD
from the crystal structure [1]. The latest release of Rosetta ligand software includes many new features,
such as (1) docking of multiple ligands simultaneously, (2) representing ligands as fragments for greater
flexibility, (3) redesign of the interface during docking, and (4) an XML script based interface that gives
the user full control of the ligand docking protocol.
Key words: Rosetta, RosettaLigand, Ligand, Docking, Small molecule, Flexible, Flexibility,
Interface
1. Introduction
Rosetta is a suite of applications used in protein modeling (2).
These applications have proven themselves in the areas of
protein structure prediction (3), protein-protein docking (4),
protein design (5), and protein-ligand docking (1). In 2006
RosettaLigand was introduced as premier software for modeling
protein/small molecule interactions. RosettaLigand samples
the rigid body position and orientation of the ligand as well as
side-chain conformations using Monte Carlo minimization.
Ensembles of ligand conformations and protein backbones were
used to sample conformational flexibility. The models produced by
RosettaLigand conformational sampling are evaluated with a scoring function that includes an electrostatics model, an explicit orientation-dependent hydrogen bonding potential, an implicit solvation
model, and van der Walls interactions (1). Default ligandcentric score term weights are provided through “ligand.wts”
and “ligand_soft_rep.wts” (see the SCOREFXNS section of
Riccardo Baron (ed.), Computational Drug Discovery and Design, Methods in Molecular Biology, vol. 819,
DOI 10.1007/978-1-61779-465-0_10, # Springer Science+Business Media, LLC 2012
143
144
G. Lemmon and J. Meiler
Fig. 1. Multiple ligand docking. Black curve represents a protein interface. Square and circle represent two ligands.
Often multiple ligands, cofactors, water molecules, and ions interact with a protein in a synergistic manner to produce
the resultant interface structure. Using ligand docking software to dock each of these components separately (left ) may
fail to capture protein induced-fit effects. Simultaneous docking of multiple ligands (right ) with backbone and side-chain
flexibility improves modeling of interfaces—especially those with induced-fit effects.
Fig. 2). However we have found that optimizing these score term
weights for a particular class of protein/ligand complexes can
greatly improve predictions (see Note 1).
RosettaLigand was later enhanced to allow receptor backbone flexibility as well as greater ligand flexibility (6). Both ligand
flexibility and backbone flexibility were shown to improve selfdocking and cross-docking scores and lead to better performance
than the open-source competitor AutoDock. Ligand flexibility
was modeled by sampling ligand conformers and minimizing
ligand torsion angles. Backbone flexibility included selecting
stretches of residues near the ligand and sampling phi/psi angles
for those residues, using a gradient based minimization (6).
Libraries of ligand conformers can be generated using methods
presented by Kaufmann et al. (7). These features have enabled
Rosetta to excel in predicting how pharmaceutically relevant
compounds interact with their target (8).
In this chapter we present new features and enhancements
to RosettaLigand. Multiple ligands, cofactors, ions, and key
water molecules can now be docked simultaneously (Fig. 1).
User provided ligand conformations are now sampled during
docking, along with protein side-chain rotamer sampling. Interface residue identities can now be redesigned during docking.
A new XML script format is used to describe the ligand docking
protocol (Fig. 2). This adds great flexibility for the user to
customize their docking study.
10
Rosetta Ligand Docking with Flexible XML Protocols
145
Fig. 2. Ligand docking using rosetta_scripts compatible XML. This protocol will do low-resolution docking followed by
high-resolution docking. “Compound movers” group simple movers for clarity. The parameters in this protocol replicate
those used by Davis et al. (6).
2. Materials
RosettaLigand is part of the Rosetta software suite for protein
structure prediction. Visit http://www.rosettacommons.org/ to
obtain a license, download the latest release, and read the manual
for help installing the software. The information in this tutorial
146
G. Lemmon and J. Meiler
applies to Rosetta version 3.2. Read the documentation about
how to run Rosetta executables using command line or flag file
options
(http://www.rosettacommons.org/manuals/archive/
rosetta3.1_user_guide/command_options.html). Read the tutorial entitled “Dock Design Parser Application” (http://www.
rosettacommons.org/manuals/archive/rosetta3.1_user_guide/
app_dock_design.html). This guide describes an XML format
that is now used for all aspects of ligand docking.
2.1. Preparation
of Protein PDB
Input File
Assure that the protein PDB has at least one backbone heavy
atom present for each residue. Rosetta can add missing atoms to
incomplete residues. If a residue is completely missing use loop
building to add its coordinates. Follow the loop building tutorial
(http://www.rosettacommons.org/manuals/archive/rosetta3.1_
user_guide/app_loop.html). Assure that residues are numbered
in sequence. Rosetta will renumber residues if they are not. Assure
that each ligand, cofactor, water molecule, or ion you wish to dock
is assigned its own chain ID.
RosettaLigand has been successful in comparative modeling (9),
where an experimental structure of the protein of interest is not
available. In this case, a sequence alignment is made between the
protein of interest and a homologous protein with similar sequence.
The three-letter codes in the PDB file of the homologous protein
are replaced with the three-letter codes of the protein of interest,
according to the sequence alignment and side chain conformations
are reconstructed using a rotamer library. If the protein of interest
has insertions, loop modeling is used to fill in missing density.
Since ligand docking only repacks side-chain residues within
the interface, we first repack all side-chain residues in the protein
using the same score function that will be used in ligand docking.
By optimizing unbound and bound protein structures using the
same scoring function, we ensure that predicted binding affinity is
based strictly on changes related to ligand docking. The following
XML code can be used for repacking the unbound structure
within rosetta_scripts.
<SCOREFUNCTION>
<hard_rep weights=ligand>
</SCOREFUNCTION>
<MOVERS>
<Repack name=repack score_function= hard_rep>
<MOVERS>
10
Rosetta Ligand Docking with Flexible XML Protocols
147
2.2. Preparation
of Ligand PDB
and “Params”
Input Files
If you are starting with a ligand in PDB format, first convert it to .
mol or .mol2 format. Use <rosetta_source>/src/python/apps/
mol_to_params.py to generate a ligand params file and a ligand
PDB file with Rosetta atom types. The .params file describes
partial charges, atom types, bond lengths, bond angles, torsion
angles, and atom types for each residue. Append the atoms in the
generated ligand pdb file onto the end of the prepared protein
PDB file.
If you are interested in large-scale ligand flexibility, generate
conformations for your ligand using OpenEye’s Omega (http://
www.eyesopen.com/omega) or MOE (http://www.chemcomp.
com). These conformations should be in one PDB format
separated by TER statements. Add the line “PDB_ROTAMERS
<location of PDB file with ligand conformations>” to the end of
your .params file.
If your ligand has more than 7 rotatable bonds or if over
100 conformations are required to fully cover the conformational space of your ligand, split it into several smaller fragments.
Specify split points at the bottom of your .mol or .mol2 file
before running molfile_to_params.py in this fashion: “M SPLT
<index 1> <index 2>” where indices 1 and 2 correspond to the
atom number in the .mol or .mol2 file (the ATOM block line
number). molfile_to_params.py will generate a .params file for
each fragment.
2.3. Relevant
Command Line
or Flags File Options
Rosetta applications use a common set of options that can
be specified either at the command line or in a file. Not all Rosetta
options are relevant or accessed by each Rosetta application.
The options below are most commonly used with ligand docking.
An asterix signifies a required option.
1. –in:path:database <path to Rosetta database>. The Rosetta
database directory is downloaded from www.rosettacommons.org and contains chemical descriptions of each amino
acid as well default score term weights.
2. –in:file:s <space delimited list of PDB files containing protein
and ligand(s)>. Alternatively use –in:file:list.
3. –in:file:list <text file with two or more PDB files listed on each
line>. This option is especially useful for processing batches of
proteins and ligands. PDBs on the same line are concatenated
for docking.
4. –in:file:extra_res_fa <space delimited list of .params files for
each ligand>. See Subheading 2.2 for preparation of these
.params files. Alternatively use -in:file:extra_res_path.
5. –in:file:extra_res_path <path to find .params files>. All files
in this directory that end with “.param” or “.params” will be
included in docking.
148
G. Lemmon and J. Meiler
6. –out:nstruct <number of models to produce per input
PDB>. See Note 2 on determining how many models to
produce.
7. –out:file:atom_tree_diff <name of output file>. In atom_
tree_output files only differences from a reference structure
are recorded. Since output models usually only differ within
the interface region, much less disk space is used by only
recording differences.
8. –parser:protocol <name of rosetta_scripts XML file>. This
file allows the user to customize each step of ligand docking.
9. –packing:ex1, packing:ex2. These options provide larger
(more fine-grained) rotomer libraries for conformational
sampling of amino acid side chains. This can improve results
but also increases compute times.
3. Methods
The RosettaLigand protocol has been implemented as an XML
script used with rosetta_scripts. Instead of providing a separate
RosettaLigand executable, the user creates an XML script that
describes each of the pieces of ligand docking, and passes this script
to the rosetta_scripts executable. This provides a large degree of
flexibility to the user, and allows him or her to create novel
approaches to ligand docking. In this section XML scriptable components directly related to ligand docking are described. Figure 1
combines these components into a complete ligand docking protocol that replicates the previously published protocol. Hundreds
of additional components that are not ligand-centric are available
and described in the rosetta_scripts documentation found in
the user guide. The XML components below are presented in
the order in which they would be used during ligand docking.
3.1. StartFrom
Provide a list of possible xyz starting Coordinates for your
ligand. One of these points is chosen at random and the ligand
specified by the chain parameter is recentered at this position.
<StartFrom name=(string) chain=(string)/>
<Coordinates x=(float) y=(float) z=(float)/>
</StartFrom>
3.2. Translate
Randomly move the ligand up to a specified distance in any
direction from its starting position. If you are confident about
your ligand’s starting position and seek only to fine tune this
position, consider selecting from a gaussian distribution,
10
Rosetta Ligand Docking with Flexible XML Protocols
149
where the specified angstroms represent one standard deviation
from the starting point. If the random translation lands the ligand
on top of another protein (as evaluated by the repulsive score
term), then try another random translation. Repeat this cycles
number of times before giving up and leaving the ligand at the
starting point.
<Translate name=(string) chain=(string)
distribution=[uniform|gaussian] angstroms=(float) cycles=(int)/>
3.3. Rotate
Randomly rotate the ligand through all rotational degrees of freedom. Specify 360 for full rotational freedom. Cycles in this case
is much more complicated than seen in Translate. Perform up to
cycles random rotations of the ligand. Only rotations that pass
a Lennard-Jones attractive and repulsive score filter are stored. Also,
rotations that are close in RMSD to other rotations are not stored.
Once a minimum number of diverse structures are collected (this
minimum is 5 times the number of ligand rotatable bonds) one of
these structures is chosen at random as the starting structure. If no
structures passed the attractive and repulsive filter just select the
rotation with the best attractive and repulsive score.
This somewhat complicated rotation selection scheme is
designed to enrich for hard to find poses, which fit in tight cavities
for instance. By storing only rotations that pass an energy filter we
limit ourselves to rotations that are close to the protein but do not
clash with it. By storing only poses with a minimum RMSD from
each other, we increase the probability of selecting “hard to find”
poses (classes of similar ligand orientations that easily fit in the
interface are only stored once). If you prefer to accept the first
rotation, without filtering, just use cycles ¼ 1.
<Rotate name=(string) chain=(string)
distribution=[uniform|gaussian] degrees=(int) cycles=(int)/>
3.4. SlideTogether
After an initial random positioning of the ligand, the ligand must
be moved into close proximity to the protein. SlideTogether
moves the ligand toward the protein, 2 Å at a time, until the two
collide (as evidenced by a positive repulsive score). The step size
is halved several times (1, 0.5, and 0.25 Å) to minimize the
distance between the ligand and the protein. This step proves
to be crucial to Rosetta ligand docking. Without it interactions
between amino acid side chains and the ligand are rare.
<SlideTogether name="&string" chain="&string"/>
3.5. HighResDocker
During high resolution docking, cycles of rotamer trials
(sampling of side chain rotamers, one side chain at a time)
and repacking (simultaneous sampling of rotamers for multiple
150
G. Lemmon and J. Meiler
side chains) are combined with small movements of the ligand(s).
The size of these movements is described by the high_res_
angstroms and high_res_degrees options of LIGAND_AREAS
(see Note 3). LIGAND_AREAS are part of INTERFACE_BUILDERs
(see Note 4) which are part of MOVEMAP_BUILDERs (see Note 5).
The movemap_builder describes which protein residues
to include in rotamer trials, repacking, and minimization. If a
resfile is provided, interface residues are allowed to redesign
(change amino acid identity), according to instructions provided
in the specified file. Resfiles can also be specified through the
command line flag “-packing:resfile.” Resfile support allows protein interfaces to be optimized for particular ligands.
The user specifies how many cycles of docking and how
often to do a full repack (repack_every_Nth—only rotamer
trials occur in the other cycles). After each cycle the structure is
minimized. If minimize_ligand values were specified in
LIGAND_AREAS then ligand torsion angles are minimized as
well. Monte Carlo sampling is used with a Boltzmann criterion to
determine whether to accept or reject the new structure after each
cycle. If a tether_ligand value greater than 0 is specified in
LIGAND_AREAS, the ligand will be remain within the specified
distance (in angstroms). tether_ligand prohibits multiple
cycles of small translations in the same direction from moving the
ligand farther than desired.
<HighResDocker name="string" cycles=(int) repack_every_Nth=(&int)
scorefxn="string" movemap_builder="string" resfile="string"/>
3.6. FinalMinimizer
Minimize the structure of the docked protein/ligand complex.
This includes off-rotamer side-chain torsion angle sampling.
The movemap_builder specifies which residues to minimize.
If Calpha_restraints were specified in LIGAND_AREAS then
backbone j/C angles are minimized as well.
<FinalMinimizer name=(string) chain=(string) scorefxn=(string)
movemap_builder=(string)>
</FinalMinimizer>
3.7. InterfaceScore
Calculator
This component calculates a myriad of ligand specific scores and
appends them to the output file. After scoring the complex the
ligand is moved 1,000 Å away from the protein. The model is
then scored again. An interface score is calculated for each score
term by subtracting separated energy from complex energy.
If a native structure is specified, four additional score terms are
calculated:
1. ligand_centroid_travel. The distance between the native
ligand and the ligand in our docked model.
10
Rosetta Ligand Docking with Flexible XML Protocols
151
2. ligand_radious_of_gyration. An outstretched conformation
would have a high radius of gyration. Ligands tend to bind
in outstretched conformations.
3. ligand_rms_no_super. RMSD between the native ligand and
the docked ligand.
4. ligand_rms_with_super. RMSD between the native ligand
and the docked ligand after aligning the two in XYZ space.
This is useful for evaluating how much ligand flexibility was
sampled.
<InterfaceScoreCalculator name=(string) chains=(comma separated
chars) scorefxn=(string) native=(string)/>
3.8. Putting It All
Together
Figure 2 presents an XML script that replicates the protocol presented in Davis, 2009 (6). Because of the flexibility of ligand
docking through RosettaScripts, it is easy to customize this protocol. For instance high throughput virtual screening of libraries
of compounds can be accomplished by spending more time in low
resolution docking. Results from low resolution docking can be
filtering and used for high resolution docking. A variety of XML
elements not specific to ligand docking can also be included as
part of a docking study (see the Subheading 2).
A customized ligand docking protocol must take into consideration the number of desired output models (see Note 2), and
the amount of time it will take to produce each model, given the
available hardware (see Note 6). Best energy output models
are then selected for further analysis (see Note 7), and used to
generate testable hypotheses about protein/ligand interactions.
4. Notes
1. Score Term reweighting.
The ligand weights specified in the database file “new.ligand.
wts” perform well on a benchmark of diverse protein/ligand
complexes. However results can be improved if weights are
optimized for the class of protein/ligand interactions one is
interested in. We recently used a leave-one-out analysis to
improve the correlation between experimental binding energy
and rosetta predicted binding energy for HIV-1 protease
mutants bound to various protease inhibitors. The leaveone-out weight optimization improves the correlation coefficeint from 0.31 to 0.71.
2. How many models should I make?
The number of models one should make is largely determined
by how large of an interface one is sampling. For this reason
152
G. Lemmon and J. Meiler
carefully describing the size and shape of an interface can
save much compute time. By adjusting the angstroms
parameter of Translate and adding more StartFrom
Coordinates, a user can restrict sampling to a smaller area.
Another strategy is to create a limited number of models, then
cluster the results based on RMSD (see Subheading 4, step 4).
Select several low energy clusters for further analysis. Select
a model from each cluster. Use these models in ligand
docking studies, after decreasing the size of angstroms in
the Translate mover.
3.
LIGAND_AREAS.
describe parameters specific to each ligand,
useful for multiple ligand docking studies (Fig. 1). cutoff
is the distance in angstroms from the ligand an amino-acid’s
C-beta atom can be and that residue still be part of the interface. all_atom_mode can be true or false. If all_
atom_mode is true than if any ligand atom is within cutoff
angstroms of the C-beta atom, that residue becomes part of
the interface. If false, only the ligand neighbor atom is used
to decide if the protein residue is part of the interface.
add_nbr_radius increases the cutoff by the size of the
ligand neighbor atom’s radius specified in the ligand .params
file. This size can be adjusted to represent the size of the ligand,
without entering all_atom_mode. Thus all_atom_mode
should not be used with add_nbr_radius.
Ligand minimization can be turned on by specifying a
minimize_ligand value greater than 0. This value represents the size of one standard deviation of ligand torsion angle
rotation (in degrees). By setting Calpha_restraints
greater than 0, backbone flexibility is enabled. This value
represents the size of one standard deviation of Calpha movement, in angstroms.
During high resolution docking, small amounts of ligand
translation and rotation are coupled with cycles of rotamer
trials or repacking. These values can be controlled by the
high_res_angstrom and high_res_degrees values
respectively. Cycles of small ligand translations can lead to a
large translation. In some cases the ligand can “walk away
from the protein.” The tether_ligand option prevents
this by keeping the ligand close to its starting point before
the high_res_docking step.
LIGAND_AREAS
<[name_of_this_ligand_area] chain="&string" cutoff=(float)
add_nbr_radius=[true|false] all_atom_mode=[true|false] minimi
ze_ligand=[float] Calpha_restraints=[float]
high_res_angstroms=[float] high_res_degrees=[float]
tether_ligand=[float]/>
10
4.
Rosetta Ligand Docking with Flexible XML Protocols
153
INTERFACE_BUILDERS.
An interface builder describes how to choose residues that
will be part of a protein-ligand interface. These residues are
chosen for repacking, rotamer trials, and backbone minimization during ligand docking. The initial XML parameter is
the name of the interface_builder (for later reference).
ligand_areas is a comma separated list of strings matching
LIGAND_AREAS described previously. Finally extension_
window surrounds interface residues with residues labeled as
“near interface.” This is important for backbone minimization,
because a residue’s backbone can’t really move unless it is part of
a stretch of residues that are flexible.
By specifying multiple ligand areas, multiple ligand docking is enabled. Simultaneous docking of multiple ligands,
cofactors, water molecules and ions may capture synergistic
effects overlooked by serial docking (Fig. 2).
<[name_of_this_interface_builder] ligand_areas=(comma separated
list of predefined ligand_areas) extension_window=(int)/>
5.
MOVEMAP_BUILDERS.
A movemap builder constructs a movemap. A movemap is a
2 N table of true/false values, where N is the number of
residues your protein/ligand complex. The two columns are
for backbone and side-chain movements. The movemap
builder combines previously constructed backbone and
side-chain interfaces (see previous section). Leave out
bb_interface if you do not want to minimize the backbone. The minimize_water option is a global option. If you
are docking water molecules as separate ligands (multi-ligand
docking) these should be described through LIGAND_AREAS
and INTERFACE_BUILDERS.
<[name_of_this_movemap_builder] sc_interface=(string)
bb_interface=(string) minimize_water=[true|false]/>
6. How long will this take to run?
Of course this question depends on many factors: how fast
your computer is, how many processors you have access to,
how large is your protein? Increasing amino acid rotamers and
ligand conformers can increase run-time. Protein backbone
and ligand torsion angle minimization also add increase runtime. We have found that the majority of the time is spent in
full-repack cycles of ligand docking. Table 1 shows average
times for modeling the interaction of Carboxypeptidase
A with a phosphonate inhibitor. The XML script in Fig. 1
was used with the exception of modifications shown in column headings.
154
G. Lemmon and J. Meiler
Table 1
Carboxypeptidase A was docked with a phosphonate inhibitor (PDB code: 7CPA)
Amino acid rotamers
Ligand conformations
Standard rotamers
1
10
Extended rotamers (ex1, ex2)
100
500
1
10
100
500
rosetta_scripts startup
4.87
4.80
4.87
4.92
4.86
4.87
4.89
4.83
Only setup movers
5.81
5.73
5.76
5.72
5.71
5.77
5.91
5.72
Start From
5.84
5.80
5.80
5.72
5.88
5.74
5.76
5.80
Translate (5, 50)
6.05
6.04
5.88
5.84
5.94
6.04
5.83
5.85
Rotate (360, 1)
6.42
6.37
4.74
6.27
6.40
6.40
4.44
6.27
76.32
44.81
78.42
40.50
82.94
42.31
68.18
39.71
SlideTogether
5.85
5.98
5.88
5.84
5.85
5.91
5.81
5.87
HighResDocker 1 RT
7.92
7.87
7.89
7.85
8.32
8.29
8.35
8.35
+ MinimizeLigand
8.23
8.21
8.22
8.43
8.32
8.26
8.20
8.34
HighResDocker 1 FR
6.37
6.30
6.38
6.33
11.93
11.85
12.00
11.81
+ Ligand flexibility
6.43
6.38
6.38
6.33
11.77
11.70
11.91
11.84
FinalMinimizer
8.95
8.89
8.98
9.06
8.90
8.89
8.97
9.17
14.04
14.26
14.32
13.92
14.04
14.24
14.16
12.26
AddScores
6.02
5.87
5.84
5.95
5.88
5.87
5.77
6.05
Combined
86.77
87.20
95.88
83.35
104.19
98.40
68.36
53.46
Rotate (360, 1,000)
+ Backbone flexibility
The ligand has 9 rotatable bonds. Each datapoint represents the average time in seconds for 10 runs. The
combined protocol uses rotate (360, 1,000), HighResDocker with ligand flexibility and 6 cycles of
packing (full repacks at cycles 1 and 4), and FinalMinimizer with backbone flexibility
7. How do I analyze my results?
When your docking study has finished you will have an
output file (specified by the –out:file:atom_tree_diff option)
which contains hundreds of models constructed and scored by
Rosetta. You can extract these models to individual
PDBs using rosetta_scripts. Prepare an XML script that is
essentially empty. Under <PROTOCOLS> include this line:
<Add mover_name¼null/>. Run the XML script with the
following command line or flags file options:
(a) -in:file:atom_tree_diff <input file name>
(b) -in:file:extra_res_fa <names of .params files>
(c) –parser:protocol <name of XML file with null mover>
(d) –database <directory of Rosetta Database>
10
Rosetta Ligand Docking with Flexible XML Protocols
155
You may only be interested in the best models by interface
score or by total score. You can list the TAGs of the models you
wish to extract at the end of the command line. These tags
are found in the atom_tree_diff output file after “POSE_TAG.”
You can search the file for lines that start with “SCORES.”
By sorting these scores you can find the lowest energy models.
You can also use the Rosetta Cluster application to group
your models by RMSD. Then you can choose one low energy
model from several low energy clusters for further analysis. See
the cluster documentation (http://www.rosettacommons.org/
manuals/archive/rosetta3.1_user_guide/app_cluster.html) for
more information.
References
1. Meiler, J., and Baker, D. (2006) ROSETTALIGAND: protein-small molecule docking with
full side-chain flexibility, Proteins 65, 538–548.
2. Kaufmann, K. W., Lemmon, G. H., Deluca, S.
L., Sheehan, J. H., and Meiler, J. (2010) Practically useful: what the Rosetta protein modeling
suite can do for you, Biochemistry 49,
2987–2998.
3. Raman, S., Vernon, R., Thompson, J., Tyka,
M., Sadreyev, R., Pei, J. M., Kim, D., Kellogg,
E., DiMaio, F., Lange, O., Kinch, L., Sheffler,
W., Kim, B. H., Das, R., Grishin, N. V., and
Baker, D. (2009) Structure prediction for
CASP8 with all-atom refinement using Rosetta,
Proteins-Structure Function and Bioinformatics
77, 89–99.
4. Chaudhury, S., and Gray, J. J. (2008)
Conformer selection and induced fit in flexible
backbone protein-protein docking using
computational and NMR ensembles, J Mol
Biol 381, 1068–1087.
5. Jiang, L., Althoff, E. A., Clemente, F. R.,
Doyle, L., Rothlisberger, D., Zanghellini, A.,
Gallaher, J. L., Betker, J. L., Tanaka, F., Barbas,
C. F., Hilvert, D., Houk, K. N., Stoddard, B.
L., and Baker, D. (2008) De novo computational design of retro-aldol enzymes, Science
319, 1387–1391.
6. Davis, I. W., and Baker, D. (2009) RosettaLigand docking with full ligand and receptor flexibility, J Mol Biol 385, 381–392.
7. Kaufmann, K. W., Glab, K., Mueller, R., and
Meiler, J. (2008) Small Molecule Rotamers
Enable Simultaneous Optimization of Small
Molecule and Protein Degrees of Freedom in
ROSETTALIGAND Docking, In German
Conference on Bioinformatics (Beyer, A., and
Schroeder, M., Eds.), pp 148–157, Dresden.
8. Davis, I. W., Raha, K., Head, M. S., and Baker,
D. (2009) Blind docking of pharmaceutically
relevant compounds using RosettaLigand, Protein Sci 18, 1998–2002.
9. Kaufmann, K. W., Dawson, E. S., Henry, L. K.,
Field, J. R., Blakely, R. D., and Meiler, J. (2009)
Structural determinants of species-selective substrate recognition in human and Drosophila
serotonin transporters revealed through
computational docking studies, Proteins 74,
630–642.