AutoDock Notes


Written on 10/22/96 by Marty Pagel, Beta tested by Karl Scheidt

Updated 05/02/99 by Marty Pagel, Tested by Rolf Minkwitz and Sarah Webb

These notes pertain to AutoDock as implemented at the MolViz Facility, Department of Chemistry, Indiana University. For more information about AutoDock, see the official AutoDock web page.

These are just notes---not cook-book instructions. Let me know if something doesn't work or is unclear. Make sure that you understand what you are doing at each step. The AutoDock manual is another good resource. GOOD LUCK!


Index


Preparing your system for AutoDock with InsightII

  1. Read structure into InsightII.

  2. Make sure that InsightII "understands" your molecule:
    Make the protein and ligand as two molecules.
    Modify bond orders automatically.
    Add hydrogens.
    fix fix fix potentials.

  3. We need to position the active site in the center of the grid:
    • Using Subset/interface, make an "active site" subset (e.g., all residues 10 angstroms from ligand). If your ligand is not in the binding pocket, first move it to an approximate location.
    • Then using Biopolymer/Pseudo Atom, make a pseudo atom centered on the active site subset (use per_molecule option).
    • Use transform/move and move the active site pseudo atom to 0, 0, 0 in absolute coordinates, then IMMEDIATELY use transform/apply to apply the movement to the protein's coordinate system. DO NOT move the protein before applying the move!

    If you don't know the location of the protein's active site, you must assume that the entire protein is the active site: Use transform/move and move the center of mass of your protein 0, 0, 0 in absolute coordinates, then IMMEDIATELY use transform/apply to apply the movement to the protein's coordinate system. DO NOT move the protein before applying the move!

  4. Move the ligand to the location where the ligand should be at the start of the calculation. This initial location is not critical, because AutoDock will start each run by randomizing the location and orientation of the ligand about the protein.
    • Make a pseudo atom centered on the ligand (use per_molecule option).
    • Move the ligand 15 to 20 angstroms from the active site. You can use Measure/Distance and select pseudo atoms with Monitor On to interactively measure this separation.

  5. Use molecule/put and put a Biosym-format file of the ligand and a separate PDB-format file of the protein. Both files must be put with transformed on and reference object on: the reference object is the protein.

  6. We need to measure the dimensions of the grid:
    • Modify/Merge the ligand back into the protein. Note that you can merge two objects that have pseudoatoms, but if for some reason you have to unmerge them (e.g., if you want to repeat a step listed above), then the entire object that is being split (i.e., the protein and ligand) can't have any pseudoatoms. You have to delete all pseudoatoms, unmerge, and then recreate the pseudoatoms.
    • Use Molecule/list/extents and measure the X,Y,Z dimensions of the ligand-protein system. Write this down.

  7. Optional step: Verify that everything is OK.
    • Use Measure/XYZ and measure the X,Y,Z coordinates of the active site pseudoatom relative to the protein object frame of reference. Write this down. This should be 0, 0, 0. If not, you messed up. Go back to the beginning. Do not pass GO. Do not collect $200.

      Of course, if you don't know the location of your protein's binding site, then you have set the center of mass of your protein to 0, 0, 0, and this verification is not necessary.

    • Use Measure/XYZ and measure the X,Y,Z coordinates of the ligand pseudoatom relative to the protein frame of reference. Write this down. The square root of {(X squared)(Y squared)(Z squared)} should be the distance separating the active site and the ligand; compare this to the separation distance used in step 7. If not, go back to the beginning. You can pass GO, but you still can't collect $200.

      Again, the initial location of your ligand is not crtical, because AutoDock will randomize the initial location and orientation at the beginning of each run. Therefore, this verification really isn't neccessary.

  8. Exit InsightII

    Example of stuff to write down:
    protein pseudo atom coords = 0 0 0
    ligand pseudo atom coords = -6.60 15.47 2.39
    extents: MIN MAX
    X: -4.35 36.09
    Y: 2.47 54.96
    Z: 2.00 44.81

  9. Edit your ligand.car file so that residue names have only 3 characters--- residue names with 4 characters work in InsightII, but NOT in AutoTors. Just truncate the 4-character names to 3 characters. Don't worry if the truncated names are the same as other residue names.


