Home Blog
How to Dock with Flexible Residues PDF Print
Written by Sarkis Dallakian   

To make protein side chains flexible during the docking, please load the molecule in PyRx using File > Load Molecule and click on + sign next to the molecule in Navigator > Molecules panel to see the list of residues. Then using Shift or Control keys, select residues you wish to make flexible. You can click on Toggle Selection Sphares icon on the main toolbar (the last icon with pink highlights) to see selected residues in 3D Scene. Then with residues selected under Navigator > Molecules panel, right click and select AutoDock > Flexible Residues menu as shown in the image below. This creates _flex folder under Navigator > AutoDock > Macromolecules panel. Select this _flex folder in Select Molecules tab when using Vina or AutoDock Wizard and PyRx would automatically prepare and run flexible docking with Vina or AutoDock respectively. Please note that making side chains flexible works only for small proteins with fewer than 200 residues. For larger proteins with more than 200 residues, PyRx might crash to guard against a stack overflow.

Add a comment
Last Updated on Friday, 02 May 2014 12:01
PyRx 0.9.1 Release Announcement PDF Print
Written by Sarkis Dallakian   

We are pleased to announce the release of PyRx 0.9.1. This is a minor bugfix release. PyRx 0.9 users, please use PyRx > Help > Check for Updates...  menu to update. The following is a new feature and a bug fix implemented for 0.9.1 release:

[r151] Added stereo rendering option to 3D scene. Click on Configure the scene icon on 3D Scene toolbar to enable stereo rendering. http://pyrx.sourceforge.net/images/pyrx_stereo.png

[r154] Fixed a bug that caused AutoDodock runs to fail for ligands with long file names.

See also: PyRx 0.9 Release Announcement.

Add a comment
Last Updated on Saturday, 18 January 2014 14:09
PyRx 0.9 Release Announcement PDF Print
Written by Sarkis Dallakian   

We are pleased to announce the release of PyRx 0.9. The following are new features and bug fixes implemented for 0.9 release:

[105] Vina Wizard is now using the number of CPUs (--cpu option). Please use Edit > Preferences and enter Available CPUs to specify this number. By default, PyRx sets it to the number of available CPUs minus one, or just one if there is only one CPU available.

[104] Implemented hydrogen bond visualization (3). Users can now click on http://pyrx.sourceforge.net/images/hbond.png icon on the toolbar or right-click on a molecule and select Display > Hydrogen Bonds. The later displays only intramolecular hydrogen bonding, while former shows intermolecular hydrogen bonding between all molecules in PyRx (unless there is only one molecule in 3D Scene, in which case we show intramolecular hydrogen bonding for that molecule).


[103] You can now explicitly set search box dimensions. This was previously read-only and users could change it only by using handles of BoxWidget.


[102] Implemented a new GUI for non-standard residues (HETATM) when making macromolecule pdbqt, available through Make Macromolecule menu. If input macromolecule contains non-standard residues, such as in the case of 1hsg, users can now select what to do with non-standard residues as shown in the GUI below:


[100] Added cleanup='nphs_lps_waters' to AD4ReceptorPreparation to handle DNA's which otherwise was failing because the default was cleanup='nphs_lps_waters_nonstdres'.

[99] Removed unbound ligand mode from AutoDock 4.2 parameters list. See Bug: Unbound ligand mode not respected.

[97] Fixed Import > Workspace Tarball - Local File.

[94] and [95] Users can now open multiple molecules at once. We copy input pdbqt files to ~/.mgltools/PyRx/Ligands by default. If there are more than 100 input files to open, we don't add pdbqt inputs to 3D Scene. This is done to allow "Add Ligand" to handle large number of input pdbqt files.

[92] and [93] Updated atom color scheme to include new atom types. http://pyrx.sourceforge.net/images/09-AtomColors.png

[89] Added an option to render secondary structures as ribbons thanks to ePMV. To use this, right-click (Control-click on Mac) on the molecule and select Display > Ribbons.


[88] Fixed PyRx -> Help -> Check for Updates... for Windows.

[87] Fixed alternate conformations selection when making pdbqt for macomolecules.

