Home
VMD User's Guide - Krebber
Contents
1. 159 12 4 MIME types se eo ey She Bae yen A gee e k ao a Ach EO Reg ate E 159 124 2 Setting up your Maillard aa ee 160 12 4 3 Example Sesi n EE ee Bos Re BS 160 Index 161 List of Figures 2 1 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 10 4 11 4 12 4 13 4 14 5 1 5 2 11 1 11 2 Sample VMD session displaying myoglobin 2 020004 15 The Man TORTS eas ole A the sion Gta a a E a 30 The Main form animation controls e 32 The Molecule File Browser form 2 0 0 0 0 a 33 The Display ment x S S nn daa Ra ES a a a ee ee ee a 36 Relationship between screen height SCRHEIGHT screen distance to origin SCRDIST andthe Viewer ln A e A AAA ai Ae e 38 The Graphics form in Draw Style mode 39 The Graphics form in Selections mode ooa 40 The Labels Torni ura ts Et e eh es elk ey o a B ete DA x 41 The Color forms gt Z te a ve ho A A he Rote De E R TT a 44 The Material Form i ssa dr a a Bh ge eB 45 The Render form ss so 54 2204400542 4 ove bane be ee aed eee 8 46 The Tool Tormi eae an Oe ee BU WE ee Oe i ea AE Ee RS eS 47 The Sequence form aoaaa ee 51 The RamaPlot Window aoaaa ee ee 53 RGB color scale the three plots shows the contributions of each color and the resulting colors are on the bottom aoao a 66 The shift to the red component of the RGB scale caused by the value of min 67 RMS Calculation Tk menu neaga
2. When the mouse is in rotate mode holding the left mouse button down and moving the mouse rotates the molecules about axes parallel to the screen in a virtual trackball behavior To get a rotation around the axes coming out of the screen the z axis hold the middle button down and move the mouse left or right You can leave molecules rotating without continuously moving the mouse Start the molecule moving with the mouse as above then release the mouse button before you stop moving the mouse With some practice it becomes easy to impart a slight spin on the molecule or whirl it about madly To stop the rotation either press and hold the left mouse button down until the molecule stops moving or select Stop Rotation in the Mouse menu Also pressing the rotation hot key r or any of the other mouse mode hot keys causes rotation to stop Translate Mode hot key t When the mouse is in translate mode holding the left button down allows you to move the molecules parallel to the screen plane left right up and down To move the molecule towards or away from you hold the middle button down and move the mouse right or left respectively Scale Mode hot key s Pressing either the left or middle button down and moving to the right enlarges the molecules and moving the mouse left shrinks them The difference is that the middle button scales faster than the left button Scaling can also be accomplished with the m
3. will create two reps each with a style of VDW 125 e delrep molid rep Delete the specified rep from the given molecule e modrep molid rep style sel color material Modify the style atom selection color and or material for the specified molecule and representation Any combination of the last four arguments may be specified using positional or keyword arguments Returns SUCCESS gt gt gt modrep 0 0 color name Color the first rep of molecule 0 by name gt gt gt modrep 0 2 selection name CA material Transparent For the third represen tation of molecule 0 change the atom selection to name CA and the material to Trans parent e get_style molid rep e get selection molid rep e get_color molid rep e get material molid rep Returns the representation style selection color or material respectively for the given representation of the given molecule e get_repname molid rep e repindex molid name These two commands let you assign names to reps and access them by that name The name returned by get_repname is guaranteed to be unique for all reps in the molecule and will stay with the rep it was assigned to even when the order of the reps changes Use repindex to find the repid of the rep with the given name 1 is returned if no rep with that name exists e get_autoupdate molid rep e set_autoupdate molid rep onoff These two commands let you turn on
4. 05 segname A name 05 Quotes may also be used to get around a reserved selection word like x The selection command segname x will give an error because x is another keyword Instead use segname x There is an escape mechanism for including single quotes inside a single quoted string which uses a backslash CV before the single quote This allows unusual names like C to be quoted as C X segname x lt error conflicts with the x keyword segname x name 05 Also double quotes discussed in the next section can be used as in C or C 5 3 5 Double Quotes and Regular Expressions Double quotes around a string are used to specify a regular expression search compatible with Perl 5 005 using the Perl compatible regular expressions library written by Philip Hazel If you don t know how to use them try consulting the man pages for ed egrep vi or regex If not read the Perl docs or get any one of a number of books including the O Reilly and Associates Sed and Awk book The following examples show just a few ways that regular expressions can be used within VMD Selection of all atoms with a name starting with C name C Segment names containing a number segname 0 9 Multiple terms can be provided on the list of matching keywords This example selects residues starting with an A the glycine residues and residues ending with a T As with a string a regular expressi
5. After some of the color definitions have been changed and you want to restore the default definitions the following procedure might be useful proc revert_colors display update off foreach color colorinfo colors color change rgb color display update on 11 5 4 Coloring Trick Override a Coloring Category There is currently no user defined coloring method This makes it hard to color residues by property X if X is not already defined in VMD It is possible to get around this limitation somewhat by overriding one of the values in the PDB or PSF For instance suppose you wanted to color the 153 atoms by the distance of the atom from a given point One way is to compute the distance and put it in either the occupancy or beta field of the PDB file Then when the molecule is colored by occupancy it is actually coloring by distance You could also override say the segment name field or even the residue name Don t override the atom name unless you are really desperate as VMD uses it to determine which residues are proteins and nucleic acids and hence which residues can be drawn as a tube or ribbon 154 Chapter 12 Customizing VMD Sessions There are a number of ways to change the behavior of VMD from the default settings both in how the program starts up and in how the program behaves during a session This Chapter describes the data files command line options and environment variables which are used to cust
6. and scale by the inverse of the number of atoms if mass 0 error center_of_mass total mass is zero The 1 0 can t be 1 since otherwise integer division is done return vecscale expr 1 0 mass com vmd gt center_of_mass sel Info 0 912778 4 61792 2 78021 MILI 14 The opposite of get is set A few of the keywords most notably x y and z can be set to new values This allows for instance atom coordinates to be changed the occupancy values to be updated or user forces to be added Right now the only things that can be changed are the coordinates the beta and occupancy values and user forces set sel atomselect top index 5 sel get x y z 1 450000 0 000000 0 000000 set set x y z 111 6 0 O Note that just as the get option returned a list of lists the set option needs a list of lists which is why the extra set of curly braces were need Again this must be a list of size n containing elements which are a list of size 1 The exeception is if n is 1 the list is duplicated enough times so there is one element for each atom get two atoms and set their coordinates set sel atomselect top index 6 7 sel set x y z 5 0 0 47 6 5 4 3 2 L 143 In this case the atom with index 6 gets its x y z values set to 5 0 0 and the atom with index 7 has its coordinates changed to 7 6 5 4 3 2 It is possible to move atoms this way by getting the coordinates chan
7. which asks the object to return the number of atoms in the selection These derived object functions the ones with names like atomselect3 take many options as described in section 8 3 2 For instance given the selection vmd gt set sel atomselect top resid 4 atomselect4 you can get the atom names for each of the atoms in the selection with vmd gt sel get name N H CA CB C 0 which remember is the same as vmd gt atomselect4 get name Multiple attributes can be requested by submitting a list so if you want to see which atoms are on the backbone vmd gt sel get name backbone N 1 H O CA 1 CB O C 1 0 1 and the atom coordinates with vmd gt sel get x y z 0 710000 4 211000 1 093000 0 026000 3 700000 0 697000 0 541000 4 841000 2 388000 0 809000 4 462000 2 976000 1 591000 4 371000 3 381000 2 212000 5 167000 4 085000 It is very important to note that the information returned by one of these commands is a list of lists Specifically it is a list of size n where each element is itself a list of size 1 where n is the number of atoms in the selection and 7 is the number of attributes requested One quick function you can build with the coordinates is a method to calculate the geometrical center not quite the center of mass that s a bit harder This also uses some of the vector commands discussed in the section about vectors and matrices 10 but you should be able to
8. 3 4 5 6 4 5 6 7 vmd gt set mat2 1 0 0 0 0 0 7071 0 7071 0 0 0 7071 0 7071 O 0 0 O 1 vmd gt set mat3 0 866025 O O O 0 1 0 O 0 5 O 0 866025 O 0 0 O 1 vmd gt transmult mati transidentity Info 1 0 2 0 3 0 4 0 2 0 3 0 4 0 5 0 3 0 4 0 5 0 6 0 14 0 5 0 6 0 7 0 vmd gt transmult mati mat2 mat3 Info 0 512475 3 5355 0 612366 4 0 0 7428 0 7071 4 28656 5 0 0 58387 0 7071 5 5113 6 0 7 35315 0 7071 6 73603 7 0 e transaxis lt x y z gt amount deg rad pi Returns the transformation matrix needed to rotate around the specified axis by a given amount By default the amount is specified in degrees though it can also be given in radians or factors of pi Examples vmd gt transaxis x 90 Info 1 0 0 0 0 0 0 0 0 0 3 67321e 06 1 0 0 0 0 0 1 0 3 67321e 06 0 0 0 0 0 0 0 0 1 0 vmd gt transaxis y 0 25 pi Info 0 707107 0 0 0 707107 0 0 0 0 1 0 0 0 0 0 0 707107 0 0 0 707107 0 0 0 0 0 0 0 0 1 0 vmd gt transaxis z 3 1415927 rad Info 1 0 2 65359e 06 0 0 0 0 2 65359e 06 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 e transvec v Returns the transformation matrix needed to bring the x axis along the v vector This matrix is not unique since a final rotation is allowed around the vector The matrix is made from a rotation around y then one about z 134 Examples vmd gt transvec 0 1 0 Info 3 67321e 06 1 0 0 0 0 0 1 0 3 67321e 06 0 0
9. Info 1 Fragments 1 Protein 1 Nucleic 0 There are several types of fragments Protein and nucleic fragments are homogeneous either all proteins or all nucleic acids However it is possible for a protein to be connected to a nucleic acid or some other non protein When this occurs a warning message is printed as in Warning 1 Unusual bond between residues 1 and 2 These warnings will occur with terminal amino acids zinc fingers myristolated residues and poorly defined structures 3 3 Babel interface VMD can use the program Babel if installed to translate a wide variety of different molecular data files into the PDB format Not all of these have been tested for use with VMD so your results may vary VMD only uses Babel to read files and does not allow the use of Babel to save files to other formats The VMDBABELBIN environment variable 812 2 is used to specify the absolute path to the the Babel executable including the executable name For more information about Babel see http www eyesopen com babel html VMD currently supports version 1 6 of Babel 21 3 4 Raster3D file format In addition to the molecular file formats VMD can read the input file for Raster3D Raster3D converts an input file into a shaded raster image for use in making high quality pictures It is often used with MolScript The ability to read Raster3D allows users to view MolScript files in 3D and incorporate special images into the display without h
10. There are two ways of placing the images In wall eyed stereo the left eye s image is located on the left side of the display and the right eye s image is on the right This is the standard method for displaying stereo images in publications as it works well when the display in this case the piece of paper is close to the eyes It is called wall eyed because your eyes are directed the same way they would be if looking at a distant wall In VMD this method is referred to as SideBySide stereo In cross eyed stereo the left eye s image is located on the right side of the display and the right eye s image is on the left and hence the name cross eyed This is mostly used for distant displays such as overhead projections as it is much easier to cross eyes at that range than use the wall eyed method you are already looking at the wall In VMD this method is referred to as CrossEyes stereo 6 3 2 DTI Side by side Stereo This stereo mode is the same as the regular side by side stereo mode except that the aspect ratio of the displayed image is adjusted to work correctly on DTI stereo flat panel displays 6 3 3 Scanline Interleaved Stereo Scanline interleaved stereo also referred to as line blanking stereo works by interleaving the left and right eye views every other scanline in the display window The stereo hardware then decodes the interlaced signal and either separates them into two separate displays or blanks the ev
11. VMD User s Guide P Grayson J Gullingsrud B Isralewitz D Norris J Stone Version 1 8 December 9 2002 Theoretical Biophysics Group University of Illinois and Beckman Institute 405 N Mathews Urbana IL 61801 http www ks uiuc edu Research vmd Description The VMD User s Guide describes how to run and use the molecular visualization and analysis program VMD This guide documents the user interfaces displaying and grapically manipulating molecules and describes how to use the scripting interfaces for analysis and to customize the behavior of VMD http www ks uiuc edu Contents Introduction 1 1 For information on our other software o e 1 2 Contacting the authors 2 aaa ee 1 3 Registering VMD is s 5 2 344 8 ee gee eB eb ee ea ee Dee eee 1 4 Citation Referenc p o ser a ces 48 Sneed ee Ree ab E 1 5 Acknowledgments 2 2 a 1 6 Copyright and Disclaimer Notices 2 2 0 0 0 e Tutorials 2 1 Rapid Introduction to VMD 200 000 a 2 2 Viewing a molecule Myoglobin 0 0 0 0 e 2 3 Rendering an Image 22 4 8 622 45 0S bade Ee ee ee ee a 24 A Quick Animations E A Gh knew iach a ee et A ed Pot ne ea Pa ee H 2 5 An Introduction to Atom Selection 2 2 0 00 00 ee ee 2 6 Comparing Two Structures ooo ee 2 7 Some Nice Represenations e 2 87 Saving your work puras an hte eink ios ed a od ede Eee ne Be a Loading A Molecule 3 1 Notes on common mo
12. VMD allows users to apply a materials property to the molecular models they create The material determines such things as how transparent an object is or how shiny or how large the specular reflections are Making objects semi transparent is a potentially powerful means of viewing multiple layers of the molecule simultaneously Imagine a protein on the surface of and extending part way into a membrane One way to visualize the extent of the penetration is to represent the lipids as Bonds and make them transparent That will show the membrane without completely obstructing the view of the protein VMD maintains a database of materials which can be applied to any representation in the system much like the database for colors There are two default materials Opaque and Trans parent which cannot be modified Each material is defined by five settings as follows material is e Opacity a number 0 0 to 1 0 describing the transparency 1 is solid 0 is transparent By default transparent objects are drawn with Opacity set to 3 e Ambient a value describing how strongly the material reflects ambient light Ambient light provides a uniform illumination of objects with a background lighting of the object color e Diffuse Diffuse reflections are independent of the viewing direction but depend on the direction of the light source with respect to the surface of the displayed object e Specular a number describing the intensi
13. 42 e Name the name of the atom as it appeared in the coordinate file e Type the type of the atom as determined by an internal VMD match up of the given name to a likely atom type associated with that name e Chain if the coordinate file contained data in the Chain field for this atom then that data is given here e Segname the name of the segment to which this atom belongs e Index the internal VMD index used to identify the atom this is useful for specifying selection syntax to generate different representation styles for particular atoms For PDB files Index corresponds to the atom number listed in the file minus 1 so that the index starts with 0 e Value the calculated length of bonds angles or geometric measurements performed by the selected label Plotting a label s value Tf the label has a numeric value such as a bond length geometry monitor it is easy to graph the change of the value over time for multiple frames in an animation The Graph button creates a temporary file for use by a graphing program then optionally starts such a program to display the data Each line of the file contains the frame number starting at zero and expressed as a floating point number followed by the value of the label for that frame Once the file is created the text in Graph Command is executed to plot the data By default the text is xmgrace s where the s is automatically replaced with the appropriate temporary fil
14. 5 Molecular Drawing Methods 55 Bul Rendering methods coa is AE Re Re A Bo RR gy adh Oona AER oes 55 De A ER Nee ee te 55 Bil 2 Bonds miN A A A A ae Se A Se Ai 56 Eks DynamicBonds 2 3 Dm A Rag Rae E 57 pkt HBondg sis a ee See a ea ew 57 SLG POMS se Ye ek poe eB oe EAEE Ga eo eS a es 57 FRO VDM E oS fe ne A he ae oe ey Hoe eee Set ae a Sy Hot 57 UL O S te Shee peck Sy peep tte Se TTT eh g 58 AR ECOLE We ses Yel o de ah Gee oe Howe ee Boe eee Gide le oo P aroa ea 8 58 gho TDG g 2 ca chou e ee A Sl ae EP alee sd 58 Dl LOS e 2 ho Rebeka nea AR ee a ee ie oe he See le ees 58 DEL Ribbon 0 a te amp ae Boel Aaa Se ee ee eae Beal 58 NA Cartoon 2284S velar od a Be A a ee a eB Se echo se ee eS ee A 59 E at a eh i Ghee R 59 DELTA MISMA ae Gow a ES Ge Bee A aE Sow Qh S EO es 60 5 1 15 VolumeSlice lt oa sot a Medd Ste Pk a Duke Ss 61 9 1 10 UISOSUELACE Seon eek hed dP ed Mo Begin nk ele A Sa ce ode Bagel i 61 OL dl Dotted a a POSE aed AE ean ee he Sh gai fo ENDAR 61 o TAS SOlvent 2x yon Aono hea eh a hl Aa aes aoe Peg Tae el ph Pad poe eee 61 E A ANA O 62 52 Coloring Methods tai Bahk A Pea ot ees 62 5 2 1 Color categories s soso s a eae a a ee ee 62 5 2 2 Coloring Methods 0 000 ee ee 63 5 2 3 Coloring by color categories 2 63 0 24 t Color scales elt thse BAe one ask sae Be tie Bemis ee Mae whe Been Gs SR a ets 64 5 2 5 EMaterals to tada a a e hee De a Da a e 65 5 3 Selection Methods e en
15. Figure 4 13 The Sequence form sequence list in this form Color coded structure and B factor information are displayed for each residue Sequence information The Sequence form contains a vertical listing of the residue sequence of a loaded protein molecule The Molecule pop up menu control chooses which molecule to display the sequence of the current top molecule is displayed the first time the Sequence form is opened The name and molecule number of the sequence displayed is shown in the title frame of the Sequence form For each residue displayed the form lists residue number residue name code and chain letter If no chain is specified chain letter is set to X To the right of this are two color coded columns B value and struct B value shows the contents of the B value temperature factor field The struct field shows secondary structure select Help Structure Codes from the form menu or see Table 4 5 for an explanation of the single letter codes in the color key Code Description T Turn Extended conformation Isolated bridge Alpha helix 3 10 helix Pi helix Coil QHA Tw EF Table 4 5 Description of secondary structure codes in the Sequence form Selecting residues from the Sequence form listing Click anywhere in the vertical listing to highlight one residue Click and drag to highlight multiple residues shift click to add a single residue to the current selec
16. GRO and G96 files contain structure information including atoms residue and segment data and one coordinate set CRD DCD TRR and XTC files contain only coordinate data timesteps It should be noted that while PDB GRO and G96 files were designed to contain only one coordinate set multiple files can be concatenated into one larger file to create a makeshift trajectory file which can be loaded by VMD When VMD loads a file it requires information about atom names and coordinates and tries to fill in the rest Since the PDB file contains all this information it does not need to be loaded with any other data files However the PDB file doesn t contain the atom types masses and charges so these are guessed A PSF file does not contain coordinate information so it must be loaded along with a PDB or DCD file If a PDB and PSF are given there is no missing data and VMD makes no assumptions If a PSF and DCD are given then only the chain identifier and occupancy and beta values are missing so they are given a default value A PARM file is similar to a PSF in that it too contains no coordinate information It must be loaded along with a CRD trajectory file If a PARM and CRD file are loaded together then only the segname and chain ID for the atoms are 20 left blank A CRD or DCD file can be specified along with the PDB in which case the PDB file will be read as normal and then coordinate sets are read from the DCD or CRD until the end of the fil
17. There are several different tools each of which can be used with any of the input devices e The Grab Tool mimics a pair of tweezers and can be used to move molecules around on the screen without any keyboard or mouse commands Pressing a button connects the 3d cursor to the nearest molecule Then moving or rotating the tracker will cause the molecule to move or rotate around on the screen e The Rotate Tool is a tool for precisely rotating molecules with haptic devices When a button is pressed and released the cursor is again connected to the molecule With this tool however the center of the molecule is fixed and the end of the haptic pointer is forced to lie on the surface of a sphere about this center Moving the device around the surface of the sphere rotates the molecule and another button click releases the molecule There are detentes like the clicks commonly felt in a 2d dial on the surface of the sphere arranged so that the user can rotate the molecule to precise 90 degree points If the user holds down the button for a while initially he can feel the sphere and the detentes but do not affect the molecule This preview mode allows the user to find a good point from which to start the rotation e The Joystick Tool is the three dimensional equivalent of a Joystick for haptic devices Pressing the button creates a virtual spring holding the device to its current location If it is pushed away from this po
18. VICIO Aa A A A a as A ta 108 SI O A a Mech AED ae A a E 108 83 00 AN 108 sd Feroa backs ni cs a da da eh Be ee ar ls BS 108 Python Text Interface 114 9 1 Using the Python interpreter within VMD 0084 114 9 2 Python modules within VMD 2 2 e 114 9 3 Atom selections in Python aoaaa 115 9 3 1 An atom selection example 000 ee ee 116 9 3 2 Changing the selection and the frame 117 9 3 3 Combining atom selections o 118 94 Pythoncallbacks nai a Sie Oe ew ee a A A E nA 118 9 4 1 Using Tkinter menus in VMMD e 119 9 5 Controlling VMD from Python 0 0 00 0 pe 119 gD L AMM a S ve oe Oe eet aed Se aS eae eh R ea R Ge ee 119 9 D2 LAOS snr 28S SAG HG a So A AA hate eo Beato ale AOE Re a 120 E A AS A E A RAS lh rig he E 120 o OE A A E R 121 9 030 AGR E R a E ag e 121 DO IMA A a oe ns a A Pe De as 122 0 50 ADE ta A A Boe Pas he Ec Re A Soe 123 OO miaterial oc 9 R hon Soon ee En R ie Ben ae coe a 124 R S m lecule ia acd ae ea a en a al lala aia da l a 124 DOLO molrep coc R ea a a a one A aed we T 125 ONG ls render se Z JE xe A eS ee T Hee BEE ee TR air Be at ee a MOE 126 Oi MUTANS sec foes SN 126 9 5 13 viMndnlimpy O 2 Pal gl be See ee Bee 127 9 6 High level Python Interface 0 0 000 a 128 9 61 Mol culesa sco aie Hs ch a oe ee list We de le ow he ae kak 4 128 9 6 2 MoleculeRep sca Gua ee A ee Ba Bee al BA ee ee BS 129 9 6
19. alpha beta float Y beta gamma float Y gamma a float Y ja b float Y b C float Y e Table 8 3 molinfo set get keywords 112 Table 8 4 Description of Tcl callback variables in VMD When called Name New value The molecule with id molid changed animtion frames New molecule created with id molid Molecule with id molid deleted Any VMD command executed Bond angle or dihedral label added Atom picked Atom picked Pointer moved Pointer moved Pointer moved Atom picked Coordinate file loaded IMD coordinate set received vmd_frame molid vmd_initialize_structure molid vmd_initialize_structure molid vmd_logfile vmd_pick_value vmd_pick_mol vmd_pick_atom vmd_pick_client vmd_pick_mol_silent vmd_pick_atom_silent vmd_pick_shift_state vmd_trajectory_read molid vmd_timestep molid new animation frame 1 0 Tcl text equivalent of command Value of geometry la bel id of picked molecule id of picked atom name of pointer id of nearby mol id of nearby atom 1 if shift key down dur ing pick 0 otherwise Name of coordinate file frame containing new coordinates 113 Chapter 9 Python Text Interface VMD 1 6 and later contain an embedded fully functional Python interpreter The interpreter acts just like the Python command line you can import your own modules and run them from with the text console of VMD In addition VMD provide
20. as they do not know when to delete the temporary file containing the molecule or other data The chemical2vmd script starts VMD with the e command line option which runs the saved VMD script or molecule file It is also possible to install the previous script in the global mailcap file to make it accessible to everyone You will have to consult the documentation for your web browser s to find out how 12 4 3 Example sites Some web sites that send chemical pdb types are the Protein Data Bank at http www rcsb org and Molecules R US at http www nih gov htbin pdb 160 Index vmdrc 86 vmdsensors 47 webhelper 160 mailcap 160 vmdrc 26 158 vmd rc 158 ACTC 12 AMBER files 20 33 analysis 52 angles 42 animate command 87 110 form 32 Python module 119 animation 16 appending 33 delete 31 87 88 goto end 88 goto start 88 hot keys 29 jump 32 88 movie 84 play 87 read 33 88 smoothing 41 speed 32 88 step 32 style 88 loop 32 once 32 rock 32 timesteps 33 write 31 88 animationduplicate frame 87 antialiasing 36 93 atom changing properties 143 161 coordinates 106 107 changing 18 143 min and max 145 info 88 140 name lists 40 picking 17 selection 15 16 55 66 88 140 changing properties 116 comparison 71 default 102 examples 17 66 keywords 40 66 74 75 logic 69 macros 41 89 115 math functions 76 modes 67 Python 115 quoting 69
21. file which will contain the resulting image processing program script Any text following this will be used as a command to be run to process the file If 4s appear in the command string they will be replaced with the name of the script file 7 3 Caveats When VMD creates the output file it will try to match the current view and screen size For the most part it does a good a job but there can be some problems The colors in the final raster image can sometimes look different from what is seen in the VMD graphics window This is because the external rendering programs use different shading equations and algorithms from what VMD uses Potential rendering discrepencies include e Geometry may look slightly different in VMD curved surfaces are polygonalized and drawn using a number of polygonal facets curved surfaces may be rendered entirely smoothly in the final output which is generally looked upon as an improvement e The rendered object colors or intensities may be slightly different due to different colormaps gamma values or lighting models This is particularly true with the material properties used for performing complex shading VMD s real time rendering of these material properties is often simplistic or limited compared to full fledged photorealistic renderers so there can potentially be big differences between implementations of transparency specular highlights etc e Many of the external renderers do not support true orthographi
22. in the Main form To use this form first select the file with the file browser or by typing the filename into the text entry area By default VMD will try to guess the type of file you are loading by matching the filename extension with one of the file reader plugins in the file type list the available file types are described in section 3 If VMD is unable to guess the appropriate file type or guesses incorrectly you must select it from the list manually If the file being loaded is intended for a new molecule select New Molecule at the top of the form If the file being loaded contains additional simulation time steps electron density map or other ancillary data for an existing molecule choose the appropriate molecule from the selection list at the top of the form If the file being loaded contains trajectory timesteps you have the option of loading a subset of the trajectory skipping ranges or strides of timesteps rather than the whole thing You can also select for VMD to load all timesteps before continuing on or to load them in the background so that you may continue to interact with the menus and forms while it loads additional timesteps If the file being loaded contains multiple volumetric data you may select which data sets you would like to load Once you have selected the file to be loaded the appropriate file type and the way it will be loaded press the Load button and VMD will being loading the selected file Any informational
23. list of values Access and in some cases modify informa tion about a given molecule The list of recognized keywords is given in Table 8 3 103 Examples vmd gt molinfo top get numatoms 568 molinfo 0 get filetype filename pdb home dalke pdb bpti pdb vmd gt molinfo O get rep O color 0 rep 1 color 1 VDW 1 000000 8 000000 ColorID 5 Off SegName 8 3 22 mouse Change the current state mode of the mouse optionally active TCL callbacks e mode 0 Set mouse mode to rotation e mode 1 Set mouse mode to translation e mode 2 Set mouse mode to scaling e mode 3 N Set mouse mode to rotate light N e mode 4 N Set mouse mode to picking mode N where N is one of the following 0 query item pick center pick atom pick bond pick angle pick dihedral move atom move residue move fragment O WM IDO aA KF WN rH O move molecule 10 force on atom 11 force on residue 12 force on fragment e callback on off Turn the callbacks on or off To use the callbacks trace the variable vmd_pick_atom_silent See below for information on tracing e rocking on off Enable disable persistent rotation of the scene with the mouse 104 8 3 23 play Start executing text commands from a specified file instead of from the console When the end of the file is reached VMD will resume reading commands from the previous source This command may be nested so commands being re
24. the section describing the Display form 4 4 6 e update Force the display update Makes sense if the display update is off This does not necessarily take care of resizing the display window or using the Forms GUI while the display update is turned off e update on Turn display update on 92 update off Turn display update off By default VMD does the display updates constantly Sometimes it is beneficial to turn the turn the display updates off This prevents VMD from redrawing the scene as a response to every change thus saving time while doing changes of representations See the VMD script library for examples of use update status Return the display update status on or off update ui Similar to display update but also forces updates of the GUI forms The Forms interface is subject to the following behavior if the display update is set to off and actions such as e g iconify deiconify have been performed to the Forms the Form windows do not get updated by just display update command whereas display update ui forces both updates to happen Tk does not seem to have this problem so this option will become obsolete after switching to Tk graphics user interface resetview Reset the view eyesep value Set the eye separation to value focallength value Set the focal length to value height value Set the screen height to value distance value Set the screen distance to value antialias lt on off gt Turn an
25. to total sum The last line returns the geometrical center of the atoms in the selection Since the geometrical center is defined as the sum of the coordinate vectors divided by the number of elements and so far I have only calculated the sum of vectors I need the inverse of the number of elements which is done with the expression expr 1 0 selection num The decimal in 1 0 is important since otherwise Tcl does integer division Finally this value is used to scale the sum of the coordinate vectors with vecscale which returns the new value which is itself returned as the result of the procedure The center of mass function is slightly harder because you have to get the mass as well as the x y z values then break that up into to components The formula for the center of mass is Y maxi X mass 142 proc center_of_mass selection some error checking if selection num lt 0 1 error center_of_mass needs a selection with atoms set the center of mass to 0 set com veczero set the total mass to 0 set mass 0 selection get x y z returns the coordinates x y z selection get mass returns the masses so the following says for each pair of coordinates and masses do the computation foreach coord selection get x y z m selection get mass sum of the masses set mass expr mass m sum up the product of mass and coordinate set com vecadd com vecscale m coord
26. 22 gt gt gt resid5 frame 22 In a similar way you can change the selected atoms of an atom selection object using the select operation Continuing with the previous example gt gt gt resid5 resid 5 gt gt gt resid5 select resid 7 gt gt gt resid5 resid 7 gt gt gt 117 9 3 3 Combining atom selections Once you ve created one or more atom selections you can combine them to create new ones gt gt gt CA AtomSel name CA gt gt gt resid5 AtomSel resid 5 gt gt gt CA name CA gt gt gt residb resid 5 gt gt gt ANDsel CA amp resid5 gt gt gt ORsel CA resid5 gt gt gt NOTsel CA gt gt gt ANDsel name CA and resid 5 gt gt gt ORsel name CA or resid 5 gt gt gt NOTsel not name CA gt gt gt When the combined atom selections are from different molecules or have different frame num bers the molecule and frame from the first atom selection are used 9 4 Python callbacks Some of your Python scripts may wish to be informed when various events in VMD occur The mechanism for expressing this interest is to register a callback function with a special module supplied by VMD When the event of interest occurs all registered will functions will be called VMD will pass the functions information specific to the event The set of callbacks events is listed in Table 9 4 Table 9 1 Description of callbacks available to scr
27. 4 5 Mouse Form The Mouse menu indicates and controls the behavior of the mouse when the mouse moves and clicks within the graphics window Mouse clicks and drags can affect VMD in one of two ways It can change the view of the scene either by rotating translating or scaling It can also pick objects in the scene causing some further action to be taken These behaviors are all reflected in the state of the Mouse menu Below we describe the four main parts of the Mouse menu Mouse mode The top three menu items select whether the mouse will rotate translate or scale the scene when the user clicks and drags with the left mouse button Object menus The five object menus all appear in the bottom right corner of the Mouse form Only the menu selected by the Object Mode pulldown menu is displayed These menus control how the mouse affects objects in the scene as opposed to how the mouse changes the view of these objects Note that any time you choose a new object mode the View Mode changes to Rotate e Pick Mode generally adds labels to atoms in the scene Labels include atoms bonds angles and dihedrals These labels require respectively one two three and four atoms to be picked For the latter three label types the numerical value of the geometric label is displayed along with a stippled line connecting the picked atoms The units for Bonds corresponds to whatever units the coordinate file is written in Angles
28. 4 8 vmd gt vecadd 4 5 Info 9 e C vecsub v1 v2 Returns the vector subtraction of the second term from the first 131 Examples vmd gt vecsub 6 3 2 Info 2 8 vmd gt vecsub 10 9 8 7 0 1 0 0 1 Info 9 9 9 8 7 1 vmd gt vecsub 1 2 3 4 5 6 7 8 9 10 Info 5 5 5 5 5 e C vecscale c v e C vecscale v c Returns the vector of the scalar value c applied to each term of v Examples vmd gt vecscale 2 1 2 3 Info 0 2 0 4 0 6 vmd gt vecscale 5 4 3 2 2 Info 10 8 6 4 vmd gt vecscale 2 3 Info 6 e vecdot v1 v2 Returns the scalar dot product of the two vectors Examples vmd gt vecdot 1 2 3 4 5 6 Info 12 vmd gt vecdot 3 4 3 4 Info 25 vmd gt vecdot 1 2 3 4 5 5 4 3 2 1 Info 35 vmd gt vecdot 3 2 Info 6 e veccross vi v2 Returns the vector cross product of the two vectors Examples vmd gt veccross 1 0 0 0 1 O Info 00 1 vmd gt veccross 2 2 2 1 0 0 Info 0 2 2 e veclength v Returns the scalar length of v v Examples vmd gt veclength 5 Info 5 0 vmd gt veclength 5 12 Info 13 0 132 vmd gt veclength 13 4 12 Info 13 0 vmd gt veclength 1 2 3 4 Info 5 47723 e veclength2 v Returns the square of the scalar length of v v Examples vmd gt veclength2 5 Info 25 vmd gt veclength2 5 12 Info 169 vmd gt veclength2 3 4 12 Info 169 vmd gt veclength2 1 2
29. 65359e 06 0 0 0 0 2 65359e 06 1 0 0 0 0 0 0 0 0 0 1 0 a rotation about z by 90 degrees compare this to transaxis z 90 vmd gt transabout 0 O 1 1 5709 rad Info 0 999624 0 027414 0 0 0 0 0 027414 0 999624 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 vmd gt transabout 1 1 1 1 pi Info 0 333335 0 666665 0 666669 0 0 0 666668 0 333334 0 666666 0 0 0 666666 0 66667 0 333332 0 0 0 0 0 0 0 0 1 0 135 e trans center zx y z origin x y z offset x y z axis x amount rad deg pil axis y amount rad deg pi axis z amount rad deg pi x amount rad deg pil y amount rad deg pi z amount rad deg pi axis x y z amount rad deg pil bond x1 y1 z1 x2 y2 22 amount rad deg pi angle x1 y1 z1 x2 y2 22 18 y3 23 amount rad deg pil This command can do almost everything the other ones can do and then some It is designed to be the main function used for generating transformation matrices Using it correctly calls for understanding how it works internally There are three matrices centering rotation and offset The centering matrix determines where the center of rotation is located By default this is the origin but it can be changed to pivot about any point The rotation matrix defines the rotation about that centering point and the offset matrix defines the final translation after the rotation For example to rotate around a given point the transformations would be 1
30. Rename the specified molecule e repname molecule_number rep_ number Returns the name of the given rep This name is guaranteed to be unique for all reps in the molecule and will stay with the rep even if the rep_ number changes e repindex molecule_number name Return the rep_number for the rep with the given name or 1 if no rep with that name exists in that molecule e selupdate rep_number molecule_number boolean Update the selection for the specified rep each time the frame changes 8 3 20 molecule Same as mol 8 3 21 molinfo The molinfo command is used to get information about a molecule or loaded file including the number of loaded atoms the filename the graphics selections and the viewing matrices It can also be used to return information about the list of loaded molecules Each molecule has a unique id which is assigned to it when it is first loaded These start at zero and increase by 1 for each new molecule When a molecule is deleted the number is not used again There is one unique molecule called the top molecule top molecule 4 4 2 which is used to determine some parameters such as the center of view the data in the animation form etc e list Returns a list of all current molecule id s e num Returns the number of loaded molecules e top Returns the id of the top molecule e index n Returns the id of the n th molecule e molecule_id get list of keywords e molecule_id set list of keywords
31. VMD is quite simple allowing the use of three control axes to translate rotate and scale the molecule The joystick interface assumes a device with at least two buttons The first joystick button resets the view in the display window and the second button cycles through each of the available joystick modes When VMD first attaches to each of the joysticks they are initially disabled so that miscalibrated joysticks do not adversely affect the VMD session Each joystick is initially enabled by pressing its second button to switch modes All joysticks are independently controlled such that multiple joysticks can control different control axes and multiple users could interact with the program with separate controls 28 Hot Key Command Purpose A1t M menu main off menu main on Show main menu Alt m menu mol off menu mol on Show mol menu Alt f menu files off menu files on Show files menu Alt a menu animate off menu animate on Show animate menu Alt e menu edit off menu edit on Show edit menu Alt g menu graphics off menu graphics on Show graphics menu Alt 1 menu labels off menu labels on Show labels menu Alt r menu render off menu render on Show render menu Alt d menu display off menu display on Show display menu Alt c menu color off menu color on Show color menu Alt s menu sim off menu sim on Show sim menu Alt t menu tracker off menu tracker on Show tracker menu Cntl r display resetview Reset display Alt
32. VMD loaded only one timestep before returning The function will return the id of the newly created molecule or return an error if unsuccessful 101 urlload lt file_type gt lt URL gt Load a molecule of file_type from a given URL address Return the id of the newly created molecule or an error if unsuccessful pdbload lt four_letter_accession_id gt Retrieve the PDB file with the specified accession code from the RCSB web site Returns the id of the newly created molecule or an error if unsuccessful list Print a one line status summary for each molecule list molecule_number Print a one line status summary for each molecule matching the molecule_number If only one molecule matches the molecule_number also print the rep resentation status for this molecule i e number of representations as well as the representa tion number coloring method representation style and the selection string for each of the representations color coloring method Change the default atom coloring method setting representation rep_style Change the default rendering method setting selection select_method Change the default atom selection setting clipplane center clipplane_id rep_number molecule_number vector clipplane normal clipplane_id rep_number molecule_number vector clipplane status clipplane_id rep_number molecule_number boolean 1 modcolor rep_number molecule_number coloring_method Change the current coloring method for the
33. an atom selection 85 3 This function take the selection text and the labels that atom in the top molecule with the given string It returns with an error if more anything other than one atom is selected proc label_atom selection_string label_string set sel atomselect top selection_string if sel num 1 error label_atom selection_string must select 1 atom get the coordinates of the atom lassign sel get x y z coord and draw the text draw text coord label_string 8 3 8 echo Turn on off echoing of text commands to the console When this is turned on text commands read from a file or from the VMD prompt are echoed to the screen before they are executed Do not confuse this with the standard Unix echo command e lt on off gt Turn echoing on or off 94 8 3 9 exit Quit VMD 8 3 10 graphics The graphics command draws low level graphics primitives These primitives can be used to draw a box around a molecule or an arrow between two atoms or place a text label somewhere in space The command syntax is graphics lt molid gt lt cmd gt where lt molid gt is a valid molecule id and lt cmd gt is one of the commands listed below To create a blank molecule use the Tcl command mol new See the draw 8 8 3 7 command for a possibly more convenient interface Also refer to the VMD script library for some examples of user defined graphics scripts As graphical primitives are ad
34. and Dihedrals are measure in degrees Labels can be temporarily hidden from view by pressing the Show Hide light button to the right of the corresponding label type Pressing the Show Hide button again brings the label back into view Labels can be removed by pressing the Delete button on the far right of the Pick menu The button marked Center changes how VMD rotates and scales the scene To get a feel for how this works select Center from the Mouse menu then click on an atom in the scene If you now rotate the scene by clicking and dragging with the left mouse button the scene should rotate about the picked atom If you change the view mode to Scale using the View 34 Mode pulldown menu the scene will expand while keeping the picked atom in view The picked atom will remain the center atom until a new atom is selected as Center the Reset View button is pressed or a new molecule is loaded e Move Mode changes the actual coordinates of atoms in the scene Note that this is different from simply changing the view Clicking on one of the buttons in the Mode Mode menu selects what group of atoms to move Atom moves only the selected atom Residue moves all atoms in the same residue e g amino acid or nucleotide as the selected atom Fragment moves all atoms connected by a bond to the picked atom Molecule moves every atom in the molecular structur
35. command to modify the color scale values accordingly The only sticky point is that you must update the transparent definitions as well or things might look strange proc tricolor_scale 0 1 OMAN OO AUN is is is is is is is is is is O 060704 977208 881330 795466 676938 563725 423108 335384 488800 GO O GO OOO OO 000000 10 is 0 675662 11 is 0 749352 VMD Script Commands for Colors set color_start expr colorinfo num 2 display update off for set i O i lt 1024 incr i X if i o set r 1 T set g 0 set b 0 152 if i 511 set r 1 set g 1 set bi if i 513 set r 0 set g 0 set bi color change rgb expr i color_start r g b display update on tricolor_scale 11 5 2 Creating a set of black and white color definitions To map grayscale on the color ids 0 16 0 black 16 white proc make_grayscale 4 display update off for set i 0 i lt 17 incr i set val expr i 16 0 color change rgb i val val val display update on Note that the display updates are switched off for the time of redefinition so that the screen would not be redrawn every time one color is changed This way the procedure works faster The only bad thing about this idea is that black becomes white and white changes too so the names of the colors yellow orange etc become useless 11 5 3 Revert all RGB values to defaults
36. degrees get the sidechain atoms CB and onwards set sidechain atomselect top sidechain residue 22 get the CA coordinates could do next two on one line set CA atomselect top name CA and residue 22 set CAcoord lindex CA get x y z 0 and get the CB coordinates set CB atomselect top name CB and residue 22 set CBcoord lindex CB get x y z 0 apply a transform of 10 degrees about the given bond axis sidechain move trans bond CAcoord CBcoord 10 deg 144 11 3 Analysis scripts Following are some more examples of routines that could be used for analysing molecules These are not the best routines to used since many of these are implemented with the measure command which calls a much faster built in function Finding waters near a protein This example finds the waters near the protein for each frame of a trajectory and writes out a PDB file containing those waters set sel atomselect top water and same residue as within 2 of protein set n molinfo top get numframes for set i 0 i lt n incr i L sel frame i sel update sel writepdb water_ i pdb The frame option sets the frame of the selection update tells the atom selection to recompute which waters are near the protein and writepdb writes the selected waters to a file Total mass of a selection proc total_mass selection set sum 0 foreach mass selection get mass set sum expr sum mass return
37. for all frames in the trajectory as empty black squares Clicking one of the empty squares causes VMD to redraw the graphics display window with coordinates from the timestep corresponding to that square Clicking a second time on a red highlighted residue switches off the trajectory information in the RamaPlot window When a protein contains many residues it may be inconvenient to display all residues at once Enter an atom selection in the Selection input to choose which residues to display Note that the selection must contain the alpha carbons name CA of the residues you want to show Note also that just like the Graphics form the selection will not be recomputed if you change the animation frame To print the contents of the white Ramachandran plot select Print to file from the RamaPlot File pulldown menu Enter a filename to save the contents of the window 54 Chapter 5 Molecular Drawing Methods Each molecule in VMD is drawn as several representations or views of the molecule A view is just one particular way of drawing the molecule and consists of three characteristics e A rendering method representation style which determines what shape to draw the atoms bonds and other components of the molecule Section 5 2 describes the rendering methods available in VMD e A coloring method which determines how to color each of the atoms and bonds included in the view The Graphics form contains controls to set the co
38. found will be read in and processed See chapter 3 8 for a description of the VMD text commands which may be put in this file Also section 4 1 3 discusses how to put commands into the vmdrc file to customize the behavior of the hot keys Here is an example of a startup file add personalized keyboard shortcuts user user user user user add key E echo on add key e echo off add key g display reset add key A stage location bottom add key m mol list position the stage and axes axes location lowerleft stage location off position and turn on menus menu menu menu menu menu menu menu menu main move 5 196 display move 386 90 animate move 124 7 edit move 125 196 graphics move 5 455 files move 5 496 mol move 5 745 main on start the scene a rockin rock y by 1 12 4 Using VMD as a WWW Client for chemical documents Mosaic Netscape and possibly other browsers can be configured to use VMD as a helper application for viewing some chemical documents 12 4 1 MIME types When a web browser receives a document from a server it actually gets two pieces of information the header and the body The header contains information about the message and body One of the most important pieces of data called the MIME type specifies what the body of text describes For instance a GIF image is given the MIME type of image gif a JPEG image is image jpg 159 and postscript is application post
39. interfaces and some of the advanced input devices supported in VMD The the text and scripting interface is described fully in chapter 8 4 1 Using the Mouse in the Graphics Window The graphics window is labeled VMD OpenGL Display and contains a view of the molecules and other objects which make up the scene When the mouse is in the graphics display window it may be used to perform the following actions such as e Rotate translate or scale the displayed molecules e Select or pick atoms or other objects in order to move them or label them e Translate and rotate a set of atoms e Apply a force acceleration to a set of atoms e Move the lights User defined keyboard accelerators or hot keys are also available when the mouse is in the graphics display window These keys are bound to VMD text commands which are executed when the key is pressed VMD has many built in default hot key commands see Tables 4 1 4 2 4 3 and 4 4 Users can add new hot keys overriding default settings if desired 4 1 1 Mouse Modes The mouse is in one of several modes at any time the current mouse mode determines the effect of pressing and releasing mouse buttons or the mouse wheel while the mouse is in the graphics window 23 Each mouse mode except the lights mode see below sets the mouse cursor to a characteristic shape The mouse mode is selected via the Mouse menu The available mouse modes are as follows Rotate Mode hot key r
40. is given a list of all macro names is returned If a macro already exists for the given name the old selection will be replaced with the new selection Singlewords that are not defined as macros like protein and water cannot be redefined with the macro command e delmacro name Delete the macro corresponding to name Singlewords that are not defined as macros cannot be deleted e molecule_id selection text frame frame_number Creates a new atom selection and returns its name The returned name can be used as a Tcl proc in order to access the atom selection The selection text is the same language used in the Graphics form 4 4 7 and described in Chapter 85 3 It is used to pick a given subset of the atom The text cannot be changed once a selection is made Some of the terms in the selection depend on data that change during a trajectory so far only the keywords x y and z can change over time For these the optional frame value is used to determine which specific frame to use The frame number can be a non negative integer the word now the current frame the word first for frame 0 and last for the last frame Some examples are vmd gt atomselect top name CA atomselect0O vmd gt atomselect 3 resid 25 frame last atomselecti vmd gt atomselect top within 5 of resname LYR frame 23 atomselect2 The newly created atom selection is a Tcl proc which takes the following options num Retur
41. its graphical representations 38 LA 2 protein and resid 68 203 and not hydrogen o alf o U 44 10 DC MU 20 UK Figure 4 6 The Graphics form in Draw Style mode Hiding a rep To hide a rep double click its entry in the browser The text will turn pink to indicate that the rep is hidden Turn the rep back on by double clicking again on the same line Note that hidden reps will still recalculate their geometry if the animation frame changes Rep auto update When an atom selection such as water within 3 of protein is made the atoms in the selection are computed for the current animation frame When the animation frame changes the selection is not normally recalculated thus the displayed atoms may not correspond to those that would be selected if the atom selection were performed for the new animation frame If the Update Selection Every Frame checkbox is highlighted by clicking on the checkbox then the atom selection for the current rep will be recalculated every time the animation frame changes 39 x Graphical Representations Selected Molecule Create Rep Delete Rep Style Color Selection Selected Atoms protein and resid 68 203 and not hydrogen o Draw style Selections Smoothing Macro definition resname ASP GLU Keyword Value Apply Reset Figure 4 7 The Graphics form in Selections mode Selections Tab The Selections tab provides access to browsers which display
42. lt 5 which selects atoms with mass less than 5 amu and name eq CA which is another way of choosing the CA atoms The underlying idea for the comparison selection is also based on the concept that every atom has a property as specified by a keyword When the keyword is given in the expression the array or vector of the corresponding values is constructed and the size of the array is the same as the number of atoms in the molecule If a single number or string is given instead of a keyword the array consists of copies of that given value The operations like addition multiplication string matching and comparison are then applied element wise along the array This type of selection is similar to the vector statement in X PLOR Take the example mass lt 5 when applied on water which has an oxygen of mass 15 9994 and two hydrogens of mass 1 008 VMD sees the keyword mass and constructs the array 15 9994 1 008 1 008 then sees the 5 and makes the array 5 5 5 It then compares each term of the array and returns with the boolean array False True True since 15 9994 is not less than 5 but 1 008 is This final boolean array is then used to determine which atoms are selected in this case the hydrogens More complicated comparison selections can be constructed either from arithmetic operations or by using some of the standard math functions the functions are listed in Table 5 7 Probably the most often used function will be s
43. messages errors or warnings which occur while loading the file will appear in the text window Reading Trajectory Frames VMD can read in new coordinate sets from one of several file formats such as PDB CRD DCD or Gromacs files The new coordinate sets are appended to the end of the stored timesteps for the selected molecule Loading coordinate data is like loading any other file select it with the file browser make sure the file type is set correctly for the file being loaded and then press the Load button By default VMD will load all of the timesteps contained in a coordinate or trajectory file Sometimes you may not want to read in a whole coordinate or trajectory file For example you may only want the last frame or every tenth frame You can do this by changing the options in the Timesteps control of Files form The Timesteps controls consist of three numeric input fields labeled Begin End and Skip These make it possible to use a subset of the frames starting at 33 frame Begin and selecting every Skip frames until the End is reached For instance to select every fifth frame between frames 14 and 98 set e Begin to 14 e End to 98 e Skip to 5 Remember that frame numbers in VMD start at 0 so frame 0 is the first frame The value 1 is a special number setting Begin to 1 is the same as starting at the first frame End 1 is the same as ending at the last frame and Skip 1 is the same as taking one step 4
44. nb end ne skip ns waitfor nw molecule_number Read data for molecule_number from filename of type file_type beginning with timestep nb ending with timestep ne with a stride of ns 1 Return the number of timesteps read from this file if the file contains more than this number the remaining timesteps will be loaded during subsequent VMD display updates By default one timestep will be loaded before the command returns New in VMD 1 8 The waitfor option allows you to specify how many timesteps to load before returning The waitfor parameter nw can be any integer or all choosing nw less than zero is the same as choosing all If timesteps from other files are still being loaded when the animate command is issued these timesteps will be loaded first e write file_type filename beg nb end ne 1 skip ns molecule_number Write data from molecule_number to filename of type file_type beginning with timestep nb ending with timestep ne with a stride of ns 1 Return the number of timesteps written to this file if more timesteps have been specified than this number the remaining timesteps will be written during subsequent VMD display updates By default one timestep will be written before the command returns New in VMD 1 8 The waitfor option allows you to specify how many timesteps to write before returning The waitfor parameter nw can be any integer or all choosing nw less than zero is the same as choosing all e delete beg nb
45. off automatic updating of the atom selection for a given rep Automatic updating means the atom selection for the rep will be recalculated every time the coordinate frame of the molecule changes 9 5 11 render Python operations available from the render module used to export the scene to a file that can be read by external rendering programs e listall Return a Python list of the names of all supported rendering methods One of these should be the first argument to the render O operation below e render method filename Using the the given rendering method export the current scene to the file filename method should be one of the values returned by listal1 O 9 5 12 trans Python operations available from the trans module used to change the view of the rendered scene e rotate axis angle Rotate the scene about the specified axis by the given angle axis should be x y or z angle is measured in degrees 126 e translate x y z Translate the scene by the given x y and z values e scale factor Scale zoom the scene by the given factor e resetview molid Sets the center scale rotation for all molecules so that the viewpoint is centered on the molecule with the given id e get_center molid e set_center molid vector Get set the coordinates of the center of the given molecule as a Python list e get_scale molid e set_scale molid scale Get set the scale factor used to display the gi
46. option is the same as lines except that instead of drawing a bond as a line between two atoms a cylinder is drawn instead To be more specific it draws an n sided prism where the number of sides is determined in the Graphics form by the Bond Res control and the radius is given by the value of Bond Rad in Angstroms If the radius or number of sides gets too small the bonds are drawn as lines In order to fine tune the bond representation VMD does a small amount of trickery to the prisms That is imagine two hollow cylinders coming together so that the center of the face of one cylinder is in the same position as the center of the face of the other cylinder Also suppose these two cylinders come together at 90 degrees Although most of these two cylinders will overlap there will appear to be a gap at their intersection To correct for this problem VMD extends both cylinders somewhat so that the far ends touch If one looks closely this produces more of an overlap but it is much nicer looking than the gap When three or more bonds join at one atom VMD chooses the lowest numbered bond and extends all other bonds to meet with that one It then extends that lowest numbered bond to meet with the second lowest numbered one 56 5 1 3 DynamicBonds The DynamicBonds representation will automatically perform a distanced based bond search for the active atom selection and active trajectory frame The DynamicBonds representation does not p
47. particularly useful when giving 3 D demonstrations using a projector The forms and menus can be kept on a different screen from the graphics so that they do not distract the audience e VMDHTMLVIEWER The name of the HTML viewer Netscape Mosaic whatever you prefer that VMD should use to display HTML documents such as this help file By default this is Netscape e VMDIMAGEVIEWER The name of the external program to use for displaying VMD snapshots or other images in various formats e VMDSCRDIST Distance to the VMD image plane e VMDSCRHEIGHT Height of the VMD image plane e VMDSCRPOS Position of the VMD graphics window x y VMDSCRSIZE Size of the VMD graphics window x y 12 3 Startup Files 12 3 1 Core Script Files In the following the value of VMDDIR is the vmd installation directory During the original in stallation this is the value of INSTALLLIBDIR It can also be found by looking at the first few lines of the vmd startup script head which vmd or by starting VMD and using the command set env VMDDIR As mentioned elsewhere VMD uses the Tcl interpreter VMD read Tcl scripts at initializa tion which are contained in VMD distribution The locations of the scripts is determined by the TCL_LIBRARY environment variable which is set in the vmd startup script to VMDDIR scripts tcl In addition VMD has its own directory of core Tcl routines The most important of these is VMDDIR scripts vmd vmdinit
48. plot for a selected molecule If you animate your molecule over a range of timesteps RamaPlot will update the Ramachandran plot automat ically You can select a range of residues to be displayed in the plot Clicking on a point in the Ramachandran plot will show the trajectory of the selected residue in Ramachandran space over all timesteps Fields on the right of the window show the computed value of phi and psi for the most recently selected residue Finally you can create a PostScript image of the current Ramachandran plot RamaPlot functionality is summarized in Fig 4 14 53 Using Rama Plot Start RamaPlot by typing ramaplot in the VMD text console or by clicking Start RamaPlot in the Analysis menu of the Sequence window see Section 4 4 15 The main window contains a Ramachandran graph with phi and psi running along the horizontal and vertical axis respectively from 180 to 180 degrees The most allowed region of Ramachandran space is colored blue partially allowed regions are colored green After loading a molecule using the pulldown menu in the upper right part of the window to choose a molecule Protein residues in the current molecule are mapped to the Ramachandran diagram with yellow squares Clicking on a square causes the square to turn red displays residue information in the fields on the right side of the window and if trajectory data is present draws the location of the selected residue in Ramachandran space
49. previously Next click on the Browse button and select the alanin psf file in the file browser Once selected press the Load button to load the structure file Next select the alanin dcd file and load it as well This will read the DCD trajectory timesteps into the same molecule with the previously loaded alanin psf file In the display window you should see a simulation of an alanin residue in vacuo It isn t particularly informative but you can easily see that the structure is quite unstable in an isolated environment After the DCD file has loaded animation will stop To see it again or to fine tune playback use the animation controls 4 4 3 found at the bottom of the main VMD form Press the button that looks like gt to play the animation Use the Speed slider at the bottom of the form to change the speed of playback By rotating the molecule around etc you should get an idea about how the system destabilizes over the course of the simulation The animation controls are generally similar to what you d find on a DVD or CD player 2 5 An Introduction to Atom Selection In this section it is assumed that you have the myoglobin structure mbco pdb loaded and the views discussed in 2 2 created If this is not true go back to 2 2 and repeat the process described there VMD has a powerful atom selection method which is very helpful when generating attractive informative and complex graphics In the previous section you used a few of the
50. produces the right eye viewpoint The left and right monoscopic modes are most useful when exporting scenes to external ray tracers 6 3 Stereoscopic Modes Molecules may be rendered in stereo which can greatly enhance the appearance and visual content of the displayed systems There are several stereo formats available 1 Side by side cross eyed stereo 2 Side by side wall eyed stereo 3 Anaglyph stereo requires stereo capable monitor quad buffered stereo video board and red blue horror movie style stereo glasses 77 4 DTI Side by side stereo for DTI stereo flat panel displays 5 Scanline interleaved also known as line blanking stereo works with compatible shutter glasses or panel displays 6 CrystalEyes stereo requires stereo capable monitor quad buffered stereo video board stereo sync emitters and special stereo glasses equipped with liquid crystal or polarized lenses 6 3 1 Side By Side and Cross Eyed Stereo Side by side stereo means that the normal display is divided into two halves a left view and a right view each occupying one half of the original display area Each view displays the current molecules from a slightly different perspective corresponding to the left and right eye of the viewer The images are separated however so to actually see a 3D object you must direct your eyes until the two images are on top of each other and then focus on the resulting image until you can see it as three dimensional
51. rather grainy image as the size of the pixels becomes apparent so you want something with more resolution There are several programs available which can render a high quality raster image based on an input script VMD has the option to create input scripts for many of these image processing programs which may then be processed to create a higher quality image of the scene displayed by VMD at the time the script was created See the section on rendering 7 for a further description of how this works Open the Render form 4 4 12 and select Tachyon from the Render Using menu Both of the text boxes will be filled with default values which should not need to be changed for the purposes of this tutorial Press the Start Rendering button After a few moments of processing you sould see the message Info Rendering complete in the VMD text console If everything worked correctly you will end up with an image file named plot dat tga on MacOS X or Unix or plot dat bmp on Windows in your current working directory This image is in either Windows BMP or Targa graphics format and can be read by many programs such as display ipaste xv Gimp or Photoshop 2 4 A Quick Animation Another strength of VMD lies in its ability to playback trajectories resulting from molecular dynam ics simulations A sample trajectory alanin dcd is provided in the proteins directory included with VMD To load it open the molecule file browser as described
52. regular expression 70 same 72 sequence 72 text 140 update 145 within 72 atoms distance between 17 plotting 43 atomselect command 88 110 139 140 axes 37 command 90 110 Python module 120 Babel 21 backface culling 36 batch mode 156 beta values 147 BioCoRE 10 BMRT 82 bonds add or remove 24 determining 21 label 42 representation 56 resolution 56 unusual 21 callbacks Python 118 Tcl 108 cartoon representation 56 59 center of mass 142 CHARMM files 20 33 chemical2vmd 160 clipping planes 37 codes secondary structure 51 color access definitions 92 assignment 18 background 44 category 43 62 63 92 153 command 62 91 110 form 18 43 62 64 id 38 62 in user defined graphics 96 index 92 map 43 material properties 96 names 62 92 properties 92 Python module 120 redefinition 44 153 revert to default 153 scale 44 64 65 91 152 changing 44 color map 63 colorinfo command 92 110 coloring by category 63 by color scale 64 65 by property 153 methods 15 37 55 62 64 102 153 Command line options 155 contact residues 73 copyright 12 CPK 56 58 culling 93 debug command 110 depth cue 93 depth cueing 36 display command 92 110 device 156 form 35 Python module 121 update 92 140 153 distance between atoms 17 dotted van der Waals representation 56 61 draw command 93 extensions 93 drawing method 15 37 dra
53. selection i e same segname as resid 35 ufx ufy ufz num force to apply in the x y or z coordinates Table 5 6 Atom selection keywords continued 75 Function Description sqr x square of x sqrt x square root of x abs x absolute value of x floor x largest integer not greater than x ceil x smallest integer not greater than x sin x sine of x cos x cosine of x tan x tangent of x atan x arctangent of x asin x arcsin of x acos x arccos of x sinh x hyperbolic sine of x cosh x hyperbolic cosine of x tanh x hyperbolic tangent of x exp x e to the power x log x natural log of x logl0 x log base 10 of x Table 5 7 Atom selection functions Symbol Example Definition y e match any character LU ABCabc A Ca c match any char in the list Z XYZ x z match all except the chars in the list 9 C A next token must be the first part of string CO G prev token must be the last part of string C ab match 0 or more copies of prev char or regular expression token C ab match 1 or more copies of the prev token X CNO match either the 1st token or the 2nd NOW CA combines multiple tokens into one Table 5 8 Regular expression methods X PLOR Wildcard Description Regular Expression it matches any string matches a single character matches any digit matches any nu
54. slice texture map will be rendered using bilinear interpolation The slice setting indicates the position of the volume slice along the chosen axis in the coordinate system of the volumetric data range 0 to 1 The VolID setting controls which volume data set is referenced in the representation since multiple volumetric data sets can be loaded for a single molecule 5 1 16 Isosurface The Isosurface representation computes and draws a surface within a volumetric data field on a 3 D surface corresponding to points with a single scalar value There are several settings which control how the isosurface is displayed The Box Only control causes the volume data bounding box and coordinate axes to be drawn rather than the isosurface for the data This is often useful when first working with volumetric data and checking that the coordinate systems of the volume data and the molecule match The wireframe control can be set to 0 1 or 2 When the wireframe control is set to 0 the isosurface is drawn using a solid space filling representation When the wireframe control is set to 1 the isosurface is drawn using lines When the wireframe control is set to 2 the surface is drawn using only points at the appropriate isovalue samples The Isoval control selects the value for which the isosurface will be computed The VolID control selects which volume dataset is used for the isosurface calculation since a given molecule can contain multiple volumetric dat
55. tcl This file sets up the basic Tcl initialization commands defines some environment variables and adds the vmd script directory to the Tcl autoindex path Most of the other files are referenced through the auto_path There are a few non Tcl scripts in this directory Currently these are perl scripts used for the urlload command and web client startup see section 8 3 19 and section 12 4 12 3 2 User Script Files A user written run time command file vmdrc on Unix vmd rc on Windows can be used with a list of initial VMD text commands to process This file may be changed to customize individual user s initial screen appearance and to set the proper display characteristics for displaying in stereo If it does not exist default values are used 12 3 3 vmdre and vmd rc Files After everything is initialized VMD reads the startup file using the equivalent of the command play vmdrc This file contains text commands for VMD to execute just as if they had been entered at the VMD text console command prompt The file can contain any number of commands including 158 blank lines and comment lines which begin with the character If an error is encountered while reading this file the command in error is skipped and processing of the file continues VMD searches for this file in three locations on Unix vmdrc HOME vmdrc and VMDDIR vmdrc On Windows VMD searches in vmd rc HOME vmd rc and VMDDIR vmd rc Only the first file
56. the centering matrix to bring that point to the origin 2 the rotation about the center and 3 the final offset to return the origin back to its original location The different options for the trans command modify the matrices in various ways center x y z Sets the centering matrix so that point x y z is brought to the origin offset x y z Sets the offset matrix so that the origin is brought to x y z origin x y 2 Sets both the centering and offset matrices to x y z axis x amount rad deg pi Adds a rotation about the x axis by the given amount to the rotation matrix axis y amount rad deg pi Adds a rotation about the y axis by the given amount to the rotation matrix axis z amount rad deg pi Adds a rotation about the z axis by the given amount to the rotation matrix axis zx y z amount rad deg pi Adds a rotation of the given amount about the given vector to the rotation matrix bond 21 y1 z1 x2 y2 22 amount rad deg pi Sets the center and offset transforma tions to the first point and defines a rotation about the bond axis by the given amount angle x1 y1 z1 x2 y2 22 23 y3 23 amount rad deg pi Sets the center and offset transformation to the second point and defines a rotation about the axis perpendicular to the plane made by the three points the vector is computed from the cross product of the vector connecting the first two points with t
57. the log e filename Turn on logging to filename e off Turn off logging To write log information to the file off use the file name off To have log information appear on the text console use logfile dev tty 8 3 16 material This set of commands is used to create new material definitions and modify existing ones e list Return a list of the available materials e settings name Return a list of the five material settings for the material of the given name These settings take on floating point values between 0 and 1 The values are returned in the following order ambient specular diffuse shininess opacity If the specified material has not been defined nothing is returned e add name create a new material with the given name The new material will start with the settings for Opaque If the name already exists no new material is created 98 e rename oldname newname rename the given material The command will fail if the name is already used e change property name value Change a material property of the material named name to the value value property must be one of the following ambient specular diffuse shininess opacity e delete name Delete the given material 8 3 17 measure The meaure command supplies several algorithms for analyzing molecular structures In the fol lowing options selection refers to an atom selection as returned by the atomselect command describ
58. to exit Press Yes to quit or No to return to VMD 29 VMD Fie Mowcue Graphics Display house Exsensions Help ib T ADF Mortcde Aoma Frames a A Figure 4 1 The Main form Help The Help menu item starts a web browser and displays on line VMD help documents The browser is designated by the environment variable VMDHTMLVIEWER 12 2 Selecting help multiple times may start multiple browsers The default web browser is Netscape for Unix systems and the built in Explorer shell for Windows systems In some cases you may need to have a web browser up and running before successfully using the Help button since they each behave a bit differently If you obtain a message such as netscape not running on display 0 0 then you will have to start up the browser yourself after which VMD should be able to direct the browser to the correct page The help button brings up the VMD Quick Help page which contains links to the current User s Guide FAQ and links to various helpful information and programs 4 4 2 Main Form Molecule List browser The Main form shows the global status of the loaded molecules Any number of molecules may be displayed by VMD simultaneously Each molecule can separately be hidden from view fixed in place e g prevented from being affected by mouse rotation commands The form contains controls to change the status of the molecules individually or in groups The browser at the center displays information abo
59. to white to blue and several related parameters There are 1041 colors available in VMD with color ids ranging from 0 to 1040 The first 17 are in order blue red gray orange yellow tan silver green white pink cyan purple lime mauve ochre iceblue and black The next group of 1024 colors from 17 to 1040 are colors used in the color map These can be set to one of several ranges with the Color form or the color text command red green blue red white blue or black white etc There are no names for the specific colors The color map will be discussed in more detail in a section to follow 5 2 1 Color categories VMD maintains a database of the colors used for the molecules and the other graphical objects in the display window The database consists of several color categories each color category contains a list of names and each name is assigned a color For example there is a Resname color category 62 and within this category there are many names one for each of the available residue names Some of these are ALA CYS and PRO Each name can be assigned a color from a list of 17 available colors called the color map The RGB value of each color can be modified directly in the Color form 84 4 10 To color items in a gradation manner there are additional 1024 colors used in the color scale 5 2 4 The different color categories in VMD are listed in table 5 2 The Color form can be used to change the assignm
60. 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 vmd gt vectrans transvec 0 0 2 1 0 0 Info 0 0 0 0 1 0 transvecinv v Returns the transformation needed to bring the vector v to the x axis This produces the inverse matrix to transvec and is composed of a rotation about z then one about y Examples vmd gt transvecinv 0 1 0 Info 3 67321e 06 1 0 0 0 0 0 1 0 3 67321e 06 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 vmd gt vectrans transvecinv 3 4 12 3 4 12 Info 13 0 1 8e 05 5 8e 05 vmd gt transmult transvec 6 5 7 transvecinv 6 5 7 Info 0 999999 2 29254e 07 6 262e 09 0 0 2 29254e 07 0 999999 4 52228e 07 0 0 6 262e 09 4 52228e 07 1 0 0 0 0 0 0 0 0 0 1 0 C transoffset v Returns the transformation matrix needed to translate by the given offset Examples vmd gt transoffset 1 0 0 Info 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 vmd gt transoffset 1 6 5 4 3 Info 1 0 0 0 0 0 6 0 0 1 0 0 0 5 0 0 0 0 1 0 4 3 0 0 0 0 0 0 1 0 transabout v amount deg rad pi Generates the transformation matrix needed to rotate by the given amount counter clockwise around axis which goes through the origin and along the given vector As with transvec the units of the amount of rotation can be degrees radians or multiples of pi Examples this is a rotation about x by 180 degrees vmd gt transabout 1 0 0 180 Info 1 0 0 0 0 0 0 0 0 0 1 0 2
61. 3 4 Info 30 e vecnorm v Returns the vector of length 1 directed along v Examples vmd gt vecnorm 10 Info 1 0 vmd gt vecnorm 1 1 Info 0 707109 0 707109 vmd gt vecnorm 2 3 1 Info 0 534522 0 801783 0 267261 vmd gt vecnorm 2 2 2 2 2 2 Info 0 408248 0 408248 0 408248 0 408248 0 408248 0 408248 e vecdist v v2 Returns the distance between the two vectors lua v1 Examples vmd gt vecdist 1 5 5 5 Info 7 0 vmd gt vecdist 0 0 0 3 4 0 Info 5 0 vmd gt vecdist 0 1 2 3 4 5 6 6 5 4 3 2 1 0 Info 15 8745 e vecinvert v Returns the additive inverse of v v Examples vmd gt vecinvert 11 1 Info 11 1 vmd gt vecinvert 3 4 5 Info 3 4 5 vmd gt vecinvert 0 1 2 3 Info 0 1 2 3 133 10 2 Matrix routines Because matrices are rather large when expressed in text form the following definitions are used for the examples e transidentity Returns the identity matrix Example vmd gt transidentity Info 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 e transtranspose m Returns the matrix transpose of the given matrix Example vmd gt transtranspose 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Info 0 5 9 13 1 6 10 14 2 7 11 15 3 8 12 16 e C transmult m1 m2 m3 mn Returns the matrix multiplication of the given matrices Examples vmd gt set mat1 1 2 3 4 2 3 4 5
62. 3 Draw Style Methods 0 0 00 002 ee ee 130 9 6 4 Saving and Restoring Molecule State oaoa a aa 130 10 Vectors and Matrices 131 TO Vectors o oa te ca R A A foe ole A eel R H ela A 131 10 2 Mattix routines 3 2 2 005 E a OR gl ee ee ee ea a A 134 10 3 Multiplying vectors and matrices a 136 10 4 Misc functions and values 137 11 Molecular Analysis 139 11 1 Using the molinfo command 0 e 139 11 2 Using the atomselect command 0 0002 eee ee eee 140 11 3 Analysis Scripts re ica E Moe ee Bas Be A oe acl A r 145 11 4 RMS Fit and Alignment coo NR aaa 148 11 4 1 Fit and Alignment Menus 1 148 11 4 2 RMS and Scripting 150 11 5 VMD Script Commands for Colors o e o 152 11 5 1 Changing the color scale definitions 200 152 11 5 2 Creating a set of black and white color definitions 153 11 5 3 Revert all RGB values to defaults o a 153 11 5 4 Coloring Trick Override a Coloring Category 153 12 Customizing VMD Sessions 155 12 1 VMD Command Line Options 0 0 02000 ee ee ee 155 12 2 Environment Variables oo ss RKR 157 123 Startup PIGS tas aen epee PE ee a Phone Bae ee eS 158 12 321 Gore Script Files orina itn os ee ee ee ee G 158 123 2 User Script Miles sorna a hk wi A Sl dee ek eae Bae 158 12 3 3 vmdrc and vmd rc Files 2 2 ee 158 12 4 Using VMD as a WWW Client for chemical documents
63. 4 C5 O5x This definition assumes that the base is phosphorylated an assumption which will be corrected in the future backbone bool the C N CA and O atoms of a protein and the equivalent atoms in a nucleic acid sidechain bool non backbone atoms and bonds water wa bool all atoms with the resname H20 HHO OHH HOH ters OH2 SOL WAT TIP TIP2 TIP3 or TIP4 fragment num a set of connected residues pfrag num a set of connected protein residues nfrag num a set of connected nucleic residues sequence str a sequence given by one letter names numbonds num number of bonds resname str residue name resid num residue id segname str segment name X y Z float x y or z coordinates radius float atomic radius mass float atomic mass charge float atomic charge beta float temperature factor occupancy float occupancy at bool residues named ADA A THY T acidic bool residues named ASP GLU acyclic bool protein and not cyclic aliphatic bool residues named ALA GLY ILE LEU VAL alpha bool atom s residue is an alpha helix amino bool a residue with atoms named C N CA and 0 aromatic bool residues named HIS PHE TRP TYR basic bool residues named ARG HIS LYS bonded bool atoms for which numbonds 0 buried bool residues named ALA LEU VAL ILE PHE CYS MET TRP cg bool residues named CYT C GUA G charged bool basic or acidic cyclic bool residues named HIS PHE PRO TRP TYR Table 5 5 Atom selection keywor
64. 40001487731934 4 5659999847412109 7 9340000152587891 9 7329998016357422 8 1689996719360352 9 2229995727539062 gt gt gt y 0 5910000205039978 0 0 3 6429998874664307 4 8410000801086426 2 5559999942779541 3 7860000133514404 7 4190001487731934 6 7989997863769531 5 0819997787475586 7 9559998512268066 10 515999794006348 8 5710000991821289 gt gt gt z 0 9100000262260437 0 0 0 9089999794960022 2 3880000114440918 4 3920001983642578 2 5859999656677246 3 244999885559082 6 9559998512268066 7 2639999389648438 5 5669999122619629 7 8870000839233398 11 013999938964844 gt gt gt beta CA get beta gt gt gt CA set beta 5 gt gt gt CA set beta beta gt gt gt 9 3 2 Changing the selection and the frame When molecule in VMD contains multiple coordinate sets frames atom selections must know which frame they are referring to especially when you make distance based atom selections or request time varying properties like the x y or z coordinates By default atom selections in Python use frame 0 i e the first coordinate set You can specify the frame either when you create the atom selection or by using the frame method Passing no arguments to frame returns the current value of the frame gt gt gt load psf alanin psf dcd alanin dcd gt gt gt resid5 AtomSel resid 5 frame 50 gt gt gt resid5 frame 50 gt gt gt resid5 frame
65. A E A IS O a ee Pe ae E 87 33 Tel Text Commands ss ronsar a a a a Gee a 87 83A animate mans RR a R Ok e a ea ee R A RTE E ee N H dTa R as 87 83 2 satomselectie 2 or a A is Peay As 88 OD AOS a e a A o i wh O Sr eh Anns ar aT ara AE A 91 O COLO A Bye A A dd 91 8 3557 COLOM A A E A ES E dah e a Aen te Bee 92 8 3 0 display ria a a a a a Se 92 SENA E fence cea se A AA A ear Ei La cd GAS NAS G 93 DO HOC E O a a e ce o A nhs sated ohne oe dra AS 94 AS A A Si tet Gr i O NA E 95 8 3 10 T 61 acusa a ds eae a le a 95 SL help a e a dd a K ds Be ee eB 0 96 SL Md A A A AS tt E H a R E E 97 8 3 13 label a di E a A td ay 97 ISLA eht e ale i A AG A ao 98 8 93 19 logfile s e mm o a E we ee Sake eS 98 8 39 10 Maternal A ng eon Oa ee SS A A dd ees 98 T ee s TTT lt 2 IS a eR SE TTT 99 SOAS MeN yen rs an A A a es ee a ee ng oes Date Beas 100 SOLOMON y A cots Bete eof Paka Ee Pas ie ele a SP sede ys AE S aa 100 3 320 a TTT 103 8 321 moio lar a A ee Pee Sek SL eee da 103 8 39 22 MOUSE Z T A Sc a etn Bat Revie eh of ME RG ER T Bal 104 8 39 23 play whan es RG Seles RECORD ee eae ele ee eee ae es 105 33 24 Quit sa See Soe ee wie ee Sia a Soe ee ae we oe ae SE SS 105 8 3 25 render 3 0 a ne eae ee ek ek E E te EE 105 ZO Oc sl UA a a tN a co o AN on E 106 A A A A E A Un aS K 106 8 3 28USCAIES ri o A A e 106 A A RN 106 SAT ea A ara AS Boe as o Ro Re Ed 107 33 31 Translate E is A A E R A 107 S d 02 USET aia a A A a a a a da 107 3 3 3
66. Agreement This Agreement together with Python may be obtained from a proxy server on the Internet using the following URL http hdl handle net 1895 22 1012 e PCRE The Perl Compatible Regular Expressions PCRE library used in VMD was written by Philip Hazel and is Copyright c 1997 1999 University of Cambridge Permission is granted to anyone to use this software for any purpose on any computer system and to redistribute it freely subject to the following restrictions 1 This software is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE 2 The origin of this software must not be misrepresented either by explicit claim or by omission 3 Altered versions must be plainly marked as such and must not be misrepresented as being the original software 4 If PCRE is embedded in any software that is released under the GNU General Purpose Licence GPL then the terms of that licence shall supersede any condition above with which it is incompatible e STRIDE STRIDE the program used for secondary structure calculation is free to both academic and commercial sites provided that STRIDE will not be a part of a package sold for money The use of STRIDE in commercial packages is not allowed without a prior written commercial license agreement See http www embl heidelberg de argos stride stride_info html e SURF The source code for
67. D have their own usage restrictions e ACTC ACTC the triangle consolidation library used in some versions of VMD is Copyright C 2000 Brad Grantham and Applied Conjecture all rights reserved Redistribution and use in source and binary forms with or without modification are permit ted provided that the following conditions are met 1 Redistributions of source code must retain the above copyright notice this list of condi tions and the following disclaimer 2 Redistributions in binary form must reproduce the above copyright notice this list of con ditions and the following disclaimer in the documentation and or other materials provided with the distribution 3 All advertising materials mentioning features or use of this software must display the fol lowing acknowledgement This product includes software developed by Brad Grantham and Applied Conjecture 4 Neither the name Brad Grantham nor Applied Conjecture may be used to endorse or promote products derived from this software without specific prior written permission 5 Notification must be made to Brad Grantham about inclusion of this software in a product including the author of the product and the name and purpose of the product Notification can be made using email to Brad Grantham s current address grantham plunk org as of September 20th 2000 or current U S mail address 12 e Python Python is made available subject to the terms and conditions in CNRI s License
68. Midpoint sliders until the color scale shown at the bottom of the tab is as desired 44 E Materials Create New Delete Material2 oo JJ Ambient os 9 Difuse io specular os 9 Shininess os H Gpaciy Figure 4 10 The Material Form 4 4 11 Material Form This form is used to create and modify material definitions The material definitions created here will show up in the pulldown menu in the Graphics Form allowing you to apply a material to a given representation The upper left corner of the Materials Form contains a browser listing all the currently defined materials Below this browser is a set of five sliders which indicate the current materials settings for the material highlighted in the browser Highlighting a different material in the browser by clicking with the mouse will update the settings of the sliders Conversely moving the sliders will change the definition of the the currently highlighted material in the browser However settings for the first two materials named Opaque and Transparent cannot be changed To create a new material press the Create New button in the upper right corner of the Form A new material with a default name will be created and displayed in the browser window This name can be changed at any time to something more descriptive by typing in the input box to the right of the material browser and pressing enter You can now edit the properties of t
69. Mode pull down to Pick and selecting Atoms for the pick mode in the Mouse menu The label HEM154 FE should appear both on the display and in the text console Change the pick mode in the Mouse menu to Bonds To get the distance between the iron and the oxygen of the CO click with the left mouse button first on the iron and then on the oxygen The first click turned the FE label on and the second turned the O label on and drew a line between the two atoms with the distance drawn in the middle and a bit to the right The distance between the two atoms is 2 94 A as compared to 2 93 A in the paper not bad However picking the distance between the FE and the C of the CO reveals a distance of 1 91 A as compared to 1 85 A in the paper The difference is that the structures in the VMD distribution are actually preliminary structures obtained before the final coordinates were determined In order to experiment with more complex picking modes consider the angle made by the O of the CO with the FE of the heme and the NE2 of residue 93 you can click on the atoms to find which ones are which Using the Mouse menu change the pick mode to Angles This should cause the cursor to become a red crosshair Click on each of the three atoms using the left mouse button After the third pick a shallow angle will appear indicating an 8 71 degree angle between 17 the three atoms Now load the intermediate star pdb file which can also be foun
70. SURF is copyrighted by the original author Amitabh Varshney and the University of North Carolina at Chapel Hill Permission to use copy modify and distribute this software and its documentation for educational research and non profit purposes is hereby granted provided this notice all the source files and the name s of the original author s appear in all such copies BECAUSE THE CODE IS PROVIDED FREE OF CHARGE IT IS PROVIDED AS IS AND WITHOUT WARRANTY OF ANY KIND EITHER EXPRESSED OR IMPLIED This software was developed and is made available for public use with the support of the National Institutes of Health National Center for Research Resources under grant RR02170 e Tachyon The Tachyon ray tracing system distributed with VMD is Copyright c 1994 2002 by John E Stone See the Tachyon distribution for redistribution and licensing information e url_get The Perl script url_get was written by Jack Lund at the University of Texas as Austin 13 Chapter 2 Tutorials 2 1 Rapid Introduction to VMD For those of you who don t like reading manuals here is a quick introduction to VMD The molecules and data files used in this tutorial can be downloaded from the VMD home page from the doc umentation area associated with this version and is clearly labeled as User s Guide tutorial data The rest of this tutorial assumes that you have downloaded and unpacked this data set To start VMD type vmd on the command line of your she
71. Using the Sim form The Sim form allows you to control the behavior of a molecular dynamics simulations which has been previously connected to through use of the Remote form This form contains controls to change parameters for the simulation and to affect how VMD displays the results of the simulation The form also contains informative displays which show the current status of the simulation connection and such things as the current energy temperature and timestep of the molecular system being simulated At the top of the form are two entry fields and a button for establishing a connection to a running MD simulation Enter both the hostname on which the simulation is running and the port on which the simulation is listening then press the Connect button to establish the connection See the text console for possible error messages and status updates Below the connection display is a browser used to set some connection parameters These include e Transfer Rate How often a timestep is transferred from the remote simulation program to VMD By default this is 1 which means every calculated timestep is sent If this is set to some value N then only every Nth step will send from the remote computer thereby decreasing the amount of network processing and rendering that needs to be done e Keep Rate How often VMD saves the timestep in its animation list instead of just dis carding it after displaying it By default this is 0 which means that
72. VMD does not save any timesteps When this is 0 then when VMD receives a new timestep it replaces the last timestep in the animation list with the new timestep instead of appending it When it is set to some number N larger than 0 then every Nth timestep received from the remote simulation will be appended to the molecule Parameters may be changed by entering text into the appropriate entry field and pressing lt return gt When a new value is entered a command is sent to the remote simulation to change it There may be some delay between when the simulation gets commands acts on them and the results propagate back to VMD Connection state is shown in the center of the form The simulation status text area displays energy values for the system being simulated kinetic electrostatic etc as well as the current timestep and the temperature It is updated each time a new coordinate set timestep is received by VMD The Stop Sim button will terminate the remote simulation but will not delete the molecule in VMD The Detach Sim button will sever the connection between VMD and NAMD but will allow the simulation to continue running 4 4 15 Sequence Form This form is used to list the amino acid residue sequence of protein molecules and to select residues from the sequence list for highlighting in the 3 D structure in the main VMD window When residues are selected in the main VMD window the corresponding residue is highlighted in the 50
73. YZ axes on the screen Change the color assigned to molecules or edit the colormap Tcl Obtain color properties for various objects Change various aspects of the graphical display window Turn on off echoing of text commands to the console Quit VMD Display an on line help file with an HTML viewer Control the connection to a remote simulation Turn on off labels for atoms bonds angles dihedral angles or springs Control the light sources used to illuminate graphical objects Turn on off logging a VMD session to a log file Create new material definitions and modify their settings Measure properties of moleculear structures Control or query the on screen GUI menu forms Load modify or delete a molecule Get information about a molecule or loaded file Change the current state mode of the mouse Start executing text commands from a specified file Output the currently displayed image scene to a file Rotate the current scene continually at a specified rate Rotate the current scene around a given axis by a certain angle Scale the current scene up or down Position a checkerboard stage on the screen Initialize and control external spatial tracking devices Translate the objects in the current scene Add new keyboard commands Tcl Get information about this version of VMD Wait a number of seconds before reading another command Animation continues Sleep a number of seconds before reading another command Anima
74. a sets This and other volumetric display features will be greatly expanded in forthcoming releases of VMD 5 1 17 Dotted Same as VDW except that the spheres are drawn dotted instead of solid That is a dot is placed at each of the vertices of the triangle making up each sphere This can be used for instance to imitate a surface representation 5 1 18 Solvent This method is similar in spirit to the Dotted representation in that it gives a quick estimate of the molecular surface with a collection of dots However it goes above and beyond the Dotted option by giving a more uniform coverage of the surface The method that VMD uses to check for overlaps isn t technically correct but it is fast and works quite well A technical description of the algorithm is as follows 61 For each point of the surface distribution of radius r atom radius probe radius of atom i check each of the atoms 7 to which it is covalently bound If the point is too close to j don t display it Also if the point is too close to any neighbor k of j k 4 i then don t draw it This is fast since there aren t that many neighbors to check but it doesn t omit parts of the surface in contact with atoms which aren t one or two bonds away This can be considered a good thing since you might get a better idea of the contact surface There are three parameters for this option One is the probe radius which was mentioned in the description If the prob
75. ace molecular 56 61 solvent accessible 56 61 Tachyon 13 82 105 Tcl 87 tcl commands 87 text displayed 95 Tk 87 tool CAVE 47 command 106 110 form 46 FreeVR 47 Spaceball 47 VRPN 47 tools 48 topology files 20 trace representation 56 58 trajectory files 20 read 33 smoothing 41 write 31 trans Python module 126 transformation matrix 134 align 134 centering 136 identity 134 offset 135 136 rotation 134 136 translate command 107 110 translation change atom coordinates 144 transformation matrix 135 using mouse 24 transparency 38 tube representation 56 58 universal sensor locator 47 url_get 13 user command 107 110 user interfaces python 114 text 86 USL 47 van der Waals representation 56 57 variables env 157 158 MPI 137 trace 108 vector command coordtrans 137 vecadd 131 veccross 132 vecdist 133 vecdot 132 vecinvert 133 veclength 132 veclength2 133 vecnorm 133 vecscale 132 vecsub 131 vectrans 137 veczero 131 vector routines 131 view 55 101 viewing modes changing 77 VMD as MIME helper application 159 command line options 155 compile options 108 167 copyright 12 customizing 26 155 vind rc 86 vmdinfo command 107 110 volumeslice representation 56 61 volumetric data 56 61 VRML 82 wait command 108 110 wireframe 55 XPLOR files 20 33
76. ad from one file can include commands to read other files e filename Execute commands from filename 8 3 24 quit Same as exit 8 3 25 render Output the currently displayed image scene to a file e list List the available rendering methods e method filename Render the global scene to filename using method and execute the default command where method can be one of the following Raster3D Tachyon snapshot POV3 POV RayShade Radiance ART PostScript STL VRML 1 Token method filename command Render the global scene to filename then execute command Any s in command are replaced by the filename up to 5 e options method Get the default command string e options method command Set new default command e default method Get the original default command 105 8 3 26 rock Rotate the current scene continually at a specified rate e off Stops rocking e lt x y z gt by step Rock around the given axis at a rate of step degrees per redraw e lt x y_ z gt by step n Rock around the given axis at a rate of step degrees per redraw for n steps reverse and repeat 8 3 27 rotate Rotate the current scene around a given axis by a certain angle This does not change atom coordinates e stop Stop all rotation same as rock off e lt xlylz gt by angle Rotate around the given axis angle degrees e lt xlylz gt to angle Rotate the given axis to the abs
77. ages are used in VMD and the program would not be as capable without them The authors ov VMDwish to thank the authors of FLTK the authors of Tcl and Tk the authors of Python the authors of VRPN Jon Leech for uniform point distributions Amitabh Varshney for SURF Dmitrij Frishman for developing STRIDE Jack Lund for the url_get perl script Brad Grantham for the ACTC triangle consolidation library John Stone for the Tachyon ray tracer and Spaceball drivers and Ethan Merrit for one of the ribbon drawing algorithms We also received invaluable assistance from people who got the source code and sent in patches and explicit bug reports The VMD developers would like to thank Axel Berg Andrew Dalke Rick Kufrin Joe Landman Clare Macrae Lukasz Salwinski Stephen Searle Charles Schwieters Michael Tiemann Raymond de Vries and Simon Warfield for their bug fixes and correspondence 1 6 Copyright and Disclaimer Notices VMD is Copyright 1995 2002 Theoretical Biophysics Group and the Board of Trustees of the University of Illinois Portions of this code are copyright 1997 1998 Andrew Dalke The terms for using copying modifying and distributing VMD are specified by the VMD License The license agreement is distributed with VMD in the file LICENSE If for any reason you do not have this file in your distribution it can be downloaded from http www ks uiuc edu Research vmd current LICENSE html Some of the code and executables used by VM
78. al biology which provides tools to allow collaboration between researchers down the hall or around the world Anyone with access to the internet and a standard web browser can join BioCoRE and create or be added to research projects and information about a particular project is shared among all members of that project More information is available at the BioCoRE home page e NAMD A parallel object oriented molecular dynamics code designed for high performance simula tion of large biomolecular systems NAMD uses the CHARMM force field and file formats compatible with both CHARMM and X PLOR NAMD supports both periodic and non periodic boundaries with efficient full electrostatics multiple timestepping constant pressure and temperature ensemble simulation methods More information is available at the NAMD home page e JMV JMV is an easy to use Java based molecular viewer which uses Java3D to provide hardware accelerated rendering of molecules JMV is designed as component software and can be used within other programs or as a standalone application More information is available at the JMV home page e MDTools MDTools is a collection of programs scripts and utilities provided for researchers to make various modeling and simulation tasks easier More information is available at the MDTools home page http www ks uiuc edu Research biocore http www ks uiuc edu Researach namd 3http www ks uiuc edu Research jmv http ww
79. also adjust the scaling since there is typically an optimum position for a molecule for a given set of stereo parameters 80 Chapter 7 Scene Export and Rendering One of the most common tasks performed by users of VMD is producing images which can be loaded into other programs or used in printed documents posters slides and transparencies The Render form provides a simple mechanism for generating image files from snapshots of the VMD graphics window and through the use of external rendering and ray tracing programs 7 1 Screen Capture Using Snapshot The simplest way to produce raster image files in VMD is to use the Snapshot feature The snapshot feature captures the contents of the VMD graphics window and saves them to a raster image file On Unix systems the captured image is written to a 24 bit color SGI RGB file On Windows systems the captured image is written to a 24 bit color Windows Bitmap or BMP file To use the snapshot feature simply open the Render form 4 4 12 and choose the snapshot option VMD will capture the contents of the graphics window and attempt to save the resulting image to the filename given in the Render form You may find that it is important not to have other windows or cursors in front of the VMD graphics display when using snapshot since the resulting images may include obscuring windows or cursors This is a platform dependent behavior so you will need to determine if your system d
80. ame 0 the frame being compared set compare atomselect mol protein set num_steps molinfo mol get numframes for set frame 0 frame lt num_steps incr frame get the correct frame compare frame frame compute the transformation set trans_mat measure fit compare reference 151 To use this load a molecule with an animation for example VMDDIR proteins alanin DCD from the VMD distribution Then run print_rmsd_through_time Example output is shown here T do the alignment compare move trans_mat compute the RMSD set rmsd measure rmsd compare reference print the RMSD puts RMSD of frame is rmsd vmd gt print_rmsd_through_time RMSD RMSD RMSD RMSD RMSD RMSD RMSD RMSD RMSD RMSD RMSD RMSD ed of of of of of of of of of of of of J 11 5 In order to fine tune color parameters one typically needs more sophisticated controls than those offered in the GUI For this reason VMD provides a number of scripting level commands for color access These commands will be discussed in detail in chapter 8 but to give you a flavor for their use here are a couple of examples that you may find useful right away Most things can be done with color 88 3 4 and colorinfo 8 3 5 commands 11 5 1 Changing the color scale definitions Suppose that of the 1024 colors the first 511 should be red then 2 whites and finally 511 blues You can use the color
81. ample of VMD displaying this protein You can use the mouse to manipulate the structure in the display window There are three basic mouse modes 84 1 1 rotation translation and scaling The mode can be changed from the Mouse menu in the main form or by pressing r t or s on the keyboard while the mouse is in the graphics window While experimenting note how the cursor changes to indicate the mouse mode In rotation mode the left mouse button controls rotation about axes parallel to the screen and the middle button controls rotation about the axis perpendicular to the screen In translation mode the left mouse button controls translation parallel to the screen while the middle button controls 14 Figure 2 1 Sample VMD session displaying myoglobin translation in and out of the screen Finally in scaling mode both the left and middle buttons control global scaling when the mouse is moved left or right but the middle button causes larger changes By default molecules are displayed in a lines representation colored by atom type Suppose you would like to view the myoglobin structure with its protein backbone represented as a tube the heme represented as licorice the SO ion and CO molecule represented as van der Waals spheres and histidines 64 and 93 represented as CPK models First open the Graphics form 84 4 7 by selecting the Representations item in the the graphics menu of the VMD main form Type backbone in the Selecte
82. an also be pickled when restored they will be unassigned to any Molecules 130 Chapter 10 Vectors and Matrices Tcl does not handle mathematical expressions very well It is slow at evaluating expressions and provides no facility for handling vectors or matrices Since the latter two are needed for structure analysis we have added routines to manipulate them A vector in VMD is a list of numbers All of the vector routines but one will work with vectors of any length veccross will only use vectors of three numbers A matrix is a 4x4 collection of numbers stored as a list of 4 vectors of 4 numbers in row major form Following are descriptions and examples of all the commands For more examples of vectors though without much documentation the script used to test the vectors implementation is located at env VMDDIR scripts vmd test vectors tcl Since Tcl is slow at math some of these commands have been reimplemented in C The original definition is in the vmd script distribution but it is redefined later on inside VMD At times the speedup is a factor of 40 or more These commands are noted by C 10 1 Vectors e veczero Returns the zero vector 0 0 0 Example vmd gt veczero Info 000 e C vecadd v1 v2 v3 vn Returns the vector sum of all the terms Examples vmd gt vecadd 1 2 3 4 5 6 7 8 9 11 11 11 Info 147 vmd gt vecadd 0 1 0 2 0 4 0 8 1 1 2 3 3 1 4 1 Info 4 1 2 2 6 4
83. and radius can be modified independently The radius of the sphere drawn in CPK mode is by default smaller than the sphere drawn in VDW mode but this radius can be made larger Since a sphere is drawn for each atom it will always be slower than the VDW option but we will work on performance for future versions If the values for a sphere or bond attribute are too small then those objects will not be drawn 5 1 8 Licorice Licorice draws the atoms as spheres and the bonds as cylinders The difference between this and CPK is that the sphere radius is not controllable instead it is made the same size as the bond This makes for a nice smooth transition and is one of the most often used representations It can be rather slow for large molecules 5 1 9 Tube There are two ways to draw a Tube representation one for proteins and the other for nucleic acids The protein tube is a smooth curve through the selected Ca positions and the nucleic acid tube is a smooth curve through the backbone phosphates The protein tube is a spline curve that passes through all the Cas in a protein fragment Five evenly spaced interpolation points are found along the curve to break the curve connecting the two Cas into six line segments If the first Ca is selected the first three segments are colored by the color assigned to that Ca If the second Cg is selected the last three segments are colored by the color of the second Ca The nucleic acid tub
84. aphical display to use The possible display devices include win a standard graphics display window text do not provide any graphics display window cave use the CAVE virtual environment for display forms are disabled caveforms use the CAVE virtual environment for display and with forms enabled This is useful with display machine 0 for remote display of the forms when the CAVE uses the local screen none same as text It is possible to use VMD as a filter to convert coordinate files into rendered images by using the dispdev text and e options dist z Specify the distance to the VMD image plane height y Specify the height of the VMD image plane pos x y Specify the position for the graphics display window The position x y is the number of pixels from the lower left corner of the display to the lower left corner of the graphics window size x y Specify the size for the graphics display window in pixels nt Do not display the VMD title at startup eofexit Make VMD exit when EOF on stdin is reached for example when a script is redi rected to VMD The combination vmd dispdev text eofexit lt input tcl gt output log is useful for batch mode scripting 156 e startup filename Use filename as the VMD startup command script instead of the default vmdrc or vmd rc file e debug level Turn on output of debugging messages and optionally set the current debug level 1 few
85. aving to edit the VMD code The file format which is part of the Raster3D documentation describes a simple collection of triangles spheres and cylinders with either flat or spherical ends Each shape is colored by an RGB triplet Certain newer Raster3D objects are ignored such as quadrics Also nearly all of the header information is ignored most notably the viewing matrix Raster3D uses many cylinders with spherical rounded ends VMD deliberately omits these rounded ends since the resultant image would be very slow to render interactively VMD uses a fixed size palette of colors each triplet is converted into its nearest indexed color This may cause images to be colored slightly differently than expected 22 Chapter 4 User Interface Components VMD provides several methods for the user to control and interact with the molecular display The primary methods are by using the mouse either in the graphics window or in the different graphical user interface GUI forms provided by the program In addition to the mouse VMD also supports a number of more advanced input devices such as the Spaceball Magellan and Phantom which provide the ability to manipulate molecules with six degrees of freedom Some devices such as the Phantom can also provide haptic sense of touch force feedback VMD also provides a text console interface for executing built in commands or running scripts This chapter describes how to use the mouse based user
86. axes get_location Returns a string object corresonding the current location of the axes set_location location Set the location of the axes using one of constants defined in the module 9 5 3 color Python operations available from the color module used to change the color definitions color maps or edit the color scale All rgb and color scale values should be in the range 0 to 1 categories Returns a list of available color categories get_colormap name Returns a dictionary of name color pairs for the given color cate gory set_colormap name dict Change the color definitions for the colors in the given color category The keys in dict must come from the keys listed by get_colormap for that color category though not all keys need be listed The values must be legal color names get_colors Returns a dictionary whose keys are all the legal color names and whose corresponding values are the RGB values of the color represented as a 3 tuple set_colors dict Changes RGB values for colors in VMD Keys must be chosen from the keys returned by get_colors Values must be 3 tuples of floats 120 scale_method Returns the current color scale method scale_methods Returns a list of all available color scale methods scale midpoint Returns the current color scale midpoint scale_min Returns the current color scale minimum scale_max Returns the current color scale maximum set_scale method midpoint mi
87. ay form The image should switch to two images nearly superimposed but slightly offset 6 3 6 Problems with stereo on some SGI machines SGI machines running versions 5 X or early versions of 6 X of IRIX may require patches for their OS in order to run crystal eyes stereo 6 3 7 Stereo Parameters A stereo image is generated by drawing two images from two different perspectives one from the left eye and one from the right The images are made by finding the view that would be seen by someone located inside the scene The method uses two parameters to find the view the eye separation and the focal length The first defines the distance between the eyes and gives the parallax effect Setting the separation to 0 will result in a flat 2D image while setting it too large will give most people a headache 79 The graphics model used by VMD assumes the eyes looking in front of the viewer and focusing at the same point the focal length away If the focal length is 0 the viewer s eyes are crossed and looking at each other A larger focal length will often help in creating a viewable image The two parameters can be changed with the text commands display focallength and display eyesep or using the Display form 4 4 6 In general try to make the eye separation as large as possible without giving the viewer a migrane and try to vary the focal length to cut down on double images It may often help to translate the molecule forward or backward and
88. bonds between atoms will always color each half of the bond separately using the color of the nearest atom for each half Table 5 3 lists the different coloring methods available The description for each method explains the source of the information used to determine the color 5 2 3 Coloring by color categories The default method is to color by the atom name The way it works is that there is a color category called Name which contains a list of all the atom names e g CA N O5 and H that have been loaded into VMD Each name is assigned one of the 16 main colors e g cyan blue red and white When the drawing representation needs a color for a specific atom it looks in the appropriate color category and finds that CA is colored cyan N is blue and so on Most of the coloring methods are based on color categories so coloring by ResName colors each residue name differently SegName colors each segment differently and so on The mapping 63 Method Description Name Atom name using the Name category Type Atom type using the Type category ResName Residue name using the Resname category ResType Residue type using the Restype category ResID Residue identifier using the resid mod 16 for the color SegName Segment name using the Segname category Molecule Molecule all one color using the Molecule category Structure Helix sheet and coils are colored differently Chain The one character chain identifie
89. bout z axis j Cntl n rotate x by 2 rotate 2 about x k Cntl p rotate x by 2 rotate 2 about x l Cntl f rotate y by 2 rotate 2 about y h Cntl b rotate y by 2 rotate 2 about y g rotate z by 2 rotate 2 about z G rotate z by 2 rotate 2 about z Cntl a scale by 1 1 enlarge 10 percent Cntl z scale by 0 9 shrink 10 percent Table 4 2 Rotation amp scaling hot keys The Windows version of VMD uses the vendor provided SpaceWare driver exclusively and oper ates somewhat differently from the serial interface software used on Unix The SpaceWare software runs as a separate process from VMD and must be started and fully operational before VMD is run At startup time VMD attempts to open the SpaceWare interface displaying the success or failure of initialization as it occurs with applicable diagnostic information The SpaceWare driver provides detailed control over the sensitivity and configuration of the Spaceball In order to use the Spaceball function keys with VMD the SpaceWare driver must be set to send button events as Function 1 and Function 2 at a minimum Once set it should be possible to cycle through the various VMD Spaceball operational modes as described below 4 3 Using the Joystick in the Graphics Window The Windows version of VMD provides support for the Windows joystick driver and will enumerate all available joystick devices at startup time The joystick interface employed in
90. bove See Section 11 2 for more on using atom selections for fun and profit 90 8 33 axes The axes orthogonal vectors pointing along the x y and z directions can be placed in any of 5 locations on the screen or turned off e locations Return a list of possible locations e location Get the current location e location lt off origin lowerleft lowerright upperleft upperright gt Position axes Also though this may seem like a likely command for changing the color of the axes this function can only be performed from the Colors form or by the color command see below Future implementations of VMD may change this 8 3 4 color Change the color assigned to molecules or edit the color scale All color values are in the range 0 1 Please see the section on coloring 5 2 for a full description of the various options e category name color Set color of object specified by category and name to color e scale method lt scale_name gt Set type of scale to use for coloring objects by values They are RGB Red to green to blue BGR Blue to green to red RWB Red to white to blue BWR Blue to white to red RWG Red to white to green GWR Green to white to red GWB Green to white to blue BWG Blue to white to green BIkW Black to white WBIk White to black e scale midpoint z Set midpoint of color scale to x in the range 0 1 e
91. browser located on the left side of the form Click on the name to see the color to which it is mapped To change the mapping click on a new color in the browser to the right of the Category browser For instance to change the background to white pick Display in the left browser and Background in the center one The right browser will indicate the current color which is initially black for the background Scroll through the right browser and select white to change the background Changing the RGB Value of a Color The Color Definitions tab at the bottom of the Color menu lets you change the RGB definition of the 17 palette colors Select a color to edit using the browser at the bottom left corner of the menu then slide the three sliders to set the amount of each red green and blue component Default restores the original color definition and Grayscale toggles whether or not the three sliders will move together as a unit Color definitions are immediately updated in the graphics window so you can see the result of your editing right away Color Scale Several of the coloring methods in the graphics form e g Beta Index Position are used to color a range of values as opposed to a list of names The actual coloring is determined by the color scale 5 2 4 The color scale used to assign these colors is set in the Color Scale tab of the color menu Choose one of the ten color scales from the chooser and adjust the Offset and
92. c file The Windows version of VMD works similarly though the startup file is named vmd rc A good use of the vmdre file is to specify which VMD menus you would like to have open when you start VMD and where they should be placed see section 8 3 18 for information on usage 86 8 2 Tcl Tk The standard distribution is compiled with Tcl which add a complete scripting language including variables loops and conditionals along with a standard method for communicating with other programs via standard TCP IP sockets Versions 1 2 and later also include the Tk toolkit w for creating menus with buttons bound to one s favorite actions Tcl short for Tool Command Language developed by John Ousterhout is an embeddable and extensible scripting language In other words Tcl sits inside VMD as a language interpreter where it can execute its standard language commands or the various VMD specific extensions VMD uses Tcl and Tk version 8 0 4 We refer you to http www scriptics com for more information about Tcl 8 3 Tcl Text Commands All Tcl commands in VMD are composed of one or more words or phrases separated by white space and terminated by a newline In Tcl a phrase is text surrounded by double quotes or by a matching set of open and close braces The first word of each command indicates the general purpose for the command and the following words specify the exact type of command to execute Table 8 1 summarizes the text commands
93. c rendering This can bed faked by translating the camera very far away from the molecule followed by zooming the camera so that the image size is acceptable again This will significantly decrease the perspective effect but is not a true orthographic projection e The rendering commands do not currently support stereo output so even if the display is currently in stereo mode a non stereo perspective will be used for the rendering program input script Rendering in stereo is accomplished by setting the display mode to left then rendering an image followed by right and rendering again This will yield a stereo pair to the best of VMD s ability with the external rendering program e The near and far clipping planes are ignored by all external renderers e Text is generally not available as a graphics primitive in the renderer scene languages so label text will not appear although the lines of bond angle etc labels will be drawn The only exception is in Postscript output which supports text output e Dotted spheres are not drawn with dots e The background color may be black as not all output formats support a background color other than black 83 7 4 One Step Printing A frequently asked question is How can I quickly get a printout of the VMD Display There are several one step solutions to this problem a few are listed below e Choose the snapshot option and type convert s eps s ps lpr s ps in t
94. class defined in the Molecule module is designed to make it easy to keep track of the reps in a molecule and to update reps in many molecules simultaneously The way it works is to create a MoleculeRep instance then add it to as many molecules as you want using the Molecule addRep method The only operations on MoleculeRep objects is to change their properties when this occurs all molecules to which the rep has been added will be updated Deleting a MoleculeRep instance has no effect A list of MoleculeRep instances for a given molecule can be gotten from the Molecule reps method The MoleculeRep class provides the following methods 129 _init__ style defStyle color defColor selection defSelection material defMaterial Initialize the Rep object with optional style color selection and material properties MoleculeRep objects also have attributes with the same names as the above keywords these can be used to query the state of the rep Don t set these attributes directly use the change methods below instead changeStyle style changeColor color changeSelection selection changeMaterial material Set the draw style color atom selection and material for this rep If the rep is assigned to any molecules the molecule rep will be updated accordingly style must be a valid draw style see the Style functions below In the following example we load a molecule add a new transparent VDW rep to the molecule then change t
95. cleic acids lipids and membranes VMD runs on all major Unix workstations Apple MacOS X and Microsoft Windows Online information about VMD is available from http www ks uiuc edu Research vmd List of key VMD features General molecular visualization At its heart VMD is a general application for displaying molecules containing any number of atoms and is similar to other molecular visualization programs in its basic capabilities VMD reads data files using an extensible plugin system and supports Babel for conversion of other formats User defined atom selections can be displayed in any of the standard molecular representations Displayed graphics can be exported to an image file to a scene file usable by ray tracing programs or to a geometry description file suitable for use with 3 D printers Visualization of dynamic molecular data VMD can read molecular trajectories from AMBER Charmm Gromacs NAMD X PLOR file formats The data can be used to animate the molecule or to plot the change in molecular properties such as interatomic distances angles or dihedrals over time Interactive molecular dynamics simulations VMD can be used as a graphical front end to a live molecular dynamics MD program running on a remote supercomputer or high performance workstation VMD can interactively apply and visualize forces in an MD simulation as it runs Molecular analysis commands Many commands are provided for molecular analysis The
96. cs systems fully support this feature On platforms lacking the multisample capability there may be alternate ways to perform full screen antialiasing by selecting an option in the display driver setup Windows machines most commonly place these controls in the display driver configuration panel e Depth Cueing Turns depth cueing on or off Depth cueing causes distant objects to blend into the background color in order to aid in 3 D depth perception The depth cueing factors are currently fixed with the depth cueing starting at the default front clipping plane ending at the default rear clipping plane In order to get the desired visual effect one must scale and translate the molecule Scaling up the molecule will increase the amount of depth cueing effect that is visible since it will occupy a larger depth range Scaling the molecule size down decreases the depth cueing effect Translating the molecule into and out of the screen will cause it to blend into and out of the background color e Culling Turns backface culling on or off This feature is primarily used to accelerate ren dering performance on software based implementations of OpenGL such as Mesa Backface culling actually reduces performance on some hardware renderers so you ll have to use your own best judgement on whether or not it is helpful to use on your specific computer system e FPS This option enables or disables on the fly display of the achieved VMD rendering f
97. cs which may be modified include e Reset View This menu item can be used to force VMD to reset the scene back to the default viewing orientation and scale as is done when a molecule is first loaded e Stop Rotation This menu item stops autorotation of the scene The scene can be au torotated by quickly dragging the mouse while briefly depressing and releaseing the mouse button leaving the scene spinning until it is stopped either by this menu item or by further mouse interactions e Perspective The view of the scene can be Perspective or Orthographic In the perspec tive view the default objects which are far away are smaller than those near by In the orthographic view both objects appear at the same scale Note that several of the sup ported external rendering programs do not support orthographic rendering As such it may be necessary to fake it by translating the scene far away from the camera and apply a zoom factor This has the effect of significantly reducing the perspective while not truly an orthographic view 35 Figure 4 4 The Display menu e Antialiasing Turns antialiasing on or off Antialiasing helps smooth out the jagged ap pearance of displayed geometry resulting from the inherently discrete pixels on the display device The antialiasing feature is only available on platforms which support full screen an tialiasing sometimes known as multisample antialiasing Several SGI and Sun graphi
98. d gt betacolor_distance sel 0 0 0 Then go to the graphics menu and set the Coloring Method to Beta 11 4 RMS Fit and Alignment When one has two similar structures one often wants to compare them What s the difference between two X ray structures How much did the structure change during a simulation To answer these questions you must first figure out how to compare two structures which usually means that you must find the root mean square deviation RMSD Formally given N atom positions from structure x and the corresponding N atoms from struc ture y with a weighting factor w i the RMSD is defined as 1 N Maes a 1272 RMSD N 2 y et Using this equation by itself probably won t give you the answer you are looking for Imagine two identical structures offset by some distance The RMSD should be 0 but the offset prevents that from happening What you really want is the minimum RMSD between two given structures the best fit There are many ways to do this but for VMD we have implemented the method of Kabsch Acta Cryst 1978 A34 827 828 or see file Measure C in the VMD source code This algorithm computes the transformation needed to move one structure onto another in order to minimize the RMSD With the mathematical prerequisites behind us we still need to be able to specify how to choose the atoms to compare If you want to compare all the atoms in both structures and they both have the same number o
99. d Atoms text entry area and press enter to select the myoglobin backbone All of the protein except for the backbone will disappear Choose Tube in the drawing method chooser to display the backbone as a tube and choose Backbone in the coloring method chooser to color the tube with the predefined backbone color Press the Create New button This creates a new representation in the browser identical to the original one The new representation can be changed without affecting others so clear the atom selection text area and enter resname HEM to select the heme At this point the heme isn t visible because it cannot be drawn as a tube so choose the Licorice drawing method to make it appear Click on Create New again to make a new view and enter resname S04 CO to select the SO ion and the CO molecule and choose the drawing method VDW to render them as Van der Waal spheres Once again press the Create New button and enter resid 93 64 to select the two histidines and render them as CPK If you followed all that then congratulations you have made a nice image of myoglobin With further experimentation you should be well on your way to learning how to use VMD 2 3 Rendering an Image Find an interesting view of the molecule from the previous tutorial Suppose you want to publish this view in a journal and want a high quality image or you want to make a large poster Taking the 15 image from a screen capture often results in a
100. d as the first argument to the callback function To unregister a callback use the same name func and userdata as were used when the callback was registered The same function may be registered multiple times with different userdata objects 9 4 1 Using Tkinter menus in VMD The object oriented interface to Tk known as Tkinter is included with the embedded Python interpreter You can create Tkinter GUI s in the usual way with one caveat the Tkinter mainloop method should never be called as it will interfere with VMD s own event loop VMD will take care of updating your GUI windows for you 9 5 Controlling VMD from Python Commands for controlling VMD from Python are organized into modules which roughly correspond to Tcl commands Importing all the commands in a module is not recommended as some of the functions e g listall overlap All commands are listed below with the name of the module given by the section heading 9 5 1 animate Python operations available from the animate module used to control which coordinate frames are displayed e forward e reverse forward and reverse causes VMD to start animating frames automatically in order of increasing or decreasing frame number respectively e once e rock e loop once rock and loop control how frames are cycled when VMD is animating a series of frames once causes VMD to stop when it reaches the first or last frame rock causes VMD to rev
101. d in the proteins directory of your distribution Again use the Files form to do this Both of the molecules will be loaded side by side Go to the Graphics form and change the selection so it the same as the first i e resname HEM CO or resid 64 93 The two molecules are almost atop each other making it hard to distinguish the two so change the colors to simplify things First in the Graphics form change the Coloring method to Molecule Use the Selected Molecule chooser to change the mbco pdb Coloring method to Molecule as well Open the Color form 4 4 10 and scroll the Category browser down until the line Molecule is visible Click on it then click on the line which says mbco pdb There may be two mbco lines if the file had been loaded before in this session Scroll the Colors browser up to click on blue This should change one of the molecules in the display to blue Next click on the last line in the Names chooser which says star pdb This time choose red from the Colors chooser The display should be much easier to understand The myoglobin with the bound CO is in blue and the intermediate state is in red At this point it is easy to measure the change in position between the two different states by using the middle mouse button to pick the same atom in the two conformations Once that is done it is easy to point out one interesting aspect of the way VMD handles the graphics Go to the main form select
102. ded to the list they are assigned a unique increasing id The first object added is assigned O the second is assigned 1 etc The commands which add an item return its value point z y z Draws a point at the given position line x1 y1 z1 x2 y2 z2 width u style lt solid dashed gt Draws either a solid or dashed line of the given width from the first point to the second By default this is a solid line of width 1 cylinder x1 y1 21 x2 y2 22 radius r resolution n filled lt yes no gt Draws a cylinder of the given radius default r 1 from the first point to the second The cylinder is actually drawn as an n sided polygon If the filled option is true default the ends are capped with flat disks otherwise the cylinder is hollow cone basez basey basez tipz tipy tipz radius r resolution n Draw a cone with the center of the base at the first point and the tip at the second The radius default r 1 determines the width of the base As with cylinder the resolution determines the number of polygons used in the approximation triangle x1 y1 21 x2 y2 23 23 y3 23 Draws a triangle with endpoints at each of the three vertices trinorm x1 y1 z1 x2 y2 23 x3 y3 23 nz1 y1 z1 nx2 ny2 nz3 nx3 ny nz Draws a triangle with endpoints at each of the first three points The second group of three values specify the normals for the three points This is used for making a smooth shading across the triangle s
103. des 14 17 23 27 104 mouse mode 34 move 39 atom 35 fragment 35 highlighted rep 35 molecule 35 residue 35 object menus 34 pick information 42 rocking 104 using 23 movies 84 MSMS representation 56 60 NAMD 10 files 20 33 orthographic view 35 77 output format 16 PCRE 13 perspective view 35 77 picking angles 24 25 atoms 17 24 25 bonds 17 24 25 center 25 dihedrals 24 25 distances 17 hot keys 27 modes 17 24 move atom 25 move fragment 25 move highlighted rep 26 move molecule 26 move residue 25 query 25 text command 104 play command 86 104 110 156 plot geometry monitors 43 points representation 56 57 postscript 82 84 Pov Ray 82 Python 13 interface 114 Tkinter 119 version 114 python environment variables 114 libraries 114 Numeric 115 127 startup 156 Tkinter 115 quit 29 command 94 105 quoting 69 Radiance 82 radius of gyration 146 Ramachandran plot 53 raster image creation 81 Raster3D 22 82 84 105 RayShade 82 regular expression 70 76 X PLOR conversion 76 remote 165 connection 97 detaching 50 killing 50 modifiable parameters 50 options 97 simulation control 97 render command 105 110 form 16 46 Python module 126 rendering 15 46 81 caveats 83 exec command 105 in background process 46 method 82 105 stereo 84 Renderman 82 representation 55 101 add new 38 add
104. dify atom coordinates without going through the atom selection interface e atomselect molid frame selection Returns an array of int s representing flags for on off atoms in the given atom selection The syntax for the selection is the same as for the AtomSel class An array of this form can be used in conjunction with the Numeric take function to get selected coordinates from a timestep Creating the array in this way can be 50 100 times faster than converting from an AtomSel object 127 9 6 High level Python Interface VMD provides three modules for accessing and manipulating VMD state with objects that represent important entities These objects can be thought of as references for the actual object within VMD you can create as many references as you want and delete them but modifying the reference changes the actual state of VMD This is different from the AtomSel class where each AtomSel instance is independent of the molecules and reps in VMD These proxy classes are written in pure Python and use the lower level built in interfaces to communicate with VMD 9 6 1 Molecule The Molecule class is a proxy for molecules loaded into VMD Most operations raise ValueError if the proxy no longer refers to a valid molecule i e if the molecule has been deleted Molecule instances provide the following methods e _init__ id None Creating a new Molecule instance with no arguments will create a new empty molecule in VMD Passing a valid m
105. ds set attribute_list values_lists Set the attributes in the attribute list with the values gven in the values lists For each attribute there must be a list of values each value list must contain either one element or an element for each atom in the selection getbonds returns a list of bondlists each bondlist contains the id s of the atoms bonded to the corresponding atom in the selection setbonds Set the bonds for the atoms in the selection the second argument should be a list of bondlists one bondlist for each selected atom move 24 matrix Applies the given transformation matrix to the coordinates of each atom in the selection moveby offset move all the atoms by a given offset Imoveby offset_list move each atom by an offset given in the list moveto position move all the atoms to a given location Imoveto position_list move each atom to a point given by the appropriate list element writepdb filename write the selected atoms to a pdb file New in VMD 1 8 writepdb requires a filename omitting the filename no longers returns the PDB data as a string To get the PDB data as a string first write to a file then enter the fol lowing commands set fd open filename r set s read fd close fd The text will be contained in the variable s update Update the atom selection based on the frame for the selection the frame can be specified using the frame option as described a
106. ds 74 Keyword Arg Description hetero bool not protein or nucleic hydrogen bool name 0 9 H large bool protein and not small or medium medium bool residues named VAL THR ASP ASN PRO CYS ASX PCA HYP neutral bool residues named VAL PHE GLN TYR HIS CYS MET TRP ASX GLX PCA HYP polar bool protein and not hydrophobic purine bool residues named ADE A GUA G pyrimidine bool residues named CYT C THY T URI U small bool residues named ALA GLY SER surface bool protein and not buried helix bool atom s residue is an alpha helix helix_3_10 bool atom s residue is an alpha helix extended _beta bool atom s residue is a beta sheet bridge_beta bool atom s residue is a beta sheet rasmol Rasmol translates Rasmol selection syntax to VMD string alpha_helix bool atom s residue is an alpha helix pi_helix bool atom s residue is a pi helix helix bool atom s residue is an alpha or pi helix sheet bool atom s residue is a beta sheet turn bool atom s residue is in a turn conformation coil bool atom s residue is in a coil conformation structure str single letter name for the secondary structure phi psi float backbone conformational angles within str selects all atoms within a specified distance of a selection i e within 5 of name FE exwithin str exclusive within equivalent to within 3 of X and not X same str selects all atoms which have the same keyword as the atoms in a given
107. e Highlighted Rep is the most flexible it moves all atoms in the highlighted representation in the browser window of the Graphics form Atoms are moved by clicking and dragging with the left mouse button If the shift key is held while the mouse is moved the affected atoms are rotated about the selected atom Rotating atoms with the left button rotates about the x or y axis of the screen rotating with the middle or right button rotates about an axis perpendicular to the screen Note that there is currently no way to undo Move operations so the atom coordinates should first be saved using the Edit form e Force Mode applies a force to selected atoms These forces will be visible only if an IMD connection has been established Clicking and dragging with the left mouse button will apply a force to the selected Atom Residue or Fragment as in Move Mode Clicking with the middle or right button will cancel the force on the selected atoms e Move Light Mode allows the lights to be positioned around the scene Individual lights are turned on or off in the Display form Selecting one of the lights in the Move Light menu rotates the selected light about the origin Pressing the Done button puts the mouse into Pick Atoms mode The Move Light Mode can also be cancelled by changing into any other mouse mode 4 4 6 Display Menu The Display menu controls many of the characteristics of the graphics display window The char acteristi
108. e name When the graphing program finishes the temporary file is deleted The default setup causes VMD to freeze until the graphing program finishes It is possible to get around this by including an amp at the end of the graph command as in xmgrace 4s amp This may sometimes cause a problem because VMD might delete the file before the program finishes reading it If this is a problem try csh c xmgrace 4s amp sleep 4 to cause VMD to wait a few seconds before deleting the file You may have to increase the delay depending on the file size and type of program used You may also try variations on the theme for instance csh c xterm e vi 4s sleep 4 will bring up a vi window with the data file 4 4 10 Color Form VMD maintains a database of the colors used for the molecules and the other graphical objects in the display window The database consists of several color categories each color category contains a list of names and each name is assigned a color The assignment of colors to names can be changed with this form There are 16 colors as well as black the VMD color map and this form 43 Color Controls lr Assign colors to categories Categories Colors Figure 4 9 The Color form can also be used to modify the definitions of these 17 colors For more about colors see the chapter on Coloring 5 2 To see the names associated with a color category click on the category in the Category
109. e is constructed in the same manner except that the phosphate atoms are used The two controls set the spline radius and resolution and have the same meaning as they did in the Bond control However if the bond radius becomes 0 or the bond resolution is 2 or less then the spline is drawn as a simple line This make moving and rotation the image much faster It is possible to pick with the mouse the Ca which defines the tube by clicking near the middle of the six tube segments which are associated with that atom 5 1 10 Trace This representation applies much of the procedure used to construct the Tube In the end it connects the alpha carbon atoms of successive residues by cylindrical segments with adjustable width In the case of nucleic acids it is the P backbone atoms which are connected As always the segment pieces are colored according to the atom they are associated with If the cylinder radius is made 0 00 then the cylinder segments are replaced with lines Note the Trace option is useful for people doing threading or protein folding work who only look at the Ca coordinates and residue names for then they don t have to build the sidechains necessary to see their structure Also people working on polymers can fake their structure by naming everything CA in the PDB file and then using Trace 5 1 11 Ribbon The Ribbon representation is similar to Tube in that it follows the same spline curve for both the prot
110. e is reached Gromacs GRO and G96 files can be loaded on their own since they contain the necessary atom data and coordinates They can also be loaded along with TRR and XTC files to obtain trajectory data Additional coordinates from a PDB CRD or DCD file can be appended to the current coordinate set using the Molecule File Browser form 3 2 What happens when a file is loaded When a coordinate file is loaded by itself i e just a PDB no PSF VMD uses heuristics to replace missing values that would normally be provided by a structure file If necessary VMD does a distance based bond search to determine connectivity A bond is formed whenever two atoms are within R R 0 6 of each other where R and Ra are the respective radii of candidate atoms If both structure and coordinate files are loaded no approximations or guesses are made After the molecule is read in new names are added to the coloring categories 5 2 3 and assigned colors Next bond connectivity is established and the molecule is analyzed to identify its components i e to determine which residues are protein nucleic acids and waters etc A search is then made to connect these into larger fragments of the same type and summary information is printed to the screen An example output for BPTI is Info 1 Analyzing structure Info 1 Atoms 898 Bonds 909 Info 1 Backbone bonds Protein 231 DNA 0 Info 1 Residues 58 Info 1 Waters 0 Info 1 Segments 1
111. e list of molecules so it has the index equal to 2 since we start countin from 0 The molecule representations views are assigned integer number starting with 0 for each molecule which appear in the list on the Graphics form 84 4 7 The representations can be added deleted or changed with the mol command See also sections on molinfo command 8 3 21 for more ways of retrieving information about the representations e new filename options e addfile lt filename gt L options mol new is used to create a new molecule from a file if the optional filename parameter is omitted a plain blank molecule is created with no atoms this can be used to create a canvas for drawing user defined geometry mol addfile is like mol new except that the structure and coordinate data are loaded into the top molecule whichever molecule was loaded last instead of creating a new one Both mol new and mol addfile accept the following set of options type lt type gt Specifies the file type psf pdb etc Tf this option is omitted the filename extension is used to guess the filetype otherwise it overrides what would be guessed from the filename first lt frame gt last lt frame gt step lt frame gt For files containing coordinate timesteps specifies which timesteps to load Timesteps are indexed starting at 0 A step of 1 means all frames in the range will be loaded a step of 2 means load every other
112. e radius is too large the problem of over lapping surfaces between non connected atoms becomes more apparent The second is Detail which should probably be renamed Density as it determines the surface density of the distributions The higher the detail the higher the density The final option is the Method By default the surface is drawn as a collection of points but a point is a pixel in size regardless of the scale of the molecule so when scaled small the surface density appears high and when scaled large the density appears low Method 2 draws little plus signs instead of points which does scale better so the density appears more contant Method 3 draw lines between the surface points that are on the same atom but makes no attempt to connect the two spheres Thanks to Jan Hermans for implementation pointers and thanks again to Jon Leech for the code to compute the uniform point distributions That code was included as part of the 1 x distribution 5 1 19 Off The Off representation draws nothing It is used in place of delete to hide a selection so it can be redisplayed quickly later 5 2 Coloring Methods VMD maintains a database of the colors used for the molecules and other graphical objects which are visible in the display window It keeps track of e color name definitions its RGB value e mappings from a color category to color name so residue name MET is colored yellow e the current color scale red
113. e sure this is a proper selection and has atoms if sel num lt 0 error gyr_radius must have at least one atom in selection gyration is sqrt sum r i r center_of_mass 2 N set com center_of_mass sel set sum 0 foreach coord sel get x y z 4 set sum vecadd sum veclength2 vecsub coord com return expr sqrt sum sel num 0 0 Applying this to the alanin pdb coordinate file vmd gt mol load pdb alanin pdb vmd gt set sel atomselect top all vmd gt gyr_radius sel Info 5 45443 Root mean square deviation Compute the rms difference of a selection between two frames of a trajectory This takes a selection and the values of the two frames to compare proc frame_rmsd selection framel frame2 set mol selection molindex check the range set num molinfo mol get numframes if frame1 lt 0 frame1 gt num frame2 lt O frame2 gt num Y error frame_rmsd frame number out of range get the first coordinate set set sel1 atomselect mol selection text frame frame1 set coords1 sel1 get x y z 146 get the second coordinate set set sel2 atomselect mol selection text frame frame2 set coords2 sel2 get x y z and compute the rmsd values set rmsd 0 foreach coord coords1 coord2 coords2 set rmsd expr rmsd veclength2 vecsub coord2 coord1 divide by the number of atoms and return the result return expr rmsd selec
114. ection commands which take one of three types of strings all the strings for sequence are taken as regular expressions though strings with non alphanumerics must still be quoted to get past the input parser The method works by taking each of the protein and nucleic acid fragments pfrag and nfrag in turn and constructing the one letter amino acid sequence If a regular expression matches any of the sequence the atoms in the matching residues are selected Multiple matches are allowed though they cannot overlap As is usual with regular expressions the largest possible match is made so take care with expressions like C C within and same Two useful types of selection mechanisms available in VMDare within lt number gt of lt selection gt and same lt keyword gt as lt selection gt The first selects all atoms within the specified distance in A from a selection including the selection itself Therefore the command within 5 of name FE selects all atoms within 5 A of atoms named FE One common use for this command is to limit the region of atoms shown on the screen Another is to find atoms that may be involved in interactions For instance protein within 5 of nucleic finds the protein atoms that are nearby nucleic acids Some selections may be sped up by short circuiting 85 3 3 A related atom selection construct is exwithin short for exclusive within The atom selection within 3 of protein and not protein is equiva
115. ections on port port pause If connected cause the simulation to pause 122 e detach If connected detach from the simulation The simulation will continue to run but no more frames will be received until a connection is re established e kill If connected terminate the simulation The connection will also be abolished e transfer rate Set get how often the remote simulation sends coordinate frames to VMD If rate is omitted or is negative no action is taken and the current value is returned A value of 1 corresponds to every frame being sent a value of 2 corresponds to every other frame etc e keep rate Set get how often received coordinates frames are kept by VMD as part of an animation If rate is omitted or is negative no action is taken and the current value is returned A value of 0 means no frames are saved A value of 1 corresponds to every frame being saved a value of 2 corresponds to every other frame etc 9 5 7 label Python operations available from the label module used to create show hide and delete labels for atoms bonds angles or dihedrals e ATOM BOND ANGLE DIHEDRAL Label types defined by the label module for use as the first argument to the add listall show hide and delete methods e add type molids atomids Create a label of the given type molids and atomids must be tuples containing 1 2 3 or 4 integers for ATOM BOND ANGLE or DIHEDRAL labels respectively If the label al
116. ed bool Y is make the molecule drawn fixed bool Y is make the molecule fixed top bool Y is make the molecule top center vector Y get set the coordinate used as the center center_matrix matrix Y get set the centering matrix rotate_matrix matriz Y get set the rotation matrix scale_matrix matrix Y get set the scaling matrix global_matrix matriz Y get set the global rotation scaling matrix view_matrix matrix N get set the overall viewing matrix numreps int N the number of representations selection i string N the string for the i th selection rep 1 string N the string for the i th representation color i colour string N the string for the i th coloring method numframes int N number of animation frames frame int Y current frame number timesteps int Y the number of elapsed timesteps for a connected running simi bond float N the bond energy for the current frame angle float N the angle energy dihedral float N the dihedral energy improper float N the improper energy vdw float N the van der Waal energy electrostatic elec float N the electrostatic energy hbond float N the hydrogen bond energy kinetic float N the total kinetic energy potential float N the total potential energy energy float N the total energy temperature temp float N the overall temperature pressure float Y the simulation pressure volume float Y the simulation volume efield float Y efield alpha float Y
117. ed in section 8 3 2 The optional weight must be either none an atom selection keyword such as mass or a list of values one for each atom in the selection to be used as weights If weight is missing or is none then all weights are taken to be 1 When an atom selection keyword is used the weights are taken from selection1 e center selection weight weight Returns the geometric center of atoms in selection using the given weight e rgyr selection weight weight Returns the radius of gyration of atoms in selection using the given weight The radius of gyration is computed as n TL Tyr E w i r i 0 E w 8 1 i 1 i 1 where r i is the position of the ith atom and F is the weighted center as computer by measure center e minmax selection Returns two vectors the first containing the minimum z y and z coor dinates of all atoms in selection and the second containing the corresponding maxima e rmsd selection selection weight weight Returns the root mean square distance between corresponding atoms in the two selections weighted by the given weight selection and selection2 must contain the same number of atoms the selections may be from different molecules that have different numbers of atoms e fit selection selection weight weight Returns a 4x4 transformation matrix which when applied to the atoms in selection1 minimizes the weighted RMSD between selection and selection2 See section 11 4 2 for mo
118. ein and nucleic acids However it uses additional information the O of the protein backbone 58 or some of the phosphate oxygens for nucleic acids to find a normal for drawing the oriented ribbon There may be some problems with the ribbon definition for nucleic acids as it is possible for the nucleic acid detection routine to label a residue as a nucleic acid even though it does not have phosphate oxygens Given the coordinates of each atom and the offset vector for the ribbon vector the drawing code finds the spline curves for the top and bottom of the ribbon The two splines are connected by triangles and both splines are drawn as small tubes As with the Tube representation the six ribbon segments nearest the given atom are drawn with the color assigned to that atom and the atom can be selected by clicking near the center of those six elements Bond radius and resolution modify the tubes that make up the top and bottom of the ribbon If the radius or resolution get too small the tubes are not drawn this speeds up drawing time by an appreciable amount The line thickness controls the width of the ribbon and make it look like everything from vermicelli to lasagna Additionally the sugars are drawn filled in with triangles This helps highlight the pucker Thanks to Ethan Merrit for the ribbon drawing algorithm taken from Raster3D 5 1 12 Cartoon The Cartoon option produces a simplified representation of a protein based on i
119. en or odd scanlines to display only the left or right eye image at the same time that shutter glasses are polarized in the appropriate way This mode works well with the Eye3D glasses and similar stereo hardware This stereo mode is nice because the only special requirements for the graphics accelerator are that it provide a stencil buffer which is used to generate the alternating scanlines in the final image 6 3 4 Anaglyph Stereo Anaglyph stereo refers to the use of colors to separate the left and right eye views from each other The user must wear glasses with colored lenses such as the red blue glasses one finds at some 78 sci fi and horror movie showings The computer hardware requirements for Anaglyph stereo are currently the same as for CrystalEyes stereo except that LCD shutter glasses and emitters are not required The red blue glasses take the place of the LCD shutter glasses used for the CrystalEyes stereo modes Anaglyph stereo has one major disadvantage when compared with CrystalEyes stereo which is that its color rendition is obviously severely constrained This is just a fact of life with Anaglyph stereo and it is up to the user to use color schemes for their molecules that still look visually pleasing when displayed in Anaglyph stereo mode 6 3 5 CrystalEyes Stereo CrystalEyes stereo refers to a special hardware option available on Silicon Graphics workstations that allows one to view three dimensional objects through the use
120. end ne skip ns molecule_number Delete data for molecule_number beginning with frame nb ending with frame ne with a stride of ns 1 e readdel filename beg nb end nel skip ns molecule_number Read data for molecule_number from filename beginning with frame nb ending with frame ne with a stride of ns 1 over writing existing data 8 3 2 atomselect Atom selection is the primary method to access information about the atoms in a molecule It works in two steps The first step is to create a selection given the selection text molecule id and optional frame number This is done by a function called atomselect which returns the name of the new atom selection the second step is to use the created selection to access the information about the atoms in the selections 88 e list Return a list of all undeleted atom selections e keywords Return a list of all recognized keywords in e macro name selection Create a new singleword atom selection out of existing atom selections name must be a single word starting with a non numeric character and contain no spaces or special characters selection can be any valid atom selection and can even contain other macros You should ensure that your macros do not contain themselves either directly or through a chain of other macros If VMD detects this situation it will abort the evaluation of the atom selection If no selection is given the macro for the given name is returned If no name
121. ent of colors to the names in each of these categories For example to change the color used to draw Arginine residues when molecules are colored by residue you would use the Color form select the Resname category select the Arg name there and then pick the color to use for Arginine s from the list of colors next to the names Category Contents Display The background color Axes The components of the axes Stage The colors for the checkboard stage Name The available atom names color by Name Type The available atom types color by Type Resname The residue names color by ResName Chain The one character chain identifier Segname The segment names color by SegName Molecule The names assigned to each molecule color by Molecule Highlight The protein nucleic and non backbone colors Restype The residue types color by ResType Structure The secondary structure type helix sheet coil color by Structure Labels The different labels atoms bonds etc Table 5 2 Color categories used in VMD 5 2 2 Coloring Methods As described in chapter 5 each representation for a molecule has a specific coloring method The coloring method determines how the color for each atom in the representation view is determined These different methods use the colors assigned to the names in the categories listed above and use those names to color the atoms Molecular drawing methods which also draw the
122. erform the endpoint fixup procedure described above for the regular Bonds representation Instead it is intended to be used in concert with the VDW representation to show bonds that are being created and destroyed during the course of a trajectory 5 1 4 HBonds The HBond representation will draw a dotted line between two atoms if there is a possible hydrogen bond between them A possible hydrogen bond is defined by the following criteria Given an atom D with a hydrogen H bonded to it and an atom A with no hydrogen bonded to it a hydrogen bond exists between A and H iff the distance D A lt dist and the angle D H A lt ang where ang and dist are user defined Only the selected atoms are searched so both the donor and acceptor must be selected for the bond to be drawn Also you ll note that the above doesn t check the atom type of the donor or acceptor the only criterion is if it already has or doesn t have a hydrogen One downfall of the current implementation is that it does an n search of the selected atoms so you probably don t want to show all the HBonds of a very large structure Look for performance improvements in future versions of VMD If you choose an HBonds representation but fail to see any hydrogen bonds it may be because the default angle and distance criterion in VMD are too small so you might want to try increasing the angle value from 20 to 30 degrees and the distance value from 3 to 4 The HBonds are drawn a
123. erse direction each time it gets to the beginning or end loop causes VMD to continue from the beginning when reaches the last frame or from the last frame if it gets to the beginning e style Returns either Once Rock or Loop corresponding to the animation mode VMD is currently in 119 goto frame Set the animation to the given frame and pause the animation prev Step to the next lowest frame then pause next Step to the next highest frame then pause pause Stop animating frames speed value Get set the relative rate at which VMD animates frames value should lie between 0 and 1 If a value less than 0 is given then the speed will not be changed The new value of the speed is always returned skip value Get set the number of frames to skip when animating A value of 1 means every frame is shown 2 means every other frame is shown etc If value is 0 or less no change is made The new value of the speed is always returned is_active molid Returns whether the molecule with the given id is active that is whether it responds to animation or not activate molid trueorfalse Make the molecule with the given id active or not 9 5 2 axes Python operations available from the ares module used to change where the axes are displayed in the graphics window OFF ORIGIN LOWERLEFT LOWERRIGHT UPPERLEFT UPPERRIGHT String constants de fined in the aves module for setting the location of the
124. es are blue Colors in between are linear mixes of the two colors The list of available gradations is given below The minimum of the range of values is linearly scaled and shifted to start at 0 and end at 1 Assume the color scale is RGB For a given value of x in the scale range 0 1 the RGB value is found first from a linear scaling based on the midpoint If x 0 R is 1 for maximum red This continues linearly until x midpoint at which point R is 0 and stays 0 The green component is 0 at both x 0 and x 1 and is 1 at the midpoint Linear scaling occurs in between The blue component is 0 for x lt midpoint and 1 for x 1 An additional term min is added to each of the component terms before they are merged This shifts the final colors more towards white or black Min can take on values from 1 to 1 There is only one color scale used at a time so it is impossible to display objects colored by multiple different color scales 64 Method Description RGB small red middle green large blue BGR small blue middle green large red RWB small red middle white large blue BWR small blue middle white large red RWG small red middle white large green GWR small green middle white large red GWB small green middle white large blue BWG small blue middle white large green BlkW small black large white WBIk small white large black Table 5 4 Available Color Scale Gradations 5 2 5 Materials
125. et operation takes any number of string arguments for each argument it returns a Python list of values corresponding to that string The set operation allows only one property to be changed at a time However you can pass in either a single value which will be applied to all atoms in the selection or a tuple or list of the same size as the atom selection in which case values in the list will be assigned to the corresponding atom in the selection We take advantage of this behavior in the following example by first saving the current value of beta for the selection then setting the value of beta to 5 for all selected atoms and finally resetting the original values using the results of the get gt gt gt from molecule import gt gt gt from AtomSel import AtomSel gt gt gt load alanin pdb gt gt gt CA AtomSel name CA gt gt gt CA name CA gt gt gt len CA 12 gt gt gt CAL 0 5 11 17 23 29 35 41 47 53 59 65 gt gt gt resname resid CA get resname resid gt gt gt resname C ACE ALA ALA ALA ALA ALA ALA ALA ALA ALA ALA C BX gt gt gt resid 1 2 3 4 5 6 7 8 9 10 11 12 116 gt gt gt x y z CA get x y z gt gt gt x 2 1840000152587891 1 4500000476837158 1 9809999465942383 0 54100000858306885 2 8090000152587891 5 9079999923706055 5 04
126. f info exists viewpoints unset viewpoints get the current matricies foreach mol molinfo list set viewpoints mol molinfo mol get center_matrix rotate_matrix scale_matrix global_matrix proc restore_viewpoint global viewpoints foreach mol molinfo list puts Trying mol if info exists viewpoints mol molinfo mol set center_matrix rotate_matrix scale_matrix global_matrix viewpoints mol T Cycle through the list of displayed molecules turning each one on one at a time At the end return the display flags to their original state save the current display state foreach mol molinfo list set disp mol molinfo mol get drawn 139 turn everything off mol off all turn each molecule on then off again foreach mol molinfo list if disp mol mol on mol sleep 1 mol off mol turn the original ones back on foreach mol molinfo list if disp mol mol on mol The last loop which turns the originally drawn molecules back on doesn t turn them on at the same time That s because some commands those which use the command queue redraw the graphics when they are used This can be disabled with the display update see section 8 3 6 for more information Using this the final loop becomes turn the original ones back on display update off foreach mol molinfo list if disp mol mol on mol TL display update on Alternatively since the drawn opt
127. f atoms then the problem is easy N is everything This occurs most often in MD simulations when the only thing different between two structures are the coordinates But what about homologous sequences In this case the number of atoms differ because while the number of residues is the same the sidechains have different numbers of atoms The usual solution is to determine the RMSD based solely on the backbone atoms or in some X ray structures where only the Ca atoms have been determined based on the Ca atoms VMD allows you to fit and align based on any valid atom selection as long as the atom selection specifies the same number of atoms in each molecule being compared 11 4 1 Fit and Alignment Menus To get started with RMS fitting and alignment type vmdrmsd from the command line Alternatively you can source the script called rmsd tcl which should be located in the scripts vmd subdirectory of your VMD installation For example if VMD is installed in usr local lib vmd type the following from the command line source usr local lib vmd scripts vmd rmsd tcl You should now have two new menus titled RMSD calculator and RMS Alignment kindly provided by Alexander Balaeff from the Theoretical Biophysics Group We ll describe the RMSD calculator first 148 RMSD Calculator Figure 11 1 RMS Calculation Tk menu RMSD Calculator The RMSD Calculator menu is used to calculate RMS distances between molecules The upper left corner o
128. f the menu is where you specify which atoms are to be used in the calculation In the input field type the atom selection text just as you would in the Graphics form The checkbox below the input field entitled Backbone only restricts whatever atom selection you typed to just the backbone atoms of the selection in effect it adds and backbone to the atom selection text The upper right corner of the menu has a button labeled RMSD Its effect depends on which of the two radio buttons Top or Average is pressed down If Top is pressed VMD calculates the RMS distance between the top molecule which is usually the last molecule loaded and every other molecule If Average is pressed VMD first computes the average x y z coordinates of the selected atoms in each molecule then computes the RMS distance of each molecule from that average structure Results of the RMS calculations for each molecule are shown in the browser in the bottom half of the menu Note that this list is not updated until you presse the RMSD button so the effects of loading deleting molecules will not be immediately reflected The Total RMSD label at the bottom of the menu shows the average RMSD for all molecules listed RMS Alignment Figure 11 2 RMS Alignment Tk menu 149 The RMS Alignment menu fits molecules based on selected groups of atoms Whereas the RMSD Calculator finds the RMS distance between molecules without d
129. figure them out from context 141 proc geom_center selection set the geometrical center to 0 set gc veczero selection get x y z returns a list of x y z values one per atoms so get each term one by one foreach coord selection get x y z 1 sum up the coordinates set gc vecadd gc coord and scale by the inverse of the number of atoms return vecscale expr 1 0 selection num gc With that defined you can say assuming sel was created with the previous atomselection example vmd gt geom_center sel 0 703168 4 45868 2 43667 Pll go through the example line by line The function is named geom_center and takes one param eter the name of the selection The first line sets the variable gc to the zero vector which is 0 0 0 On the second line of code two things occur First the command selection get x y z is executed and the string is replaced with the result which is 0 710000 4 211000 1 093000 0 026000 3 700000 0 697000 0 541000 4 841000 2 388000 0 809000 4 462000 2 976000 1 591000 4 371000 3 381000 2 212000 5 167000 4 085000 This is a list of 6 terms one for each atom in the selection and each term is a list of three elements the x y and z coordinate in that order The foreach command splits the list into its six terms and goes down the list term by term setting the variable coord to each successive term Inside the loop the value of coord is added
130. file and then execute the commands listed above The text commands for generating left or right views also have equivalents in the GUI under the Stereo option of the Display form 7 6 Making a Movie It is possible to make movies with VMD through the use of Tcl or Python scripts or with the vmdmovie extension included with VMD Several movie making scripts are provided in the VMD script library on the VMD home page These scripts can be used as is or they can be customized to perform complex animation tasks beyond the scope of this user guide In general movies are created 84 by driving render commands with a script producing a sequence of individual image files When the script has completed rendering all of the individual frames the images are ready for import into an animation package or can be converted to one of several popular compressed movie formats by further processing The vmdmovie extension provided with VMD completely automates the movie creation process though it requires a number of software packages be installed in order to do the job Please see the separate documentation on the movie scripts and vmdmovie in the VMD script library 85 Chapter 8 Tcl Text Interface The Tcl text interface provides complete access to all the VMD commands Anything that can be done from the menus can be done with VMD text commands 8 1 Using text commands Text commands can be entered into VMD in several ways e Co
131. format POV Ray produces Targa files which can be converted on SGI machines with the program usr sbin fromtarga Rayshade creates RLE image files which can be converted on SGI machines with usr sbin fromutah Radiance generates an oct file which can be converted with the rview and rpict commands in the Radiance distribution The free program display from ImageMagick see http www wizards dupont com cristy ImageMagick html should be able to read and convert between all of these formats We suggest using either Tachyon or Raster3D as they are generally the fastest programs Both programs are easy to understand and are fast even when rendering very complex molecules The generated scene files are plain text so they are very easy to modify This is most often done to create a larger raster file though some have other global options which you may wish to change For instance by default the Raster3D file turns shadows on We suggest you consult the relevant renderer s documentation to determine what can be modified in the file 82 To actually render the current image into an output file first set up the graphics in VMD just as you wish the output to appear Then either use the Render form 4 4 12 or the following text command to create the input file and start the rendering program going render method filename render command method is one of the names listed in the first column of table 7 1 and filename is the name of the
132. frame waitfor lt frames gt For files containing coordinate timesteps specifies how many timesteps to load before returning the default is 1 If frames is less than the number of timesteps in the file the rest of the timesteps will be loaded in the background on subsequent VMD display updates If frames is 1 or all then all timesteps in all files still in progress will be loaded at once before the command returns Timesteps loaded this way will load faster than if they are loaded in the background If files are still being loaded in the background when the addfile command is issued timesteps from the files in progress will be loaded first volsets lt set ids gt For files containing volumetric data specifies which data sets to load lt set ids gt should be a list of zero based indices molid For addfile only The molecule id of the molecule into which the file should be loaded may be specified It must be the last option specified If omitted the default is the top molecule e load structure_file_type structure_file coordinate_file_type coordinate_file Load a new molecule from filename s using the given format If an additional coordinate file is specified load this file as well New in VMD 1 8 All timesteps from the coordinate file will be loaded before the command returns If this is not desirable use the animate read command for more fine grained control over how coordinate files are loaded Previous version of
133. ging them say by adding some offset and replacing it Following is a function which will do just that proc moveby sel offset set newcoords foreach coord sel get x y z 4 lvarpush newcoords vecadd coord offset sel set newcoords And to use this function in this case to apply an offset of x y z 0 1 2 8 9 to the selection movesel moveby movesel 0 1 2 8 9 However to simplify matters some options have been added to the selection to deal with movements these commands are also implemented in C and are much faster than the Tcl versions These functions are moveby moveto and move The first two take a position vector and the last takes a transformation matrix The first command moveby moves each of the atoms in the selection over by the given vector offset sel moveby 1 1 3 4 The second moveto moves all the atoms in a selection to a given coordinate it would be strange to use this for a selection of more than one atom but that s allowed Example sel moveto 1 1 4 3 The last of those move applies the given transformation matrix to each of the atom coordinates This is best used for rotating a set of atoms around a given axis as in sel move trans x by 90 which rotates the selection 90 degrees about the x axis Of course any transformation matrix may be used A more useful example is the following which rotates the side chain atoms around the CA CB bond by 10
134. given representation in the specified molecule modmaterial rep_ number molecule_number material name Change the current material for the given representation in the specified molecule modstyle rep_number molecule_number rep_style Change the current rendering method style for the given representation in the specified molecule modselect rep_number molecule_number select_method Change the current selection for the given representation in the specified molecule addrep molecule_number Using the current default settings for the atom selection coloring and rendering methods add a new representation to the specified molecule delrep rep_number molecule number Deletes the given representation from the specified molecule modrep rep_number molecule_number Using the current default settings for the atom se lection coloring and rendering methods changes the given representation to the current defaults delete molecule_number Delete molecule s active molecule number Make molecule s active inactive molecule_number Make molecule s inactive 102 e on molecule_number Turn molecule s on make drawn e off molecule_number Turn molecule s off hide e fix molecule_number Fix molecule s e free molecule_number Unfix molecule s e top molecule_number Set the top molecule e cancel molecule_number Cancel loading trajectories e ssrecalc molecule_number Recalculate secondary e rename molecule_number newname
135. gument to all operations is the id of a Graphics molecule Graphics molecules are created using the load command in the molecule module load graphics gt test creates a Graphics molecule named test For vertices and normals a tuple with three float items is required triangle id vi v2 v3 Draw a triangle with the given vertices trinorm id vi v2 v3 n1 n2 n3 Draw a triangle with the given vertices and vertex normals 121 9 5 6 cylinder id v1 v2 radius 1 0 resolution 6 filled 0 Draw a cylinder with endpoints specified by the given points Radius resolution and filled whether the ends should be capped or not may be optionally specified with keyword arguments point id v Draw a point at the given coordinates line id vi v2 style solid width 1 Draw a line between the given vertices Optionally the line style may be specified as either solid or dashed and width may be any positive integer materials id onoff Turns materials on off for subsequent graphics primitives Primi tives lying earlier in the stack are not affected onoff should be either 0 off or 1 on material id name Sets the material for all graphics primitives in this molecule name should be one of the material names returned by material listall color id color Set the color for subsequent graphics primitives color may be 1 a tuple containing three floats specifying the RGB value 2 an
136. hat connected the last two 10 3 Multiplying vectors and matrices There are two commands to multiply a matrix and a vector vectrans and coordtrans They assume the vector is in column form and premultiply the matrix to the vector If the vector contains four numbers the two commands are identical If the vector has three elements a fourth is added a 0 for vectrans and a 1 for coordtrans The difference is that vectors are not affected by translations during transformations while coordinates are 136 e C vectrans m v Multiple the matrix m with the vector v length 4 returns a vector e coordtrans m v Multiple the matrix m with the coordinate v length 3 returns a vector Examples vmd gt vectrans transaxis z 90 1 0 0 Info 3 67321e 06 1 0 0 0 vmd gt vectrans transvecinv 3 4 12 3 4 12 Info 13 0 1 8e 05 5 8e 05 10 4 Misc functions and values Several other terms are added to the vectors package The first is the variable M_PI which contains the value of pi Examples vmd gt set M_PI Info 3 14159265358979323846 vmd gt expr 90 M_PI 180 Info 1 5708 The functions trans_from_rot trans_to_rot trans_from_offset and trans_to_offset are used to get or set a transformation matrix from either a 3x3 rotation matrix or offset vector As currently designed these assume there is no scaling in the matrix The trans_from_offset is identical to transoffset and is present for completeness T
137. he atom selection for the rep to name CA gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt from VMD import from Molecule import bR Molecule bR load proteins brH pdb lt snip gt reps bR reps O reps 0 style Lines gt gt gt gt gt gt gt gt gt vdw MoleculeRep style VDW material Transparent bR addRep vdw vdw changeSelection name CA 9 6 3 Draw Style Methods The syntax for changing the draw style in the MoleculeRep changeStyle method is fairly simple and easy to remember as long as the default values for each style are used however remembering that rep changeStyle CPK 0 5 0 5 8 is the way to set the bond radius sphere radius and sphere resolution for CPK is a little more difficult The Molecule class defines a function for each draw style to make it easier to generate the required strings to pass to the changeStyle methods Each function accepts keyword arguments for specifying the draw style parameters and returns a string suitable for changeStyle 9 6 4 Saving and Restoring Molecule State Molecule and MoleculeRep instances can be saved used the pickle module from the Python stan dard library Molecules will be saved with information about their name files and reps The files themselves are not saved with the molecule they will be reloaded when the molecule instance is recreated using pickle load MoleculeRep instances c
138. he index of the hydrogen atom in the hydrogen bond 8 3 18 menu The menu forms of the GUI Control or query the on screen GUI menu forms list Return a list of the available menus menu_name on Turn a menu on menu_name off Turn a menu off menu_name status Return on if on off if off menu_name loc Return the x y location menu_name move z y Move a menu to the given z y location The parameter menu_name is one of the following menu names color display files graphics labels main material ramaplot render save sequence simulation or tool 8 3 19 mol Load modify or delete a molecule in VMD In the following molecule_number is a string describing which molecules are to be affected by the command It is one of the following all top active inactive displayed on off fixed free or one of the unique integer ID codes assigned to the molecules when they are loaded starting with 0 The codes molIDs are not reused after a molecule is deleted so if you for example have three molecules loaded numbered 0 1 2 delete molecule with molID equal to 0 and then load another molecule the new molecule will have molID 3 Thus the list of available molecule IDs becomes 1 2 3 The index of the molecule on this 100 list is among many other things accessible through the molinfo command 8 3 21 In the above case for example molecule that was loaded the last has molID equal to 3 however it is the third on th
139. he last is find_rotation_value varname which takes a variable name and extracts from the beginning of it those terms which describe an amount of rotation The rest of the data in the variable remains and the amount of rotation in radians is returned This is used by those functions which need a rotation The valid values are a number followed by one of rad radian or radians for a value in radians the word pi to give the rotation in factors of pi or one of deg degree or degrees for a value in degrees If no units are given the value is assumed to be in degrees Examples vmd gt set a 180 deg north Info 180 deg north vmd gt find_rotation_value a Info 3 14159 vmd gt set a Info north vmd gt set a 1 pi to eat Info 1 pi to eat vmd gt find_rotation_value a Info 3 14159 vmd gt set a Info to eat vmd gt set a 45 Info 45 137 vmd gt find_rotation_value a Info 0 785398 vmd gt expr M_PI 3 0 2 0 Info 4 71239 vmd gt set a 4 71238 radians Info 4 71238 radians vmd gt find _rotation_value a Info 4 71238 138 Chapter 11 Molecular Analysis 11 1 Using the molinfo command This section covers how to extract information about molecules and atoms using the VMD text command molinfo Examples Two functions one to save the current view position the other to restore it The position of the axis is not changed by these operations proc save_viewpoint 1 global viewpoints i
140. he render command box This assumes that you have the ImageMagick tools available in your PATH setting e Asan example of how to directly print a Raster3D file choose the Raster3D option in the Ren der form and type render lt s sgi s rgb convert s rgb eps s ps lpr s ps in the render command box e Choose the PostScript output option in the Render form and type lpr s in the render command box 7 5 Making Stereo Images Stereoscopic images can be rendered with a simple sequence of text commands cycling between the left and right monoscopic stereo modes and exporting one scene for each eye display stereo left render Tachyon left dat display stereo right render Tachyon right dat External renderers don t always support the ability to draw stereo images In principle it is possible to write the scene to the file twice with the appropriate transformations applied to make the view correct for each eye but then the shadows would be incorrect Instead we suggest making one image of the current scene then shift the molecules to the left or right to make the other image The text commands for this are something like display stereo off render Raster3D left r3d trans by 100 render Raster3D right r3d The two files must then be rendered to produce the rgb file As it turns out this method makes it easy to produce stereo images of ordinary Raster3D files Since VMD can read the Raster3D format all you have to do is read the
141. his material using the sliders at the bottom of the form All materials in the materials browser including those you create will appear in the Material pulldown menu in the Graphics form To experiment with the material settings first create a new material so that you can edit its values Next load any molecule change its drawing method to VDW representation and using the Material pulldown menu in the Graphics form change the representation s material to the material you just created Now go back to the Materials form highlight the new material in the browser and change some of the values in the sliders The effect of changing shininess should be especially dramatic 45 4 4 12 Render Form This form is used to export the currently displayed graphics scene to an image file or to a geometric scene description file suitable for use by one of several external renderers which can produce a final image The supported rendering packages are listed in table 7 1 See Chapter 8 7 for detailed information on how rendering is performed using external programs as well as information on 3 D printing and other uses of the exported scene description files FileRender Controls Render the current scene to a file Render using MARTE Filename snap rgb Browse Render Command xv S Restore default Start Rendering Figure 4 11 The Render form The rendering process works in two stages The first stage export
142. hooser to use for loading and saving files from the GUI At present this should be either FLTK which uses Fltk s platform independent file chooser or TK which uses Tk s file chooser The Tk file chooser is the default and uses a native Windows interface on Windows platforms The Fltk file chooser looks the same on all platforms supports tab completion but not drive letters and is probably most appropriate for Unix environments The file chooser can be overridden at any time by changing the environment variable e g in Tcl set env VMDFILECHOOSER FLTK e VMDCAVEMEM Unix only This overrides the default size of the shared memory arena which is allocated by VMD when the CAVE starts up The variable must be an integer number of megabytes Since this is the only shared memory pool allocated and it is done only once you must choose a value sufficient to account for the largest scene you intend to render in VMD in that CAVE session The default value unless otherwise specified is 80 Megabytes Values of 200MB to 512MB are commonly needed for large molecular systems containing several hundred thousand atoms e VMDGDISPLAY Unix only The name of an X Windows display that VMD will use to display the graphics window This environment variable is only used on Unix systems Through the use of the the DISPLAY and VMDGDISPLAY envrironment variables the VMD graphics 157 window can be placed on a separate screen from the forms and menus This is
143. ied by using for example the mouse It is possible however to change the coordinates of atoms in a molecule using the text command interface and by using the atom move picking modes Changing the Molecule s Status The status of a given molecule can be changed by selecting the molecule in the browser and pressing the toggle that controls the appropriate flag The active drawn and fixed status values can be changed for several molecules at the same time by selecting several molecules before pressing the toggle However only one molecule can be top at any one time so Make Top can only be applied to one selection Pressing one of the All or No buttons either sets or unsets corresponding flag on all the loaded molecules The Single A D T button makes the selected molecule active displayed and top It also resets the scene so the given molecule roughly fills the screen It is a quick way to switch from viewing one molecule to another when it is desirable to only show one molecule within the graphics display window at a time Saving Trajectory Frames Using the Save Trajectory menu item you can write trajectory frames to a file in one of several file formats including PDB DCD Amber CRD etc This feature may be used to write out a new trajectory in a single file after assembling many frames from different sources such as PDB CRD DCD or Gromacs files or even from a remote simulation You can also use this in combination w
144. ign to start an RMSD and alignment program Turn off highlighting Change highlight style To clear all highlights reselect the current molecule from the Molecule pop up menu To turn the highlight representation off completely for a given molecule find the representation in the 52 Graphics form which the Sequence form has created appears with Bonds ColorlD 4 and set the style to none To change highlighting style set this same representation to your preferred style and coloring The representation on the Graphics form remains consistent after the first time the Sequence form has displayed the molecule the selection for this representation will be changed whenever the sequence form selection changes Caveats e DNA RNA sequence not listed As of this release the sequence form only displays amino acid sequence All other VMD features work fine with DNA and RNA structures e Pause on first use Since the sequence form displays secondary structure of loaded molecules there may be a pause for structure calculation the first time the sequence for a protein is displayed e B values can be user assigned To use the B value column to view arbitrary data use the selection set beta commands to change B values To refresh the displayed B value data re select the currently displayed molecule from the Molecule pop up menu 4 4 16 RamaPlot Figure 4 14 The RamaPlot Window The RamaPlot window displays a Ramachandran
145. ii RAE E TE N RE R R KR 149 RMS Alignment Tk menu 2 0 0 ee 149 List of Tables 4 1 4 2 4 3 4 4 4 5 5 1 5 2 5 3 5 4 5 9 5 6 5 7 5 8 5 9 7 1 7 2 8 1 8 2 8 3 8 4 9 1 Mouse control hot keys ee 27 Rotation amp scaling hot keys o o 28 Men control hot Keya osse saca unn ER a a a A e 29 Animation hot keyss ai A a eee 29 Description of secondary structure codes in the Sequence form 51 Molecular view representation styles o o o 56 Color categories used in VMD a 63 Molecular coloring methods a a aoa a 64 Available Color Scale Gradations o oo a ee 65 Atom selection keywords a 74 Atom selection keywords continued a 75 Atom selection functions 76 Regular expression methods ee 76 Regular expression conversions o ooo oe a 76 Miscellaneous Rendering Options ooo aa a ee 82 Supported ray tracing formats ooo e e 82 Summary of core text commands in VMD 110 On line Help SourceS A ees a aca aa e ari ld sa a 111 molinfo set get keywords 112 Description of Tcl callback variables in VMD 2 000000 4 113 Description of callbacks available to scripts running in the embedded Python inter Chapter 1 Introduction VMD is a molecular graphics program designed for the interactive visualization and analysis of biopolymers such as proteins nu
146. imation controls Each molecule in VMD can contain multiple sets of atomic coordinates which may be animated to show its motion over time The coordinate sets can come from a molecular dynamics simulation or simply multiple versions of the same molecular structure The main form contains controls for animated playback of these trajectories The controls contains several buttons which act like the buttons on a VCR or DVD player The buttons provide a way to play the trajectory step forward stop go to a specific frame and go to the beginning or end The status and frame counters shown in the animation control reflects the state of the top molecule Commands entered via this control however affect all active molecules 4 4 2 not just the top molecule allowing concurrent animation of multiple molecules Animation Speed The rate of playback can be controlled in two ways The Step control changes the animation step size By default the frame step is 1 so each step of the playback increases or decreases the animation frame number by one If the frame step is 5 then the animation proceeds five times faster because only a fifth of the frames are shown The Speed slider at the bottom of the form also affects the playback speed Internally this controls how many screen updates are needed between each step By default the slider is at the far right indicating that one step is performed for each screen redraw Moving the slider to the left increase
147. in VMD by listing the first words and describing the general purpose for commands starting with those words The commands described in the following sections are listed by name and followed by a list of the available arguments If an argument is optional it is enclosed in s If only one of a list of arguments is needed the list is enclosed in lt gt s and the items are separated by Words in italics indicate a string or value to be specified by the user 8 3 1 animate These commands control the animation of a molecular trajectory and are used to read and write animation frames to from a file or Play Pause Rewind a molecular trajectory e dup L frame frame_number 1 molld Duplicate the given frame default now of molecule molld and add the new frame to this molecule e forward Play animation forward e for Same as forward e reverse Play animation backward e rev Same as reverse e pause Pause animation e prev Go to previous frame e next Go to next frame e skip n Set stride to n 1 frames e delete all Delete all frames from memory 87 speed n Set animation speed to n style once Set to play animation once style loop Set to loop through animation continuously style rock Set to play animation forward and back continuously e styles Return a list of the available styles goto start Go to first frame goto end Go to last frame e goto n Go to frame n read file_type filename beg
148. ing 38 auto update 39 changing 16 38 102 deleting 38 examples 18 hiding 39 off 62 style 15 37 55 56 102 user defined clipping planes 102 reset view 35 93 restore viewpoint 139 vmd state 19 ribbon representation 56 58 RMS Fit 148 RMS Alignment 148 RMSD 146 150 151 rock 32 command 105 110 rotate command 106 110 side chain 144 rotation continuous 24 hot keys 28 stop 24 transformation matrix 134 136 using mouse 24 save configuration 19 viewpoint 139 vind state 19 130 scale command 106 110 scaling using mouse 24 screen parameters 37 scripts play 86 source 86 secondary structure codes 51 selection 15 16 37 55 88 102 140 comparison 71 keywords 40 66 74 boolean 69 logic 69 math functions 76 modes 67 text 140 sensor configuration file 47 sensors 47 sequence 51 caveats 53 dna 53 form 50 zooming 52 short circuit logic 69 72 sleep command 108 110 solvent accessible surface 56 61 solvent representation 56 61 source command 86 spaceball driver 27 MacOS X 27 Unix 27 Windows 27 modes 27 using 27 stage 37 command 106 110 166 startup files 26 157 158 stereo mode 78 cross eyed 78 CrystalEyes 79 DTI side by side 78 scanline interleaved 78 side by side 78 off 77 parameters 37 79 93 problems 79 stop rotation 35 stride 13 Structural Biology Software Database 11 surf 13 representation 56 59 surf
149. int in some direction the selected molecule starts sliding in that direction with a velocity that is proportional to the displacement of the device The joystick tool shows how a three dimensional input device can be used to supply relative differential coordinates instead of absolute coordinates The tools have been designed to allow VMD to use haptic devices Most of the tools can give force feedback to the user but none of them require haptic devices in order to operate 48 e The Tug Tool is a tool that allows interaction with running molecular dynamics simulations Pressing the button connects the device with a simulated spring to the nearest atom and pulling on it adds a force to the simulation If a haptic device is being used the user will feel a force on his hand that is proportional to this force In this way the tug tool implements something like the click and drag that is commonly used with windowing systems If an atom selection is assigned to the Tools the the Tug Tool will apply a force to all the atoms in the selection The force applied will be proportional to the masses of the atoms in the selection so that all atoms experience the same acceleration When a Tool Selection has been assigned the Tug Tool will always affect that selection even if the button is pressed far from any atoms in the selection this is intended to make it easier for the user to apply forces only on those atoms he she intends to steer e The Sp
150. integer corresponding to a color index or 3 a string corresponding to a color name cone id vi v2 radius 1 0 resolution 6 Draw a cone with base at v1 and point at v2 radius and resolution may optionally be specified with keyword arguments sphere id center 0 0 0 0 0 0 radius 1 0 resolution 6 Draw a sphere The sphere center radius and resolution may optionally be specied with keyword argu ments text id pos text size 1 0 Draw text at the given position specified by a tuple of three floats using the string text Size may optionally be specified using keyword argu ments delete id index Deletes the graphics primitive with the given index Alternatively if the string all is passed as the index all graphics primitives will be deleted replace id index Deletes the graphics primitive with the given index The next graph ics primitive added will go in the newly vacated position Subsequent graphics primitives will resume at the end of the list info ind index Returns a string describing the graphics primitive with the given index If the index is invalid an IndexError exception is raised listall ind Returns the indices of the valid graphics primitives in a list imd Python operations available from the imd module used to display and interact with a molecule in a molecular dynamics simulation connect host port Connect to a simulation running on host host and listening for incoming conn
151. ion earlier comes into play So you need to make a third selection containing all the atoms which are to be moved and apply the transformation to those atoms molecule O is the same molecule used for sel1 set move_sel atomselect 0 all move_sel move transformation_matrix As a more complicated example say you want to align all of molecule 1 with molecule 9 using only the backbone atoms of residues 4 to 10 in both systems Here s how compute the transformation matrix set reference_sel atomselect 9 backbone and resid 4 to 10 set comparison_sel atomselect 1 backbone and resid 4 to 10 set transformation_mat measure fit comparison_sel reference_sel apply it to all of the molecule 1 set move_sel atomselect 1 all move_sel move transformation_mat A simulation example script Here s a longer script which you might find useful The problem is to compute the RMSD between each timestep of the simulation and the first frame Usually in a simulation there is no initial global velocity so the center of mass doesn t move but because of angular rotations and because of numerical imprecisions that slowly build up the script aligns the molecule before computing its RMSD Prints the RMSD of the protein atoms between each timestep and the first timestep for the given molecule id default top proc print_rmsd_through_time mol top 4 use frame O for the reference set reference atomselect mol protein fr
152. ion is settable you could do foreach mol molinfo list if disp mol molinfo mol set drawn 1 However that won t set the flag to redraw the scene so you need to force a redraw with display redraw 11 2 Using the atomselect command Atom selection is the primary method to access information about the atoms in a molecule It works in two steps The first step is to create a selection given the selection text molecule id and optional frame number This is done by a function called atomselect which returns the name of the new atom selection the second step is to use the created selection to access the information about the atoms in the selections Atom selection is implemented as a Tcl function The data returned from atomselect is the name of the function to use The name is of the form atomselect d where Yd is a non negative number such as atomselect0 atomselect26 The way to use the function created by the atomselect command is to store the name into a variable then use the variable to get the name when needed 140 vmd gt set sel atomselect top water atomselect3 vmd gt sel text water This is equivalent to saying vmd gt atomselect3 text The easiest way of thinking about this is that the atomselect command creates an object To get information from the object you have to send it a command Thus in the example above atomselect1 num the object atomselect1 was sent the command num
153. ipts running in the embedded Python interpreter Name When called Function argument display _update Screen redraw none frame Molecule changes coordinate frame molid frame help User pushes help button on main form name of topic initialize structure Molecule created or deleted molid 1 or 0 pick_atom Atom picked in graphics window molid atomid key shift_state 1 if shift key do pick_value Bond angle or dihedral label created value timestep New IMD coordinate frame received molid frame trajectory Completion of coordinate file read write molid filename All callback functions must take two arguments The first argument will be an object given at the time the function is registered VMD makes no use of this object it simply saves it and passes it to the callback when the callback function is called The second argument to the callback 118 function will be a tuple containing 0 or more elements depending on the type of callback The type of information for each callback is listed in the third column of Table 9 4 Callbacks are registered deregistered using the add callback del_callback methods of the VMD vmdcallbacks module The syntax for these methods is def add_callback name func userdata None def del_callback name func userdata None name should be one of the callback names in Table 9 4 func is the function object userdata is any object if no object is supplied None will be passe
154. isturbing their coordinates the RMS Alignment menu actually moves molecules to new positions This menu is quite simple Enter an atom selection in the input field and press Align to align the molecules based on the atoms in that selection If you recompute the RMSD between molecules in the RMSD Calculator menu you will probably find that the values are different this is because the calculation is made based on the current positions of the atoms 11 4 2 RMS and scripting The same actions can be taken on the scripting level The Text interface also gives you more flexibility through the atom selection mechanism allowing to choose the atoms to fit compare RMSD Computation There are two atom selections needed to do an RMSD computation the list of atoms to compare in both molecules The first atom of the first selection is compared to the first atom of the second selection fifth to fifth and so on The actual order is identical to the order from the input PDB file Once the two selections are made the RMSD calculation is a matter of calling the measure rmsd function Here s an example set sell atomselect 0 backbone set sel2 atomselect 1 backbone measure rmsd sel1 sel2 Info 10 403014 This prints the RMSD between the backbone atoms of molecule 0 with those of molecule 1 You could also use a weighting factor in these calculations The best way to understand how to do this is to see another example set weighted_rmsd meas
155. it 26 Hot Key Command Purpose r R mouse mode 0 O enter rotate mode stop rotation t T mouse mode 1 0 enter translate mode s 2 mouse mode 2 O enter scaling mode 0 mouse mode 4 0 query item C mouse mode 4 1 pick center 1 mouse mode 4 2 pick atom 2 mouse mode 4 3 pick bond 2 atoms 3 mouse mode 4 4 pick angle 3 atoms 4 mouse mode 4 5 pick dihedral 4 atoms 5 mouse mode 4 6 move atom 6 mouse mode 4 7 move residue 7 mouse mode 4 8 move fragment 8 mouse mode 4 9 move molecule 9 mouse mode 4 13 move highlighted rep mouse mode 4 10 force on atom A mouse mode 4 11 force on residue amp mouse mode 4 12 force on fragment Table 4 1 Mouse control hot keys 4 2 Using the Spaceball in the Graphics Window VMD provides optional support for Spaceball six degree of freedom input devices The Spaceball may be used to rotate translate and scale molecules using up to 6 control axes simultaneously 3 axes in translation 3 in rotation The Spaceball can be used independently and simultaneously with the mouse With the spaceball in one hand and the mouse in the other a user can perform complex picking and identification operations more efficiently since the mouse can be left in pick mode for example while the Spaceball is used to perform rotations translations and scaling operations with the other hand The Spaceball can be run in one of several modes within VMDThe Spaceball interface currentl
156. ith the molecule file browser as a way to make PDB files from a DCD CRD trajectory You can either save the entire stored trajectory or a slice of the data by using the Amount chooser 4 4 4 Then select the appropriate output file type in the File Type chooser and press the Write button in the bottom right corner This brings up the file browser which you can use to enter the new filename Once you press the Write button in the browser the file will be written without further confirmation See section on atomselect command 8 3 21 for information on how to write atom coordinates for an atom selection in a PDB file Deleting Trajectory Frames This provides a way to delete frames from memory First choose the frames you wish to delete with the Amount chooser and possibly the frame skip controls then press the Delete button There is no confirmation of deletions One problem with this mechanism is there is no way to delete every frame except for those given by the frame skip You can get around this by writing the skip selection to a CRD DCD file deleting all the frames from memory then reading the skip back in from disk Deleting a Molecule The Delete button deletes all selected molecules There is no prompt verifying the deletion so take some care If a deleted molecule was the top molecule a new top molecule will be set from the 31 remaining structures 4 4 3 Main Form Animation Controls Figure 4 2 The Main form an
157. label Returns a list of values of the given label for each coordinate frame in the label If the atoms in the label belong to different molecules only the coordinates of the first molecule will be cycled If the labels don t have values like atom labels None is returned 9 5 8 material Python operations available from the material module used to create and modify material prop erties of molecular representations listall Returns a Python list of the names of all available materials settings name Returns a Python dictionary of the material settings for material with the given name add name Create a new material with the given name rename oldname newname Rename the material with the given name The new name must not yet be used change name ambient specular diffuse shininess opacity Change one or more of the material settings for the material with the given name Keyword arguments may be used to specify each property 9 5 9 molecule Python operations available from the molecule module used to load molecules and change their representations num Returns the number of loaded molecules listall Returns the molid s of the all the loaded molecules exists molid Returns true if the molid corresponds to an existing molecule new name Creates a new empty molecule with the given name and returns its id load structure sfname coor cfname Load a molecule with structure type structure and file
158. lecular file formats e 3 2 What happens when a file is loaded 3 3 Babel IMETTACO 2 aio a e A Rpg oben BGG are Y 34 R steraD ile ormat a eau y Le AAA AA A ON is ARA User Interface Components 4 1 Using the Mouse in the Graphics Window e e e 4 1 1 Mouse Modes ee dz Pick Mode at A A A Bead te tn eel Die Bs diles HOY a Pop SEE aoe aa Blk RY Beas Pea oe eae 4 2 Using the Spaceball in the Graphics Window o e 4 21 Spaceball Driver asia A A Ac 4 3 Using the Joystick in the Graphics Window ee eee 4 4 Description of each VMD form o 4 4 1 Main Form yi 6 9 g ek A a as 4 4 2 Main Form Molecule List browser 200000002 eae 4 43 Main Form Animation Controls 2 0 0 0 0000 e eee 10 11 11 11 11 12 14 14 14 15 16 16 17 18 19 20 20 21 21 22 4 4 4 Molecule File Browser Form e 33 4 4 55 Mouse Fam TTT 34 4 46 Display Me a ta dd a a 35 4 4 7 Graphics Form oed snos a a aa a Ea p T A 37 4 4 8 Draw Style Tabs so eas eraci eaog sen RA a 38 4 4 9 Labels Form 41 AAO Color Porm s a t 324 Yok tng A A A A di 43 4 4 11 Material Form ee 45 4 42 Render Formi eta ey Ae el pone a d Pee PAE eres 46 AAA Lool Fra A its A We a ee A oe BO s 46 AA V4 Simulation Form E a H n R Sia te hae A Re ee ee E A ae i 49 4 4515 Sequence Form lit baie seen eo bee ae pe BR ee eo ees 50 A AAG RamaPlot mia RR a we a a a a 53
159. lent to exwithin 3 of protein The same lt keyword gt as lt selection gt finds all the atoms which have the same keyword as the atoms in the selection This can be used for selections like 72 same fragment as resid 35 which finds all the atoms attached to residue id 35 Any keyword can be used so selections like same resname as protein within 5 of nucleic are fine although weird The perhaps the most useful keyword for this command is residue so you can say same residue as Finding contact residues Suppose you want to view the atoms in A which are in contact with B Use the within lt distance gt of lt selection gt selection command For purposes of demonstration let A be protein B be nucleic and define contact as an atom in A which is within 2 A of an atom in B Then the selection command is protein within 2 of nucleic If you want to see all the residues of A which have at least one atom in contact with B use same residue as protein within 2 of nucleic 73 Keyword Arg Description all bool everything none bool nothing name str atom name type str atom type index num the atom number starting at 0 chain str the one character chain identifier residue num a set of connected atoms with the same residue number protein bool a residue with atoms named C N CA and O nucleic bool a residue with atoms named P 01P 02P and either 03 C3 C4 C5 05 or 03 C3x C
160. ll Unix or start it by clicking the VMD icon in your desktop or Start menu Apple MacOS X and Microsoft Windows VMD should start up with a window titled vmd console a display window entitled VMD OpenGL Display and a main menu entitled VMD Text commands are typed in the console window molecules are displayed and manipulated in the graphics window and other interfaces and extensions are available from the menu interface All of the forms except the main form can be closed or minimized using your computer s standard windowing controls Most functions can be performed with both the menu interface and the text console though some of the more sophisticated scripting features are only available as text commands 2 2 Viewing a molecule Myoglobin In our quick tour of VMD we ll start out by demonstrating a few of its visualization features To load a molecule select Load Molecule from the Files menu in the main form this will open the Files form 4 4 4 We will load a PDB Protein Data Bank file containing the coordinates of the atoms in myoglobin compliments of Joel Berendzen of Los Alamos National Laboratory Select the Browse button in the files form to bring up a file browser Go into the proteins directory of the tutorial data set that you have downloaded from the VMD web site Once there select the file mbco pdb in the file browser and press the Load button in the molecule file browser button in the Files form Figure 2 1 shows an ex
161. lly run until the next complete Tcl code block due to the way VMD processes its commands e time wait time seconds 8 3 35 sleep Specify a number of seconds to sleep before reading another command Animation stops during this time e time sleep time seconds 8 4 Tcl callbacks When certain events occur VMD notifies the Tcl interpreter by setting certain Tcl variables to new values You can use this feature to customize VMD for instance by causing new graphics to appear when the user picks an atom or recalculating secondary structure on the fly To make these new feature happen at the right time you need to write a script that takes a certain set of arguments and register this script with the variable you are interested Reg istering scripts is done with the built in Tcl command trace see http dev scriptics com man tcl8 0 TclCmd trace htm for documentation on how to use this command The idea is that after you register your callback when VMD changes the value of the variable your script will immediately be called with the new value of the variable as arguments Table 8 4 summarizes the callback variables available in VMD 108 In the VMD script library at http www ks uiuc edu Research vmd script_library you can find a number of scripts that take advantage of Tcl variable tracing Below we give a very simple example The following procedure takes the picked atom and finds the molecular weight of residue it is on pr
162. loring method at the right of the form Section 5 2 describes VMD s coloring methods e An atom selection which determines which of the atoms in the molecule will be included in the view This selection is entered in the text input field at the bottom of the Graphics form Section 5 3 describes the syntax used to select atoms A molecule can contain any number of different representations and complex pictures of the molecule can be generated by creating views with different selections coloring schemes and ren dering methods For example the protein backbone can be drawn as a smooth tube in one view and important residues in the protein can be drawn as spheres or licorice bonds in other views When a molecule is first loaded it is given a default view which will draw all the atoms as lines and points coloring each atom by what kind of element it is 5 1 Rendering methods All of the different rendering methods have various parameters which determine how they are drawn For each method there are controls in the Graphics form which modify the associated parameters such as the line width and sphere resolution the graphical controls are described in section 4 4 8 Table 5 1 lists the available rendering methods and the following sections describe these methods and the parameters which modify their appearance 5 1 1 Lines The default representation is Lines which is also known as wireframe It draws a line bet
163. mber Table 5 9 Regular expression conversions 76 Chapter 6 Viewing Modes There are many different viewing modes available These show the scene in orthographic or per spective views and in several mono and stereo graphic displays The stereo mode can be changed using the stereo entry in the Display form or the text command display stereo mode 6 1 Perspective Orthographic views In the perspective view the default objects which are far away are smaller than those nearby In the orthographic view all objects appear at the same scale Since some prefer one over the other both options are available Perspective viewpoints give more information about depth and are often easier to view because you use perspective views in real life Orthographic viewpoints make it much easier to compare two parts of the molecule as there is no question about how the viewpoint may affect the perception of distance 6 2 Monoscopic Modes When you normally look at objects your two eyes see slightly different images because they are located at different viewpoints Your brain puts the images together to generate a stereoscopic viewpoint When generating a single image for the computer display the default calculations mode Stereo Off assume there is one eye centered between where two eyes would be For stereo the left and right eye views need to be generated independently Choosing mode Left produces the left eye viewpoint while Right
164. mber context 68 Table 5 7 lists the built in functions which may be used in atom selection expressions with keywords which take on a numeric value 5 3 2 Boolean Keywords Some selections take no values For example backbone selects the backbone atoms of the protein and nucleic acids and protein selects protein atoms Giving options to these selections is an error The selections can be used in the same way as other selections as in protein and backbone nucleic or protein In addition if neither and nor or are located after a boolean keyword then an implicit and is inserted so that the following are valid protein name CA same as protein and name CA nucleic backbone 5 3 3 Short Circuiting The boolean logic in VMD does short circuit evaluation on an element wise basis For instance given one atom if X is true then X or Y will be true regradless of the value of Y so there is no need to evaluate it Similarly if X is false then X and Y will also be false so Y again need not be evaluated Knowing how short circuit selections work can speed up several types of selections Consider a system with a large number of waters and a protein The expression protein and segname lt 10 is faster than segname lt 10 and protein since in the first selection only the atoms which are proteins have the segname converted to a number while in the second selection all the segment names are converted The within selection has its own form
165. me peculiar problems Some keywords such as segname can take on string values but can also be used by some people as a number field Suppose someone labeled the segname field with the numbers 1 through 12 on the assumption that they are numbers That person would be rather confused to find that segname 1 to 11 only returns two segments Also strings will be converted via atof to a number so if the string isn t a number it will be given the value of 0 It is possible to force a search to be done in either a string or numeric context using the relational operator discussed in 5 3 6 Selections can be combined with the boolean operators and and or collected inside of paren thesis and modified by not as in name CA or name CB and mass 12 to 17 which selects all atoms name CA or CB and have masses between 12 and 17 amu this could be used to distinguish a C alpha from a calcium VMD has operator precedence similar to C so leaving the parentheis out of the previous expression as in name CA or name CB and mass 12 to 17 actually selects all atoms named CA or those that are named CB and have the appropriate mass 5 3 1 Definition of Keywords and Functions The keywords available for selecting atoms in VMD are listed in tables 5 5 and 5 6 at the end of this chapter If a keyword definition is followed by bool it is either on or off If followed by str it takes a value in the string context If followed by num it takes a value in the nu
166. means for loading molecules and other data into VMD The built in file readers will load molecular structures from combinations of topology files coordinate files and trajectory files Readers are also included for data such as potential maps electron density maps Grasp surface data and arbitrary 3 D geometric data from Raster3D scene files VMD can load structures directly from Protein Data Bank over the internet provided that a network connection is present Entering the four character PDB accession code in the molecule file broswer form will retrieve and load the structure over the network 3 1 Notes on common molecular file formats VMD natively understands several popular molecular data file formats PDB coordinate files CHARMM NAMD and X PLOR style PSF topology files CHARMM NAMD and X PLOR style DCD trajectory files NAMD binary restart coordinate files AMBER structure PARM and trajectory CRD files including both the old format and the new formats used by AMBER 7 0 and Gromacs i e GRO G96 XTC TRR structure and trajectory files These files may contain some redundant information and can be loaded in different combinations PDB files contains data about atoms residues segment names occupancy and beta factor and one coordinate set PSF and PARM files contain atoms residues segment names residue types atomic mass and charge and the bond connectivity VMD supports four file formats used by Gromacs GRO G96 TRR and XTC
167. messages 5 many verbose messages Note this is only useful if VMD has been compiled with debugging option included 12 2 Environment Variables Several environment variables are used by VMD to determine the location of certain files and directories These variables are accessible to text interface through array env These variables include e DISPLAY Unix only The X Windows display that VMD should use for displaying the VMD forms and menus as well as the graphics window If this environment variable is not overridden by VMDGDISPLAY all VMD windows will be directed to this display e VMDDIR The directory which contains the VMD data files such as this help file and architecture specific executables By default this is usr local lib vmd on Unix systems and C Program Files University of Illinois VMD on Windows sytems e VMDTMPDIR The directory which VMD should use for temporary data files By default this is tmp or usr tmp on Unix systems and C on Windows e VMDBABELBIN The complete path and filename for the program babel which is used by VMD to convert molecular structure coordinates files into PDB files which VMD can actually understand If this is not set explicitly the VMD startup script will attempt to find babel in the current path If Babel cannot be found or is not installed VMD will not be able to read molecular file formats other than PDB PSF and binary DCD files e VMDFILECHOOSER Specifies which file c
168. min name A 1 name A name C mass lt 5 numbonds 2 abs charge gt 1 x lt D and x gt 3 sqr x 5 sqr y 4 sqr z gt sqr 5 within 5 of name FE exwithin 3 of protein protein within 5 of nucleic same resname as protein within 5 of nucleic protein sequence C C name eq atomname protein and Cmyselection There are two types of selection modes The first is a keyword followed by a list of either values or a range of values For example name CA selects all atoms with the name CA which could be a Ca or a calcium resname ALA PHE ASP selects all atoms in either alanine phenylalanine or asparagine index 5 selects the 6th atom in the internal VMD numbering scheme 6 VMD can also do range selections similar to X PLOR s notation mass 5 to 11 5 selects atoms with mass between 5 and 11 5 inclusive resname ALA to CYS TYR 67 selects atoms in alanine arginine asparagine aspartic acid cystine and also tyrosine The keyword selection works by checking each term on the list following the keyword The term is either a single word eg name CA or a range eg resid 35 to 90 The method for determining the range checking is determined from the keyword data type numeric comparisons are different than string comparisons The comparison should work as ex pected so that 8 is between 1 and 11 in a numeric context but not in a string one This may lead to so
169. mmand vmd molecule pdb will start VMD and load a molecule from the file molecule pdb On the Windows platform one must preface the VMD invocation with the Windows start command start vmd molecule pdb 155 h help Print a summary a command line options to the console e filename After initialization execute the text commands in filename and then resume normal operation python After initialization switch to the Python interpreter before executing commands in the file specified by e if any and leave the text interpreter in Python mode filename Load the specified file at startup The file type will be determined from the filename extension if there is no filename extension and the filename contains 4 letters it is assumed to be a PDB accession code and will be loaded accordingly otherwise the format is assumed to be PDB lt filetype gt filename Load the specified file using the given filetype f Load all subsequent files into the same molecule This is the default A new molecule is created for each invocation of f thus vmd f 1 pdb 2 pdb f 3 pdb loads 1 pdb and 2 pdb into the same molecule and 3 pdb into a different molecule m Load all subsequent files into separate molecules The f and m options may be specified multiple times on the command line in order to load multiple molecule containing one or more files dispdev lt win text cave caveforms none gt Specify the type of gr
170. mmands can be entered by typing them at the VMD prompt in the text console window This window normally contains the prompt vmd gt When other text e g from a mouse pick is displayed to the screen it will scroll the screen up so the prompt is not at the last line of the screen To make it reappear press enter When entering multi line commands an alternate prompt appears and will not disappear until the command is finished Sometimes it is waiting for a close to a double quote open brace or open bracket while at other times it is waiting for a line that doesn t end in a backslash e Since you may not want to retype all the data in every time there are two ways to read the data in from a text file One is the play command This reads a line from the file executes it then updates the screen and checks for any changes in the mouse or forms input so that VMD stays interactive during execution of the script The second way is the Tcl command source This reads the whole file before allowing the mouse and forms to respond to new input This is often more efficient when your script contains many lines e On Unix Linux platforms if the file vmdrc see section 12 3 3 exists in your home directory it is played at VMD startup If you don t have a vmdrc file VMD uses a default script in the VMD installation directory Similarly at startup the e command line flag can be used to specify an input file to be played after reading the vmdr
171. n max Change the color scale method midpoint min imum or maximum All properties may be set using keyword arguments 9 5 4 display Python operations available from the display module used to control the VMD camera as well as screen updates update Force a display update without checking the VMD FLTK menus update_ui Update the display as well as any other user interfaces update_on Tell VMD to regularly update the display and the FLTK menus update off Tell VMD not to regularly update the display The display will be updated only when display update is called stereomodes Returns a list of the available stereo modes PROJ_PERSP PROJ_ORTHO String constants defined in the display module for setting the projection keyword in the set method set keywordlist get key set and get control various display properties The following keywords ac cept return floating point values eyesep focallength height distance nearclip farclip The following keywords accept boolean values for on or off respectively antialias depthcue culling stereo should be one of the values returned by stereomodes projection should be one of the PROJ constants defined in this module size should be a list of two integers corresponding to the width and height of the display in pixels 9 5 5 graphics Python operations available from the graphics module used to create custom 3 D objects from graphics primitives The first ar
172. n is made you can query the properties of the selected atoms such as their names residue ids or coordinates In a similar fashion you can set the values of these properties You can also perform logical operations on atom selections including finding the intersection or union of two atom selections or finding the inverse of the set Finally you can perform tuple operations on the atom selection object to query the indices of the atoms in the selection Atom selection macros can be defined using the macro method of the AtomSel module The syn tax is just as in the corresponding atomselect macro and atomselect delmacro Tcl commands see section 8 3 2 for details Below we summarize the methods available from the AtomSel class e AtomSel selection all molid 0 frame 0 Creates a new atom selection object gt gt gt sel AtomSel name CA 1 Selects the alpha carbons of molecule 1 e select selection Change the selected atoms gt gt gt sel select resid 5 e frame value 1 Set get the coordinate frame for the selection Nonpositive values will return the current value of the frame without changing it gt gt gt sel frame 5 gt gt gt sel frame 5 e get attri attr2 Takes any number of string arguments which should correspond to a valid atom property such as name x or water Returns a list of the value of the property for each atom in the selection For boolean pr
173. n the number of atoms in the selection list Return a list of the atom indices in the selection BTW this is the same as get index text Return the text used to create this selection molid Returns the molecule id used to create this selection 89 frame Returns the animation frame associated with this selection The result will be either now last or an integer corresponding to the frame When the frame is nov the atom selection will use atomic coordinates from the current frame for its associated molecule If the frame is last the atom selection will always use coordinates from the last frame If the frame is a specific integer the selection will always use coordinates from that frame even if the current animation frame changes Note that if a nonexistent frame is specified the atomic coordinates will all be taken to be 0 frame frame Set the frame for the selection frame should be either now last or an integer delete Delete this object removes the function global Moves the object into the global namespace Atom selections created within a Tcl proc that are not made global are deleted when the proc exits uplevel level Moves the object to a new level in the namespace stack Works the same as the Tcl function uplevel get attribute_list Given a list of attributes returns a list containing the list of attribute values See Tables 5 5 and 5 6 for the recognized attribute keywor
174. name sfname Additionally a separate coordinate file may be provided of type coor and name cfname New in VMD 1 8 All timesteps from cfname will be processed before the function returns If successful the function will return the id of the new molecule gt gt gt load pdb alanin pdb gt gt gt load psf alanin psf dcd alanin dcd cancel molid Cancel loading of coordinates file for the given molecule delete molid Delete the specified molecule read molid type filename beg O end 1 skip 1 waitfor 1 volsets 1 124 e write molid type filename beg 0 end 1 skip 1 waitfor 1 Read or write a file to from the specified molecule For reading if molid is 1 a new molecule will be created Optional arguments beg end and skip may be specified with keywords the default is to load save all coordinate frames New in VMD 1 8 The waitfor option will cause VMD to process the specified number of frames before returning If waitfor is negative all frames from the file will be processed before the function returns For reading files containing volumetric datasets set the volsets parameter to a list of set id s starting from 0 to specify which datasets to load e get_filenames molid Returns a list of filenames that have been loaded into this molecule e get filetypes molid Returns a list of filetypes corresponding to get_filenames e delframe molid beg 0 e
175. nd 1 skip 1 Delete frames from the specified molecule Optional arguments beg end and skip may be specified with keywords the default is to delete all coordinate frames e dupframe molid frame Copy the coordinates from the given frame and append them as a new frame e numframes molid Return the number of coordinate frames in the specified molecule e get_frame molid Return the current coordinate frame for the specified molecule e set_frame molid frame Set the current coordinate frames in the specified molecule e numatoms molid Returns the number of atoms in the specified molecule e ssrecalc molid Recalculate the secondary structure for the given molecule using the current set of coordinates e name molid Returns the name of the given molecule e rename molid newname Rename the given molecule e get_top molid e set_top molid Get set the molid of the top molecule 9 5 10 molrep Python operations available from the molrep module used to add and modify representation of molecules e num molid Returns the number of representations in the given molecule e addrep molid style None color None selection None material None Add a representation to the specified molecule If any of the optional keywords are specified as well the new rep will have the specified properties Note that these properties become the default for future calls to addrep so that addrep 0 style VDW addrep 0 color Name
176. nes e material lt name gt Sets the material to use for the corresponding graphics molecule name must be a valid material name as displayed in the Materials menu e delete id Deletes the graphics primitive with the given id e replace id Causes the next graphics primitive to replace the one with the given id Subse quent graphics primitives will be added to the end of the list as usual e exists id Returns whether the primitive with the given id exists e list Returns a list of valid graphics id s e info id Returns the text of a Tcl command which will recreate the graphics primitive with the given id 8 3 11 help Display the on line help file with an HTML viewer See Chapter 12 for information on how to change the default viewer which is Netscape e subject Jump to help corresponding to subject Presently subject can be any one of the following words which launches the associated URL To guarantee that the help system will work correctly you will probably want to start up your web browser before choosing one of these options After you do this VMD will properly direct the browser to the pages mentioned below 96 8 3 12 imd Controls the connection to a remote simulation connect host port connect to an MD simulation running on the machine named host and listening on port port This command will fail if a previously established connection has not yet been disconnected detach Disconnect from
177. ng directly out of the screen This behavior is similar to the usual Rotate mode except that coordinates of atoms are changed 4 1 3 Hot Keys When the mouse is in the graphics window many commands are accessible via programmable hot keys Hot keys allow you to do things like change mouse modes or advance the animation by a frame by simply pressing a key There are a number of predefined hot keys as listed in tables 4 1 4 2 4 3 and 4 4 They can be printed out with the command user print keys The commands listed are the text commands which are executed when the hot key is pressed these text commands are explained in section 88 3 To add or modify a hot key use the command user add key key command The key parameter must be a single character If command contains more than one word it must be enclosed in braces so that the subsequent command words are not ignored When that key is pressed while the mouse cursor is in the graphics display window the associated command will be executed Once you have a set of commands which are particularly useful and familiar for you you will want these hot key commands automatically available every time you run VMD This can be done by placing the commands to add these items in your vmdrc file which is a file containing VMD text commands that is executed every time VMD starts up The basic method for setting up this file is described in section 12 3 3 Once you have such a file put the user add commands in
178. nitors which may be placed between atoms Labels are selected with the mouse as discussed in 4 1 2 Once selected the Labels form can be used to turn different labels on or off or to delete them entirely Also labels displaying geometrical data such as bond lengths may be graphically displayed using this form Al Label categories The Category chooser in the upper left is used to select which category of labels to manipulate The different label categories include e Atoms which are shown as a text string next to the atom listing the name and residue of the atom e Bonds which are shown as dotted lines between the atoms with the bond length displayed at the bond midpoint e Angles which are shown as dotted lines between the three atoms with the angle displayed at the center of the defined triangle e Dihedrals which are shown as dotted lines between the four atoms with the dihedral angle the angle between the planes formed by the first three atoms and the last three atoms shown at the midpoint of the torsional bond e Springs which are shown as dotted lines between the atoms with the bond length displayed at the bond midpoint All the labels for the selected category which have been previously added are displayed in the browser in the center of the form The line itself contains from 1 to 4 atom names depending on the category the atom names have the form lt residue name gt lt residue id gt lt atom name gt followed b
179. nterfaces Since VRPN provides networked device abstraction VMD doesn t have to be running on the same computer that VRPN devices are attached to With VRPN you may use buttons trackers and also force feedback haptic devices such as the PHANTOM In the CAVE or Free VR VMD recognizes 46 Portier Pare Agres Her X apr persen izning fi Y Dart fa Z aer fi Figure 4 12 The Tool form two types of devices buttons and trackers The built in Spaceball driver can also be used to control tools Configuring input devices To use input devices with VMD tools you need a sensor configuration file in your home directory called vmdsensors In this file any number of devices can be specified using a universal sensor locator USL The format for a USL is as follows USL type place name nums e type the type of sensor vrpntracker vrpnbuttons vrpnfeedback cavetracker cavebuttons or sballtracker e place the machine that controls it Devices that cannot yet be used on arbitrary computers over the network must have the keyword local here to be compatible with future versions e name the name of the device within that machine If multiple devices can t currently exist such as with the CAVE then a standard name should be used such as cave so that the same USL will make sense in the future when multiple devices are allowed e nums a comma separated list of numbers of devices belonging t
180. o construct the molecular surface e Wireframe The surface can optionally be drawn using lines rather than solid triangles There is an environment variable which can affect the MSMS display option e MSMSSERVER location of the SURF binary defaults to msms which is assumed to be in the user s path 60 5 1 15 VolumeSlice The VolumeSlice representation draws a texture mapped two dimensional slice from a volumetric data set already loaded into VMD using the mol volume text command or by other means The colors span the scalar value range of the data set with red indicating low values and blue indicating high values in the data The slice is drawn as a plane perpendicular to the X Y or Z axis and can be positioned anywhere within the coordinate system of the volumetric data set This feature is currently only available on machines that have full support for hardware 3 D texture mapping On machines lacking 3 D texturing nothing will be displayed Future versions of VMD will greatly enhance the user interfaces and capabilities of this feature The selectors controlling the VolumeSlice representation are the slice axis quality level slice position and volume ID The slice axis can be set to 0 1 or 2 which correspond to the X Y and Z axes The quality can be set to either 0 or 1 A quality level of 0 indicates that the slice texture map will be rendered using the color nearest the sample point A quality level of 1 indicates that the
181. o that names optional defaults to zero Some devices demand only one number or a specific number but button devices should work correctly now The lines of a sensor configuration file come in four flavors e Comments begin with and are ignored e Empty lines are also ignored e Device lines have the form device name USL where name is the name that VMD will use to refer to the device and USL is the device s USL e Options tell VMD how to use the most recently listed device Currently there are four supported options 47 scale x scales the position of a tracker by a factor x offset x y 2 adds a constant vector to the position of a tracker rot right left Ag 401 A33 multiplies the orientation matrix returned by a tracker on either the right or the left by the matrix A forcescale x multiplies the force applied to a force feedback device by the amount zx Here is a simple example showing some of the things you can do with a sensor configuration file for a more complete example please refer to the vmdsensors file that came with your VMD distribution Sensable PHANTOM via VRPN http www sensable com The Phantom haptic device connected to the computer odessa device phantomtracker vrpntracker odessa Phantom0 scale 10 rot left 00 1010100 device phantombuttons vrpnbuttons odessa Phantom0 device phantomfeedback vrpnfeedback odessa Phantom0 Using Tools
182. oc mol_weight 4 use the picked atom s index and molecule id global vmd_pick_atom vmd_pick_mol set sel atomselect vmd_pick_mol same residue as index vmd_pick_atom set mass 0 foreach m sel get mass set mass expr mass m get residue name and id set atom atomselect vmd_pick_mol index vmd_pick_atom lassign atom get resname resid resname resid print the result puts Mass of resname resid mass T Once an atom has been picked run the command mol weight to get output like Mass of ALA 7 67 047 Since VMD sets the vmd_pick_atom and vmd_pick_mol variables they can be traced proc mol_weight_trace_fctn args mol_weight T This function is needed because the functions registered with trace take three arguments but mol_weight only takes one The trace function is registered as trace variable vmd_pick_atom w mol_weight_trace_fctn And now the residue masses will be printed automatically when an atom is picked To turn this off trace vdelete vmd_pick_atom w mol_weight_trace_fctn 109 First Word Description animate atomselect axes color colorinfo display echo exit quit help imd label light logfile material measure menu molecule or mol molinfo mouse play render rock rotate scale stage tool translate user vmdinfo wait sleep Play Pause Rewind a molecular trajectory Create atom selection objects for analysis Position a set of X
183. oes this or not 7 2 Higher Quality Rendering Sometimes images produced by screen capture aren t good enough you may want a very large high quality picture or a picture with shadows reflections or high quality rendering of transpar ent surfaces While VMD generally produces nice looking images in its graphics window it was designed to generate its images very rapidly to maximize interactivity which precludes the use of photorealistic rendering techniques that would slow down the operation of whole program Instead of producing high quality images directly VMD writes scene description files which can be used as input to several popular scanline rendering and ray tracing programs Tables 7 1 and 7 2 list the currently supported output formats and where appropriate rendering software may be obtained Making the raster image is a two step process First you must make a scene description file suitable for the chosen rendering program and then execute the program using the new file as input to produce the raster image output The problem is that each of the external rendering programs support different output file formats which may need to be converted to something more appropriate for you It is impossible to predict what that might be so we ll describe how to convert 81 Name Description Default Render Command Raster3D Fast raster file generator render lt s sgi s rgb ipaste s rgb PostScript Direct PostScript Output ghos
184. of a special display monitor mode and special stereo viewing glasses Stereographics Corp is one such supplier of these glasses This mode also requires special infrared emitters to synchronize the stereo glasses with the display monitor There are presently two types of CrystalEyes stereo modes available on SGI machines which one is used depends on the available graphics hardware see the man page stereo 7 Follow the outline below for the relevant graphics option Stereo in a window aka new style stereo Available on workstations equipped with quad buffered stereo graphics subsystems only such as SGI InfiniteReality Sun Expert3D HP FX 10 this mode provides separate left and right eye frame buffers It allows the user to have a window display in stereo and the other windows appear as normal Using this mode however sometimes requires the monitor to be in a lower resolution display mode since it requires twice as much video memory over a normal non stereo display The monitor must be set in a stereo capable mode before starting VMD On SGI systems one must use either the setmon or xscreen utilities to configure the display mode On Sun systems this is done using the fbconfig utility HP systems use the sam utility for display configuration Windows machines use the Display Properties tab to control video board display mode settings Once set in the proper display mode start VMD as normal and select CrystalEyes stereo from the Displ
185. of short circuiting The command can be interpreted as find the atoms of A which are withing a given distance from B and if A isn t given search all the atoms The search done in VMD takes a time roughly proportional to the number of atoms in A multiplied by the number of atoms in B so reducing the number of atoms in A i e by not testing every atoms make the search faster Using the system with a lot of water and a protein compare the selection protein within 5 of resid 1 to within 5 of resid 1 and protein The first is very fast as it does a distance search between all the protein atoms and all the atoms in resid 1 However the second selection searches through all the atoms for those which are within 5 A of resid and then finds which of those are protein atoms 5 3 4 Quoting with Single Quotes VMD allows two types of quoting mechanisms single and double quotes Single quotes are used to include spaces and other non alphanumeric characters Believe it or not there are some residue names with a space in them so they can be referenced as for example resname A 1 69 More importantly ribose atoms can be given names like C5 or C5 depending on the age of the PDB record The lexer in VMD has been modified so that C5 0 and N can be used without quotes but it cannot handle an unquoted asterisk conflicts with multiplication and the parser is not able to resolve the difference Some examples are name
186. ograms exist NAMD developed at University of Illinois and Protomol developed at Notre Dame The rest of the discussion in this chapter assumes you are using NAMD See the NAMD home page for information on obtaining NAMD Interactive Molecular Dynamics IMD works by establishing a TCP connection between VMD and the molecular dynamics simu lation program NAMD or whichever MD program is being used acts as the server In order to prepare NAMDto accept VMD s IMD connection request NAMDmust be configured to listen for incoming connections on a network port Once NAMD has started up may wait for the user to connect through that port When VMDconnects to NAMDsuccesfully the simulation commences Before connecting to the remote simulation the VMDuser must first load a molecule corresponding to the system being simulated The structure file should correspond to the same structure file http www ks uiuc edu Research namd 49 used by NAMD Once the molecule is loaded and NAMD has been started and is listening for a connection you are ready to connect to the simulation and start receiving coordinates To establish a connection open the Sim form enter the hostname on which NAMD is running and the port on which NAMD is listening for incoming connections then press the Connect button to establish the connection If NAMD is running on several distributed nodes VMD must connect to the root node on which NAMD initially started out IMD
187. olecule id will make the Molecule instance mirror the state of the corresponding molecule in VMD e _int_ Casting a Molecule to an int returns the molecule ID e rename self newname Changes the name of the molecule e name Returns the name of the molecule e delete Deletes the molecule corresponding to this Molecule instance The object can no longer be used e load filename filetype None first 0 last 1 step 1 waitfor 1 volsets 0 Load molecule data from the given file The filetype will be guessed from the filename ex tension this can be overrideen by setting the filetype option first last and step control which coordinates frames to load if any volsets indicates which volumetric data sets to load from the file Raises IO Error if the file cannot be loaded e files e types Returns a list of filenames and file types respectively for the files that have been loaded into this molecule e numAtoms Returns the number of atoms in the molecule e numFrames Returns the number of coordinate frames in the molecule e setFrame frame Set the coordinate frame to the given value Must be in the range 0 numFrames e curFrame Returns the current coordinate frame for the molecule e delFrame first 0 last 1 step 1 Deletes the given range of frames e dupFrame frame None Duplicate the given frame apending it to the end if frame is None then the current frame is used 128 numReps Re
188. olute position angle e lt xl ylz gt lt by to gt angle step Rotate at a rate of step degrees per redraw 8 3 28 scale Scale the current scene up or down This does not change atom coordinates e by f Multiply scene scaling factor by L e to f Set scene scaling factor to L 8 3 29 stage Position a checkerboard stage on the screen e location lt off origin bottom top left right behind gt Set the location e location Get the current location e locations Get a list of possible locations e panels n Set number of panels in stage up to 30 e panels Get the number of panels in use 106 8 3 30 tool Initialize and control the tools that are controlled by external tracking devices e create Create a new tool e change type toolid 1 Change the type of a tool e scale scale toolid 1 Change the scale of the coordinates reported by a tool e scaleforce scale toolid 1 Increase or decrease the force on a force feedback device e rot left right Aoo Aoi A33 toolid 1 Multiply a tool s orientation matrix on the left or right by a matrix A e offset x y z toolid 1 Add a vector to a tool s position e delete toolid 1 Remove a tool e info toolid 1 Get info about a tool e rep molid repid Choose only a single representation for tugging or SMD e adddevice name toolid Add a device to a tool using a name found in the sensor configuration file e removedevice name toolid Rem
189. om selection macros can currently be defined only through the Tcl 88 3 2 or Python 89 3 text interfaces see these sections for details Smoothing Tab The Smoothing tab is used to control the application of a per representation windowed averaging smoothing function This simple smoothing feature can be used to eliminate much of the thermal noise inherent in a molecular dynamics trajectory so that one can more easily see structural changes occuring over a wider time scale The window size parameter controls how many timesteps are averaged together to produce a the coordinates which are actually used to display the representation One important consideration when using the trajectory smoothing feature is that VMD does not take periodic boundary conditions into consideration when smoothing trajectory coordinates so any atoms which wrap around within the span of the window will cause erratic motions in the displayed representation This can be avoided by unwrapping trajectory coordinates prior to loading into VMD or by using atom selections to eliminate atoms which wrap around 4 4 9 Labels Form yj Labels Show Hide Delete Picked Atom Geometry Data Molecule i progwaterspdb XYZ 16 550 19 543 6239 ResName ASN Chain iP ResID ss SegName PRO3 Name po Index le Type IOD Value 0 000 Figure 4 8 The Labels form This form is used to manipulate the labels which may be placed on atoms and the geometry mo
190. om the given category The data will be written to a temporary file and the specified command will be run to graph the data s in the command string will be replaced by the temporary filename addspring molID1 atomID1 atomID2 k Add a spring connecting the atom s atomID and atomID2 of the molecule molID The spring will have spring constant k 97 8 3 14 light There are four light sources numbered 0 to 3 which are used to illuminate graphical objects They are point sources located at infinity so setting their positions places them along a ray from the origin through the given point e num Return the number of lights available e lightnumber on Turn a light on e light_number off Turn a light off e light number status Return the pair on off highlight unhighlight e light number rot lt x y z gt angle Rotate a light at infinity angle degrees about a given axis e light numer pos Return current position e light numer pos default Return default position e light numer pos x y z Set light position 8 3 15 logfile Turn on off logging a VMD session to a log file This will create a log file with commands for all the actions taken during the session The log file may be played back later by using the play command or the Tcl source command The only actions recorded are those which change the state of the VMD display so straight Tcl commands are not saved All of the core VMD commands will write to
191. omize a VMD session These files control the initial appearance and behavior of VMD at the start and may be customized to suit each user s particular tastes Default versions of these files are placed in the VMD installation directory On Unix this is usually usr local lib vmd on Windows this defaults to C Program Files University of Illinois VMD Each user may specify their own versions of some of these files but unless this is done the commands and values in the default files are used In this way an administrator may customize the default behavior of VMD for all users while giving each user the option to change the default behavior however they choose Several configurable parameters may also be set in a number of ways including use of command line options or environment variables The order of precedence of these methods is as follows highest precedence to lowest 1 Command line options 2 Environment variable settings 3 Built in defaults as specified by compilation configurable parameters These are used only if no other values are specified by the other methods mentioned in this list The Installation Guide describes how to change these default values when compiling VMD 12 1 VMD Command Line Options When started the following command line options may be given to VMD Note that if a command line option does not start with a dash and is not part of another option it is assumed to be a PDB filename Thus the Unix co
192. ommand as well as provide a base for extensions to the standard graphics primitives The format of the draw command is e draw command arguments The draw command is equivalent in most cases to graphics top command arguments in that it simply adds graphics primitives to the top molecule saving you the trouble of typing an extra argument However draw extends graphics in two ways First if no molecule exists draw creates one for you automatically Second draw can be extended with user defined drawing commands This is done by defining for a function of the form vmd_draw_ command If the function exists it is called with the first parameter as the molecule index and the rest as the arguments from the original draw call Here s an example which extends the draw command to include an arrow primitive proc vmd_draw_arrow mol start end an arrow is made of a cylinder and a cone set middle vecadd start vecscale 0 9 vecsub end start graphics mol cylinder start middle radius 0 15 graphics mol cone middle end radius 0 25 After entering this command into VMD you can use a command such as draw arrow 0 O O 1 1 1 to draw an arrow In addition to defining new commands user defined drawing commands can also be used to override existing commands For example if you define vmd_draw_sphere then draw sphere 0 0 0 will call your sphere routine not the one from graphics Here s a quick way to add your own label to
193. on in a numeric context gets converted to an integer which will always be zero resname A GLY T Selections containing special characters such as or must be escaped with the character In order to select atoms named Na one would use the selection name Na In brief a regular selection allows matching to multiple possibilities instead of just one char acter Table 5 8 shows some of the methods that can be used There are many ways to do some selections For example choosing atoms with a name of either CA or CB can be done in the following ways 70 name CA CB name CA CB name C AB name C A B Several caveats for those who already understand regular expressions VMD automatically prepends and appends to the selection string This makes the selection 0 match only O and not OG or PRO On the other hand putting and into the command won t really affect anything selections that match on a substring must be preceded and followed by as in D x and some illegal selections could be accepted as correct but strange as in C 0 which gets converted to C 0 and matches anything starting with a C or ending with an O A regular expression is similar to wildcard matching in X PLOR Table 5 9 is a list of conversions from X PLOR style wildcards to the matching regular expression 5 3 6 Comparison selections Comparisons can be used in VMD to do atom selections like mass
194. on of the SURF binary defaults to SURF_ ARCH as defined in the vmd startup script A helpful trick when constructing surfaces is to use the Apply Changes Automatically toggle button on the graphics form wisely That is since surfaces often take a long time to build changing viewing parameters such as the probe radius can cause long delays By default each time you hit the probe radius button VMD rebuilds the surface If you want to reduce or enlarge the probe radius by several increments then you would end up rebuilding the surface multiple times By toggling the afore mentioned button you can force VMD to update on your command only This trick is sometimes helpful with other representations as well For a much faster surface rendering method see the description of MSMS 5 1 14 MSMS Another molecular surface renderer is MSMS a program written by Michael Sanner of Olsen s lab at Scripps This program is much faster than Surf and can be a better choice depending on how it is used See the web page http www scripps edu pub olson web people sanner html msms home html for more details Available options include e All Atoms should the surface be of the selection 0 or of the contribution of this selection to the surface of all the atoms 1 e Density triangle density on the surface typical values are 1 0 for molecules with more than one thousand atoms and 3 0 for smaller molecules e Probe Probe radius used t
195. one of the two molecules and press Toggle Fixed Enter translation mode and move the other molecule around Notice that the number which lists the distance between the two atoms never changes That s because the mouse only affects the way the coordinates are translated to the screen image It does not affect the real coordinates at all It is possible to change the coordinates in a molecule using the text command interface or by using the atom move pick modes 4 1 2 By the way unfix the molecules and do a Reset View from the Display menu to reset everything Load up the third structure deoxy pdb and give it the same selection as the other two molecules However color this one green Pull out Nature v 371 Oct 27 1994 and turn to page 740 With a bit of manipulation you should be able to recreate the image that appears there 2 7 Some Nice Represenations The following views are quite nice for displaying proteins and nucleic acids selection all drawing method tube coloring method segname or chain why This show the backbone of the protein and nucleic acid strands selection protein and name CA or not backbone drawing method lines coloring method segname or chain why shows where the side chains are located but they are thin so the backbone is still visible and the scene is quickly drawn selection numbonds 0 and not waters drawing method vdw coloring method name 18 why shows ions The not
196. operties such as water the returned value will be 1 if true and 0 if false gt gt gt x y z sel get x y z e set attr val Set the atom property corresponding to attr using the values in val The number of elements in val should be either 1 or the number in the atom selection gt gt gt len sel 12 115 gt gt gt sel set beta 3 gt gt gt sel set beta 1 2 3 4 5 6 7 8 9 10 11 12 e sell amp sel2 Create a new atom selection using the atoms found in both sel1 and sel2 e sell sel2 Create a new atom selection using the atoms found in either sel1 or sel2 e sel Create a new atom selection using the atoms not found in sel e len sel Returns the number of atoms in the selection e sel 0 sel 0 3 Index and slice operations return the corresponding atoms in the selec tion 9 3 1 An atom selection example In the first example we load the molecule alanin pdb and create an atom selection consisting of the alpha carbons Note that AtomSel is the nae of the class which generates atom selection instances We show the string representation of the object by entering its name and pressing return this shows the text used in the selection Next we demenstrate how atom selections act like tuples we can get their length using the built in len command and return a copy of the selected atoms in a tuple by using the slice operator Finally we demonstrate the get and set operations The g
197. ouse wheel irrespective of the current mode setting on computers equipped with an appropriate mouse Mouse Mode Move Light VMD provides four directional lights to illuminate the molecular scene The lights provide diffuse lighting and specular highlights and help the user perceive surface shape in rendered objects You can use the mouse to rotate each of the light source directions to a new position If the light isn t on moving it will not affect the displayed image To turn a light on or off use the Lights item within the Mouse menu Mouse Mode Add Remove Bonds When the mouse is in add remove bonds mode clicking on atoms in a molecule will add a bond between those atoms if one is not already present or remove the bond between those atoms if there is already a bond The two atoms must belong to the same molecule 4 1 2 Pick Mode Mouse picking can be used to turn on or off various types of labels to query for information about an object or to move items around on the screen You can label an atom and display the atom name or you can label geometric values such as the distance between two atoms a bond label an angle between three atoms an angle label or the dihedral angle formed by four atoms a dihedral label This is done by setting the mouse into the proper picking mode and then selecting the relevant atoms with the mouse Picking modes are selected with the Pick controls in the Mouse menu 24 The available ac
198. ove a device from a tool using a name found in the sensor configuration file e callback on off Enable callbacks for the tools 8 3 31 translate Translate the objects in the current scene This does not change the atom coordinates e by x y z Translate by vector x y z in screen units note that this does not change the atom coordinates e to x y z Translate to the absolute position x y z in screen units 8 3 32 user Add user customized commands e add key key command Assign the given text command to the hot key key When key is pressed while the mouse is in the display window the specified command will be executed e print keys Print out the current definition of the hot keys See section 4 1 3 for examples of the use of the user command 107 8 3 33 vmdinfo Tcl Returns information about this version of VMD e version Returns the version number e versionmsg Full information about this version e authors List of authors e arch architecture type in case you couldn t tell e options options used to compile VMD e www VMD home page e wwwhelp VMD help page This function is available without Tcl and the information is displayed to the screen 8 3 34 wait Specify a number of seconds to wait before reading another command Animation continues during this time The wait command will not behave as expected if called within a complex Tcl proc or loop structures The wait command doesn t actua
199. phere zx y z radius r resolution n Draws a sphere of the given radius default r 1 centered at the vertex The resolution default n 6 determines how many polygons are used in the approximation of a sphere text x y z text string Displays the text string with the bottom left of the string starting at the given vertex http www ks uiuc edu Research vmd script library 95 e color colorld e color name e color trans_name Each of the above geometrical objects are drawn using the current color Initially that color is blue which has the colorid of 0 The color command changes the current color and stays info effect until the next color command Thus to draw a red cylinder then a red sphere first use the command color red command to change the color then use the cylinder and sphere commands e materials lt onloff gt Material properties are used to make the graphical objects lines cylinders etc be affected by the light sources These make the objects look more realistic but are slower on machines which don t implement materials in hardware see chapter 5 2 and sections on color 8 3 4 and colorinfo 8 3 5 commands for the information on how to turn off material characteristics for all objects in VMD One surprising effect of material characteristics is that lines are affected In some lighting situations the lines can even appear to disappear Thus you may want to turn off materials before drawing li
200. q quit confirm Quit VMD with confirmation Alt Q quit Quit VMD Alt h hyperref invert Invert hyper text mode NOT help Table 4 3 Menu control hot keys Hot Key Command Purpose f F animate next move to next frame b B animate prev move to previous frame gt animate forward play animation forward 5 animate reverse play animation reverse lt animate reverse play animation reverse animate pause stop animation Table 4 4 Animation hot keys 4 4 Description of each VMD form VMD uses several different GUI forms each designed to control a specific aspect of the molecular display e g to control the appearance of the graphics display window or to change the colors of displayed objects Each form has a unique name includes a button with the name of the form near the top of the window Pressing this button will hide the form from view The following sections give a brief description of the forms available in VMD the remaining chapters in this manual describe the actions which these forms make available in greater detail 4 4 1 Main Form The Main form is the main way to access other forms load and save files control trajectory playback change various global program settings access help and to quit the program Many of these actions can also be performed with the menu shortcut keys described in Table 4 3 The Quit menu item exits VMD This will bring up another form which verifies that you do indeed wish
201. qr which squares each element of the array Thus the command to select all atoms within 5 A of a point x y z 3 4 5 in space is sqr x 3 sqr y 4 sqr z 5 lt sqr 5 5 3 7 Comparison Operators There are two types of comparison operators numeric and string which allow the user to specify the appropriate comparison function Suppose the segment name which takes on a string value contains the names 11 and 8 VMD cannot figure out if 8 should be less than 11 in the numeric sense or greater than 11 in the lexographical sense Instead of trying to resolve this problem through some sort of internal heuristics VMD leaves it up to the user so that 8 lt 11 but 11 1t 8 Perl users should recognize this solution 71 The numeric comparisons are the standard ones lt lt or gt gt and The corresponding string comparisons are 1t le eq ge gt and ne As in perl there is a match operator so that ICA Cle segname VP 1 4 matches VP1 VP2 VP3 and VP4 present in some virus structures are valid No distinction is made between single and double quotes 5 3 8 Other selections sequence VMD supports selection based on the one letter amino acid sequence with the sequence selection keyword This allows selections of the form sequence APD sequence C C might be used to pick out zinc fingers sequence AATCGGAT Unlike the other string sel
202. r using the Chain category ColorID Use a user specified color index from 0 to 15 Beta Color scale based on beta value of the PDB file Occupancy Color scale based on the occupancy field of the PDB file Mass Color scale based on the atomic mass Charge Color scale based on the atomic charge Pos Color scale based on the distance of each atom to the center of the molecule This is an interesting way to view globular systems Index Color scale is based on the atom index Due to the way the PDB file is organized this actually looks nice Backbone Backbone atoms green everything else is blue Table 5 3 Molecular coloring methods between a given item in a color category and a color can be changed using the Color form 4 4 10 This allows users to make atoms with the name CA be black and the residue CYS be yellow Some attention was given to making the colors reasonable so that oxygens are red nitrogens blue sulphur and cysteines yellow etc 5 2 4 Color scale Several of the coloring methods including Beta Charge and Occupancy describe a range of floating point values rather than a set of names These are colored via the color scale which is a list of 1024 smoothly changing colors There are many color gradations available All of them consist of transformations of three colors For instance RGB colors the smallest value red values near the middle of the scale are green and the largest valu
203. r all residues By setting the Zoom slider to a value smaller than 1 0 or by pressing the Fit all button more or all of the sequence information for a large protein can be seen at once To show a text line for every residue in the sequence zoom factor 1 0 click on the Every Residue button The Zoom slider can be dragged with the left mouse button to re scale sequence smoothly or it can jump to a given value by clicking along the slider track with the middle button this is useful to work more quickly with very long sequences For a multi thousand residue protein with Fit all selected hundreds of residues can be selected at once and trends in B value and structure across the entire protein sequence can be detected In the screen shot above a section of 70 residues with lower B values than surrounding sequence is selected by dragging a rectangle around the green stretch in the B value column Other controls include e Toggle display of 3 letter and 1 letter codes Click on 1 letter code to switch from 3 letter to 1 letter amino acid codes The same button then reads 3 letter code click it to switch back from 1 letter to 3 letter codes e Print contents of sequence window Select File Print to File to create a postscript file containing the current sequence listing and highlighting e Start related analysis programs Select Analyze RamaPlot to start a Ramachandran plot viewer see Section 4 4 16 Select Analyze Start RMSD Al
204. ral more abstract selection criteria are available For instance the selection x gt 5 finds all atoms with an x coordinate greater than 5 while mass gt 12 and mass lt 14 selects all atoms with mass greater than 12 and less than 14 atomic mass units Many math functions are also provided so the selection sqrt sqr x sqr y sqr z lt 10 will select atoms in a spherical region of radius 10 A centered about the origin of the coordinate space You can pick atoms nearby a selection with the phrase within lt distance gt of lt selection gt and all residues with the same property as a given selection as same lt property gt as lt selection gt See section 5 3 for a full description of the selection command 2 6 Comparing Two Structures Let s start from scratch by deleting everything use the text console and tye the command mol delete all and press enter This deletes all loaded molecules and is often more convenient then selecting them and deleting them all one by one Alternatively you could highlight each molecule in the molecule browser and use the Delete Molecule item in the Molecule menu to remove them one by one Begin by loading the mbco pdb structure with the Files form Turn on just the heme CO and histidines by using the selection commands resname HEM CO or resid 64 93 The dot probably green in the middle is the iron and you can verify that by picking it with the mouse Do this by changing the Object
205. rame rate The frame rate is displayed in the upper right hand corner of the graphics window when it is enabled e Lights The graphics display window can use up to four separate light sources to add a realistic effect to displayed graphical objects The Lights On browser turns these light sources on or off If the number is highlighted the light is on and clicking on it turns the light off See sectin 4 1 1 for more discussion regarding lights 36 Axes A set of XYZ axes may be displayed at any one of five places on the screen each of the corners or the center or turned off This is controlled by the Axes chooser Stage The Stage browser controls the stage which is a checkerboard plane that can be located in any one of six places or turned off e Stereo Eye Sep and Focal L These controls are found in the Settings display sub form These controls set the stereo mode and parameters stereo is discussed fully in chapter 86 The Stereo chooser changes the stereo mode while the Eye Sep and Focal L controls change the eye separation distance and the focal length respectively e Clipping Planes Near Clip and Far Clip These controls are found in the Settings display sub form Only those parts of the scene between the near and far clipping planes are drawn The display clipping planes also set the depth cueing start and endpoints Objects at the near clipping plane are distinct and crisp objects at the far clipping plane
206. re on RMSD alignment 99 inverse matriz Returns the inverse of the given 4x4 matrix contacts cutoff selection1 selection2 Find all atoms in selection1 that are within cutoff of any atom in selection2 and not bonded to it If selection2 is omitted it is taken to be the same as selection1 selection2 must be from the same molecule as selection1 Returns two lists of atom indices the first containing the first index of each pair and the second containing the second pair Note that the index is the global index of the atom for the whole molecule not the index into the given atom selections hbonds cutoff angle selection1 selection2 Find all hydrogen bonds in the given selection s using simple geometric criteria Donor and acceptor must be within the cutoff distance and the angle formed by the donor hydrogen and acceptor must be less than angle from perpendicular Only non hydrogen atoms are considered in either selection If both selection and selection2 are given the selection is considered the donor and selection2 is considered the acceptor If only one selection is given all non hydrogen atoms in the selection are considered as donors and acceptors As for contacts the two selections must be from the same molecule The function returns three lists each element in each list corresponds to one hydrogen bond The first list contains the indices of the donors the second contains the indices of the acceptors and the third contains t
207. ready exists no action is performed Returns a dict corresponding to the referenced label that can be used in the show hide delete and getvalues methods e listall type Returns a list of labels of the given type The elements of the list are python dictionary objects with the following keys molid atomid value on The values for molid and atomid are tuples containing the molecule id and atom id for the label value is the numerical value of the geometry label or zero for ATOM labels on is 1 if the label is shown and 0 if the label is hidden e show type label Turn the given label on label must be a dictionary containing molid and atomid keys whose values are tuples If the tuples match the molecule ids and atom ids of the atoms in an existing label the label will be turned on Raises ValueError if the label does not exist e hide type label Turn the given label off label must be a dictionary containing molid and atomid keys whose values are tuples If the tuples match the molecule ids and atom ids of the atoms in an existing label the label will be turned off Raises ValueError if the label does not exist e delete type label Delete the given label label must be a dictionary containing molid and atomid keys whose values are tuples If the tuples match the molecule ids and atom ids of the atoms in an existing label the label will be deleted Raises ValueError if the label does not exist 123 getvalues type
208. rep and provide controls for changing the properties of the rep Each drawing method has specific controls which will appear when it is selected When the ColorID coloring method is selected a text entry box is shown allowing you to specify the index of a color to use for the selection which may be a number from 0 to 16 Changing a rep To change a representation select it in the representation browser The atom selection for that rep will appear in the Selected Atoms text area and the controls will update to reflect the current settings Changing the settings will immediately affect the displayed representa tion if the Apply Changes Automatically check box is selected When it is disabled updates will only occur when the Apply button is pressed Changing the drawing method brings up method specific controls and defaults If you go back to the previous draw style VMD restores any changes that you may have made to the settings Pressing the Default button will restore the default settings The display will be updated after every change Adding a rep To add a new representation of the molecule enter the selection into the Atom Selection text area or keep what is there and press Create New This adds the representation to the currently selected molecule Deleting a rep To delete a representation select the representation in the browser and press the Delete button Bear in mind that this does not delete the molecule it only deletes one of
209. ring Tool also allows interaction with running molecular dynamics simulations It works like the Tug Tool except that when the button on the tracker is released near an atom the simulated spring is connected to it See section 4 4 9 for information on viewing and modifying the list of active springs e The Pinch Tool is similar to the Tug Tool except that force is applied only along the axis defined by the orientation of the tracker To add a new tool to a VMD session open the Tool form and click the Create Tool button The tool s number and type are displayed in the list to the left Devices can be added to the tool by selecting them from the Add Device menu or removed with the Delete Device button Some of the options that can be specified in the sensor configuration file can be edited in using the controls below and the tool s type can be changed with the Type menu 4 4 14 Simulation Form VMD has the ability to work with a molecular dynamics program running on another computer to interact with and display the results of a simulation as they are calculated A major feature in VMD is the ability to add perturbative steering forces to a running simulation which are incor porated directly into the dynamics calculation we refer to this capability as Interactive Molecular Dynamics IMD In order to run and IMD simulation it is necessary to have a molecular dynam ics program that supports the IMD communication protocol To date two such pr
210. s a number of modules for loading molecules and controlling their display VMD currently uses Python version 2 2 9 1 Using the Python interpreter within VMD When you start VMD the VMD text console normally uses the Tcl command interpreter to process what you type In order to use the Python interpreter you have to tell VMD to switch to Python mode There are three ways to do this 1 Type gopython in the console window 2 pass python as a command line option or 3 put gopython on the last line of your vmdrc file If VMD prints an error message reporting that the Python interpreter is not available your version of VMD was not compiled with Python support contact the VMD developers for help If all goes well you should see Python command prompt gt gt gt in the console window To switch back to the Tcl interpreter press Ctrl D as though you were exiting Python Switching back and forth between Python and Tcl does not destroy any of your work all variables and modules will still be defined until you exit VMD Typing gopython lt filename gt where lt filename gt is the name of a file containing Python code will cause VMD to switch to Python mode process the file then switch back to Tcl In this way you can embed Python functions inside your Tcl scripts You can also type gopython command your code here to run an arbitrary line of python code 9 2 Python modules within VMD Once you enter the VMD Py
211. s been developed by the Theoretical Biophysics group at the University of Illinois and the Beckman Institute This work is supported by grants from the National Institutes of Health grant number PHS 5 P41 RR05969 04 the National Science Foundation grant number BIR 9423827 EQ and the Roy J Carver Charitable Trust 1 5 Acknowledgments The authors would particularly like to thank those individuals who have contributed suggestions and improvements particularly those contributing new features Special thanks go to Andrew Dalke Alexander Balaeff Ilya Balabin Jordi Cohen Todd Furlong Paul Grayson Justin Gullingsrud Barry Isralewitz Sergei Izrailev Charles Schwieters and John Stone The entire VMD user com munity now benefits from your suggestions and contributions The authors would like to thank the members of the Theoretical Biophysics group past and present who have helped tremendously in making suggestions pushing for new features and trying http www ks uiuc edu Development biosoftdb Shttp www ks uiuc edu 11 out bug ridden code Thanks go to Michael Bach Ilya Balabin Alexander Balaeff Daniel Barsky Tom Bishop Robert Brunner Jordi Cohen Paul Grayson Ivo Hofacker Xiche Hu Barry Isralewitz Dorina Kosztin Ilya Logunov Jim Phillips Ari Shinozaki Svilen Tzonev Kirby Vandivort Willy Wriggers Dong Xu and Feng Zhou Thanks also to all of you who have tried out the program Many external libraries and pack
212. s dotted lines of a given width The default is 1 but you should probably increase that to 2 On most SGIs you can t make it any wider than that as described in the man page for linewidth The bond is colored by the color associated with the acceptor 5 1 5 Points Points draws each atom as a point and does not draw any of the bonds This option is useful when rendering very large molecules containing hundreds of thousands of atoms particularly for rendering water or other structures for which geometric detail may not be necessary 5 1 6 VDW VDW draws the atoms as spheres The radius used is the van der Waals radius multiplied by a user selectable scaling factor The sphere resolution determines how finely to tessellate the spheres that are drawn Drawing spheres takes some time since they are built from many polygons Note Due to variations in atom naming conventions in rare instances VMD may improperly assign VDW radii to specific atoms since VMD determines each atom type based on the first letter forming its name For example VMD would assume an atom named HG to be a hydrogen rather than a mercury If this happens you are always free to redefine the radii using a syntax much like that below set sel atomselect top name HG sel set radius 1 9 57 5 1 7 CPK CPK is a combination of both Bonds and VDW in that it draws the atoms as spheres and the bonds as cylinders The resolution
213. s in a selected residue at the same time Select an atom in a residue and move it to a new position while keeping the mouse button pressed All the atoms in the same residue as the selected one will be moved the same amount Holding down the shift key and the left mouse button while moving the mouse will rotate the atoms in the residue about the selected atom If the middle mouse button is held down instead the atoms in the residue will rotate about a line drawn through the picked atom and parallel to a line coming directly out of the screen This behavior is similar to the usual Rotate mode except that coordinates of atoms are changed Pick MoveFragment hot key 7 A fragment is a set of atoms all connected by a series of covalent bonds This mode acts just like MoveResidue except that the atoms which are moved are all in the selected fragment rather than in the selected residue This will change the atom coordinates Holding down the shift key and the left mouse button while moving the mouse will rotate the atoms in the fragment about the selected atom If the middle mouse button is held down instead the atoms in the fragment will rotate about a line drawn through the picked atom and parallel to a line coming directly out of the screen This behavior is similar to the usual Rotate mode except that coordinates of atoms are changed 25 e Pick MoveMolecule hot key 8 This mode may be used to move all the atoms in a
214. s the displayed VMD scene to a text of image file in the selected format The second optional stage renders the exported file potentially displaying the results when complete The exported file is named in the Filename field a default name is given when a new format is selected so it is best to hold off entering the filename until after the file format is selected Another way to select the filename is available by pressing the Browse button which opens up a file browser Pressing the Start Rendering button writes the data file After that the Render Command is executed The default command should start the appropriate rendering program if it is available Some of the rendering commands have been set to call a display program on the rendered image when it is completed VMD will wait for the display program to finish which causes VMD to freeze until the display program closes so you may want to run the job in the background This can be done on Unix by enclosing the existing text with s and putting an amp at the end For example the way to make the Raster3D render command run in the background is render lt s sgi s rgb ipaste s rgb amp 4 4 13 Tool Form The Tool form is used to set up external 3D pointers buttons force feedback devices and the VMD tools that they control VMD communicates with input devices through CAVElib FreeVR or via Virtual Reality Peripheral Network VRPN or with direct operating system i
215. s the minimum time required between updates Jumping to Specific Frames The start and end buttons are used to simplify the comparison between the initial and final struc tures The start button resets the current animation to the first frame and end jumps to the last frame If you need to jump to a specific frame enter the frame number in the frame counter text area next to the start button and press enter One thing to bear in mind is that the frame number starts at 0 so to jump to the 5th frame you must actually enter 4 here The animation controls are all relative to the top molecule 84 4 2 Looping Styles When the animation is playing forward and reaches the end of the data available for the top molecule one of three possible actions takes place as specified in the style chooser The default is Loop which will reset the active molecules to the first frame and continue playing forward Once will stop the animation when it reaches the last frame and Rock reverses the direction of animation The actions are symmetrical when the animation is playing in reverse 32 4 4 4 Molecule File Browser Form r Molecalde File Browser Loos ties or wee PRS ere pmi gpm a a pik Browse parea A l First Lage Tride Load p bachground Load dll at once Lome Figure 4 3 The Molecule File Browser form The Files form is used to load a file from disk It is opened by selecting Load Molecule
216. scale min z Set minimum of color scale to x in the range 0 1 e scale max xz Set maximum of color scale to zx in the range 0 1 e change rgb color Reset rgb of color to default value e change rgb color r g b Set rgb of color to r g b See the graphics 8 3 10 command for how to change color of a user defined graphics object 91 8 3 5 colorinfo Tcl This command provides access to the color definitions For information on the color properties see the chapter on Coloring 85 2 e colorinfo categories returns a list of available categories e colorinfo category category returns a list of names for the given category e colorinfo num returns the number of base solid colors 17 e colorinfo max returns the total number of colors available 49 e colorinfo colors returns a list of the named solid colors e colorinfo index rgb lt name value gt returns the index or rgb of the given name or color id e colorinfo scale lt method methods midpoint min max gt returns the information about the color scales Examples find out what color corresponds to which id set i 0 foreach color colorinfo colors 1 puts i color incr i also get a list of RGB values set i 0 foreach color colorinfo colors 1 lassign colorinfo rgb color r g b puts i color r g b incr i 8 3 6 display Change various aspects of the graphical display window For information about the options see
217. script A class of types chemical has been created for chemical models so the MIME type for PDB files is chemical pdb for XYZ is chemical xyz etc Helper Applications The web browser uses the MIME type to determine how to view the body of the message Some of the documents are viewed by the browser itself like text html which describes HTML documents In other cases the browser has to start up another application From here on we ll describe how Mosaic and Netscape do this First it saves the incoming message body to a temporary file It then scans the global and local mailcap files to determine which application is used to view the given MIME type The application which must take a file name on the command line is then executed When the application exits the temporary file is deleted 12 4 2 Setting up your mailcap The Unix versions of VMD have an extra webhelper command line flag which causes VMD not to be spawned in the background so that it has time to read temporary files downloaded by the web browser This command line flag is just slightly simpler to use than the chemical2vmd script as it does not depend on having Perl installed so may be more appropriate for some cases In the VMD installation directory VMDDIR scripts vmd there is a perl script called chemical2vmd which will create a VMD command file and execute VMD Since VMD does not block the calling process Netscape and other web browsers cannot directly call VMD
218. se atom selection tools This tutorial assumes that you have already loaded the myoglobin molecule but it isn t necessary to recreate all the graphical representations To change which atoms are used to display each representation of the molecule shown in the display window open the Graphics form 4 4 7 and select the representation you want to change You can then either edit the different fields selection coloring method or drawing method or use 16 the Delete button to delete the view entirely Try changing or deleting some of the views When finished delete all representations for the myoglobin structure To get the basic line drawing view back clear the atom selection text entry area press Esc enter all and press the Create New button Atoms may be selected on the basis of a property i e protein or not protein water or nucleic backbone They may also be selected by atom name such as atom C by residue name such as resname HEM or by many other identifiers Multiple atoms may be specified with one key word For example the selection name C CA N 0 will select the backbone atoms A similar effect may be obtained with the command protein backbone VMD can handle regular expressions so that name C will select all atoms with names starting with C VMD also understands the boolean operators and or and not so the selection resname HEM and not name N selects all non nitrogen atoms in the heme group of myoglobin Seve
219. se include commands to extract information on sets of atoms and molecules vector and matrix routines for coordinate ma nipulation and functions for computing values such as center of mass and radius of gyration Tcl and Python scripting languages VMD uses the freely available Python and Tcl scripting languages for processing text com mands These popular languages which contain variables loops subroutines and much more VMD also uses the Tk Toolkit a simple user interface toolkit that interfaces with Tcl e Support for multimodal input and various display systems A number of different visual display and control systems are supported in addition to the usual monitor keyboard and mouse The VRPN tracker library is used to get position and orientation information from a wide variety of spatial input devices including magnetic trackers haptic force feedback devices Spaceballs etc VMD works with WireGL and Chromium on tiled display walls and immersive VR environments via compiled in CAVE and FreeVR support e Easy to Extend VMD is written in C and C and employs object oriented design VMD implements a plugin interface for extending its file format support and for general purpose extensions in functionality 1 1 For information on our other software VMD is part of a suite of tools developed by the Theoretical Biophysics group at the University of Illinois e BioCoRE BioCoRE is a web based collaborative environment for structur
220. selected molecule at the same time Select an atom in a molecule and move it to a new position while keeping the mouse button pressed All the atoms in the same molecule as the selected one will be moved the same amount Holding down the shift key and the left mouse button while moving the mouse will rotate the atoms in the molecule about the selected atom If the middle mouse button is held down instead the atoms in the molecule will rotate about a line drawn through the picked atom and parallel to a line coming directly out of the screen This behavior is similar to the usual Rotate mode except that coordinates of atoms are changed e Pick MoveHighlightedRep hot key 9 This mode may be used to move all the atoms in a selected representation at the same time You select a representation by clicking on one of the reps in the browser window of the Graphics form In order to move the atoms in this rep the atom you pick with the mouse must be selected by that rep When you have clicked on an atom in the rep move the mouse to a new position while keeping the mouse button pressed All the atoms selected by the highlighted rep will be moved the same amount Holding down the shift key and the left mouse button while moving the mouse will rotate the atoms in the rep about the selected atom If the middle mouse button is held down instead the atoms in the rep will rotate about a line drawn through the picked atom and parallel to a line comi
221. standard Ribbon option which draw the ribbon with an oscillation along the sheet The other conformations are drawn as a tube Since the endpoints of the helix cylinder and cartoon sheet are not at the Ca coordinate the tube method was slightly changed to make the tube go to the new locations This does not always work resulting in a tube which does not quite connect to a cylinder 5 1 13 Surf This option uses the molecular surface solver written by Amitabh Varshney when he was at the University of North Carolina When this option is used the radii and coordinates are written to a temporary file and the surf executable is run with the probe radius as a parameter When finished the output is written to another temporary file which is then read by VMD and colored 59 and displayed The value of the probe radius is controlled by the sphere radius and this is identical to the probe size in e Probe Probe radius used to construct the molecular surface e Wireframe The surface can optionally be drawn using lines rather than solid triangles This surface is rather slow in both generation and display for systems over several hundred atoms The SURF calculation is quite exact and will show complete detail even when it isn t needed The use of disk space as an interprocess communications medium takes up about half of the run time There is an environment variable which can affect the Surf display option e SURF_BIN locati
222. sum Here s another slower way to do the same thing This works because the mass returned from the selection is a list of lists Putting it inside the quotes of the eval makes it a sequence of vectors so the vecadd command will work on it proc total_mass1 selection set mass selection get mass eval vecadd mass T Coordinate min and max Find the min and max coordinate values of a given molecule in the x y and z directions see also the measure command minmax The function takes the molecule id and returns two vectors the first contains the min values and the second contains the max proc minmax molid 4 set sel atomselect molid all set coords sel get x y z set coord lvarpop coords lassign coord minx miny minz 145 lassign coord maxx maxy maxz foreach coord coords lassign coord x y z if x lt minx set minx x else if x gt maxx set maxx x if y lt miny set miny y else if y gt maxy set maxy y if z lt minz set minz z else if z gt maxz set maxz z return list list minx miny minz list maxx maxy maxz Radius of gyration Compute the radius of gyration for a selection see also measure rgyr The square of the radius of gyration is defined as gt m 7 F X mi This uses the center_of mass function defined earlier in this chapter a faster version would replace that with measure center proc gyr_radius sel mak
223. tereo image that is behind the screen a less dramatic effect but easier to see for some people stereo effect Figure 4 5 describes the relationship between the screen height the screen distance and the world coordinate space 4 4 7 Graphics Form The Graphical Representations or Graphics form controls how molecules are drawn Molecules are represented by reps which are defined by four main parameters the selection 5 3 the drawing method 5 the coloring method 5 2 and the material The selection determines which part of the molecule is drawn the drawing method defines which graphical representation is used the coloring method gives the the color of each part of the representation and the material determines the effects of lighting shading and transparency on the representation 37 4 3 SCRHEIGHT i e 8 0 lt e Se D deltas SCRDIST Viewers aa A NX Le 2 0 Eye Position Saa a 5 SCRHEIGHT i e 6 Figure 4 5 Relationship between screen height SCRHEIGHT screen distance to origin SCRDIST and the viewer 4 4 8 Draw Style Tab Select a molecule for editing using the Selected Molecule chooser at the top of the form The browser below this chooser lists the reps available for the molecule Each line of the browser summarizes information about the drawing method the coloring method and the selection Below this browser choosers and a text input filed reflect the current state of the
224. the lists of atom names residue names and so forth for the selected molecule When the Selections tab is pressed several browsers appear in place of the drawing and coloring method controls These are used to list the available keywords macros and values for use in selecting atoms for the associated representation The top browser lists singlewords and macros such as all water and hydrophobic The botton left browser contains a list of the keywords and functions understood by the selection command 85 3 If a keyword is selected which can take on a value for instance name and index then the possible names will be displayed in the bottom rightmost browser The functions can be identified by the to the right of the name After selecting a keyword the right browser will display all the names associated with the keyword For example selecting resname in the left browser will show all the three letter residue names known for the selected molecule Clicking on a field in the value browser will add it to the selection text field Double clicking a 40 keyword field adds the keyword to the text field Press Apply to actually change the atom selection for the current rep Press Reset to restore the atom selection to its original value The Selections tab also shows the atom selection macros that have been defined These macros let you define a commonly used atom selection as a single word so that it can be inserted into a rep more conveniently At
225. the simulation the simulation will continue to run kill Disconnect from the simulation and also cause it to halt pause lt on off toggle gt Pause unpause or toggle the paused state of the remote simulation transfer rate Set the rate at which new coordinates are sent by the remote simulation to VMD to the specified value keep rate Set the keep rate i e the frequency at which VMD saves simulation frames to memory to the specified value 8 3 13 label Turn on or off labels for the four categories atoms bonds angles or dihedral angles create and destroy simulated springs Once a label is created given the list of associated atoms it can be turned on or off until it is deleted Also the value of the label over the trajectory can be saved to a file and viewed with an external program such as xmgrace In the following category implies one of Atoms Bonds Angles Dihedrals list Return a list of available categories list category List all labels in the given category add category molID1 atomID1 molID2 atomID2 1 Add a label involving the atom s atomID of the molecule molID to the given category show category lt all label number gt Turn on labels in the given category hide category lt all label_number gt Turn off labels in the given category delete category lt all label number gt Delete labels in the given category graph category label_number command Show a graph of a label fr
226. thon environment you will find a module called VMD already loaded This module contains all the other built in modules for writing VMD Python scripts VMD is not distributed with an entire Python environment use the set of libraries that normally come with a Python distribution you must tell Python where to find the libraries There are two primary means of doing this The PYTHONHOME environment variable points to the location where Python is installed the version installed at this point must match VMD s version 2 2 Thus 114 if you have Python libraries in usr local lib python2 2 adding the line set env PYTHONHOME usr local to your startup script or vmdrc file will do the trick If you have additional modules that you want to use within VMD use the PYTHONPATH envi ronment variable to tell Python where to find them See any Python book for more information if the Tkinter module is found in the Python installation VMD will load it at Python startup in order to make Tkinter windows work in harmony with windows created from within Tk In addition if you have Numeric Python installed in your system a submodule called vmdnumpy will become available within the VMD module see below for details 9 3 Atom selections in Python VMD provides an atom selection class for use in the Python interpreter Instances of this class correspond to a set of atom indices in a particular molecule for a particular coordinate set Once an atom selectio
227. tialiasing on or off culling lt on off gt Turn backface culling on or off depthcue lt on off gt Turn depth cueing on or off projection lt perspective orthographic gt Set the projection mode to mode stereo mode Set the stereo mode to mode nearclip lt set add gt value Add or set near clipping plane position to it value farclip lt set add gt value Add or set far clipping plane position to value get lt eyesep focallength height distance antialias depthcue culling stereo projection nearclip farclip gt Return information about the given option get lt stereomodes projections details gt Return a list of the availalble values for the given options See section 4 4 6 and chapter 6 for more information fps lt on off gt Turn frames per second indicator on or off 8 3 7 draw VMD offers a way to display user defined objects built from graphics primitives such as points lines cylinders cones spheres triangles and text Since these are displayed in the scene just like all other graphics they can also be exported to the various ray tracing formats 3 D printers etc User defined graphics can be used to draw a box around a molecule draw an arrow between two atoms place a text label somewhere in space or to test a new method for visualizing a molecule 93 The draw command is a straight Tcl function which is meant to simplify the interface to the graphics c
228. tion shift click and drag to add ol multiple residues to your selection Highlights appear as thick yellow Bonds representations these can be changed or turned off 4 4 15 Selecting residues by clicking on the 3 D structure Use the Mouse menu to enter Pick Atom mode or press 1 the standard keyboard shortcut Click on any protein atom and its residue will highlight and the sequence list will scroll to display this residue Shift click works the same way but adds to the current selection Note that if the zoom factor is smaller than 1 0 the single residue sequence highlight will be shorter in height than a full line of text Once the Sequence window has been opened any Pick will create or add to selections until highlighting is turned off 4 4 15 Sequence Zooming Larger proteins contain thousands of residues too many to display in a linear text list all at once The sequence form can only list about 40 text lines to work with a protein of more than 40 residues use the scroll bars to scroll through the long list or use the Zoom controls to fit the data from a long list into a small space The Zoom slider and the Fit all Every Residue buttons zoom in and out of a long sequence list to allow viewing and selecting from the entire list all at once To represent more than 40 residues on the form the text list seems to skip residues but selections highlights and color coded data are still active fo
229. tion is frozen Table 8 1 Summary of core text commands in VMD 110 Source Associated URL faq raster3d stride mdscope homepage quickhelp babel radiance maillist namd vrml rayshade povray tcl software userguide http www ks uiuc edu Research vmd_ allversions vmd_faq html http www bmsc washington edu raster3d http www embl heidelberg de stride stride info html http www ks uiuc edu Research mdscope http www ks uiuc edu Research vmd http www ks uiuc edu Research vmd vmd_help html http www eyesopen com babel html http radsite lbl gov radiance HOME html http www ks uiuc edu Research vmd mailing_list http www ks uiuc edu Research namd http www vrmlorg http www graphics stanford edu cek rayshade rayshade html http www povray org http www scriptics com http www ks uiuc edu Research vmd allversions related_programs html http www ks uiuc edu Research vmd vmd 1 3 ug ug html Table 8 2 On line Help Sources 111 Keyword Aliases Arg Set Description id int N molecular id index int N index on the molecule list numatoms int N number of atoms name str N the name of the molecule usually the name of the file filename str N list of filenames for all files loaded for this molecule filetype str N list of corresponding file types for this molecule active bool Y is make the molecule active drawn display
230. tion num 0 0 The following uses the frame rmsd function to list the rmsd of the molecule over the whole trajectory as compared to the first frame vmd gt mol load psf alanin psf dcd alanin dcd vmd gt set sel atomselect top all vmd gt for set i 0 i lt molinfo top get numframes incr i puts list i frame_rmsd sel i 0 J 0 0 0 1 0 100078 2 0 291405 3 0 523673 97 20 0095 98 21 0495 99 21 5747 The last example shows how to set the beta field This is useful because one of the coloring methods is Beta which uses the beta values to color the molecule according to the current color scale This can also be done with the occupancy field Thus redefining the beta values allows you to color the molecules based on your own definition One useful example is to color the molecule based on the distance from a specific point for this case coloring a poliovirus protomer based on its distance to the center of the virus 0 0 0 helps bring out the surface features proc betacolor_distance sel point T get the coordinates foreach coord sel get x y z 4 get the distance and put it in the newbeta list set dist veclength2 vecsub coord point lappend newbeta dist set the beta term sel set beta newbeta And here s one way to use it 147 load pdb2plv ent using anonymous ftp to the PDB vmd gt mol load webpdb 2plv vmd gt set sel atomselect top all vm
231. tions when in pick mode are Pick Query hot key 0 Clicking with the left or middle mouse button on an item will print out the name of the item e g the atom name to the text console window Pick Center hot key c This mode is used to change the point about which a molecule rotates when the molecule is rotated To cause a molecule to rotate about a specific atom select this mode and then click on that atom The rotation point may be restored to its default position the center of volume of the molecule by executing the Reset View option from the Mouse menu Pick Atom hot key 1 Clicking on an atom will toggle on off a label for the atom Pick Bond hot key 2 Clicking on two atoms in a row will toggle on off a bond distance label between the two atoms a dotted line with the distance printed at the midpoint Pick Angle hot key 3 Clicking on three atoms in a row will toggle on off a label showing the angle formed by the three atoms Pick Dihedral hot key 4 Clicking on four atoms in a row toggles on off a label showing the dihedral angle formed by the four atoms Pick MoveAtom hot key 5 In this mode the position of an atom can be changed by clicking on the desired atom and dragging with the mouse while the button is still pressed This will change the atom coordinates Pick MoveResidue hot key 6 This mode may be used to move all the atom
232. trols 24 36 ray tracing considerations 83 shading and material properties 45 IMD 49 imd command 96 110 Python module 122 requirements 49 Interactive Molecular Dynamics 49 isosurface representation 56 61 JMV 10 joystick using 28 label command 97 110 Python module 123 labels 17 categories 42 97 delete 42 form 41 hide 42 picking with mouse 24 plotting 43 show 42 text 94 licorice representation 56 58 light command 97 110 controlling with mouse 24 toggle 36 lines representation 55 56 logfile command 98 110 logging tcl commands 94 98 mass center of 142 of residue atoms 109 total 145 material changing 102 command 98 110 methods 37 Python module 124 material properties 96 matrix routine 134 trans 136 transaxis 134 transidentity 134 transmult 134 transoffset 135 transtranspose 134 transvec 134 transvecinv 135 MD Tools 10 measure command 99 110 145 menu command 100 110 molecular surface 56 59 60 molecule active 30 32 analysis 145 best fit alignment 150 command 100 103 110 data 112 deleting 31 drawn 30 164 fixed 18 31 graphics 95 id 100 index 100 info 139 list 30 loading 14 16 95 147 Python module 124 status 30 102 changing 31 103 139 top 30 32 103 translation 18 molinfo command 103 139 keywords 112 molrep Python module 125 mouse add or remove bonds 24 callback 104 command 104 110 mo
233. ts secondary structure Helices are drawn as cylinders beta sheets as solid ribbons and all other structures coils and turns as a tube If the secondary structure has not yet been determined it will be calculated automatically by the program STRIDE A helix cylinder is constructed by finding the least squares linear fit along the coordinates of the helix s Ca atoms If a given residue s Ca is selected the small cylinder found by linear interpolation along the line of best fit is drawn with radius determined by the parameter Because this method computes a best fit a helix must have at least 3 residues before it is drawn those helicies with one or two residues are drawn as a coil It is possible to pick the Ca for each cylinder segment but they are at the location of the Ca which is not near the axis cylinder Interesting results occur when the whole protein is defined to be a helix and drawn as a cartoon The solid beta ribbon is constructed by building a spline along the center points between each beta sheet residue Again the spline is linearly interpolated to find the start and end points for each residue Those are extended to construct the corners for a ribbon with rectangular cross section the amount of extension is determined with the parameter A ribbon segment is used if the corresponding Ca atom is selected Note that since this method assumes the protein is in a beta conformation it draws a much smoother ribbon than the
234. turns the number of molecular representations reps in the given molecule reps Returns a list of MoleculeRep objects one for each rep in the molecule addRep rep Add the given MoleculeRep instance to the Molecule Modifications to the rep will affect all Molecules to which the rep has been added Raises ValueError if the rep has already been added to this molecule delRep rep Removes the given MoleculeRep from the Molecule The rep is not affected and can be added to other molecules but changes to it will no longer affect this Molecule clearReps Removes all reps from this molecule autoUpdate rep onoff None If onoff is not None sets the auto update status for this rep and molecule note that a rep s auto update status may be different for different molecules Returns the reps auto update status ssRecalc Recalculate the secondary structure for this molecule Examples gt gt gt from VMD import gt gt gt from Molecule import gt gt gt bR Molecule gt gt gt bR load proteins brH pdb lt snip gt lt Molecule Molecule instance at 0x406d878c gt gt gt gt bR name gt molecule gt gt gt bR rename bR lt Molecule Molecule instance at 0x406d878c gt gt gt gt bR name bR gt gt gt bR numAtoms 3762 gt gt gt bR dupFrame lt Molecule Molecule instance at 0x406d878c gt gt gt gt bR numFrames 2 9 6 2 MoleculeRep The MoleculeRep
235. tview s amp Renderman Renderman RIB Format rgl Can be rendered with BMRT PRMan Maya etc STL Stereolithography Format true Renders Triangles Only VRML 1 Virtual Reality Markup true view this with VRML viewers like webspace Language See http www bmsc washington edu raster3d for more info Table 7 1 Miscellaneous Rendering Options Name Description Default Render Command Tachyon Very fast multiprocessor tachyon mediumshade s o s tga ray tracer POV3 POV Ray 3 x ray tracer povray H500 W400 I s O s tga D X A FT Rayshade Rayshade ray tracer rayshade lt s gt s rle Radiance Radiosity ray tracer oconv 48 gt s oct rview pe 100 vp 3 5 0 O vd 10 0 s oct ART VORT ray tracer render lt s sgi s rgb ipaste s rgb See http www megapixel com for more info 2See http www povray org for more info 3See http www graphics stanford edu cek rayshade rayshade html for more info 4See http radsite 1b1 gov radiance HOME html for Radiance gt Available from ftp gondwana ecr mu oz au pub along with the rest of VORT package SSee http vrml sgi com intro html http vrml sgi com intro html Table 7 2 Supported ray tracing formats the different file types to RGB and let you use the tools listed in Table 7 1 to get what you need Tachyon and Raster3D can produce SGI RGB files so you don t need to do anything but specify this output
236. ty of specular reflections Produces highlights the higher the value the smaller and the brighter the highlight e Shininess a number describing how large is the angle of the specular reflections The smaller the number the wider the angle and the more shiny objects appear Default corresponds to a Phong exponent of 40 For details regarding these material properties consult an elementary graphics book such as Foley amp Van Dam Computer Graphics 65 Eh E midi Intensiny rilapelnt Component U 1 plaint Color scale range 5 Resulting calor scale Figure 5 1 RGB color scale the three plots shows the contributions of each color and the resulting colors are on the bottom 5 3 Selection Methods VMD has a rather powerful atom selection language available It is based around the assumption that every atom has a set of associated with it values which can be accessed through keywords These values could be boolean is this a protein atom numeric as in the atom index or atomic mass or string the atom name The values can even be referenced via a Tcl array To start off here are some examples of valid selection commands in VMD Following these will be a more in depth description of how selections work name CA resid 35 name CA and resname ALA backbone not protein protein backbone or name H 66 U 1 Y apa nt Figure 5 2 The shift to the red component of the RGB scale caused by the value of
237. u a a A a a a A LC 66 5 3 1 Definition of Keywords and Functions 00000005 68 5 3 2 Boolean Keywords 00 ee ee 69 5 3 3 short Circuiting l Qo R e ee i OR he ee Be a ea DA E 69 5 3 4 Quoting with Single Quotes 2 2 0 0 0 e eee ee 69 5 3 5 Double Quotes and Regular Expressions e eee 70 5 3 6 Comparison selections ooo 71 5 3 7 Comparison Operators 0 71 5 3 8 Other selections a a RN K R E E a E R R ee 72 6 Viewing Modes 77 6 1 Perspective Orthographic views 4 20 4 24 wane a ee 77 6 2 Mon scople Modes diie aa fon eee we RS God ee a we 77 6 3 Stereoscopic Modes a al R Te h E ee 77 6 3 1 Side By Side and Cross Eyed Stereo e 78 6 3 2 DTI Side by side Stereo aooaa 78 6 3 3 Scanline Interleaved Stereo s iosa o sorana taa RR RRR aa a a 78 6 3 4 Anaglyph Stereo so soser aa ao dae e e a a a o a a a 78 6 3 5 CrystalEyes Stereo 2 79 6 3 6 Problems with stereo on some SGI machines 79 6 3 7 Stereo Parameters aoaaa a es 79 7 Scene Export and Rendering 81 7 1 Screen Capture Using Snapshot a 81 7 2 Higher Quality Rendering 2 0 0 a 81 TA E BOE E E A ANA a O eos E E E alos 83 A One Step Printings sy Cl abs A A a o ana a ete 84 7 5 Making Stereo Images RRR R R T a N a a R R 84 TB Making a Moyie rads e A A A A a E Res 84 8 Tcl Text Interface 86 8 1 Using text CoMmMands XX RA R R RA a a a dds 86 A AA
238. ure rmsd sel1 sel2 weight mass Info 10 403022 In this case the weight is determined by the mass of each atom Actually the term is really one of the standard keywords available to an atom selection Other ones include index and resid which would both be rather strange to use as well as charge beta and occupancy These last terms useful if you want to specify your own values for the weighting factors Computing the Alignment The best fit alignment is done in two steps The first is to compute the 4 x 4 matrix transformation that takes one set of coordinates onto the other This is done with the measure fit command Assuming the same selections as before set transformation_matrix measure fit sel1 sel2 Info 0 971188 0 00716391 0 238206 13 2877 0 0188176 0 994122 0 106619 3 25415 0 23757 0 108029 0 965345 2 97617 0 0 0 0 0 0 1 0 150 As with the RMSD calculation you could also add an optional weight lt keyword gt term on the end The next step is to apply the matrix to a set of atoms using the move command So far you have two coordinate sets You might think you could do something like sel1 move ftransformation matrix to apply the matrix to all the atoms of that selection You could but that s not the right selection The thing to recall is that sel1 is the selection for the backbone atoms You really want to move the whole fragment to which it is attached or even the whole molecule This is where the discuss
239. ut each molecule The Name is the file name which contained the topology information followed by a unique integer ID which is assigned to each molecule by VMD when it is loaded Atoms shows the number of atoms in the molecule Frames gives the number of timesteps associated with the file and Source is either File or Remote reflecting whether the information was acquired from a file or a remote simulation Next to each molecule is a set of status flags which indicate the current Status of each molecule Each molecule has the following characteristics which can be on or off e Top T Top indicates the default molecule used in the text commands when nothing is specified for the mol text command It is also used in some forms like Graphics and Animate to determine certain values There can be only one top molecule at a time e Active A Several commands and actions in VMD operate on many molecules These commands unless specifically specified otherwise will do their action for all the active molecules e Drawn D If a molecule is Drawn then it is being displayed in the graphics display window This is 30 useful for temporarily hiding a molecule from view without deleting it e Fixed F Fixed molecules do not undergo rotation translation or scaling Note that while it may seem that one molecule has been moved relative to another the difference is only apparent The internal coordinates do not change when a standard rotation is appl
240. ven molecule e get_rotation molid e set_rotation molid matrix Get set the rotation matrix for the given molecule as a 16 element Python list in row major order e get_trans molid e set trans molid vector Get set the global translation applied to the given molecule as a Python list e is fixed molid Returns whether the molecule with the given id is fixed that is whether it is affected by translation rotation or scaling Fixed molecules may still be animated see is active in the animate section e fix molid trueorfalse Make the molecule with the given id fixed or not e is_shown molid Returns whether the molecule with the given id is shown or not e show molid trueorfalse Make the molecule with the given id shown or not 9 5 13 vmdnumpy This optional module is made available from within the toplevel VMD module if VMD detects a Numeric Python installation in the Python search path When present the following methods are provided e timestep molid frame Returns a single precision Numeric array containing a direct reference to the given set of atom coordinates Atom coordinates are arranged xyzryzxyz for each atom in the molecule No copy of VMD s internal coordinates is made therefore modifications to this array will directly affect atom coordinates in VMD Using the array after the timestep has been deleted will likely cause VMD to crash The advantage is maximum efficiency and the ability to easily mo
241. w ks uiuc edu Development MDTools 10 e Structural Biology Software Database The database contains programs which are of interest to researchers in structural biology quantum chemistry and bioinformatics The database entries are contributed by users and are moderated to provide a high quality resource More information is available at the Struc tural Biology Software Database home page For more information on our software efforts see the Theoretical Biophysics Group home page 1 2 Contacting the authors The current authors of VMD are Justin Gullingsrud and John E Stone We are very inter ested in and grateful for any user comments and reports of program bugs or inaccuracies If you have any suggestions bug reports or general comments about VMD please send them to us at vmd ks uiuc edu 1 3 Registering VMD VMD is made available free of charge for all interested end users of the software but please see the Copyright and Disclaimer notices Please check the current VMD license agreement for details Registration is part of our software download procedure Once you ve filled out the forms on the VMDdownload area and have read and agreed to the license you are finished 1 4 Citation Reference The authors request that any published work or images created using VMD include the following reference Humphrey W Dalke A and Schulten K VMD Visual Molecular Dynamics J Molec Graphics 1996 14 1 33 38 VMD ha
242. waters omits cases where a water s oxygen is known but not the hydrogen selection not waters or protein or nucleic drawing method lines coloring method name why shows whatever is left usually ligands and crystallizing agents 2 8 Saving your work After creating a set of attractive and informative representations of your molecule you may want to save your work so that you can regenerate the scene later There are two ways to do this in VMD e In the main menu press the Save State button found in the File menu this will bring up a browser window where you can enter a file name in which to save your work e In the text console type save_state filename where filename is the name of the file in which to save your work To restore your scene you also have three choices e Use the Load State item in the File manu to select and load a previously saved VMD session e From the command line start VMD with the options vmd e filename where filename was the name of the file you saved before e After starting VMD from the text console type play filename The most common source of problems is when VMD can t find the files you used to load the molecule If this happens try changing to the directory you were in when you first loaded the molecule or edit the state file and use the full path names where you see mol new mol addfile or mol load commands 19 Chapter 3 Loading A Molecule The File menu is the primary
243. ween each atom and the atoms to which it is bonded Both atoms have to be selected before the bond will be drawn The first half of each bond is colored appropriately for the first atom while the color 55 Representation styles Description Lines simple lines for bonds points for atoms Bonds lighted cylinders for bonds DynamicBonds dynamically calculated distance based bonds HBonds display hydrogen bonds Points just points for atoms no bonds VDW solid van der Waal spheres for atoms no bonds CPK scaled VDW spheres with cylinders for bonds Licorice spheres for atoms cylinders for bonds same radius Trace connected cylindrical segments through Ca atoms Tube smooth cylindrical tube through the Ca atoms Ribbons flat ribbon through the Ca atoms Cartoon cartoon diagram cylinders and ribbons based on secondary structure MSMS molecular surface as determined by the program MSMS Surf molecular surface as determined by SURF VolumeSlice display a texture mapped slice from a volumetric data set Isosurface display an isovalue surface from a volumetric data set Dotted dotted van der Wall spheres for atoms no bonds Solvent dotted representation of the solvent accessible surface Off do not draw anything Table 5 1 Molecular view representation styles of the final half corresponds to the second atom The only parameter for the lines representation is the line thickness 5 1 2 Bonds Nearly everything about this
244. will be blended into the background Clipping planes positions are changed with the Near Clip and Far Clip controls It is not possible for the near clip to be farther away than the far clip When using stereo it may be useful to set the near clip plane much lower than the default value This makes the geometry pop out of the screen a bit more and can be used for greater dramatic effect s Screen Height H and Distance D These controls are found in the Settings display sub form The screen height along with the screen distance defines the geometry and position of the display screen relative to the viewer The screen height is the vertical size of the display screen in world coordinates Each molecule is initially scaled and translated to fit within a 2 x 2 x 2 box centered at the origin so the screen height helps determine how large the molecule appears initially to the viewer The screen distance parameter determines the distance in world coordinates from the origin to the display screen If this is zero the origin of the coordinate system in which molecules and all other graphical objects are drawn coincides with the center of the display If distance is negative the origin is located between the viewer and the screen if it is positive the screen is closer to the viewer than the origin A negative value puts any stereo image in front of the screen aiding the three dimensional effect a positive value results in a s
245. wn 30 dynamic bonds 57 dynamicbonds representation 57 echo command 94 110 environment variables 157 DISPLAY 157 MSMSSERVER 60 SURF BIN 60 TCL_LIBRARY 158 VMDBABELBIN 21 157 VMDCAVEMEM 157 VMDDIR 157 VMDFILECHOOSER 157 VMDGDISPLAY 157 VMDHTMLVIEWER 158 VMDIMAGEVIEWER 158 VMDSCRDIST 158 VMDSCRHEIGHT 158 VMDSCRPOS 158 VMDSCRSIZE 158 VMDTMPDIR 157 exit command 110 eye separation 79 93 file load 14 file types input 20 33 output 31 files output 16 read 88 reading 14 16 20 33 101 startup 26 157 158 writing 31 88 fit RMSD 150 focal length 79 93 form animate 16 32 color 18 43 62 64 display 35 files 14 graphics 15 16 37 hot keys 29 label 41 main 29 material 45 molecule file browser 33 mouse 34 RamaPlot 53 render 16 46 sequence 50 sim 49 tool 46 forms 100 frame delete 31 88 duplicate 87 write 88 frames 30 frames per second indicator 36 geometric center 141 gopython command 114 graphics command 95 delete 96 163 form 37 loading 95 primitives 95 Python module 121 replace 96 user defined 93 Gromacs files 20 33 gyration radius of 146 hbonds representation 56 57 help 30 command 96 110 topics 111 highlight 51 hot keys 26 107 animation control 29 customizing 26 menu control 29 mouse control 27 rotation and scaling 28 hydrogen bonds 57 100 image lighting con
246. y provides two methods of rotation and translation and a scaling mode The Spaceball interface currently uses Button 1 known as Function 1 in the SpaceWare driver to reset the view and Button 2 to cycle through the available Spaceball interface modes 4 2 1 Spaceball Driver VMD interfaces to the Spaceball in one of two ways either by communicating directly with the Spaceball using built in serial interface software or vendor provided drivers Unix and Mac OS X versions of VMD use the built in serial Spaceball driver At startup VMD checks for the existence of an environment variable VMDSPACEBALLPORT This environment variable must be set to the Unix device name of the serial port to which the Spaceball is attached The serial port device permissions must be set to allow the VMD user to open the device for reading and writing In typical usage this usually requires performing a chmod 666 dev somettyname on the appropriate device as root One restriction with the use of the built in Spaceball driver is that only one VMD process may safely use the Spaceball at a time If multiple VMD sessions are started on the same machine and all are set to open the Spaceball it will behave very erratically 27 Hot Key Command Purpose x rock x by 1 1 spin about x axis X rock x by 1 70 rock about x axis y rock y by 1 1 spin about y axis Y rock y by 1 70 rock about y axis Z rock z by 1 1 spin about z axis Z rock z by 1 70 rock a
247. y either on or off The last word indicates if the label is turned on or off Modifying or deleting a label A label can be turned on or off without deleting it by selecting the label in the central browser and pressing the Hide button To turn it back on select it again then press the Show button Press the Delete button to delete it This browser allows multiple selections which for example allows you to delete several labels at once To select everything in the current category press Select All to unselect them press Unselect All If nothing is selected the action is applied to everything Thus one way to turn everything off is to press Unselect All then press Hide It may seem counterintuitive but it was done this way so all the labels could be deleted by just pressing Delete Pick information The Picked Atom tab displays information about the last atom picked by the mouse This informa tion is also echoed to the vmd console The data in the will remain in until a new label is selected by the mouse Information about the following fields is identified e Molecule the name of the molecule referenced e XYZ the position of the atom in 3D space e Resname the type of the amino or nucleic acid to which this atom belongs e ResID the internal VMD ID number of the entire residue to which the particular atom belongs E g ResId for an atom of a protein is the same as the residue number of that atom as listed in its PDB file
Download Pdf Manuals
Related Search
Related Contents
軸テリー充電 User Manual for the 820950 ADD2-LVDS-Dual card Audi TT Roadster Programa autodidáctico 220 220 Gigaset DA710 deutsch (ストレッチャー)についての注意喚起について(情報提供) DHH 1050/7 T ECO エキレスTMシリーズ 取扱説明書 - SoftBank SELECTION 1. Código : 2. Nombre de la Tecnología: Cebo para Copyright © All rights reserved.
Failed to retrieve file