Difference between revisions of "SuperSym"

From PyMOLWiki
Jump to navigation Jump to search
(Infobox)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
SuperSym is a PyMOL plugin providing a large number of tools for visualization of space groups; unit cells; and symmetry axes, operators, and partners. Source code for version 1.0 is available from [https://sourceforge.net/projects/supersym/ https://sourceforge.net/projects/supersym/] or [[SuperSymSource]].
+
{{Infobox script-repo
 +
|type      = plugin
 +
|filename  = plugins/SuperSymPlugin.py
 +
|author    = [[User:Srballard|Stuart Ballard]]
 +
|license  =
 +
}}
  
 
[[File:SuperSymExample.png|300px|thumb|right|Symmetry partners for 1hpv showing 6-1 screw axis]]
 
[[File:SuperSymExample.png|300px|thumb|right|Symmetry partners for 1hpv showing 6-1 screw axis]]
 
[[File:SuperSymExample2.png|300px|thumb|right|Full cell of symmetry partners with symmetry axes displayed]]
 
[[File:SuperSymExample2.png|300px|thumb|right|Full cell of symmetry partners with symmetry axes displayed]]
 +
SuperSym is a PyMOL plugin providing a large number of tools for visualization of space groups; unit cells; and symmetry axes, operators, and partners.
  
==Dependencies, Bugs, and Acknowledgments==
+
The original source code is available from https://sourceforge.net/projects/supersym/
  
This plugin has only been tested for PyMOL version 1.2b6pre and 1.2r1.
+
== Dependencies ==
  
Pre-v1.0 PyMOL may not display objects created by this plugin properly, even if the pse file displays normally in other versions. Use at your own risk.
+
* [[CCTBX|cctbx]]
 +
* numpy
  
SuperSym has failed to load properly in OSX 10.6 (Snow Leopard), but functions normally in OSX 10.5. Bug fixing is underway.
+
'''PyMOL, cctbx and numpy must all be compiled with the same Python distribution!'''
 +
See [[CCTBX]].
  
This plugin requires cctbx and numeric python.
+
This plugin was developed in 2010 for PyMOL version 1.2r1 and has not been updated since.
 +
 
 +
== Bugs ==
 +
 
 +
Symmetry axes are not defined for all space groups, and do not display properly for some.
 +
 
 +
== Acknowledgments ==
 +
 
 +
Primary coding and development was done by Stuart Ballard. All comments, questions, and issues should be directed to him at srballard@wisc.edu.
  
 
Code for unit cell and symmetry axis building is borrowed from scripts created by Robert Campbell and Ralf W. Grosse-Kunstleve, available at [http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/ http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/]. Some of this code has been modified for use in SuperSym.
 
Code for unit cell and symmetry axis building is borrowed from scripts created by Robert Campbell and Ralf W. Grosse-Kunstleve, available at [http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/ http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/]. Some of this code has been modified for use in SuperSym.
Line 20: Line 36:
 
==Installing SuperSym==
 
==Installing SuperSym==
  
To install SuperSym, first copy the text of source files to corresponding .py files or download them from SourceForge. Place SuperSymMenu.py in pymol/modules/pmg_tk/startup, and all other files in pymol/modules. This will make all of SuperSym's functions available through a drop-down menu in the PyMOL GUI
+
To install SuperSym v1.2, download SuperSymPlugin12.py from [https://sourceforge.net/projects/supersym/ https://sourceforge.net/projects/supersym/]. In PyMOL, go to:
 +
*Plugin > Manage Plugins > Install...
 +
A file selector dialog will appear. Select SuperSymPlugin12.py. PyMOL will direct you to restart, and upon doing so SuperSym will be accessible through the Plugin menu.
 +
 
 +
To use functions of SuperSym directly, without creating a drop-down menu, use the run command in PyMOL on SuperSymPlugin12.py.
 +
 
 +
Note: previous errors resulting from incorrect naming of the plugin file have been resolved in v1.2.
 +
 
 +
==Feedback==
  
To use functions of SuperSym directly, without creating a drop-down menu, ignore SuperSymMenu.py and use the run command on the other files in PyMOL as you would for any other script.
+
Please post any comments, complaints, bug fix requests, useful tricks, or cool adaptations of SuperSym here.
  
 
==The Menu==
 
==The Menu==
Line 39: Line 63:
 
**'''3x3x3 Block'''
 
**'''3x3x3 Block'''
 
***Generates 27 sets of symmetry partners for a given object, filling lattice positions [-1,-1,-1] through [1,1,1]. This option may take a long time to execute
 
***Generates 27 sets of symmetry partners for a given object, filling lattice positions [-1,-1,-1] through [1,1,1]. This option may take a long time to execute
 +
**'''By Partner'''
 +
***Generates only those symmetry partners which the user specifies by their defining symmetry operators
 
*'''Coloring >'''
 
*'''Coloring >'''
 
**'''Default Rainbow'''
 
**'''Default Rainbow'''
Line 51: Line 77:
 
**'''Ribbon'''
 
**'''Ribbon'''
 
**Convenience function to display symmetry partners as ribbons
 
**Convenience function to display symmetry partners as ribbons
 +
**'''Cartoon'''
 +
***Convenience function to display symmetry partners as cartoons
 
**'''Sphere Surface (best for printing)'''
 
**'''Sphere Surface (best for printing)'''
 
***Uses the findSurfaceResidues function and shows surface residues as spheres. If printing, this option saves at least 60% of materials relative to regular surfaces, with minimal loss in resolution
 
***Uses the findSurfaceResidues function and shows surface residues as spheres. If printing, this option saves at least 60% of materials relative to regular surfaces, with minimal loss in resolution

Latest revision as of 05:41, 1 July 2020

Type PyMOL Plugin
Download plugins/SuperSymPlugin.py
Author(s) Stuart Ballard
License
This code has been put under version control in the project Pymol-script-repo
Symmetry partners for 1hpv showing 6-1 screw axis
Full cell of symmetry partners with symmetry axes displayed

SuperSym is a PyMOL plugin providing a large number of tools for visualization of space groups; unit cells; and symmetry axes, operators, and partners.

The original source code is available from https://sourceforge.net/projects/supersym/

Dependencies

PyMOL, cctbx and numpy must all be compiled with the same Python distribution! See CCTBX.

This plugin was developed in 2010 for PyMOL version 1.2r1 and has not been updated since.

Bugs

Symmetry axes are not defined for all space groups, and do not display properly for some.

Acknowledgments

Primary coding and development was done by Stuart Ballard. All comments, questions, and issues should be directed to him at srballard@wisc.edu.

Code for unit cell and symmetry axis building is borrowed from scripts created by Robert Campbell and Ralf W. Grosse-Kunstleve, available at http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/. Some of this code has been modified for use in SuperSym.

FindSurfaceResidues is utilized for some of SuperSym's graphics generation, with some modifications.

Installing SuperSym

To install SuperSym v1.2, download SuperSymPlugin12.py from https://sourceforge.net/projects/supersym/. In PyMOL, go to:

  • Plugin > Manage Plugins > Install...

A file selector dialog will appear. Select SuperSymPlugin12.py. PyMOL will direct you to restart, and upon doing so SuperSym will be accessible through the Plugin menu.

To use functions of SuperSym directly, without creating a drop-down menu, use the run command in PyMOL on SuperSymPlugin12.py.

Note: previous errors resulting from incorrect naming of the plugin file have been resolved in v1.2.

Feedback

Please post any comments, complaints, bug fix requests, useful tricks, or cool adaptations of SuperSym here.

The Menu

  • Default Symmetry Partner Set
    • See Build Symmetry Partners > Cell [0,0,0] (default)
  • Draw Unit Cell
    • Creates a cgo object with unit cell axes as cylinders. This functions similarly to show cell, but the cell axes are cylinders instead of lines, allowing for printing.
  • Build Symmetry Partners >
    • All options in this submenu generate sets of symmetry partners
    • Cell [0,0,0] (default)
      • Generates a suite of symmetry partners for a given object for the default unit cell, which is lattice position [0,0,0]
    • Cell [x,y,z] (custom)
      • Generates a suite of symmetry partners for a given object for a lattice position which you specify
    • 2x2x2 Block
      • Generates 8 sets of symmetry partners for a given object, filling lattice positions [0,0,0] through [1,1,1]
    • 3x3x3 Block
      • Generates 27 sets of symmetry partners for a given object, filling lattice positions [-1,-1,-1] through [1,1,1]. This option may take a long time to execute
    • By Partner
      • Generates only those symmetry partners which the user specifies by their defining symmetry operators
  • Coloring >
    • Default Rainbow
      • Colors all symmetry objects with a specified by their symmetry operations automatically
    • Select color for each operation
      • Select symmetry partners to color by their defining symmetry operation and select the color for each
    • Select one color for custom set of operations
      • Select a set of symmetry partners defined by symmetry operations and select one color for all of them
  • Graphics >
    • Lines
      • Convenience function to display symmetry partners as lines
    • Ribbon
    • Convenience function to display symmetry partners as ribbons
    • Cartoon
      • Convenience function to display symmetry partners as cartoons
    • Sphere Surface (best for printing)
      • Uses the findSurfaceResidues function and shows surface residues as spheres. If printing, this option saves at least 60% of materials relative to regular surfaces, with minimal loss in resolution
    • Surface (high load render)
      • Displays symmetry partners as surfaces. This option may take a very long time to execute
  • Symmetry Axes >
    • Build Axes
      • Builds all symmetry axes for the given object. This functionality will be customizable and extended in future versions
  • Move symmetry partners
    • Merely displays instructions for using built in hotkeys to move symmetry partners
  • About
    • Developer info
  • Help
    • Reference to this page