Running AutoDock

  1. Optional, yet highly recommended step: Read the AutoDock manual in the MolViz Facility! This manual will give you a much better understanding of what is happening when you type the following commands.

  2. To initialize your UNIX shell so that you can access the AutoDock directory and programs, type set path=($path /remote/server/autodock).

  3. Convert the ligand Biosym "car" file to Autodock "pdbq" format: Type cartopdbq ligand.car > ligand.pdbq

  4. Make a list of the ligand's bonds: Type pdbtoatm ligand.pdbq | atmtobnd > ligand.bnd

  5. Modify the Autodock "pdbq" file so that Autodock knows which ligand bonds can be rotated:

  6. Prepare the protein and ligand files for AutoGrid: Type prepare protein_file ligand_file where protein_file = protein.pdb and ligand_file = ligand.pdbq. DO NOT add the ".pdb" or "pdbq" when typing this command.

  7. Edit the ligand.gpf file and replace the numxyzpoints at the top of the file with the correct numxyzpoints needed for your grid. That is, take the distances measured in step 6 and multiply them by 2 (for a 0.5 angstrom-per-point grid). Change the center_of_gridmap to the coordinates measured in step 3 (this should be 0 0 0). Change the Dielectric flag at the bottom of this file to a negative value if you want a distance-dependent dielectric. See the Cl_example.gpf if you want to add a different atom type to the calculation.

  8. If you have already calculated the grid maps for the protein, you do not have to run autogrid. Instead, you can type:
    cp path_to_grid/protein_C.map ./protein_C.map
    cp path_to_grid/protein_H.map ./protein_H.map
    cp path_to_grid/protein_N.map ./protein_N.map
    cp path_to_grid/protein_O.map ./protein_O.map
    cp path_to_grid/protein_S.map ./protein_S.map
    cp path_to_grid/protein_e.map ./protein_e.map
    cp path_to_grid/protein_f.map ./protein_f.map
    cp path_to_grid/protein_maps.fld ./protein_maps.fld
    cp path_to_grid/protein_maps.xyz ./protein_maps.xyz
    or to save disk space,
    ln -s path_to_grid/protein_C.map ./protein_C.map
    ln -s path_to_grid/protein_H.map ./protein_H.map
    ln -s path_to_grid/protein_N.map ./protein_N.map
    ln -s path_to_grid/protein_O.map ./protein_O.map
    ln -s path_to_grid/protein_S.map ./protein_S.map
    ln -s path_to_grid/protein_e.map ./protein_e.map
    ln -s path_to_grid/protein_f.map ./protein_f.map
    ln -s path_to_grid/protein_maps.fld ./protein_maps.fld
    ln -s path_to_grid/protein_maps.xyz ./protein_maps.xyz
    To run autogrid, type autogrid -p ligand.gpf -l ligand.glg & This calculation can take about 30-90 minutes. Type top to verify that this program is crancking in the background, using mondo CPU. Type q to stop 'top' and then log out.

  9. If you logged out, log back in and type set path=($path /remote/server/autodock) to initialize your UNIX shell so that you can access the AutoDock directory and programs.

  10. Edit ligand.dpf
    This is the second-most difficult part of this procedure, so take the time to understand what you are doing. Make sure you are setting these variables to good values: since the AutoDock runn will take many days to calculate, it will take days to learn that you have made a mistake at this stage.

    See attached example. See attached Cl_example.dpf if you want to add an extra atom type to the calculation.

  11. Type autodock -p ligand.dpf -l ligand.dlg &. Type top to verify that this program is cranking in the background, using mondo CPU. Type q to stop 'top' and then log out.


Evaluating the AutoDock Run

STEP 1: If you logged out, log back in and type set path=($path /remote/server/autodock) to initialize your UNIX shell so that you can access the AutoDock directory and programs.

Evaluating the Trajectory (animation of the "frames" of the Monte Carlo movie)

