Calculate DOCK6 RMSD

From DISI
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Calculate ligand RMSDs using DOCK6

Calculating ligand RMSDs is a tricky thing, but DOCK6 does this quite well. All you need is two ligands in mol2 format (with the same number of atoms and same Sybil atom types) and a DOCK6 binary.

Then you run the following command:

~eidamo/work/scripts/calc_dock6_rmsd.csh xtal.mol2 dock.mol2

calc_dock6_rmsd.csh (see code below) outputs three lines:

HA_RMSDs:		4.2878 
HA_RMSDh: 2.7406
HA_RMSDm: 0.9625

The most meaningful line is the one in the middle (HA_RMSDh), which outputs the RMSD using the Hungarian Algorithm (for more information: http://dock.compbio.ucsf.edu/DOCK_6/dock6_manual.htm)


calc_dock6_rmsd.csh

 #!/bin/csh -f
 if ($#argv != 2) then
         echo "Usage: $0 mol.mol2 ref.mol2"
         echo "calculates rmsd between 2 molecules using hungarian algorithm implemented in DOCK 6"
     endif
 
 setenv dock66_dir "/raid1/people/tbalius/zzz.programs/dock6_2012-10-09.stonybrook"
 
 echo "ligand_atom_file                                             $1" > temp.in
 echo "limit_max_ligands                                            no" >> temp.in
 echo "skip_molecule                                                no" >> temp.in
 echo "read_mol_solvation                                           no" >> temp.in
 echo "calculate_rmsd                                               yes" >> temp.in
 echo "use_rmsd_reference_mol                                       yes" >> temp.in
 echo "rmsd_reference_filename                                      $2" >> temp.in
 echo "use_database_filter                                          no" >> temp.in
 echo "orient_ligand                                                no" >> temp.in
 echo "use_internal_energy                                          no" >> temp.in
 echo "flexible_ligand                                              no" >> temp.in
 echo "bump_filter                                                  no" >> temp.in
 echo "score_molecules                                              no" >> temp.in
 echo "atom_model                                                   all" >> temp.in
 echo "vdw_defn_file                                                $dock66_dir/parameters/vdw_AMBER_parm99.defn" >> temp.in
 echo "flex_defn_file                                               $dock66_dir/parameters/flex.defn" >> temp.in
 echo "flex_drive_file                                              $dock66_dir/parameters/flex_drive.tbl" >> temp.in
 echo "ligand_outfile_prefix                                        output" >> temp.in
 echo "write_orientations                                           no" >> temp.in
 echo "num_scored_conformers                                        1" >> temp.in
 echo "rank_ligands                                                 no" >> temp.in
 
 
 $dock66_dir/bin/dock6 -i temp.in > dock6.log
 
 grep "HA_RMSD" output_scored.mol2

Acknowledgments

Thanks to Trent for pointing out this great new feature in DOCK 6.6.