1 / 1

Abstract #########

Abstract #########

liza
Télécharger la présentation

Abstract #########

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Abstract ######### There are many freely available molecular visualization programs used by scientists to view proteins, macromolecules and substrates. Each of these software applications has its own benefits and areas of proficiency. However, each of these applications also has its own scripting language. For a scientist to utilize multiple molecular visualization applications, as is usually necessary in any project, they must learn each of those scripting languages. To unite these applications, it is possible to create script reading plugins, small applications that work with the molecular visualization software, capable of understanding one scripting language and converting it to execute the command in another. The first to be created is capable of reading scripts from RasMol and executing those commands’ equivalents in PyMOL. With the creation of converters between all the molecular visualization applications, using a single, universal scripting language, it will become not only possible, but simple, for scientists to learn one application and to be able to utilize the benefits of all. It is the ultimate goal of this project to create a single interface capable of working with all script-based molecular visualization applications, that can convert a script from any scripting language into the universal scripting language, and then run those scripts through a separate molecular visualization application, possibly even being able to fill in the gaps caused by differences in the capabilities of each molecular visualization application. This is the current goal of the Structural Biology Extensible Visualization Scripting Language project funded by NIGMS grant #1R15GM078077. ##------------View Options----------------## selectDict = {'wireframe': 'lines', 'cartoon': 'cartoon', 'dots': 'dots', 'cpk': 'spheres', 'spacefill': 'spheres', 'trace': 'ribbon', 'ribbon': 'ribbon'} firstword = p.split( ' ', 1 )[0].lower() try: if firstword in selectDict: #if the first word on the line is one of the supportable view options q = p + ' ' command = q.split( ' ', 1 )[1][:-1].lower() if command=='false' or command=='off': cmd.hide( selectDict[firstword], selected) print firstword + ' off complete' elif command=='true' or command=='on' or command=='': cmd.show( selectDict[firstword], selected) print firstword + ' on complete' else: print 'That function is not supported by PyMOL' except: print 'An error has occurred with your view command. Please check your spelling in your command, the selection on which this command was executed and that your command is supported by PyMOL.' 2 ConSCRIPT: A RasMol to PyMOL Script ConverterScott Mottarella, Corey Wischmeyer, Brett Hanson, Paul A. CraigRochester Institute of Technology sxm3428@rit.edu, cew4349@rit.edu, brh9771@rit.edu, pac8612@rit.edu 1 Introduction There are almost one hundred script based molecular visualization tools available today. They range in cost, complexity, and quality. What is concerning is that each program is more or less independent of all others. Two individuals using two different molecular visualization programs on the same project will not be able to compare their methods because most molecular visualization programs are unlike any others. Also, any single individual who wishes to use multiple programs must learn a separate and independent scripting language for each desired program. The SBEVSL project is trying to introduce a single scripting language usable in all molecular visualization programs that would solve these types of issues. The first step was the creation of ConSCRIPT, a RasMol to PyMOL script converter. This is the first script converter developed as part of the SBEVSL project and allows users to directly convert scripts from RasMol to PyMOL. This graphic (1, ABOVE) represents our goal with the SBEVSL project. Each scripting language (with only representatives of all possible languages shown here) are listed on the left as scripting out languages and again on the right as scripting in languages. Each line represents an individual plug-in that translates between one of the current scripting languages and the Structural Biology Extensible Visualization Scripting Language. In the center is SBEVSL which represents a culmination of all scripting languages. The ultimate goal is to allow any user to start at any scripting language, including SBEVSL, and to translate any conceivable script to any other scripting language. SBEVSL is currently in development. The sample of code (2, ABOVE) is pulled from ConSCRIPT, our first converter of the RasMol scripting language into PyMOL. We utilized the Python coding language to create this program because that was the language used to create PyMOL and made it easy to combine the molecular visualization program with our plug-in. However, Python is known for its ability to extend into other scripting languages and we hope to utilize it in further work on this project for other plug-ins. This sample code here demonstrates concisely how the problem of converting a scripting language was tackled. We used Pythons own dictionary classes to create relations between RasMol commands and PyMOL commands that were known to be equivalent. Then, we parsed through the given script to look for recognized commands from the RasMol command list and, using the previously created relations from RasMol to PyMOL, determined the PyMOL command equivalent to be performed. After each command, the parameters were handled in similar fashion (shown here are the on and off parameters of the view options). cmd.load( "C:\Documents and Settings\Scotthew.KYLE\Desktop\\1D66.pdb" ) cmd.rotate( 'x', 180 ) cmd.select( 'resn asp+glu+arg+lys+his+asn+thr+cys+gln+tyr+ser+gly+ala+leu+val+ile+met+trp+phe+pro and chain a' ) cmd.show( 'cartoon', 'sele' ) cmd.color( 'yellow', 'sele' ) cmd.select( 'All and chain b' ) cmd.color( 'purple', 'sele' ) cmd.show( 'dots', 'sele' ) cmd.hide( 'everything', 'all and not resn asp+glu+arg+lys+his+asn+thr+cys+gln+tyr+ser+gly+ala+leu+val+ile+met+trp+phe+pro' ) cmd.rotate( 'z', -90 ) cmd.select( 'id 1' ) cmd.color( 'green', 'sele' ) cmd.show( 'spheres', 'sele' ) load C:\Documents and Settings\Scotthew.KYLE\Desktop\1D66.pdb Select protein and :a cartoon color yellow select *:b color purple dots restrict protein rotate z 90 select atomno = 1 color green CPK 4 3 5 • RasMol Image • Decent quality • Limited 3D effects • Messy dots • RasMol Script • Reads like English • Easy to learn • Simple to execute • PyMOL Image • Clear image • Nice shadows and 3D effects • Clean depiction • (notice the dots) • PyMOL Image From a RasMol Script • Quality image of PyMOL • Simple script of RasMol • No differences caused by ConSCRIPT • PyMOL Script • If it looks like computer code, it is computer code • Difficult to read and understand • Must spell out the entire selection Conclusion ConSCRIPT is the first translator to be developed as part of the SBEVSL project. As shown here, it accurately converts given RasMol scripts into PyMOL scripts and is able to give the exact same output as any experienced RasMol user would expect, except with the higher quality images of PyMOL. The method for conversion is simple, creating a dictionary class object to relate every known RasMol command to its PyMOL command equivalent. From ConSCRIPT, with the development of SBEVSL, we will be able to change the code to get similar converters from RasMol into SBEVSL and from SBEVSL into PyMOL, providing the same exact function as ConSCRIPT, but allowing for many other scripting languages to be easily included. Our next project is to convert Jmol scripts into PyMOL and then PyMOL and RasMol scripts into Jmol. From there, we will move towards unifying all molecular visualization scripting languages, probably starting from most popular or most common. • Acknowledgements • NIGMS grant #1R15GM078077 • Dr. Paul A. Craig • Dr. Herbert J. Bernstein of Dowling College • Brett Hanson, Charlie Weston and Corey Wischmeyer • RIT College of Science The images above (3, 4 and 5) depict the exact same protein after the exact same changes have been made to it. Image 3 was created using PyMOL. One of the advantages of PyMOL is the complex math on which to program is based, which is most easily viewed in the 3D effect created by the program. This image is very clear, as is noticed in the dots where individual dots can be discerned amongst all the rest. Unfortunately, this image is the product of the PyMOL script directly to the right of the image (3). PyMOL scripts are Python code and can get very messy very quickly. Image 4 was created using RasMol. Compared to the nice image in Image 3, this depiction of 1D66 is not as clean, but it certainly would be acceptable in most cases. The advantage of RasMol is seen in the script that follows the image (4). This script reads almost like English and just about any scientist could read the script and understand what is happening. Image 5 was again created in PyMOL. Again we see the high quality of PyMOL’s algorithms. However, this image was created from the RasMol script following Image 4 using our tool, ConSCRIPT. 6

More Related