[Chimera-users] running DockPrep and Vina from python

Lee A.G. A.G.Lee at soton.ac.uk
Mon Mar 6 05:20:19 PST 2017

Hi Elaine
Many thanks for the rapid response. I have tracked down a mistake I was making, which was to already have a copy of the protein loaded into Chimera so that the Midas.open call created a model number #1 which was the copy that prep operated on, but the subsequent call to vina was to protein #0. All is now OK and you will be pleased to hear that the python calls give the same answer as running vina directly from Chimera.
Thanks once again

From: Elaine Meng [meng at cgl.ucsf.edu]
Sent: 03 March 2017 22:09
To: Lee A.G.
Cc: chimera-users at cgl.ucsf.edu
Subject: Re: [Chimera-users] running DockPrep and Vina from python

Hi Anthony,
This is entirely befuddling, because to my knowledge the receptor.pdb file is literally the input to the script that makes the receptor.pdbqt file.  In other words, I don’t see how the script could possibly access the unmodified data.


However, the script may delete parts of the structure, see the “Receptor options” settings in the manpage linked above.  The receptor prep script is from AutoDock, for more details see:

Besides setting the prep options appropriately, all I can say is to check the files very carefully, making sure to remove old files from previous runs.  However, I don’t know python, so maybe the others will have some better insights.
Elaine C. Meng, Ph.D.
UCSF Computer Graphics Lab (Chimera team) and Babbitt Lab
Department of Pharmaceutical Chemistry
University of California, San Francisco

> On Mar 3, 2017, at 5:24 AM, Lee A.G. <A.G.Lee at soton.ac.uk> wrote:
> Hello
> I have been trying to run DockPrep and Vina from a python script to generate a pdbqt file to be used in subsequent Vina docking studies (with a config file). What I have at present is the following (I have edited DockPrep\_init_.py to make nogui=True ; the receptor has been loaded as model #0, and the ligand as model #1)
> from DockPrep import prep
> model=Midas.open('4iaq.pdb')
> prep(model)
> modelname='4iaq.mol2'
> from WriteMol2 import writeMol2
> writeMol2(model, modelname)
> #VinaRun
> OutFileName='C:/Autodock/5HT/4iaq/Test2/4iaq'
> rc("vina docking receptor #0 ligand #1 output " + OutFileName + " prep true wait true")
> The generated 4iaq.receptor.pdb file contains the protein as modified by DockPrep, without the charges etc, and with the original PDB residue numbering.
> The 4iaq.receptor.pdbqt file contains the unmodified protein with charges etc, and with the original PDB residue numbering.
> The 4iaq.mol2 file contains the modified protein, with charges etc, but with residue numbering modified to start at 1.
> What I hoped to produce was a 4iaq.receptor.pdbqt file containing the modified protein with charges etc, and with the original PDB residue numbering, and this is just about the only thing I don’t have.
> Any help would be very gratefully received.
> Anthony

More information about the Chimera-users mailing list