This is a read-only mirror of pymolwiki.org

Difference between revisions of "SuperSym"

From PyMOL Wiki
Jump to navigation Jump to search
m (1 revision)
 
(10 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 +
{{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. Source code for all versions is available from [https://sourceforge.net/projects/supersym/ https://sourceforge.net/projects/supersym/], and the most recent code is available in regular text format from [[SuperSymSource]].
+
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
  
This plugin requires cctbx and numeric python (numpy).
+
'''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/ 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 17: Line 36:
 
==Installing SuperSym==
 
==Installing SuperSym==
  
To install SuperSym v1.1, download SuperSymPlugin v1.1.py from [https://sourceforge.net/projects/supersym/ https://sourceforge.net/projects/supersym/]. In PyMOL, go to:
+
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...
 
*Plugin > Manage Plugins > Install...
A file selector dialog will appear. Select SuperSymPlugin v1.1.py. PyMOL will direct you to restart, and upon doing so SuperSym will be accessible through the Plugin menu.
+
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, use the run command in PyMOL on SuperSymPlugin v1.1.py.
+
Please post any comments, complaints, bug fix requests, useful tricks, or cool adaptations of SuperSym here.
  
 
==The Menu==
 
==The Menu==
Line 38: 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 50: 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 16:19, 20 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