• PyRx 0.9.3 Release Announcement

    We are pleased to announce the release of PyRx 0.9.3. This version includes minor fixes as well as all the features/fixes listed below:

    • Implemented Inverse Virtual Screening for AutoDock and Vina. What this mean is that users can now select multiple Macromolecules as well as multiple Ligands and PyRx would run the docking of one or more Ligands against one or more Macromolecules.

    • It’s now possible to add multiple Macromolecules at once.
    • Users can now save docked ligand and macromolecule complex as pdb. Right-click on docked conformation under Analyze Results tab in AutoDock or Vina Wizard to access this option.

    • Added Parameter button to Run Vina page to enable users to enter exhaustiveness and num_modes (maximum number of binding modes to generate) parameters for Vina.

    vina-parameters

    • Made Open Babel table sortable.
    • Bug fix for making flexible residue to work for larger proteins.
    • Added support for Sun Grid Engine (SGE) when running docking jobs on a cluster.

    PyRx 0.9, 0.9.1 and 0.9.2 users, please use PyRx > Help > Check for Updates…  menu to update to this version. The list of changes for 0.9.2 version is available at

    PyRx 0.9.2 Release Announcement.

     

  • Book Chapter on PyRx in Chemical Biology – Methods and Protocols

    by

    in

    I’m excited to have a book chapter on PyRx published in a book from Springer Publishing titled “Chemical Biology – Methods and Protocols”. I’m very thankful to editors for the opportunity to publish this work and they did a great job in compiling and editing this book. See the Table of Contents that includes many interesting methods and protocols used in modern Chemical Biology. In particular, Small-Molecule Library Screening by Docking with PyRx describes utilization of this essential software tool for the field of chemical biology and highlights key considerations and strategies for performing molecular docking.

    Abstract

    Virtual molecular screening is used to dock small-molecule libraries to a macromolecule in order to find lead compounds with desired biological function. This in silico method is well known for its application in computer-aided drug design. This chapter describes how to perform small-molecule virtual screening by docking with PyRx, which is open-source software with an intuitive user interface that runs on all major operating systems (Linux, Windows, and Mac OS). Specific steps for using PyRx, as well as considerations for data preparation, docking, and data analysis, are also described.

  • Introduction to PyRx Wrokspace

    by

    in

    This is a brief introduction to PyRx workspace. It shows where PyRx stores different files and how to create a new workspace.

  • New Mac Installers Are Available for Downloads

    by

    in

    We are excited to have new Mac OS X installer available for download. PyRx sells have been good for the past two years, and we thank each and every customer. Your support is much appreciated. Your contributions is what makes it possible to create PyRx installers.

    We had 6,299 downloads in 2013 for the free version of PyRx hosted on SourceForge. The table below shows number of downloads broken down by operating system. SourceForge provides excellent tools for download statistics and this table was copied from here. Thank you all for using PyRx.

    Operating System Downloads
    Windows 4,050
    Linux 1,458
    Macintosh 641
    Unknown 144
    Android 6
    Total 6,299
  • PyRx 0.9.2 Release Announcement

    We are pleased to announce the release of PyRx 0.9.2. One of the main new feature implemented in PyRx 0.9.2 is an option to execute AutoDock 4 or Vina using remote execution mode as shown in the image below. This is a great feature for users who want to run docking on a remote cluster without using CPU cycles of their Desktops.

    PyRx 0.9 and 0.9.1 users, please use PyRx > Help > Check for Updates…  menu to update to this version. The following are new features and bug fixes implemented in 0.9.2 release:

    [r216] Resource/Workspace Folder is now at user.home + os.sep + ‘.PyRx_workspace’.
    [r196] Enabled AutoDock remote execution mode thanks Autodock 4.2.3 web service running at http://nbcr-222.ucsd.edu/opal2.
    [r194] Enabled Vina remote execution mode thanks Vina 1.1.2 web service running at http://nbcr-222.ucsd.edu/opal2.
    [r191] Removed Radicals using SetSpinMultiplicity(0) in ConvertToOB. Otherwise sdf files created by PyRx had “M RAD…” line and we couldn’t read these sdf files back into PyRx. Thanks to Scott A Reiling for reporting this bug.
    [r188] Set stereo=True on for Windows only. Otherwise it crashes on Linux.
    [r187] Changed Macromolecule names to lower case to handle Windows’ case insensitive file systems.
    [r185] Help -> About dialog now shows update date, if applicable.
    [r183] Fixed an issue when opening Vina output files via File -> “Load Molecule” menu.
    [r176] Added ‘–out’ option for Vina to save output files in the Macromolecules folder.
    [r175] Fixed an issue with ligand_types for flexible residues.
    [r174] When selecting a macromolecule, ignore “*_out.pdqt” files to insure proper selection.
    [r173] Made navigation between different tabs in AutoDock Wizard more stable.

    See also: PyRx 0.9.1 Release Announcement.

  • How to Dock with Flexible Residues

    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.

  • PyRx 0.9.1 Release Announcement

    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.

  • PyRx 0.9 Release Announcement

    by

    in

    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).

    http://pyrx.sourceforge.net/images/104-hbonds.png

    [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.

    http://pyrx.sourceforge.net/images/103_grid_box.png

    [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:

    http://pyrx.sourceforge.net/images/Screenshot-Make-Macromolecule-HETATM.png

    [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.

    http://pyrx.sourceforge.net/images/PyRx-09-ribbons.png

    [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

  • Rotating Mayavi Camera

    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.
        frame.mayaviEngine.scene.render()
          
    def stop():
        frame.timer.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.