[86] Fixed the histogram icon in the Tables toolbar.

See also: List of Changes in PyRx Version 0.8

Add a comment
Last Updated on Tuesday, 09 July 2013 13:54
Rotating Mayavi Camera PDF Print
Written by Sarkis Dallakian   

I wrote this small script that can be used to rotate molecules in PyRx. You can try it by downloading rotate.py and then use File → Run Python Script menu from PyRx to run it. To stop this rotation, click on Python Shell tab under Controls panel, type stop() and hit Enter. The following is the complete code for rotate.py and it's intended for (Python) developers who want to learn how it's done.

def rotate(event):
    frame.mayaviEngine.scene.camera.azimuth(1); #change 1 to any other degree as needed.
def stop():
    del frame.timer

import wx    
frame.Bind(wx.EVT_TIMER, rotate)
frame.timer = wx.Timer(frame)
frame.timer.Start(50) #you change the rate here  

The rotate function here calls frame.mayaviEngine.scene.camera.azimuth(1) which is what we need to do the rotation (.render is there to update the scene, otherwise we won't see the changes). I read Advanced Scripting with Mayavi where I found an example code for foscene.camera.azimuth. To call this function from PyRx, we need to get a handle of frame.mayaviEngine object. frame is an instance of MainFrame class definded in wxMainFrame.py and initialized in runPyRx.py. This is where we store references to various PyRx parts including mayaviEngine instance. The rest of the code is used to call rotate function and it's wxPython specific. I copied the last three lines from PyRx/autodockPage.py where we use wx.Timer to run AutoDock jobs and to check their status. Please let me know if you have any questions. 

Add a comment
Last Updated on Sunday, 25 March 2012 15:22
Installing Nvidia Driver on CentOS 6 PDF Print
Written by Sarkis Dallakian   

This post explains how to install NVIDIA proprietary drivers on CentOS 6. By default, CentOS 6 comes with nouveau drivers, which for 3D (OpenGL) rendering, is order of magnitude slower that NVIDIA's proprietary drivers.  For instance, I had glxgear running at round 400 frames per second (FPS) before installing NVIDIA proprietary drivers and at around 1000 FPS after. So it pays to add this extra step to your CentOS 6 installation. Before we start, make sure you have all required packages installed:

yum groupinstall "Development Tools"
yum install kernel-devel kernel-headers dkms

The last package (dkms) is needed so that we don't have to reinstall NVIDIA drivers after each kernel updates. Now we are ready to download NVIDIA proprietary drivers - http://www.nvidia.com/Download/index.aspx

To find out your Video Card model number, click Main Menu → System Settings → Display or run:

lspci | grep VGA

I then run /sbin/init 3 and then chmod +x NVIDIA-Linux-x86-290.10.run followed by ./NVIDIA-Linux-x86-290.10.run. However, this gave me:
"ERROR: The Nouveau kernel driver is currently in use by your system. This driver is incompatible with the NVIDIA driver, and must be disabled before proceeding. Please consult the NVIDIA driver README and your Linux distribution's documentation for details on how to correctly disable the Nouveau kernel driver."

After trying many different options I have found a solution described at http://www.linuxquestions.org/questions/ubuntu-63/nouveau-kernel-driver-825432.

So I added the following line to /etc/modprobe.d/blacklist.conf file

blacklist nouveau

and then did:

$ mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak   
$ dracut -v /boot/initramfs-$(uname -r).img $(uname -r)

Reboot and run ./NVIDIA-Linux-x86-290.10.run to finish installing NVIDIA driver.

Another difference, between CentOS 6 and earlier versions of CentoOS is that system-config-packages (Add/remove applications) is now called gpk-application. You need to run yum install gnome-packagekit if gpk-application is not installed in your system. Also, if you are planning to do OpenGL development run (source: www.centos.org - Forums - CentOS 6 - Software Support - Help me ..):

yum install mesa-libGL-devel mesa-libGLU-devel


Add a comment
Last Updated on Wednesday, 08 May 2013 20:30

Page 4 of 8
Get PyRx