Skipping a wrong pdbqt and proceeding to the next

Python Prescription - Virtual Screening Tool

[PyRx is no longer developed at MGL]

Moderator: sargis

Forum rules
[PyRx is no longer developed at MGL]

Skipping a wrong pdbqt and proceeding to the next

Postby lotus » Wed Sep 02, 2015 11:09 pm

Hi,
I downloaded the Linux version of PyRx yesterday and started virtual screening.
Everything seems wonderful except one thing: when I have a missing atom in a pdbqt file, PyRx stops. I can fix the pdbqt file but it would be nice if PyRx skips the wrong input and proceeds to the next without stopping. Any way to handle this problem?
User avatar
lotus
Millimolar User
Millimolar User
 
Posts: 7
Joined: Wed Sep 02, 2015 10:36 pm

Re: Skipping a wrong pdbqt and proceeding to the next

Postby sargis » Thu Sep 03, 2015 2:06 am

Hi,

Thank you for downloading PyRx. Is it happening with AutoDock 4 or Vina? I'll be happy to help you with this. Any error message it prints or a screenshot when this happens would help to troubleshoot this problem.

Thank you for using PyRx!
User avatar
sargis
Picomolar User
Picomolar User
 
Posts: 583
Joined: Fri Oct 17, 2008 10:39 pm

Re: Skipping a wrong pdbqt and proceeding to the next

Postby lotus » Thu Sep 03, 2015 5:31 am

I attach a screenshot.
PyRx is running on 64 bit Ubuntu 14.04.
Selection_002.png
Screenshot
Selection_002.png (254.43 KiB) Viewed 4397 times
User avatar
lotus
Millimolar User
Millimolar User
 
Posts: 7
Joined: Wed Sep 02, 2015 10:36 pm

Re: Skipping a wrong pdbqt and proceeding to the next

Postby sargis » Fri Sep 04, 2015 12:47 am

Thank you for the screenshot. Please edit /usr/local/PyRx-0.9.2/lib64/python2.6/site-packages/PyRx/runProcess.py and remove the following lines starting with line 210:
Code: Select all
                    wx.LogError("Error running " + self.cmdTxt)       
                    wx.LogError("Working Directory: " + self.cwdTxt)                       
                    wx.LogError("Stderr: " + stderrTxt)     

No need to do anything else, just restart PyRx. This would skip the wrong input and proceeds to the next without stopping.
User avatar
sargis
Picomolar User
Picomolar User
 
Posts: 583
Joined: Fri Oct 17, 2008 10:39 pm

Re: Skipping a wrong pdbqt and proceeding to the next

Postby lotus » Fri Sep 04, 2015 1:56 am

Thank you for the reply.
But I need more help.
I attach the sdf (I cut out only 4 molecules) with a wrong input.

Here's what I did.

Lines starting 210 read:
if not os.path.exists(self.outputFile):
stderrTxt = self.process.stderr.read()
if stderrTxt:
wx.LogError("Error running " + self.cmdTxt)
wx.LogError("Working Directory: " + self.cwdTxt)
wx.LogError("Stderr: " + stderrTxt)

If I delete three lines starting with wx, then PyRx stops at a wrong input.

If all 6 lines starting line 210 are deleted, PyRx does not start issuing the following message.

Traceback (most recent call last):
File "/usr/local/PyRx-0.9.2/runPyRx.py", line 89, in <module>
startPyRx()
File "/usr/local/PyRx-0.9.2/runPyRx.py", line 38, in startPyRx
frame = MainFrame(None, -1, size=(width, height-200))
File "/usr/local/PyRx-0.9.2/lib64/python2.6/site-packages/PyRx/wxMainFrame.py", line 148, in __init__
from vinaWizard import VinaWizard
File "/usr/local/PyRx-0.9.2/lib64/python2.6/site-packages/PyRx/vinaWizard.py", line 12, in <module>
import runProcess
File "/usr/local/PyRx-0.9.2/lib64/python2.6/site-packages/PyRx/runProcess.py", line 210
wx.CallAfter(self.checkResults, page=self, success=False, outputFile=self.outputFile)
^
IndentationError: unexpected indent

Problem starting PyRx. Please visit PyRx forum for a possible solution: http://mgl.scripps.edu/forum

Thanks.
Attachments
Sample.sdf
(10.49 KiB) Downloaded 127 times
User avatar
lotus
Millimolar User
Millimolar User
 
Posts: 7
Joined: Wed Sep 02, 2015 10:36 pm

Re: Skipping a wrong pdbqt and proceeding to the next

Postby sargis » Fri Sep 04, 2015 2:43 am

You are welcome. Sorry about that. Please replace PyRx/runProcess.py with the latest version from https://sourceforge.net/p/pyrx/code/HEA ... format=raw

And then them remove only those 3 lines that start with wx.LogError.

The modified code would look like:
Code: Select all
                if stderrTxt:
                    wx.CallAfter(self.checkResults, page=self, success=False, outputFile=self.outputFile)
                    return
User avatar
sargis
Picomolar User
Picomolar User
 
Posts: 583
Joined: Fri Oct 17, 2008 10:39 pm

Re: Skipping a wrong pdbqt and proceeding to the next

Postby lotus » Fri Sep 04, 2015 6:43 am

Problem not solved yet.
PyRx stops without issuing an error message.
Could you please try the sdf attached above?
Thanks
User avatar
lotus
Millimolar User
Millimolar User
 
Posts: 7
Joined: Wed Sep 02, 2015 10:36 pm

Re: Skipping a wrong pdbqt and proceeding to the next

Postby sargis » Fri Sep 04, 2015 2:20 pm

Thanks, I've tried the sdf attached above and I see now what's happening. I'll work on fixing this for the next release.

In the meantime, you can skip the molecule causing this problem. Also, replace PyRx/runProcess.py with the original using the link I sent so that it can give an error message when it happens.

I also did a couple of rounds of energy minimization on a molecule that's causing a problem. Please see attached pdbqt. It works for this pdbqt.
Attachments
STOCK1N-22445_uff_E=6573072956.33_uff_E=6573072956.33_mmff94_E=7855.41_ghemical_E=25600.31.pdbqt
(4.79 KiB) Downloaded 128 times
User avatar
sargis
Picomolar User
Picomolar User
 
Posts: 583
Joined: Fri Oct 17, 2008 10:39 pm


Return to PyRx

Who is online

Users browsing this forum: No registered users and 3 guests

cron