Trajectory of Minimum & Last Structures of each AutoDock Step

  1. Before running your calculation, save the minimum and last structure of each cycle in ligand.dlg by setting outlev = 2 or 3. Run your calculation.

  2. When the calculation is done, type dlg2trj.pl ligand Minimum or dlg2trj.pl ligand Last.

    If you specify Minimum, you will copy the structural information in ligand.dlg to ligand.trj for the Minimum energy conformation of each cycle.

    If you specify Last, you will copy the structural information in ligand.dlg to ligand.trj for the Last conformation of each cycle.

    You can also just type dlg2trj.pl and the program will ask you for the necessary information.

    If ligand.trj exists, it will be overwritten!!!.

  3. Type runtrj ligand. Do not type the ".trj" extension. This makes a ligand.tlg file with PDB-style coordinates.

  4. Type tlg2pdb.pl ligand to convert ligand.tlg to several PDB coordinate files. The PDB coordinate files will be saved in a subdirectory named tlg2pdb_dir. The PDB file names will use the format ligand100001.pdb, ligand100002pdb, ligand100003.pdb, etc., for conformer 1, 2, 3, etc.

    If tlg2pdb_dir exists before you run this command, it will be overwritten!

    Remember how many frames were processed.

  5. To convert a series of PDB files named tlg2pdb_dir/ligand#.pdb to ./autodock.arc:
    1. Start InsightII. Read your protein.pdb file into the program. Read your ligand.car (Biosym format) file into the prgram with Reference_Object = protein.

    2. Select Object/Source_file and source /remote/server/autodock/PDB_to_Arc.bcl. You also need car2arc.awk in the same directory asn PDB_to_Arc.bcl (e.g., /remote/server/autodock/), but this is set up for you here at IU.

    3. Select Custom/PDB_to_Arc.bcl. Type in the name of the ligand. Type in the start frame number and end frame number; recall that frame number 1 = "100001", frame number 2 = "100002", etc. We recommend that you NOT select more than 1,000 frames (the actual maximum number of allowed frames may be more than 1,000---test this at your own risk). Also, you may want to experiment with the range of frame numbers---there is either a bug in these routines, or there are extra frames in the ligand.dlg file, especially if you choose to view the "Last" frame of each cycle.

      The PDB files in tlg2pdb_dir will be converted to 1 autodock.arc file. tlg2pdb_dir will not be deleted, but the files temp*.car and temp*.mdf in tlg2pdb_dir that are created by PDB_to_Arc.bcl will be deleted. You may want to rename autodock.arc in a UNIX shell after it is created.

  6. Select Analysis (under the Biosym icon).

  7. Select Trajectory/Get and read in the archive file. You need to have a ligand 'target object' on the screen before you read in an archive file.

  8. Perform you desired analyses!

Trajectory of Structures after N steps

  1. You can edit ligand.dpf so that a structure is saved after a certain number of steps (this is a "traditional" trajectory) by setting trjfrq > 0. Set trjsel = A. Set your ligand trajectory file name (trjout) to ligand.trj.

  2. When the calculation is done, type runtrj ligand. Do not type the ".trj" extension. This makes a ligand.tlg file with PDB-stype coordinates.

  3. Type tlg2pdb.pl ligand to convert the trajectory coordinates to PDB coordinates. The PDB coordinates will be saved in a subdirectory named tlg2pdb_dir. The PDB file names will use the format ligand100001.pdb, ligand100002pdb, ligand100003.pdb, etc., for conformer 1, 2, 3, etc.

    Also, you may want to experiment with the range of frame numbers---there is either a bug in these routines, or there are extra frames in the ligand.dlg file, especially if you choose to view the "Last" frame of each cycle. If tlg2pdb_dir exists before you run this command, it will be overwritten!

    Remember how many frames were processed.

  4. To convert a series of PDB files named tlg2pdb_dir/ligand#.pdb to ./autodock.arc:
    1. Start InsightII. Read your protein.pdb file into the program. Read your ligand.car (Biosym format) file into the prgram with Reference_Object = protein.

    2. Select Object/Source_file and source /remote/server/autodock/PDB_to_Arc.bcl. You also need car2arc.awk in the same directory asn PDB_to_Arc.bcl (e.g., /remote/server/autodock/), but this is set up for you here at IU.

    3. Select Custom/PDB_to_Arc.bcl. Type in the name of the ligand. Type in the start frame number and end frame number; recall that frame number 1 = "100001", frame number 2 = "100002", etc. We recommend that you NOT select more than 1,000 frames (the actual maximum number of allowed frames may be more than 1,000---test this at your own risk).

      The PDB files in tlg2pdb_dir will be converted to 1 autodock.arc file. tlg2pdb_dir will not be deleted, but the files temp*.car and temp*.mdf in tlg2pdb_dir that are created by PDB_to_Arc.bc will be deleted. You may want to rename autodock.arc in a UNIX shell after it is created.

  5. Select Analysis (under the Biosym icon).

  6. Select Trajectory/Get and read in the archive file. You need to have a ligand 'target object' on the screen before you read in an archive file.

  7. Perform you desired analyses!

Performing Cluster Analysis

Cluster Analysis within AutoDock
You can perform cluster analysis with Autodock. Cluster analysis, or "structure binning" superimposes each final ligand structure with each other structure and measures the RMSD (root-mean-square-displacement) between each atom pair. Structures that have an RMSD lower than rmstol (listed in ligand.dpf) are automatically assumed to be similar; structures that have an RMSD greater than rmstol are assumed to be different. This determines if different families of structures have been produced from multiple runs.

Cluster analysis is automatically performed at the end of an AutoDock run. If the results of several AutoDock runs need to be "clustered" (e.g., you run several Autodock calculations on different machines), do the folowing:

  1. Extract all final (PDB-format) structures from the *.dlg files and put them into one file (e.g., "all_ligands.dpf"): Type cat ligand.dlg | grep DOCKED: > all_ligands.dpf

  2. Edit ligand.dpf so that it ONLY contains these 4 lines:
    types CNOH
    rmstol 1.5
    write_all_cluster_members
    cluster all_ligands.dpf

  3. Type autodock -p ligand.dpf -l ligand.dlg &

Cluster Analysis Within InsightII
You can also do cluster analysis in InsightII:

  1. To make PDB coordinate files (called ligand1.pdb, liganad2.pdb, etc.) in a subdirectory tlg2pdb_dir, type dlg2pdb ligand. The PDB file names will use the format ligand100001.pdb, ligand100002pdb, ligand100003.pdb, etc., for conformer 1, 2, 3, etc.

    If tlg2pdb_dir exists before you run this command, it will be overwritten!

  2. To convert a series of PDB files named tlg2pdb_dir/ligand#.pdb to ./autodock.arc:
    1. Start InsightII. Read your protein.pdb file into the program. Read your ligand.car (Biosym format) file into the prgram with Reference_Object = protein.
    2. Select Object/Source_file and source /remote/server/autodock/PDB_to_Arc.bcl. You also need car2arc.awk in the same directory asn PDB_to_Arc.bcl (e.g., /remote/server/autodock/), but this is set up for you here at IU.
    3. Select Custom/PDB_to_Arc.bcl. The PDB files in tlg2pdb_dir will be converted to 1 autodock.arc file. tlg2pdb_dir will not be deleted, but the files temp*.car and temp*.mdf in tlg2pdb_dir will be deleted. You may want to rename autodock.arc in a UNIX shell after it is created.

    4. WARNING: the PDB_to_Arc.bcl macro may not delete the tlg2pdb_dir/temp* files if there many tlg2pdb_dir/temp* files. Be sure to check this, and delete them manually, (e.g., go to a UNIX shell, "cd tlg2pdb_dir", and "rm temp*" if this script has problems with this step.

  3. Select Analysis (under the Biosym icon).

  4. Select Trajectory/Get and read in the archive file. You need to have a ligand 'target object' on the screen before you read in an archive file.

  5. Perform you desired analyses!

Making an InsightII Archive file from many PDB files
To convert a series of PDB files named tlg2pdb_dir/ligand#.pdb to ./autodock.arc:

  1. Start InsightII. Read your protein.pdb file into the program. Read your ligand.car (Biosym format) file into the prgram with Reference_Object = protein.

  2. Select Object/Source_file and source /remote/server/autodock/PDB_to_Arc.bcl. You also need car2arc.awk in the same directory asn PDB_to_Arc.bcl (e.g., /remote/server/autodock/), but this is set up for you here at IU.

  3. Select Custom/PDB_to_Arc.bcl. The PDB files in tlg2pdb_dir will be converted to 1 autodock.arc file. tlg2pdb_dir will not be deleted, but the files temp*.car and temp*.mdf in tlg2pdb_dir will be deleted. You may want to rename autodock.arc in a UNIX shell after it is created.

  4. WARNING: the PDB_to_Arc.bcl macro may not delete the tlg2pdb_dir/temp* files if there many tlg2pdb_dir/temp* files. Be sure to check this, and delete them manually, (e.g., go to a UNIX shell, "cd tlg2pdb_dir", and "rm temp*" if this script has problems with this step.


Back to  |  Application Guide  |  MolViz Home  |
Send comments to chemvis@indiana.edu
Last updated: 01/23/2001